[РЕШЕНО] NVidia drivers, X server (и Fast Foot)
Добрый день.
Устанавливаю проприетарные драйвера NVidia и X сервер(и то и другое делаю впервые).
Видеокарта GeForce GT 740M.
Делаю то, что прописано в гентушном вики про KDE(и далее по ссылкам из него на X server и VNidia drivers). Т.е. поставил KDE-шный профиль, установил сервисы, собрал ядро с нужными опциями, пересобрал мир с подходящими use-флагами.
И столкнулся со следующими проблемами.
1. Иксы не запускаются. startx выводит
Loading extension GLX (EE) Fatal server error: (EE) no screens found(EE) (EE)
Вот конец /var/log/Xorg.0.log
[ 94.457] (II) LoadModule: "glx" [ 94.457] (II) Loading /usr/lib64/xorg/modules/extensions/libglx.so [ 94.464] (II) Module glx: vendor="NVIDIA Corporation" [ 94.464] compiled for 4.0.2, module version = 1.0.0 [ 94.464] Module class: X.Org Server Extension [ 94.464] (II) NVIDIA GLX Module 304.117 Tue Nov 26 21:45:09 PST 2013 [ 94.465] Loading extension GLX [ 94.465] (II) LoadModule: "nvidia" [ 94.465] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so [ 94.465] (II) Module nvidia: vendor="NVIDIA Corporation" [ 94.465] compiled for 4.0.2, module version = 1.0.0 [ 94.465] Module class: X.Org Video Driver [ 94.466] (II) NVIDIA dlloader X Driver 304.117 Tue Nov 26 21:27:08 PST 2013 [ 94.466] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs [ 94.466] (--) using VT number 7 [ 94.472] (EE) No devices detected. [ 94.472] (EE) Fatal server error: [ 94.472] (EE) no screens found(EE) [ 94.472] (EE) Please consult the The X.Org Foundation support at http://wiki.x.org for help. [ 94.472] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information. [ 94.472] (EE)
Также ноутбук стал греться заметно сильнее. Даже в консоли, ничего не делая, может зашуметь вентилятором. Если загрузиться с RescueCD, например, то не греется. Причём проблема с нагревом есть даже если загрузиться со старого ядра, когда такой проблемы не было.
2. Менеджер загрузки(rEFInd) запускается лишь если в BIOS установлена опция Fast Boot. Т.е. без Fast Boot при включении ноутбука на экране показывается лого ASUS и всё, чёрный экран. Раньше грузилось нормально. Это совсем странно.
Т.к. эту странность заметил примерно, когда начал настраивать иксы, подозреваю, что это как-то связано с этими действиями.
В чём может быть дело?
- Для комментирования войдите или зарегистрируйтесь
Цитата: [ 94.464] (II)
Зачем вы ставите эту версию драйвера, посмотрите поддерживаемые им карты:
http://www.nvidia.ru/download/driverResults.aspx/71397/ru
Вам надо ставить версию начиная с 319.17 и выше
http://www.nvidia.ru/download/driverResults.aspx/61471/ru
За подробностями сюда: http://www.nvidia.ru/Download/Find.aspx?lang=ru
Хмм, действительно.
Хмм, действительно. Интересно, почему ставится старая версия драйвера? По-идее, emerge же должен тянуть эту: http://www.nvidia.com/download/driverResults.aspx/72229/en-us не так ли? А он тянет старую. В начале вывода emerge @module-rebuild
Страничку выбора драйвера я видел. Но руками не хочется драйвер устанавливать. Это же не предпочтительный способ, не так ли?
Цитата:Интересно, почему
У вас нужно спрашивать, вы же ставите систему. Смотрите что маскировали, откуда синхронизировали дерево portage.
Он должен тянуть последнюю размаскированную в вашей системе версию, вот http://packages.gentoo.org/package/x11-drivers/nvidia-drivers какие версии пакетов присутствуют в актуальном дереве portage и состояние для каждых веток .
Как видите последняя доступная для установки версия nvidia-drivers-331.20
Я вам и не предлагаю ставить руками, просто сломаете систему. Всё нужно ставить через portage.
Разбирайтесь почему у вас ставится именно эта версия nvidia-drivers.
Для начала можете поставить eix и посмотреть с его помощью состояние пакетов:
При чём здесь module-rebuild ?
Вам нужно запускать 'emerge -1 nvidia-drivers' или вообще 'emerge -auvDN world' .
kostik87 написал(а):У вас
Логично :)
Синхронизируется с rsync://rsync.ru.gentoo.org/gentoo/gentoo-portage
показывает, что актуальные версии маскированы(ясли я правильно интерпретирую это) --
Так что корень зла, наверное, найден.
Почему это так, если /etc/portage/package.mask отсутствует и, как мне казалось, маскироваться не должно?
Это я по вики пересобирал модули, установленные через ебилды.
А что emerge -1 делает?
А что emerge -1
А что emerge -1 делает?
Читает свой ман вслух и с выражением ?
Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)
Если это была опечатка -- 1
Если это была опечатка -- 1 вместо l, то с этим ясно. Если же нет, то в мане я такого не видел.
UPD. Нашёл в мане.
Slepnoga, ты ли это ? Нет, ну
Slepnoga, ты ли это ?
Нет, ну я прям запишу куда-нибудь, что ты спросил, что за опция '-1' у emerge.
emerge -1 atom == emerge --oneshot atom.
Это я спрашивал.
Это я спрашивал.
kostik87
Таак, теперь осталось ответить на вопрос что же делает emerge @module-rebuild
emerge -auvDN world говорит,
говорит, что мёржить нечего.
тянет прежнюю версию. Т.е. всё выглядит, что новые версии маскированы. Что странно.
Я не знаю откуда вы
Я не знаю откуда вы синхронизируйтесь, но вот http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-331.20.ebuild?view=markup, это из офицального дерева, как вы видите, и если посмотрите на строку keywords, то увидите:
KEYWORDS="-* amd64 x86 ~amd64-fbsd ~x86-fbsd"
Как видите для веток amd64 и x86 этот ebuild является стабильным.
Откуда я синхронизируюсь я
Откуда я синхронизируюсь было написано ранее. Речь же о параметре SYNC в portage/make.conf? Стандартное гентушное зеркало в России.
Что насчёт маскирования -- 87 камент проясняет это: https://bugs.gentoo.org/show_bug.cgi?id=487558#c87
А у меня как раз KDE-шный профиль.
Почему иксы не стартуют, правда, не проясняет.
Ну значит пробуйте
Ну значит пробуйте размаскировать более новые версии nvidia-drivers и ставьте их. Если всё удачно, то отпишитесь в указанном bug репорте.
Размаскировал, написав
Размаскировал, написав x11-drivers/nvidia-drivers в /etc/portage/package.mask. Новая версия скачалась и собралась. equery list nvidia-drivers показывает, что установлена последняя версия. Результат, при старте иксов, тот же. Что ожидаемо, так как я пробовал и nouveau -- всё аналогично.
А вы модуль от старого
А вы модуль от старого драйвера выгрузили и загрузили новый ?
Да. rmmod nvidia modprobe
Да.
Ну значит ждите пока пофиксят
Ну значит ждите пока пофиксят bug.
А откуда уверенность, что
А откуда уверенность, что прооблема именно в нвидишных дровах? Как я говорил, с опенсорсными всё так же.
Какая у вас версия ядра ? И
Какая у вас версия ядра ? И что попадает в dmesg при загрузке модуля и после старта xorg-server`а ?
Ну и естественно модуль nouveau не должен быть загружен и в eselect opengl выбрана Nvidia реализация opengl.
Ядро -- 3.10.25.Вот
Ядро -- 3.10.25.
Вот конец dmesg после загрузки modprobe nvidia:
Вот после startx:
Что касается модулей, то до старта иксов, lsmod показывает лишь три: nvidia, alx, mdio. Последние два -- сетевые.
В eselect opengl выбрана nvidia.
nouveau, конечно же собран
nouveau, конечно же собран модульно. Нет, если он собран монолитно, то теоретически модуль nvidia не должен загрузиться, но уточнить вё же стоит.
В eselect opengl выбрано "nvidia"?
В текущей сборке ядра nouveau
В текущей сборке ядра nouveau вообще нет.
Да. eselect opengl list выдаёт nvidia и xorg-x11. Выбрана первая.
Ну что я вам могу
Ну что я вам могу посоветовать, попробуйте поставить другую версию xorg-server`а, ещё раз проверить рекомендуемые опции ялра.
Ну и попрбовать поставить какую-либо из удадённых из дерева nvidia-drivers http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-drivers/nvidia-drivers/?hideattic=0
Насчёт опций ярда не
Насчёт опций ярда не посоветуете, на что обратить внимание? Опции, указанные в вики, проверены.
В Direct Rendering Manager отключено всё, кроме
(отключение этого не помогает).
Другой xorg-server попробую позже. Спасибо за помощь!
Кстати, как насчёт перейти на ты? Мы ровестники )
вот эта фраза, vanger
вот эта фраза,
немного конфликтует с wiki:
нет указаний на то, чтобы включать ядерный DRM:
https://wiki.gentoo.org/wiki/NVidia/nvidia-drivers#Required_kernel_options
есть указание на то, чтобы его выключить:
https://wiki.gentoo.org/wiki/NVidia/nvidia-drivers#Direct_rendering_is_not_enabled
Замечание разумно. Но как я
Замечание разумно. Но как я писал, полное отключение в ядре DRM не помогает. А поддержка интеловского DRM тогда стояла, т.к. без неё, если в BIOS не указано Fast Boot, видимо, разрешение экрана в консоли ставится малым и размер текста(а шришт у меня больше 16 стоит) становится непреемлемо большим.
make.conf ???
VIDEO_CARDS="nvidia"
Да. Вот содержимое make.conf:
Да. Вот содержимое make.conf: http://pastebin.com/jAxqxvnb
Вы пробовали размаскировать
Вы пробовали размаскировать более новые версии nvidia-drivers и поставить их ?
С веткой 304.* у вас ничего не получится, в этой ветке просто нет поддержки вашей карты.
Почему ставится старая версия драйвера
Т.е., последние драйвера замаскированы конкретно для кед. В самом баге написано, что с kde 4.12 уже проблем нет. Так что, можно попробовать размаскироватье kde 4.12 вместе с nvidia-drivers-331.20 (или даже 331.38, рекомендуемый NVidia для вашей карты).
Я пошёл другим путём. Когда сдуру обновился с идеально работающего 325.15 на 319.какой-то, аппаратное ускорение приказало долго жить. Оказалось, что "проблема" чисто конъюнктурная: 325.15 (он поддерживает и вашу карту) - типа Short Lived Branch, вот его по-быстрому и убрали из дерева, никаких нестабильностей за ним не замечалось. Я тут же нашёл его на http://gpo.zugaina.org/x11-drivers/nvidia-drivers, скинул себе в локальный оверлей, поставил и радуюсь жизни и стабильной работе видео.
Возможно, эта версия драйвера и вам как-то поможет. Но про оптимус - к тем, кто с ним справился. Я просто не пользкюсь этой гениальной победой маркетинга над разумом.
Цитата: Я тут же нашёл его
Зачем его где-то искать, если вообще всё есть в основном дереве:
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-drivers/nvidia-drivers/?hideattic=0
Спасибо, не знал раньше.
Спасибо, не знал раньше.
>Оказалось, что "проблема"
>Оказалось, что "проблема" чисто конъюнктурная: 325.15 (он поддерживает и вашу карту) - типа Short Lived Branch, вот его по-быстрому и убрали из дерева, никаких нестабильностей за ним не замечалось.
Его убрали вовсе не поэтому, а вот из-за этого
Нейтральность - высшее достижение сознания!
О как! Тоже не знал, спасибо.
О как! Тоже не знал, спасибо. Но насколько понял из описания бага, чтоб эту уязвимость реализовать, надо лично пустить злого хакера за свой комп. Так что хай живе у меня в системе, пока 331.х не стабилизируют для кед.
GeForce GT 740M? ноутбук? у
GeForce GT 740M?
ноутбук?
у вас optimus скорее всего..
вам или bumblebee нужен
или
https://forums.gentoo.org/viewtopic-t-959568-highlight-optimus.html
Спасибо за наводку. Позже о
Спасибо за наводку. Позже о optimus повожусь. Но есть сомнения в том, что проблема именно в драйверах. Сейчас я редуцировал задачу к просто хоть как-нибудь запустить иксы, тем более, что в LiveDVD они работают. Пока безуспешно -- и с интеловскими драйверами, и с нвидишными проприетарными и с опенсорсными то же "No screens found".
Если у вас именно optimus, то
Если у вас именно optimus, то у вас запустить xorg-server на карте Nvidia не получится.
У карты Nvidia просто нет модуля вывада.
Вам нужно запускать Xorg-server на карте Intel, а затем уже ставить пакет bumbleebe, что бы посредством optirun запускать приложения на карте Nvidia. Но драйвер, скорее всего, всё равно нужен не 304 ветки.
Согласно
Согласно http://www.geforce.com/hardware/notebook-gpus/geforce-gt-740m поддержка optimus имеет место быть.
Про модуль вывода не понял, и поверхностным гуглением это исправить не удалось. Не подскажете, что посмотреть?
Т.е. предлагается запустить иксы с помощью интеловского драйвера? Это, как я понимаю, самый минималистичный, в плане действий с настройкой, способ. Пока, правда, какой-либо разницы в результате добиться не удалось.
Собираю ядро с подходящими настройками, ставлю use flag, пересобираю мир -- иксы по-прежнему не стартуют без каких-либо различий. На что обратить внимание?
Вот содержимое Xorg.0.log, если что: http://pastebin.com/HJLjhzBV
Цитата: Согласно
Вы смотрите документацию по вашему ноутбуку и наклейки на нём, должна быть наклейка, указывающая на то, что у вас есть технолония Optimus.
NVIDIA® OPTIMUS™ technology GREAT BATTERY LIFE GREAT PERFORMANS
Я в том плане, что помимо самой видео карты должен быть ещё "модуль вывода", считайте что-то вроде аппаратной обвязки для подключения монитора, что бы было куда выводить картинку. Так вот такого "модуля" у карты Nvidia нет. Поэтому и используется bumbleebe, посредством оного запускается второй xorg-server на карте Nvidia, а что бы картинка с карты Nvidia показывалась на первом xorg-server`е используется virtualgl.
Да, именно так, по другому у вас не получится.
настраивал только с бамблби,
настраивал только с бамблби, правда с 650M
VIDEO_CARDS="intel nvidia"
в ядре всключаем модуль и модесетинг для интел.
eselect opengl set xorg-x11
emerge x11-misc/bumblebee
/etc/init.d/bumblebee start
должно забустить xdm (иди что указано в /etc/conf.d/xdm )
по желанию можно устанивить x11-misc/primus из оверлея bumblebee
Цитата: /etc/init.d/bumblebe
Должно запустить сервис, который будет ожидать запуска посредством optirun какой-либо программы и тогда этот сервис запустит второй xorg-server с использованием драйвера Nvidia и посредством virtualgl картинка с оного будет отображена на первом xorg-server`е.
А xdm или что указано запускается обычно, а именно '/etc/init.d/xdm start' или 'rc-service xdm start', в следствие чего будет запущено xorg-server с использованием драйвера Intel.
Не надо вводить в заблуждение.
xdm у bumblebee в
xdm у bumblebee в зависимостях
И что из этого ? Ещё раз,
И что из этого ?
Ещё раз, запустить что-либо просто на карте nvidia нельзя. Нужен запущенный xorg-server на карте Intel для отображения на нём картинки с xorg-server`а, запущенного на карте Nvidia.
ещё неплохо поставить
ещё неплохо поставить x11-misc/primus из оверлея bumblebee, т.к. optirun не все программы запустить может (например steam).
$ ps ax | grep X 2948 tty7
Запускаем что-либо посредством bumbleebe:
Смотрим в другом эмуляторе терминала число запущенных xorg-server`ов:
Как только остановите приложение, запущенное посредством optirun второй xorg-server будет так же остановлен.
Bubmlebee поставил. Правда,
Bubmlebee поставил. Правда, это ни на что не повлияло.
Может, имеются какие-то файлы настроек в том де LiveDVD, которые имеет смысле посмотреть, или использовать в своей системе, чтобы найти причину, по которой иксы не работают?
Нет, я конечно понимаю, что я
Нет, я конечно понимаю, что я и оппонент высказываем противоположные мнения. Но вот, хотя бы это является подтверждением моих слов: http://gentoo.ru/node/27847#comment-206593.
У вас хоть драйвер intel установлен и в eselect opengl выбрано "xorg-x11"?
Да, кстати, сейчас на ноутбуке с GT630M и KDE поставил nvidia-drivers-331.20, bumbleebe работает, т.е. посредством optirun я спокойно запуская glxgears, например, что видно в указанном сообщении.
Загрузите на pastebin сервис конфиг вашего ядра.
Ну, не попробовать, тем более
Ну, не попробовать, тем более в ситуации, когда вообще ничего не помогает, я не мог )
В /etc/portage/make.conf сейчас VIDEO_CARDS="intel nvidia", мир пересобирал.
В eselect opengl выбрано xorg-x11.
Вот конфиг ядра: http://pastebin.com/xWBhpzvC
Я вас спросил, установлен ли
Я вас спросил, установлен ли у вас драйвер Intel или нет, а не то, что у вас прописано в VIDEO_CARDS в make.conf.
Покажите вывод:
Заодно и вывод:
eix -I xf86-video: [I]
eix -I xf86-video:
X -configure:
Цитата:Your xorg.conf file
Покажите содержимое файла. Так же выложите на pastebin сервис и проверяйте работу xorg-server`а с этим конфигом, команда уже приведена.
xorg.conf.new:
xorg.conf.new: http://pastebin.com/R2R2y8ZM
По
, похоже, что иксы запускаются -- экран совсем чёрный.
Эта команда эквивалентна startx при условии, что содержимое /root/xorg.conf.new находится в /etc/X11/xorg.conf?
Если так, то, похоже, дело в том, что /etc/X11/xorg.conf ведёт себя странно. В выводе
он присутствует, а
пишет, что файла не сущетсвует:
Заменить его, скажем, по
не получается. Удалить тоже.
Цитата: иксы запускаются --
Так и должно быть. По умолчанию вызывается twm, но он же у вас не установлен, он и не нужен.
Почти.
Потому, что там нет файла /etc/X11/xorg.conf, а есть директория /etc/X11/xorg.conf.d, вы просто не внимательны.
Удалите из конфигурационного файла блоки с описанием Monitor1, card1 и screen1:
Скопируйте файл из /root/xorg.conf.new в /etc/X11/xorg.conf, проверьте работу xorg-server`а вызовом команду startx и приступайте к дальнейшей настройке системы.
kostik87 написал(а):Потому,
Действительно, я делал опечатку -- xorg,conf.
Если удалить весь блок
,
весь блок
и
из второго блока "Screen"(или если удалять весь блок Screen, относящийся в Secreen1, Card1, Monitor1), то иксы не стартуют с прежней ошибкой. Если ничего не трогать, то работают. KDM зыпускается успешно.
А что именно здесь делалось?
-- это некий скрипт, автоматически пытающийся настроить xorg-server? Почему тогда первый xorg.conf был неправильный? Вот он, кстати: http://pastebin.com/bV38AXRD Возможно, потому что он создался, когда было VIDEO_CARDS="nvidia", а потом не менялся, после установки интеловских драйверов(пальцем в небо).
Почему в xorg.conf есть блоки с 0 и 1? Связано ли это с тем, что есть встроенная видеокарта intel и nvidia и создаётся конфигурация для каждой?
Иксы сконфигурировались для 2
Иксы сконфигурировались для 2 экранов.
Локальный оверлей растёт
Да я немного ошибся, помимо
Да я немного ошибся, помимо блоков:
Удаляете целиком весь блок.
А ошибся я в том, что нужно было ещё поправить вот этот блок:
поправить на:
Это параметр бинарника xorg-server`а, который указывает ему сгенерировать конфиг.
Потому, что у вас в системе две видео карты, одна Intel, другая Nvidia, ну и для правильно работы нужно хотя бы указывать параметр
указывающий к какой видео карте использовать драйвер. Ну и во вторых, вы меня не слушаете, я вам русским языком говорю, ну не получится запустить только на карте Nvidia xorg-server, для вывод картинки с карты Nvidia нужно использовать проект bumbleebe.
Вы правильно предполагаете, но работать так карта Nvidia не будет. Хотя бы потому, что для драйвера Intel используется реализация libGL из состава mesa, а для карты Nvidia должна использоваться libGL из состава проприетарного драйвера. Ну вот поэтому и нужно использовать bumbleebe. А блоки про карту Nvidia всё же лучшу удалить из xorg.conf.
Правильно ли я понимаю, что
Правильно ли я понимаю, что изначально не работало, т.к. создавалась конфигурация, использующая видеокарту Nvidia, а непосредственная работа с ней невозможна(см. optimus)?
Не очень понял. Не могли бы пояснить поподробнее? Ссылка на какую-нибудь вики была бы замечательна. А по запросам типа "x <и что-то там>" не нагуглить.
Это указание на ошибочность в чём? В том, что сначала я ставил VIDEO_CARDS="nvidia"? Т.е., если я правильно понял, это не рабочий вариант, в случае включённого optimus.
Правильно ли я понимаю, что сейчас всё, что не запущено явно через optirun, рисуется интеловской картой? optirun же создаёт экземпляр xorg-server для данного окна вывода и рисует, используя видеокарту nvidia и драйвера nvidia?
Правильные настройки make.conf -- VIDEO_CARDS="intel nvidia", на ядерном уровне только поддержка intel(если я не использую nouveau).
Также, т.к. проприетарный драйвер nvidia является внешним модулем ядра, при обновлении ядра надо выполнять и
?
Про последнее, кстати, не очень понял. Как и про соответствующий пункт в вики: http://wiki.gentoo.org/wiki/Kernel/Upgrade#Reinstall_external_kernel_modules Что именно пересобирает module-rebuild? Ведь драйвер бинарный. И, кстати, что значит @? Не смог найти.
Кстати, насчёт определения того, optimus у меня или нет. Документы к ноутбуку крайне скудны -- там информации об этом нет. Наклейка на корпусе, относящаяся к видеокарте, надписи "optimus" не содержит -- лишь "Nvidia Geforce 740M".
Огромное спасибо за уделённое время и ценные советы! Сам бы не разобрался.
Не совсем. Просто
Не совсем. Просто действительно рабочая конфигурация создаётся при X -configure (если он работает, я уже не помню, когда послений раз он не выдавал no screens found), а при установке там не совсем то, что нужно.
Локальный оверлей растёт
Цитата: Кстати, насчёт
вывод lspci посмотри на предмет VGA compatible controller.
Вот кусок вывода lspci
Вот кусок вывода lspci -v:
Как его интерпретировать в контексте вопроса optimus ли?
скорее всего он и есть. если
скорее всего он и есть.
если в биос отсутствуют опции переключения видеокарт.
я вообще xorg.conf
я вообще xorg.conf неделал...
X на intel могут стартануть и без него
У меня без xorg.conf та
У меня без xorg.conf та ошибка с "No screens found" была.