Переход на драйверы Nvidia и fglrx: различия между версиями

Материал из ALT Linux Wiki
м (+cat)
м (в p8/p9 fglrx_glx больше нет; спасибо за напоминание неизвестному автору https://www.opennet.ru/opennews/art.shtml?num=51015#38)
(не показано 45 промежуточных версий 11 участников)
Строка 1: Строка 1:
{{Шаблон:Stub}}
{{Шаблон:Stub}}
Переход со свободных драйверов nouveau и radeon на Nvidia и fglrx соответственно сопряжён с определёнными сложностями и для его осуществления следует выполнить целую последовательность действий.


1. Открыть терминал и получить права пользователя root: <tt>su -</tt>
Переход со свободных драйверов nouveau и radeon на Nvidia и fglrx соответственно сопряжён с определёнными сложностями, и для его осуществления следует выполнить целую последовательность действий. Обратный переход выполняется аналогичным образом.


2. обновить ядро до последней версии в используемом репозитории: <tt>apt-get update && update-kernel</tt>
{{todo|добавить пояснение причин и проблем}}
{{Attention|Переход на fglrx следует осуществлять осторожно. Драйвер поддерживается производителем крайне посредственно, и часто последняя версия не соответствует текущей версии xorg, в силу чего просто не работает. Например, {{altbug|31980}} (p8 и p9 уже не затрагивает по причине отсутствия fglrx) }}


3. перезагрузить компьютер
===Переход со свободных драйверов nouveau и radeon на  проприетарные драйвера Nvidia и fglrx===


4. Открыть терминал и получить права пользователя root: <tt>su -</tt>
1. Если вы ещё ни разу не обновляли дистрибутив, убедитесь, что apt настроен на нужный репозитарий. Это удобно сделать с помощью команды
[[Apt-repo|apt-repo]].
<source lang=bash>
apt-repo
</source>


5. установить модули для используемого вами ядра: <tt>apt-get install kernel-modules-nvidia-ваше-ядро</tt> или <tt>apt-get install kernel-modules-fglrx-ваше-ядро</tt>где ''ваше ядро'' можно определить при помощи команды <tt>uname -r</tt>, например
2. Обновить ядро до последней версии в используемом репозитории:
Открыть терминал  и получить права пользователя root:
 
<tt>[[Su|su -]]</tt>
 
или нажать <Ctrl+<Alt>+<F1>(или F2...F6) и войти как root:
 
<source lang=bash>
login: root
passwsd: <пароль root - не отображается>
</source>
 
Обновить индекс содержимого репозитория:
 
<tt>apt-get update</tt>
 
Обновить систему:
<tt>apt-get dist-upgrade</tt>
 
Обновить ядро:
<tt>update-kernel</tt>
 
3. Перезагрузить компьютер c новым ядром.
 
4. Открыть терминал и получить права пользователя root: <tt>[[Su|su -]]</tt>
 
5. установить модули для текущего используемого вами ядра:  
<tt>apt-get install nvidia_glx_common
nvidia-install-driver</tt>
или для fglrx
<tt>apt-get install kernel-modules-fglrx-ваше-ядро</tt>  
где ''ваше ядро'' можно определить при помощи команды <tt>uname -r</tt>, например
 
<source lang=bash>
  $ uname -r
  $ uname -r
  2.6.39-std-def-alt1
  2.6.39-std-def-alt1
</source>
в этом случае "ваше-ядро" называется std-def.
в этом случае "ваше-ядро" называется std-def.


6. удалить модули свободных драйверов для используемого ядра: <tt>apt-get remove kernel-modules-drm-radeon-std-def#1:2.6.39-alt1</tt> или <tt> apt-get remove kernel-modules-drm-nouveau-std-def#1:2.6.39-alt1</tt>
{{Attention|Вместо 6 и 7 пунктов (ниже) можно из графики выполнить вызов центр управления системой {{prg|асс}} и выбрать в нём нужный драйвер (см. настройку дисплея в нём), также автоматом будут сделаны все необходимые настройки. Совет подходит для p7 и выше.}}


7. пересобрать initrd: <tt>make-initrd</tt>
6. Создать файл /etc/modprobe.d/blacklist-video.conf со следующим содержимым:


8. создать файл: /etc/X11/xorg.conf.d/50-driver.conf со следующим содержимым:
blacklist radeon
blacklist nouveau
7. Создать файл: /etc/X11/xorg.conf.d/50-driver.conf со следующим содержимым:
<source lang=text>
  Section "Device"
  Section "Device"
     Identifier  "Card0|0"
     Identifier  "Card0|0"
     Driver      "nvidia" # или, соответственно fglrx
     Driver      "nvidia"  
  EndSection
  EndSection
</source>
или, соответственно fglrx
<source lang=text>
Section "Device"
    Identifier  "Card0|0"
    Driver      "fglrx"
EndSection
</source>
Если используется /etc/X11/xorg.conf (например, дистрибутив старого поколения),
файл 50-driver.conf '''создавать не надо''', а изменения следует делать в соответствующей секции
<source lang=text>
Section "Device"
.........
    Driver      "nvidia" (заменяем вместо того, что там прописан)
или
    Driver      "fglrx" (заменяем вместо того, что там прописан)
  .....
EndSection
</source>
в xorg.conf.
8. Перегенерируем загрузочную запись (от root):
<source lang=bash>
rmmod radeon
или
rmmod nouveau
installkernel $(uname -r)
</source>
9. Перезагрузиться.
'''Возможная проблема:'''
Несмотря на blacklist-video.conf, radeon и nouveau могут быть загружены всё равно,
например, если они попали в initrd.
В случае такой проблемы можно удалить их совсем (см. Удаление модулей свободных драйверов для используемого ядра). Однако, следует помнить, что возвращать модуль, возможно, придётся из архива репозитария, если будет необходимость сохранить старое ядро. Архивы ведутся для Sisyphus и стабильных репозитариев, начиная с p7/t7.
=== Удаление модулей свободных драйверов для используемого ядра: ===
1. Удаляем модуль
<tt>apt-get remove kernel-modules-drm-radeon-std-def#1:2.6.39-alt1</tt>
или
<tt> apt-get remove kernel-modules-drm-nouveau-std-def#1:2.6.39-alt1</tt>
Где "#1:2.6.39-alt1" - указание на версию модуля, если установлено более одного ядра. Если ядро одно, можно использовать просто
<tt>apt-get remove kernel-modules-drm-nouveau-std-def</tt>
При этом, если ядер окажется, всё же, более одного, apt-get завершится с ошибкой, но выведет весь список с версиями. Так что, это можно использовать, если Вы не знаете, как записать версию.
2. Пересобрираем initrd:
<tt>make-initrd -k $(uname -r)</tt>
или просто:
<tt>installkernel $(uname -r)</tt>
в последнем случае сразу и переустанавливается текущий загрузчик
3. Переустановить загрузчик при необходимости.
см [[Установка_проприетарных_драйверов_NVIDIA_и_ATI]]
=== Замена драйверов nouveau/nvidia "на лету"  ===
[[Nvidia#.D0.97.D0.B0.D0.BC.D0.B5.D0.BD.D0.B0_.D0.B4.D1.80.D0.B0.D0.B9.D0.B2.D0.B5.D1.80.D0.BE.D0.B2_nouveau.2Fnvidia_.22.D0.BD.D0.B0_.D0.BB.D0.B5.D1.82.D1.83.22|Замена драйверов nouveau/nvidia "на лету"]]
=== Гибридная графика ===
Для '''Nvidia''' основная статья [[Nvidia_optimus,_настройка_и_запуск_bumblebee]]
Для '''AMD''':
Для управления переключениями видеокартами через amdcccle (Catalyst) необходимо дать из под рута команду
<source lang="bash">aticonfig --initial</source>
после этого появится пункт в amdcccle для переключения между intel/amd или amd/amd в зависимости от железа. Есть одно НО необходимо как минимум перезапустить X-сервер о чем и будет написано в amdcccle после совершения манипуляции.
Для управления из консоли
<source lang="bash">aticonfig --px-igpu переключение на интегрированную
aticonfig --px-dgpu переключение на дискретную</source>


9. перезагрузиться
и для лучшего понимания man aticonfig


[[Category:FAQ]]
=== Ссылки по теме ===
[[Category:Hardware]]
*[[Установка_проприетарных_драйверов_NVIDIA_и_ATI]]
*[[Nvidia]]
{{Category navigation|title=Видеодрайвера|category=Видеодрайвера|sortkey={{SUBPAGENAME}}}}

Версия от 18:37, 3 июля 2019

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.


Переход со свободных драйверов nouveau и radeon на Nvidia и fglrx соответственно сопряжён с определёнными сложностями, и для его осуществления следует выполнить целую последовательность действий. Обратный переход выполняется аналогичным образом.

TODO:
добавить пояснение причин и проблем
Внимание! Переход на fglrx следует осуществлять осторожно. Драйвер поддерживается производителем крайне посредственно, и часто последняя версия не соответствует текущей версии xorg, в силу чего просто не работает. Например, altbug #31980 (p8 и p9 уже не затрагивает по причине отсутствия fglrx)


Переход со свободных драйверов nouveau и radeon на проприетарные драйвера Nvidia и fglrx

1. Если вы ещё ни разу не обновляли дистрибутив, убедитесь, что apt настроен на нужный репозитарий. Это удобно сделать с помощью команды apt-repo.

apt-repo

2. Обновить ядро до последней версии в используемом репозитории: Открыть терминал и получить права пользователя root:

su -

или нажать <Ctrl+<Alt>+<F1>(или F2...F6) и войти как root:

login: root
passwsd: <пароль root - не отображается>

Обновить индекс содержимого репозитория:

apt-get update

Обновить систему:

apt-get dist-upgrade

Обновить ядро:

update-kernel

3. Перезагрузить компьютер c новым ядром.

4. Открыть терминал и получить права пользователя root: su -

5. установить модули для текущего используемого вами ядра:

apt-get install nvidia_glx_common
nvidia-install-driver

или для fglrx

apt-get install kernel-modules-fglrx-ваше-ядро 

где ваше ядро можно определить при помощи команды uname -r, например

 $ uname -r
 2.6.39-std-def-alt1

в этом случае "ваше-ядро" называется std-def.

Внимание! Вместо 6 и 7 пунктов (ниже) можно из графики выполнить вызов центр управления системой асс и выбрать в нём нужный драйвер (см. настройку дисплея в нём), также автоматом будут сделаны все необходимые настройки. Совет подходит для p7 и выше.


6. Создать файл /etc/modprobe.d/blacklist-video.conf со следующим содержимым:

blacklist radeon
blacklist nouveau

7. Создать файл: /etc/X11/xorg.conf.d/50-driver.conf со следующим содержимым:

 Section "Device"
     Identifier  "Card0|0"
     Driver      "nvidia" 
 EndSection

или, соответственно fglrx

 Section "Device"
     Identifier  "Card0|0"
     Driver      "fglrx" 
 EndSection

Если используется /etc/X11/xorg.conf (например, дистрибутив старого поколения), файл 50-driver.conf создавать не надо, а изменения следует делать в соответствующей секции

 Section "Device"
.........
     Driver      "nvidia" (заменяем вместо того, что там прописан)
или
     Driver      "fglrx" (заменяем вместо того, что там прописан)
  .....
 EndSection

в xorg.conf.

8. Перегенерируем загрузочную запись (от root):

rmmod radeon
или
rmmod nouveau
installkernel $(uname -r)

9. Перезагрузиться.

Возможная проблема:

Несмотря на blacklist-video.conf, radeon и nouveau могут быть загружены всё равно, например, если они попали в initrd.

В случае такой проблемы можно удалить их совсем (см. Удаление модулей свободных драйверов для используемого ядра). Однако, следует помнить, что возвращать модуль, возможно, придётся из архива репозитария, если будет необходимость сохранить старое ядро. Архивы ведутся для Sisyphus и стабильных репозитариев, начиная с p7/t7.

Удаление модулей свободных драйверов для используемого ядра:

1. Удаляем модуль

apt-get remove kernel-modules-drm-radeon-std-def#1:2.6.39-alt1

или

 apt-get remove kernel-modules-drm-nouveau-std-def#1:2.6.39-alt1


Где "#1:2.6.39-alt1" - указание на версию модуля, если установлено более одного ядра. Если ядро одно, можно использовать просто

apt-get remove kernel-modules-drm-nouveau-std-def 

При этом, если ядер окажется, всё же, более одного, apt-get завершится с ошибкой, но выведет весь список с версиями. Так что, это можно использовать, если Вы не знаете, как записать версию.

2. Пересобрираем initrd:

make-initrd -k $(uname -r)

или просто:

installkernel $(uname -r)

в последнем случае сразу и переустанавливается текущий загрузчик

3. Переустановить загрузчик при необходимости.

см Установка_проприетарных_драйверов_NVIDIA_и_ATI

Замена драйверов nouveau/nvidia "на лету"

Замена драйверов nouveau/nvidia "на лету"

Гибридная графика

Для Nvidia основная статья Nvidia_optimus,_настройка_и_запуск_bumblebee

Для AMD:

Для управления переключениями видеокартами через amdcccle (Catalyst) необходимо дать из под рута команду

aticonfig --initial

после этого появится пункт в amdcccle для переключения между intel/amd или amd/amd в зависимости от железа. Есть одно НО необходимо как минимум перезапустить X-сервер о чем и будет написано в amdcccle после совершения манипуляции.

Для управления из консоли

aticonfig --px-igpu переключение на интегрированную

aticonfig --px-dgpu переключение на дискретную

и для лучшего понимания man aticonfig

Ссылки по теме