LinuxForum.Fans
Тема

Беспакетная установка драйверa видеокарты NVIDIA

Автор: Dadoolya 40 сообщений 17357 просмотров
#269588
"Dadoolya" написал:
- Выйти из нее (по крайней мере, с моим опытом), возможно только командой reboot.

Нужно не "выходить" из консоли, а запускать X-server
[console]$ startx[/console]

"Dadoolya" написал:
Как заставить консоль "увидеть" и "завести" самораспаковывающийся архив с моим драйвером?

Варианты всё те же - см. посты №№ 1, 2, 3. Скорее всего вы неправильно вводите команду.

"Dadoolya" написал:
Может, пока он этот файл видел, надо было ловить момент и давать команду sh? Жаль, сразу не дотумкал.

Да, перестаньте относиться к компьютеру, как к к ящику с паранормальными явлениями

#269617

Dadoolya,

"Сложный способ" подготовки к установке и установки драйвера NVIDIA для Mandriva/Mageia.

(на примере Mageia2 и драйвера nvidia версии 304.37)
Условные обозначения: (их не набираем в терминале)
text
$ - действуем от простого пользователя
# - действуем от рута

ПОДГОТОВКА К УСТАНОВКЕ ДРАЙВЕРА:

Показать
1) Загружаем драйвер (файл *.run с ftp или сайта nvidia) Например последний: [url]ftp://download.nvidia.com/XFree86/Linux-x86/304.37/NVIDIA-Linux-x86-304.37.run[/url]
2) Копируем его в в домашнюю папку в каталог /home/user/nvidia: (где user - это ваш пользователь)
Такой вид:
text
/home/user/nvidia/NVIDIA-Linux-x86-304.37.run

3) Добавляем своего пользователя в группу video:
Пример:
[console]# gpasswd -a verg video
Adding user verg to group video[/console]
4) Ищем старые пакеты nvidia, установленные с репозитория:
[console]$ rpm -qa | grep nvidia[/console]
Например:
[console]$ rpm -qa | grep nvidia
x11-driver-video-nvidia-current-295.49-2.mga2.nonfree
dkms-nvidia-current-295.49-2.mga2.nonfree
nvidia-current-kernel-desktop-latest-295.49-4.mga2.nonfree
nvidia-current-kernel-3.3.6-desktop-2.mga2-295.49-4.mga2.nonfree
nvidia-current-doc-html-295.49-2.mga2.nonfree[/console]
5) Удаляем их все:
[console]# urpme nvidia -a[/console]
6) Удаляем старые модули dkms для драйвера nvidia:
Сначала проверяем наличие установленных модулей: (ниже приведен пример - в примере другое ядро и модуль)
[console]# dkms status
nvidia-current, 290.10-1, 2.6.39.4-4.2-desktop, i586: installed[/console]
Далее удаляем модуль конкретного ядра:
[console]# dkms remove -m nvidia-current -v 290.10-1 -k 2.6.39.4-4.2-desktop[/console]
Проверка: (ничего быть не должно)
[console]# dkms status
#[/console]
7) Можно удалить и сами пакеты dkms, за ненадобностью:
[console]# urpme dkms dkms-minimal[/console]
8 ) Далее ставим gcc и make:
[console]# urpmi gcc make[/console]
9) Ставим kernel-devel и kernel-source для своего ядра:
Например:
Смотрим какое у нас ядро:
[console]$ uname -a
Linux localhost 3.3.6-desktop-2.mga2 #1 SMP Thu May 17 16:49:59 UTC 2012 i686 i686 i386 GNU/Linux[/console]
Ищем kernel-devel:(ядро десктопное поэтому: kernel-desktop-devel)
[console]$ urpmf -mf kernel-desktop-devel
kernel-desktop-devel-3.3.6-2.mga2-1-1.mga2.i586:Core Release (distrib1)
kernel-desktop-devel-latest-3.3.6-2.mga2.i586:Core Release (distrib1)[/console]
Ищем kernel-source:
[console]$ urpmf -mf kernel-source
kernel-source-3.3.6-1.mga2-1-1.mga2.noarch:Core Release (distrib1)
kernel-source-latest-3.3.6-2.mga2.noarch:Core Release (distrib1)
kernel-source-3.3.6-2.mga2-1-1.mga2.noarch:Core Release (distrib1)[/console]
Cтавим следующие:
[console]# urpmi kernel-desktop-devel-3.3.6-2.mga2-1 kernel-source-3.3.6-2.mga2-1[/console]
10) Прописываем nokmsboot в загрузку grub:
Проще всего это сделать через графику:MCC- Загрузка - Настройка загрузки - Далее - Далее - Выбираем нужную строку с нашим ядром - Изменить - добавляем в конец поля "Дополнение" - nokmsboot - Ok - Завершить
Или отредактировать файл /boot/grub/menu.lst:
[console]# mcedit /boot/grub/menu.lst[/console]
Пример:

Показать
text
timeout 10
color black/cyan yellow/cyan
gfxmenu (hd0,3)/boot/gfxmenu
default 0

title linux kernel (hd0,3)/boot/vmlinuz-3.3.6-desktop-2.mga2 BOOT_IMAGE=linux root=UUID=9399f4bc-aa1c-4380-8c04-6e5c184dc34a splash quiet nokmsboot resume=UUID=88552928-27de-4009-a00c-5ab72eaa29ac vga=788 initrd (hd0,3)/boot/initrd-3.3.6-desktop-2.mga2.img

title linux-nonfb kernel (hd0,3)/boot/vmlinuz BOOT_IMAGE=linux-nonfb root=UUID=9399f4bc-aa1c-4380-8c04-6e5c184dc34a nokmsboot resume=UUID=88552928-27de-4009-a00c-5ab72eaa29ac initrd (hd0,3)/boot/initrd.img

title failsafe kernel (hd0,3)/boot/vmlinuz BOOT_IMAGE=failsafe root=UUID=9399f4bc-aa1c-4380-8c04-6e5c184dc34a failsafe nosmp initrd (hd0,3)/boot/initrd.img

11) Удяляем файл(лучше переименовать) /etc/X11/xorg.conf
[console]# mv /etc/X11/xorg.conf /etc/X11/xorg.conf.backup[/console]
12) Добавление nouveau в черный список: (ОБЯЗАТЕЛЬНО!) - можно и с помощью этого нового драйвера, но сделаем по старинке
[console]# echo "blacklist nouveau" >> /etc/modprobe.d/blacklist-compat[/console]
(для Mageia2 файл: /etc/modprobe.d/blacklist-compat.conf )

УСТАНОВКА ДРАЙВЕРА:

Показать
13) Открываем терминал(любой - можно и программу Konsole) и набираем:
[console]# init 3[/console]
14) Выбросит в голый терминал с предложением ввести логин и пароль рута (вводим)
15) Далее ставим драйвер: (где user - это ваш пользователь)
[console]# sh /home/user/nvidia/[/console]
Далее жмём клавишу "TAB" и строка принимает вид:
text
# sh /home/user/nvidia/NVIDIA-Linux-x86-304.37.run

Ввод - ставим драйвер - жмём практически везде "Yes", когда будет предложено сгенерировать новый xorg.conf, то соглашаемся.
16) Перезагрузка (Ctrl+Alt+Delete)
17) Проверка работоспособности видеокарты:
[console]$ glxinfo | grep direct
direct rendering: Yes[/console]
18) Утилита конфигурации: (иногда требуется запуск и от рута для сохранения действий в xorg.conf)

text
nvidia-settings

Примечание: После каждого обновления ядра или xorg-server требуется повторение процедуры установки драйвера, начиная с пункта №13

Дополнение к инструкции для пользователей DKMS:

Показать
(а именно dkms используют драйвера из репозитория)
Начиная с драйвера 304.37
Кто поставил драйвер первым способом может удалить его так:
[console]# nvidia-installer --uninstall[/console]
1) Пропускаем пункт №7 из подготовки к установке драйвера, то есть не удаляем пакеты dkms и dkms-minimal
(кто удалил ставим заново)
[console]# urpmi dkms dkms-minimal[/console]
2) Пункт №15 (в установке) выполняем полностью.
После запуска команды на установку сразу будет предложена установка модуля dkms драйвера nvidia
Согласиться на установку. Нажать "Yes"
Все остальные пункты инструкции по подготовке и установке в силе.
3) Проверка модулеq dkms:
[console]# dkms status
nvidia, 304.37, 3.3.6-desktop-2.mga2, i586: installed[/console]
4) Теперь при обновлении ядра больше не нужно вручную переустанавливать драйвер, установится сам
Пример:
Показать
text
[verg@localhost ~]$ urpmi kernel-desktop-devel-3.3.8-2.mga2 kernel-desktop-3.3.8-2.mga2 kernel-source-3.3.8-2.mga2 

http://mirror.yandex.ru/mageia/distrib/2/i586/media/core/updates_testing/kernel-desktop-devel-3.3.8-2.mga2-1-1.mga2.i586.rpm http://mirror.yandex.ru/mageia/distrib/2/i586/media/core/updates_testing/kernel-source-3.3.8-2.mga2-1-1.mga2.noarch.rpm http://mirror.yandex.ru/mageia/distrib/2/i586/media/core/updates_testing/kernel-desktop-3.3.8-2.mga2-1-1.mga2.i586.rpm устанавливается kernel-desktop-devel-3.3.8-2.mga2-1-1.mga2.i586.rpm kernel-source-3.3.8-2.mga2-1-1.mga2.noarch.rpm kernel-desktop-3.3.8-2.mga2-1-1.mga2.i586.rpm из /var/cache/urpmi/rpms Подготовка... ################################################################################################################################################################################ 1/3: kernel-desktop-3.3.8-2.mga2 ################################################################################################################################################################################ I: *** Including module: dash *** I: *** Including module: i18n *** I: *** Including module: rpmversion *** I: *** Including module: plymouth *** I: *** Including module: kernel-modules *** I: *** Including module: resume *** I: *** Including module: rootfs-block *** I: *** Including module: terminfo *** I: *** Including module: udev-rules *** I: Skipping udev rule: 50-udev.rules I: Skipping udev rule: 95-late.rules I: Skipping udev rule: 50-firmware.rules I: *** Including module: usrmount *** I: *** Including module: base *** I: *** Including module: fs-lib *** I: *** Including module: shutdown *** I: Skipping program kexec as it cannot be found and is flagged to be optional I: *** Including modules done *** I: Wrote /boot/initrd-3.3.8-desktop-2.mga2.img: I: -rw-r--r-- 1 root root 6193235 авг. 15 00:40 /boot/initrd-3.3.8-desktop-2.mga2.img defaulting background resolution to 1024x768 2/3: kernel-source-3.3.8-2.mga2 ################################################################################################################################################################################ 3/3: kernel-desktop-devel-3.3.8-2.mga2 ################################################################################################################################################################################

nvidia (304.37): Installing module. .................................. ........................... Необходимо перезапустить компьютер для kernel-desktop-3.3.8-2.mga2 [verg@localhost ~]$ su Пароль: [root@localhost verg]# dkms status nvidia, 304.37, 3.3.8-desktop-2.mga2, i586: installed nvidia, 304.37, 3.3.6-desktop-2.mga2, i586: installed [root@localhost verg]#

5) После обновления ядра просто перезагрузиться

з.ы. добавил с списки полезных советов Mandriva/Mageia (в шапках разделов)

#269622

verg, это ж целая диссертация !

#269631

verg, это надо отдельной прикрепленной темой разместить здесь и на форуме магеи, а еще и в вики добавить. *THUMBSUP*
надо только будет придумать название пострашнее, чтобы неопытные пользователи не сразу "последнюю версию драйвера" установить пытались, а все же ставили сначала драйвера из репозитория.

#269632
"xxblx" написал:
verg, это надо отдельной прикрепленной темой разместить здесь и на форуме магеи, а еще и в вики добавить. ay

Пока добавил в списки полезных советов.

Особо трубить не надо, наверное, кто следит за новостями посмотрит.
А кому потребуется, подскажем.

По драйверам из реп согласен <- они должны быть в приоритете

#269634
"verg" написал:
Особо трубить не надо,

IMHO, не тот случай, когда скромность украшает ;)
Отличная работа!

#269666

Вот это другое дело, verg! Вот спасибо, так спасибо! А то уж слишком просто, удручающе просто все было: ставишь драйвер 259.59, перезагружаешься, и видишь, как лог спотыкается после фразы о том, что установлен драйвер 302.11, и на том старт иксов заканчивается.
И что, это все действительно можно делать в терминале, или даже просто вызвав Консоль через Главное меню? Я к тому, что даже инструкцию можно не перепечатывать?
Уже проверил и убедился, что пути в Мандриве и Магии совпадают, и GRUB у них у обеих legacy, так что трудностей для себя не вижу, завтра же попробую. Так жалко, что поздно увидел - у нас уже ночь!
Кстати, verg, -=Serj=- ! А ну сейчас же прекратите подозревать меня в том, что я набираю команды со знаками # & $ ! ;D

"xxblx" написал:
чтобы неопытные пользователи не сразу "последнюю версию драйвера" установить пытались,

Ехидничать всегда вредно. Вот и сейчас я мог бы спросить: "С чего Вы взяли, что версия 259.59 - последняя?" ;) Просто это единственный пакет, в котором я нашел свою видеокарту, и то в бета-версии.

#269669
"Dadoolya" написал:
И что, это все действительно можно делать в терминале, или даже просто вызвав Консоль через Главное меню?

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

А установку нужно проводить в голой консоли в init 3, то есть нужно выйти из иксов.
Подробнее про init http://ru.wikipedia.org/wiki/Init

"Dadoolya" написал:
"С чего Вы взяли, что версия 259.59 - последняя?"

Уже давно не последняя. Кстати, не бета.
http://www.nvidia.com/object/unix.html

#269682
"verg" написал:
Уже давно не последняя. Кстати, не бета.

Действительно! За 15 дней там столько изменений! Сейчас нашел ее уже в версии 304.37, притом не бета.
Вот опять Вам спасибо! *DRINK*

#269702
"Dadoolya" написал:
Ехидничать всегда вредно. Вот и сейчас я мог бы спросить: "С чего Вы взяли, что версия 259.59 - последняя?" ad Просто это единственный пакет, в котором я нашел свою видеокарту, и то в бета-версии.

При чем здесь "ехидничать".
У вас частный случай, когда с установкой драйвера из репозитория есть серьезные проблемы.
А я говорил про абсолютное большинство пользователей, у которых нормально устанавливается проприетарный драйвер из репозитория. Вот им как раз и надо ставить из репозитория, а не бинарный драйвер с оф сайта по инструкции этой, даже если он более новый.
Если есть возможность из репозитория ставить - надо ей воспользоваться (опять же не конкретно вам говорю, а вообще), просто некоторые "новые" пользователи могут этого не понимать, по тому и говорю, что руководство надо обозначить как-то, чтобы пользователи сначала отдавали предпочтение репозиторию, а уже потом бинарным драйвера с оф сайта ставили, если с репозиторием не сложилось.
Ведь пакеты не так просто делаются. Все они содержат ряд изменений под конкретную систему (имеют правильные зависимости, сразу в загрузку ядра суют нужный модуль, может вообще имеют изменения в коде драйвера для повышения производительности), иными словами имеют ряд отличий от "ванильных исходников", доступных на официальных сайтах производителей.
Так что сообщение не конкретно для вас было (у вас то понятно из реп не ставится драйвер, так что придется бинарный ставить), а для всех кто может это прочитать потом. Как-то так.

#269761
"xxblx" написал:
Если есть возможность из репозитория ставить - надо ей воспользоваться (опять же не конкретно вам говорю, а вообще),

Полностью согласен! Извините, озверел уже в этой борьбе сосвоими видеокартами. *DRINK*

#269764
"verg" написал:
Да, про переключалку видеокарт отдельной темой лучше.

В BIOS отключил карту NVIDIA, остался с одной "Integrated". За сутки прошел весь путь, что и с NVIDIA, с теми же результатами. Пришлось закачивать еще пару десятков пакетов - вот мусора-то развелось в системе: одних пакетов с названиями, начинающимися с kernel- не менее 2,5 сотен! Только в этот раз уже не стал ходить на оф сайт. Так что к теме переключалок охладел. Возникло ощущение, что мы все тут упускаем что-то, ходим где-то рядом. Вот в Вашей новой инструкции, мне кажется, это найдено. Пока закачиваю новый драйвер своим GPRS-ом...

#269765

Дополнение к инструкции (сообщение №22)
Для любителей приемуществ dkms (а именно его используют драйвера из репозитория)
Начиная с драйвера 304.37
Кто поставил драйвер первым способом может удалить его так:
[console]# nvidia-installer --uninstall[/console]
1) Пропускаем пункт №7 из подготовки к установке драйвера, то есть не удаляем пакеты dkms и dkms-minimal
(кто удалил ставим заново)
[console]# urpmi dkms dkms-minimal[/console]
2) Пункт №15 (в установке) выполняем полностью.
После запуска команды на установку сразу будет предложена установка модуля dkms драйвера nvidia
Согласиться на установку. Нажать "Yes"
Все остальные пункты инструкции по подготовке и установке в силе.
3) Проверка модулеq dkms:
[console]# dkms status
nvidia, 304.37, 3.3.6-desktop-2.mga2, i586: installed[/console]
4) Теперь при обновлении ядра больше не нужно вручную переустанавливать драйвер, установится сам
Пример:

Показать
text
[verg@localhost ~]$ urpmi kernel-desktop-devel-3.3.8-2.mga2 kernel-desktop-3.3.8-2.mga2 kernel-source-3.3.8-2.mga2 

http://mirror.yandex.ru/mageia/distrib/2/i586/media/core/updates_testing/kernel-desktop-devel-3.3.8-2.mga2-1-1.mga2.i586.rpm http://mirror.yandex.ru/mageia/distrib/2/i586/media/core/updates_testing/kernel-source-3.3.8-2.mga2-1-1.mga2.noarch.rpm http://mirror.yandex.ru/mageia/distrib/2/i586/media/core/updates_testing/kernel-desktop-3.3.8-2.mga2-1-1.mga2.i586.rpm устанавливается kernel-desktop-devel-3.3.8-2.mga2-1-1.mga2.i586.rpm kernel-source-3.3.8-2.mga2-1-1.mga2.noarch.rpm kernel-desktop-3.3.8-2.mga2-1-1.mga2.i586.rpm из /var/cache/urpmi/rpms Подготовка... ################################################################################################################################################################################ 1/3: kernel-desktop-3.3.8-2.mga2 ################################################################################################################################################################################ I: *** Including module: dash *** I: *** Including module: i18n *** I: *** Including module: rpmversion *** I: *** Including module: plymouth *** I: *** Including module: kernel-modules *** I: *** Including module: resume *** I: *** Including module: rootfs-block *** I: *** Including module: terminfo *** I: *** Including module: udev-rules *** I: Skipping udev rule: 50-udev.rules I: Skipping udev rule: 95-late.rules I: Skipping udev rule: 50-firmware.rules I: *** Including module: usrmount *** I: *** Including module: base *** I: *** Including module: fs-lib *** I: *** Including module: shutdown *** I: Skipping program kexec as it cannot be found and is flagged to be optional I: *** Including modules done *** I: Wrote /boot/initrd-3.3.8-desktop-2.mga2.img: I: -rw-r--r-- 1 root root 6193235 авг. 15 00:40 /boot/initrd-3.3.8-desktop-2.mga2.img defaulting background resolution to 1024x768 2/3: kernel-source-3.3.8-2.mga2 ################################################################################################################################################################################ 3/3: kernel-desktop-devel-3.3.8-2.mga2 ################################################################################################################################################################################

nvidia (304.37): Installing module. .................................. ........................... Необходимо перезапустить компьютер для kernel-desktop-3.3.8-2.mga2 [verg@localhost ~]$ su Пароль: [root@localhost verg]# dkms status nvidia, 304.37, 3.3.8-desktop-2.mga2, i586: installed nvidia, 304.37, 3.3.6-desktop-2.mga2, i586: installed [root@localhost verg]#

5) После обновления ядра просто перезагрузиться

#269773
"verg" написал:
18) Утилита конфигурации: (иногда требуется запуск и от рута для сохранения действий в xorg.conf)

nvidia-settings

Извиняюсь за непонятливость! Что я тут должен сделать? Запустить эту утилиту? Тогда просто надо указать как, и в каких случаях. Получается, что в пункте 15 создавать файл конфигурации все-таки не нужно, а только теперь, после проверки работоспособности?

#269774
"Dadoolya" написал:
Получается, что в пункте 15 создавать файл конфигурации все-таки не нужно

Нужно.

Но его можно создать один раз и при последующих установках больше не соглашаться на создание нового.

"Dadoolya" написал:
а только теперь, после проверки работоспособности?

Без xorg.conf у него не будет никакой работоспособности =)

#269775
"verg" написал:
Начиная с драйвера 304.37
Кто поставил драйвер первым способом может удалить его так:
Консоль
# nvidia-installer --uninstall

Опять извиняюсь! Говоря о "первом способе", Вы имеете ввиду, что это относится к тем, кто уже успел установить драйвер по Вашему "Сложному способу" до опубликования данного дополнения к нему?

#269777
"verg" написал:
Dadoolya пишет:

Получается, что в пункте 15 создавать файл конфигурации все-таки не нужно

Нужно.

Но его можно создать один раз и при последующих установках больше не соглашаться на создание нового.

Извините, но Вы так и не сказали, какие именно телодвижения требуются от меня в пункте 18?

#269778
"Dadoolya" написал:
Извините, но Вы так и не сказали, какие именно телодвижения требуются от меня в пункте 18?

В общем случае: никаких. Пункт №18 в основном для информации: как запускать утилиту конфигурации.
Я, например, её запускаю, только для того, чтобы покрутить регулятор Digital Vibrance

#269852

Dadoolya, если Вы будете продолжать в таком же духе, то в лучшем случае убьете 3D-ускорение карточки intel (что собственно Вы уже добились) в худшем вообще получите черный экран. Я Вам уже объяснил, что интегрированная карточка intel работает всегда, она же является основной для запуска иксов. Обработка 3D-рендеринга отдельных приложений карточки nvidia происходит за счет дополнительного X-сервера ( VirtualGL) с этой целью и был создан проект bumblebee. Поэтому наличие файла конфигурации xorg для карточки nvidia на основном X-сервере здесь неуместно и в данном случае этот файл конфигурации может использоваться только дополнительными иксами с помощью bumblebee. Также, я Вам уже отметил, что работоспособность эффектов карточки intel будут во многом зависеть от путей установленных библиотек драйвера nvidia, что является основным моментом в установке драйвера nvidia, и установка их из исходников бинарника *.run предполагает ручное разруливание переменной среды Path. Посему приводите систему в порядок: вычищайте систему от библиотек nvidia, переустанавливайте видеосистему Xorg и устанавливайте драйвер nvidia из репозитория.

Войдите или зарегистрируйтесь, чтобы ответить.