How to remove arrow in Gnome Main Menu icon?

23:19

Open /home/your-name/.themes/Human 2/gtk-2.0/panel.rc with the Text Editor and add (copy & paste) at the end of the file these lines:

style "panel-arrow-remove"

#the following removes the arrows from the panel
{
engine "pixmap"
{
image
{
function = ARROW
recolorable = TRUE
overlay_file = "arrows/arrow-blank.png"
overlay_border = {2,2,2,2}
overlay_stretch = FALSE
arrow_direction = UP
}

image
{
function = ARROW
recolorable = TRUE
overlay_file = "arrows/arrow-blank.png"
overlay_border = {2,2,2,2}
overlay_stretch = FALSE
arrow_direction = DOWN
}
}
}

widget_class "*PanelToplevel*" style "panel-arrow-remove"

Save the file.

Internet Explorer 8 on Linux with Wine

13:20

About Internet Explorer 8

Windows Internet Explorer 8 (abbreviated IE8) is the latest web browser developed by Microsoft in the long running Internet Explorer browser series. The browser was released on March 19, 2009 for Windows XP, Windows Server 2003, Windows Vista and Windows Server 2008, and Windows 7. Both 32-bit and 64-bit builds are available. It is the successor to Internet Explorer 7, released in 2006, and is the default browser for Windows 7 and Windows Server 2008 R2 operating systems except in Europe. IE8's global market share is estimated to be about 18-20%.

According to Microsoft, security, ease of use, and improvements in RSS, Cascading Style Sheets, and Ajax support were its priorities for Internet Explorer 8.



Standards mode

Internet Explorer 8's main rendering mode, known as standards mode, has improved support for various web standards, especially CSS, compared to Internet Explorer 7 and earlier versions.

The web standards supported by IE8 include the following:

  • HTML, including the HTML object fallback and the abbr and elements
  • Data: URIs
  • CSS level 1 is fully supported. CSS level 2 is mostly supported however the CSS level 2 implementation does diverge from the CSS2 specification on over 50 counts. CSS level 3 is partially supported.
  • DOM storage
  • Partial HTML 5 support, including cross-document messaging
  • Selectors APIs
  • DOM, that brings it in line with implementations in other browsers. Attributes and properties in DOM objects are now handled differently, and the behavior of the getAttribute, setAttribute and removeAttribute modifiers have been changed to match the behavior of other browsers.
  • Accessible Rich Internet Applications (ARIA) specification for enhanced accessibility in Ajax-based rich Internet applications.

However, IE8 does not support some other W3C standards.

Wine configuration

This is with a clean configuration directory, with no other applications or games installed.

Linux Distribution: Ubuntu 8.04
Windows version emulated: XP
Wine version tested: 1.1.32

" browseui="native, builtin"
"crypt32"="native, builtin"
"gdiplus"="native"
"hhctrl.ocx"="native, builtin"
"hlink"="native, builtin"
"iernonce"="native, builtin"
"iexplore.exe"="native, builtin"
"itircl"="native, builtin"
"itss"="native, builtin"
"jscript"="native, builtin"
"mlang"="native, builtin"
"mshtml"="native, builtin"
"msimtf"="native,builtin"
"msxml3"="native,builtin"
"riched20"="native,builtin"
"riched32"="native,builtin"
"secur32"="native, builtin"
"shdoclc"="native, builtin"
"shdocvw"="native, builtin"
"shlwapi"="native, builtin"
"url"="native, builtin"
"urlmon"="native, builtin"
"usp10"="native, builtin"
"uxtheme"="native,builtin"
"wininet"="builtin"
"wintrust"="native, builtin"
"xmllite"="native, builtin"

You will also need to copy a number of DLL's from a Windows XP machine and place them in /system32 as winetricks doesn't provide these DLL's at this time.

msctf.dll
msimtf.dll
uxtheme.dll

Winetricks

Now download winetricks if you don't already have it and install the following Windows redistributables.

corefonts
gdiplus
msls31
msxml3
riched20
riched32
tahoma

IE 8 install in Wine

Download Windows Internet Explorer 8 for Windows XP from Microsoft and save it to your home directory.

Now open a terminal and run $ wine IE8-WindowsXP-x86-ENU.exe

The IE 8 install should now start, I didnt select the Windows security updates in my install.

Conclusion and known problems

While IE 8 will run and render web pages just fine there is still a large number of problems/bugs that remain to be resolved before you will want to use the browser on Linux on a daily basis.

Bookmarks and RSS feeds don't currently work and their is a number of problems related to comctl32.dll for example the forward and backward buttons background isn't painted and even worse if you select Help the browser will lock up. I also had a number of lock ups when trying to save Internet options.

Their are also major problems with comdlg32.dll the address and search bars dont accept input at this time, so what ive done is set google as my homepage and then go from there.

You can easily do this in the user.reg file, just change the start page to what you want your home page to be. Here is what I have as a example :

[Software\\Microsoft\\Internet Explorer\\Main]
"Start Page"="http://www.google.com/ncr"

You can however view web pages, and navigate around a site to see how well it renders with IE 8 if your a web developer.

One way to help support further development of Internet Explorer is to purchase CrossOver Office and then vote for IE 8 as the app that you would most like to see supported in a future release.

(c)

Далее

Kernel check. Освежаем ядро по всем правилам без лишних хлопот

18:01

screenshotkernelcheck

 

Про сборку ядра, кажется, не писал только ленивый. Мануалов о том, как правильно скомпилировать ядро и собрать его в установочный пакет, в интернете навалом.
Не так давно статья про сборку ядра для Debian based систем пробегала и на Хабре. И все в принципе отлично, если учесть, что
ядро требуется собирать не так часто.
Тем, кому по воле случая требуется регулярно заниматься сборкой ядра, может надоесть этот весьма длительный процесс компиляции и сборки пакета и захочется некоторой автоматизации.
Я не против консоли, bash скриптов, но иногда нет смысла изобретать велосипед, когда за Вас уже все сделали хоть и на питоне.
И так, представляю Вашему вниманию набор python скриптов Kernel Check, позволяющих сделать свежий debian package ядра, включая необходимые патчи, всего за пару кликов.

Сборка и установка ядра под Debian

23:04

Тут речь идти будет не просто про компиляцию ядра Linux, а про компиляцию ядра и его сборку в deb-пакет. Потом этим deb'ом можно будет поделиться с знакомыми, похвастаться перед любимой девушкой/парнем или просто, при необходимости, использовать повторно.

Для начала ставим пакеты fakeroot, kernel-package, libncurses5-dev:

aptitude install fakeroot kernel-package libncurses5-dev


Все зависимости будут подтянуты автоматом…
Затем берём нужный архив с kernel.org и сливаем и распаковываем его в /usr/src (берём для примера ядро 2.6.31.4).

$ cd /usr/src
$ sudo -s
# wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.31.4.tar.bz2
# tar xjf linux-2.6.31.4.tar.bz2
# if [ -d linux ]; then rm linux; fi; ln -s linux-2.6.31.4 linux
# cd linux


Тут есть один момент. Так как у нас уже есть рабочее ядро в установленной системе то, если не хотим выставлять все галочки в конфигурации нового ядра с нуля, берём готовый config либо из /boot либо из /proc:

# cp /boot/config-$( uname -r ) .config
# zcat /proc/config.gz > .config


В итоге имеем предварительную заготовку к конфигурации нашего нового ядра.

Теперь конфигурируем ядро под специфические для нас цели, либо добавляем опции для новых модулей, либо… Одним словом — творчество:

# make menuconfig


Тут интересно будет отметить, что если мы сразу-же выйдем из меню, то можем увидеть что-то подобное этому:

.config:903:warning: symbol value 'm' invalid for RFKILL_INPUT
.config:2920:warning: symbol value 'm' invalid for DRAGONRISE_FF
.config:2937:warning: symbol value 'm' invalid for GREENASIA_FF
.config:2939:warning: symbol value 'm' invalid for THRUSTMASTER_FF
.config:2940:warning: symbol value 'm' invalid for ZEROPLUS_FF


имеет смысл найти эти опции при конфигурировании нового ядра и посмотреть что да к чему…
Кстати, если кому интересно под X-ами заниматься конфигурированием, то может сделать так:

# make xconfig


Важно! Не забываем сказать «Kernel module loader» в «Loadable module support», так как возможны варианты.
Ну всё. Пимпочки поотмечали, кнопочки понажимали, из окошек вышли, новый конфиг сохранили, теперь приступим к сборке. Для начала сделаем:

# make-kpkg clean


Увидим что-то наподобие этого:

exec make kpkg_version=12.021 -f /usr/share/kernel-package/ruleset/minimal.mk clean
====== making target minimal_clean [new prereqs: ]======
This is kernel package version 12.021.
test ! -f .config || cp -pf .config config.precious
test ! -e stamp-building || rm -f stamp-building
test ! -f Makefile || \
make ARCH=i386 distclean
make[1]: Entering directory `/usr/src/linux-2.6.31.4'
CLEAN scripts/basic
CLEAN scripts/kconfig
CLEAN include/config
CLEAN .config .config.old include/linux/autoconf.h
make[1]: Leaving directory `/usr/src/linux-2.6.31.4'
test ! -f config.precious || mv -f config.precious .config
rm -f modules/modversions.h modules/ksyms.ver scripts/cramfs/cramfsck scripts/cramfs/mkcramfs


Ну, а теперь, собственно, собираем ядро:

# fakeroot make-kpkg --initrd --revision=og.091015.00 kernel_image


og.091015.00 — означает лишь ревизию нашей сборки (меньше букв, но больше цифр, иначе получите ошибку в под самый конц сборки и придётся всё повторять с самого начала), а в остальном может быть любой — у кого насколько фантазии хватит :)
После того как предыдущая команда нормально выполнится, можно также дать такой «джентельменский набор»:

# fakeroot make-kpkg --initrd --revision=og.091015.00 kernel_headers
# fakeroot make-kpkg --initrd --revision=og.091015.00 kernel_manual
# fakeroot make-kpkg --initrd --revision=og.091015.00 kernel_doc
# fakeroot make-kpkg --initrd --revision=og.091015.00 kernel_source


После этого получим набор из следующих deb-пакетов:

  • linux-image-2.6.31.4_og.091015.00_i386.deb
  • linux-headers-2.6.31.4_og.091015.00_i386.deb
  • linux-manual-2.6.31.4_og.091015.00_all.deb
  • linux-doc-2.6.31.4_og.091015.00_all.deb
  • linux-source-2.6.31.4_og.091015.00_all.deb


располагаться они будут в /usr/src.
Нам остаётся их только установить через dpkg:

# cd /usr/src
# dpkg -i ./linux-image-2.6.31.4_og.091015.00_i386.deb


и т.д.
Конфигурация к GRUB'у должна будет выполниться автоматически, равно как и собраться initrd.
Финальный шаг:

# reboot

(c)

Далее

Путеводитель по программному обеспечению для Linux

19:23

здесь

Отправка почты с консоли

22:58

SendEmail is a lightweight, command line SMTP email client. If you have the need to send email from a command line, this free program is perfect: simple to use and feature rich. It was designed to be used in bash scripts, batch files, Perl programs and web sites, but is quite adaptable and will likely meet your requirements. SendEmail is written in Perl and is unique in that it requires NO MODULES. It has an intuitive and flexible set of command-line options, making it very easy to learn and use.

More

Выключение компьютера из консоли с привилегиями пользователя

11:46

/usr/lib/indicator-session/gtk-logout-helper --shutdown

Ребут:

/usr/lib/indicator-session/gtk-logout-helper --restart  

Логаут:

/usr/lib/indicator-session/gtk-logout-helper

(c)

Sendmail-заглушка для Linux

08:36

Не так давно встала задача, установить заглушку для sendmail, дабы письма из PHP не отсылались на ложные адреса (при тестинге) или просто не возникала ошибка, а складывались аккуратно в папку. Аналогично тому, как это делает Денвер.
Далее…

Разработка программного обеспечения для Linux. Инструментарий

19:28

Этот курс предназначен для тех, кто желает вступить в ряды сообщества разработчиков Open Source, но никогда раньше не программировал под Linux, и нуждается в получении самых начальных знаний в этой области. Здесь будут рассмотрены основы основ любого программирования – пользование программистскими инструментами. Освоив эти уроки, человек сможет приступить к углублённому изучению любого аспекта программирования в Linux, и уже не будет бояться программного кода или мучиться над вопросом «как это собрать и запустить».

Далее

Сборка ядра в Ubuntu. Пошаговая инструкция.

17:43

Имеющаяся информация о сборке ядра сильно разнится, поэтому будем описывать сборку ядра именно для Ubuntu. Постараемся. чтобы в командах, написанных в этой статье, небыло ошибок. При описании процесса компиляции, не остановимся только на получении ядра. Получить работоспособное ядро - этого мало. Для владельцев карт nVidia, здесь будет дано описание, как получить систему с работащей графикой на новом ядре. Причем, графика будет работать как в старом ядре, так и в новом.

1. Установка исходников ядра

Вначале нам нужны будут исходники ядра. Для Ubuntu 7.04 в репозитарии они уже есть, нужно найти пакет linux-source-тратата (в нашем случае это будет linux-source-2.6.20), и установить его (все это можно сделать через Synaptic). После установки данного пакта, в каталоге /usr/src появится файл с именем linux-source-2-6-20.tar.bz2.

Делаем под sudo команду

Цитата
chmod 777 /usr/src


Заходим обычным пользователем в каталог /usr/src и распаковываем этот файл

Цитата
tar -jxvf linux-source-2-6-20.tar.bz2


Появится каталог с исходниками /usr/src/linux-source-2-6-20. Архивный файл удаляем (нужны будут права рута).


2. Установка сопроводительных пакетов

Для сборки понадобятся еще пакеты kernel-package, libncurses5-dev, fakeroot. Устанавливаем их через Synaptic. Само собой, в системе также должен быть установлен компилятор gcc и dev-пакеты для системных библиотек, такие например как libc6-dev.


3. Создание файла конфигурации ядра

Теперь нам нужен конфиг ядра, с которым собиралось ядро для убунты. Заходим в каталог /boot, и видим там файл типа config-2.6.20-15-generic. Он нам и нужен. Копируем его в каталог с исходниками /usr/src/linux-source-2-6-20 и переименовываем его в .config. Обратите внимание, что имя файла начинается с точки, это не опечатка.

Теперь, находясь в каталоге /usr/src/linux-source-2-6-20, даем под обычным пользователем команду

Цитата
make menuconfig


это запустится текстовый интерфейс настройки ядра. Можно так же запустить настройку в графическом режиме

Цитата
make xconfig


В обоих случаях откроется интерфейсик с галочками, через который конфигурируем ядро. Вроде как по умолчанию как раз и открывается файл .config, который в данный момент и содержит стандартный конфиг ядра Убунты.

Что вы хотите наконфигурировать - думайте сами, по этому вопросу в инете много русскоязычной документации. В задачу этой статьи входит только описание самих действий, выполняемых при компиляции ядра Ubuntu.

В конце конфигурирования выбираем пункт "Save тратата кофигурацию", указываем имя файла, отличного от .config, например .config_my_01. Выходим.

Теперь переименовываем .config в .config_ubuntu. И у вас получается два файла - .config_ubuntu и .config_my_01. Вы можете посмотреть различия между стандартной и вашей конфигурацией, например так

Цитата
diff .config .config_my_01


Теперь копируем вашу конфигурацию .config_my_01 под именем .config. Т.е. у вас получится 3 конфиг файла. При компиляции будет использоваться файл .config. Файлы .config_ubuntu и .config_my_01 нам помогут в будущем для новой компиляции. Это на тот случай, если новое ядро окажется неработоспособным или глючным.


4. Компиляция

Перед компиляцией обязательно проверяем наличие свободного пространства (на том разделе, где лежат исходники). Хорошо бы меть 4-5Gb (!) в запасе. При компиляции размер каталога с исходниками может разрастись до 3,5Gb. Проверить свободное пространство можно командой

Цитата
df -H


Теперь, находясь под обычным пользователем в каталоге /usr/src/linux-source-2-6-20, даем команду, которая удалит в исходниках скомпилированные кем-то объектники, которые остались от предыдущей компиляции и находились в архиве.

Цитата
make-kpkg clean


Потом через sudo получаем права рута и запускаем компиляцию.

Цитата
make-kpkg --initrd --revision=mybuild.1.0 kernel_image kernel_headers


Где вместо "mybuild.1.0" пишите что вам нужно. Допустимы английские буквы, цифры, точки. Символы подчеркивания и тире не допускаются.

Вообще-то, по-хорошему, компиляцию ядра надо делать под правами обычного пользователя. Формально, создание бинарника ядра ничем не отличается от компилирования бинарника любой другой программы. Но мы делаем компиляцию не в ручном режиме (через команды типа make bzImage modules), а в полуавтоматическом (через make-kpkg). А эта программа, после прохождения компиляции, будет запускать из-под себя программу dpkg-deb чтобы получить deb-пакет с ядром. Вот в этот момент и потребуются права рута.

Теперь давайте разберемся, что же делает вышеприведенная команда. Она запускает компиляцию ядра, и затем создает deb-пакет с именем linux-image-версия.deb, в котором будут находиться бинарник ядра и модули ядра (это сделается благодаря цели kernel_image). А так же будет создан deb-пакет с именем linux-headers-версия.deb, в нем будут находиться заголовочные файлы ядра (это сделается благодаря цели kernel_headers). Полученные пакеты будут лежать в каталоге /usr/src.

Посмотреть, какие файлы находятся в этих deb-пакетах, можно в konqueror (в Kubuntu), щелкнув правой клавишей по на интересуемом deb-файле и выбрав "Kubuntu package menu" -> "Show package info". Информация будет формироваться довольно медленно, около минуты, так как пакеты большие.


5. Установка ядра

Теперь устанавливаем ядро. Находясь с правами суперпользователя в каталоге /usr/src, даем команду

Цитата
dpkg -i linux-image-версия.deb


после которой ваше ядро (файл vmlinuz-2.6.20.3-ubuntu1) будет помещено в каталог /boot (все предыдущие ядра тоже никуда не денутся, останутся на своих местах), а в каталоге /lib/modules, рядом с каталогом с модулями обычного ядра (в Ubuntu 7.04 называется /lib/modules/2.6.20-15-generic) появится каталог с модулями вашего нового ядра (в нашем случае это будет /lib/modules/2.6.20.3-ubuntu1). Новое ядро будет автоматически прописано в /boot/grub/menu.lst.

Впринципе, уже можно перегрузиться, и в экране загрузки Grub появится новый пункт с вашим ядром. Новое ядро появится в начале списка. Но пока не спешим, а дадим еще команду

Цитата
dpkg -i linux-headers-версия.deb


которая установит хедеры ядра в каталог /usr/src/linux-headers-версия, в нашем случае это будет каталог /usr/src/linux-headers-2.6.20.3-ubuntu1. Эти хедеры нам понадобятся, например, для перекомпиляции драйверов nVidia для нового ядра.


6. Перезапуск

Перегружайтесь, и в меню Grub вы увидите два новых пункта - обычная загрузка с вашим ядром, и загрузка в минимальном консольном режиме. Выбирайте первый пункт. Если ядро сразу не выпало в Kernel panic, то это хороший признак. Ждите конца загрузки. Если вам повезет, то Ubuntu загрузится в графический режим и покажет графическое приглашение входа в систему. В этом случае дальше можете не читать.

Но для пользователей карт nVidia, которые пользовали драйвера, установленными через "Менеджер проприетарных драйверов" или пользовали драйвера из пакета nvidia-glx (или там nvidia-glx-new), даю 99% гарантии, что вам не повезет! И графики под новым ядром вы не увидите!


7. Установка драйверов nVidia с сайта nvidia.com

Чтобы получить работающие иксы под новым ядром, первое что приходит в голову - это установить под новым ядром драйвера с сайта nvidia.com. И это неправильное решение! Как только установятся дрова под новым ядром, графика в вашем старом проверенном ядре работать перестанет (по причине того, что файлы драйверов nVidia жестко завязаны на версию и название ядра). А так как работоспособность нового ядра вы еще толком не проверили, вы можете получить систему "с родным ядром, но без графики" и "глючным ядром, зато с графикой". Думаю, никого такая ситуация не устроит.

В популярной статье "Ядерная физика для домохозяек", есть рекомендации, как получить графику под обоими ядрами. Предлагается следующий путь - иметь на готове установочный пакет дров с nvidia.com, и при желании загрузиться под конкретным ядром, надо сначала загрузиться в консольном режиме этого ядра, установить дрова, и потом загрузиться уже нормально. Думаю, такой подход тоже мало кого обрадует.

Мы сделаем так, что графика будет работать и в старом ядре, и в новом ядре, и для этого не нужно будет каждый раз запускать установку (компиляцию) дров. Для этого нам нужно будет выполнить только одно условие - чтобы графические дрова под разными ядрами были одной версии.

Краткий план действий - ставим дрова с сайта nvidia.com для стандартного ядра в полном объеме. Убеждаемся что они работают. Потом из этого же пакета ставим дрова для самодельного ядра, но в режиме "только графический модуль".


8. Установка драйверов nVidia под обычное ядро

Все, что ниже написано, подходит и для тех, кто просто решил установить новые дрова nVidia под стандартное ядро!

Качаем с сайта nvidia.com дрова под линух. Я себе качал дрова версии 96.43. Файл называется NVIDIA-Linux-x86-96.43.01-pkg1.run. Но вы можете попробовать другие стабильные релизы, которые присутствуют на сайте nVidia.

Для установки, создаем в каталоге /usr/src подкаталог с именем nvidia, копируем туда этот файл. Находясь в этом подкаталоге, даем файлу разрешение на выполнение

Цитата
chmod 777 NVIDIA-Linux-x86-96.43.01-pkg1.run


Все, на этом работа в графическом интерфейсе на время заканчивается. Перед выходом из графрежима, запустите Synaptic, и убедитесь, что у вас стоит

  • aptitude. Это интерфейсная оболочка над пакетным менеджером для text-mode.
  • linux-headers-2.6.20-15. Это заголовочные файлы (хедеры) вашего стандартного ядра.
  • linux-headers-2.6.20-15-generic. Точно не скажу на кой хрен этот пакет, но пусть будет.


Хороший совет - иметь распечатаный текст данной статьи на бумажке, или сохранить его в текстовый файл, который можно посмотреть из текстового режима.

Перегружаемся в консольный режим обычного ядра (в Grub есть такой пункт). В Ubuntu вы автоматически получите права рута, даже пароль вводить ненадо. Теперь надо удалить дрова nVidia, которые есть в системе. Если вы устанавливали дрова через "Менеджер проприетарных драйверов" (или путем установки пакета nvidia-glx или nvidia-glx-new), то пакет nvidia-glx/nvidia-glx-new нужно удалить из системы, причем не просто деинсталлировать, а деинсталлировать в режиме purge.

Я достаточно тупой пользователь, и вместо того, чтобы разбираться с опциями dpkg, в консоли пользуюсь программой aptitude. Наберите команду

Цитата
aptitude


и вы попадете в оболочку, оталенно напоминающую Synaptic. Вверху будет подсказка по клавишам. Чтобы попасть в меню, нажимаем Ctrl+t (неудобно, но что делать). В меню
стрелками и клавишей Enter находим и выбираем пункт "Find". Пишем строку поиска - nvidia-glx. Засветка попадет на нужный пакет. Снова вызываем меню, и находим там пункт "Purge". Нажимаем его, и пакет, на котором стоит засветка, будет помечен для полного деинсталлирования всех его файлов из системы (сам пакет останется в кеше, его можно будет заново установить при необходимости). Внизу появится подсказка - "e - Examine, ! - remove". Нажимаем "e" - и видим какие пакеты будут удалены. Если от nvidia-glx будут зависеть пакеты, то они тоже будут деинсталлированы. Обычно это пакет nvidia-glx-dev. Ничего страшного, что он удалится тоже.

Теперь нажимаем "!" (для особо одаренных - Shift+1), тем самым мы соглашаемся с нашими изменениями. Потом нажимаем "q" (выход). При выходе программа удалит отмеченные нами пакеты.

Теперь такой момент. Мы сейчас находимся на уровне init 1 (только консоль, куча сервисов не запущена). Если запустить инсталляцию драйвера nVidia, то она будет ругаться, что возможно у вас не запущен сервис devfs, который обычно запускается на уровне 3. Поэтому даем команду

telinit 3

и система догрузит нужные сервиса, а заодно выйдет из однопользовательского режима (появится несколько консолей, которые можно переключать клавишами ALT+F1...ALT+F6). Для дальнейшей работы нам как раз понадобится две консоли. Кстати, система попробует загрузить графику, ей это не удасться, т.к. драйвер мы только что удалили. И она останется в 7-й консоли с пустым экраном. Не паникуем, нажимаем ALT+F1, видим первую консоль, там вводим логин, пароль так же как и в графическом входе (только после логина и пароля нажимаем Enter а не TAB).

Залогинившись, вызываем mc под суперпользователем

Цитата
sudo mc


Заходим в каталог /usr/src/nvidia и начинаем установку дров командой

Цитата
./NVIDIA-Linux-x86-96.43.01-pkg1.run -e


Опция "-e" позволит нам видеть отчет о действиях и увидеть конфликтующие файлы. Начинаем установку. Соглашаемся с лицензией. Отказываемся от докачки исходников с ftp нвидии. Говорим OK что будут создаваться модули нами. На вопросы ввода путей просто нажимаем Enter.

В конце концов, перед самой установкой будет показан список файлов которые будут установлены. А в начале этого списка (если будут найдены) покажутся конфликтующие файлы. Будет написано "Backup file ..." - вот это они и есть. В моем случае это были файлы

/usr/lib/xorg/modules/extensions/libGLcore.so
/usr/lib/xorg/modules/extensions/libglx.so
/usr/lib/libGL.so
/usr/lib/libGL.so.1
/usr/lib/libGL.so.1.2
/lib/modules/2.6.20-15-generic/volatile/nvidia.ko
/usr/include/GL/glext.h
/usr/include/GL/gl.h
/usr/include/GL/glxext.h
/usr/include/GL/glx.h

Это файлы от пакета nvidia-restricted-modules. Дело в том, что если просто удалить этот пакет, то вместе с данными файлами удалятся и все файлы для nVidia-чипсетов (nVidia ведь не только видеокарточки делает). А так же потребуется удаление зависимых пакетов linux-restricted-modules-2.6.20-15-generic, linux-restricted-modules-generic и linux-generic. Поэтому удалять данный пакет нежелательно. Поэтому мы поступим по-другому.

Как только увидите такой список, логинтесь во вторую консоль (переход - ALT+F2), запускайте

Цитата
sudo mc


и методично переносите эти конфликтующие файлы куда-нить в отдельный каталог в домашней директории, сверяясь со списком в первой консоли. Почему переносить а не удалять? Дело в том, что имена файлов в линухе "человеконечитаемые", и легко можно ошибиться и удалить не тот файл.

После того, как удалили все файлы, предназначенные для Backup, возвращайтесь в первую консоль. Прерывайте установку (Ctrl+c) и запускайте ее заново. Если "Backup file ..." больше не будет, то завершайте установку. Все должно пройти гладко. Можете согласиться с исправлением xorg.conf, всеравно содасться резервный файл.

Теперь внимание! Самое главное, в этот момент не перегрузиться! А зайти в файл /etc/default/linux-restricted-modules-common, и добавить в опцию DISABLED_MODULES модули nv и nvidia_new. У меня это сделано так

Цитата
DISABLED_MODULES="nv nvidia_new"


Если этого не сделать, то при следующей загрузке файл (который вы удалили!) /lib/modules/2.6.20-15-generic/volatile/nvidia.ko будет автоматически восстановлен из пакета nvidia-restricted-modules. А ваш файл, который вы скомпилировали при установке драйверов, называется /lib/modules/2.6.20-15-generic/kernel/drivers/video/nvidia.ko. Так вот, при запуске иксов будет найден первый файл. А до вашего файла дело не дойдет. И иксы не смогут загрузиться.

Перегружаемся в стандарное ядро в полный режим. Если все сделали правильно, иксы запустяться. Радуйтесь, как минимум у вас осталась работоспособная система.


9. Установка драйверов nVidia под самодельное ядро

Теперь остался последний шаг - заставить работать графику в новом ядре. Тут все достаточно просто. Загружаемся в консольном режиме самодельного ядра. Даем команду

Цитата
telinit 3


логинимся, и в первой консоли запускаем

Цитата
sudo mc


Заходим в каталог /usr/src/nvidia и начинаем установку дров командой

Цитата
./NVIDIA-Linux-x86-96.43.01-pkg1.run -Ke


Опции "-Ke" позволяют собрать только графический модуль nvidia.ko под текущее ядро (и файл будет помещен в каталог /lib/modules/имя_текущего_ядра/kernel/drivers). Никаких других общих файлов, которые например были бы размещены в /usr/lib... как при компиляции с опцией "-e", создаваться не будет.

Точно так, же как и при компиляции в стандартном ядре, соглашаемся с путями нажатием Enter. Доходим до экрана, где будут перечислены файлы, которые будут установлены. Если в начале этого списка есть конфликтущие файлы "Backup file ...", переключаемся в соседнюю консоль и удаляем (переносим) эти файлы.

После удаления конфликтующих файлов, в первой консоли прерывайте установку (Ctrl+c), и снова ее запускайте (с опцией "-Ke" естественно). После завершения установки перегружайтесь, выбрав в меню Grub в полный режим с вашим ядром.

Иксы должны запуститься. Вы можете радоваться второй раз - вы имеете систему с самодельным ядром и работащей графикой.


В любой момент вы можете теперь загрузиться под нужным ядром, и везде графика должна работать. На этом все.


Со всяческими пожеланиями, Xintrea. (c)

Далее