И снова nvidia
Feb. 17th, 2017 08:29 amДа, да, да — пришли новые дрова (304.135 из альтернативного репозитария) и я решил, что в достаточной мере набил руку чтобы справиться возможными проблемами, которые могут возникнуть.
Нет, я конечно, справился, но это не было "лёгким движением руки".
Ну так и вот — сапдейтил, перезагружаюсь и начинается день сурка: во втором терминале на чёрном фоне серое окошко с надписью (тут подойдёт голос депрессивного робота Мерлина) "ну чё это у вас такое низкое разрешение — я отказываюсь работать в таких условиях".
Конечно, последователь действий уже отработана: надо начинать с Xorg.log. А лучше сразу запускать nvidia-bug-report.sh и там будут все интересующие логи.
Таких сообщений не помню, но удивления не вызываает. Не пытаюсь особо вникать в обстоятельства (а может и стоило бы) — первая мысль: опять кто-то конфиг сожрал. И точно. Запускаем nvidia-xconfig… Помнится как-то получалось поднимать иксы даже без перезагрузки. Но не в этот раз.
Модуль? Ну да: "
Но ни в этот раз. "
Изучаю логи ещё внимательнее и начинаю удивляться: "
Или вот: "
"Становится что чудастее и чудастее"©.
Но это я еще не сразу заметил.
После очередной перезагрузки на второй консоли депрессивный Марвин, но на седьмой — работающий стол. Да, с таким тоже сталкивался.
Ещё несколько камланий с перезагрузками и решаю откатить дрова назад. А они не откатываются. Даунгрейдом занимался только один раз и сейчас понимаю что недопонял синтаксис. Если на 304.134-0ubuntu0.16.04.1 даунгрейдиться, то надо указывать 304.134-0ubuntu0, а если на 304.135-0ubuntu0~gpu16.04.1? Я указывал 304.135-0ubuntu0, а, похоже, надо 304.135-0ubuntu0~gpu?
Ну, не важно, "и так хорошо получилось"©.
В общем, решил сделать даунгрейд более серьёзным образом: снести дрова с зачисткой purge, естественно, отключить альтернативный репозитарий, и инсталировать что есть уже из основного. Точнее, в нём лежат, например, 304.131-0ubuntu3, на которые я уже один раз возвращался.
Сказано — сделано. Но, лыжи, извиняюсь, почему-то всё-равно не едут. Что за хрень?
Снова штудирую логи: "
Ага. Это я в прошлый раз поставил тут костыль: если ничего не получилось автоматом, то запускать "
Проверяю за компанию /etc/modules. Прописан и закоменчен с прошлых камланий nvidia_304. В /etc/modprobe.d/nvidia-graphics-drivers.conf как положено введён модуля алиас, в чёрный список загнаны близкие дрова, которые не должны загрузиться по ошибке и присвоен алиас off тому же nouveau. Вроде порядок.
На всякий случай проверяю лежащие там-же остальные конфиги и обнаруживаю в blacklist-local.conf "blacklist nvidia_304". Ах ты …(зачёркнуто)… "нехороший человек"© "с низкой социальной ответственностью"©. :) Вот что за сволочь и когда это сделала?
Убираем, перезагружаемся — работает. "Не дышим". На вчера с меня было достаточно.
Но удовлетворение будет не полным, если не попытаться — да, да, да, я люблю плясать по граблям ;)!!! — из основного репозитария поставить всё-таки последние дрова — не 131, а 134.
Собственно, стою на пороге паразагрузки. Поехали? ;)
UPD. Итог: при перезагрузке система зависла в фазе выключения. Вообще, с этим systemd выгрузка стала проходить на порядок дольше. Но загрузка оказалась успешной, вплоть до рабочего стола. Медленно, конечно, но может это ureadahead трудился.
Нет, я конечно, справился, но это не было "лёгким движением руки".
Ну так и вот — сапдейтил, перезагружаюсь и начинается день сурка: во втором терминале на чёрном фоне серое окошко с надписью (тут подойдёт голос депрессивного робота Мерлина) "ну чё это у вас такое низкое разрешение — я отказываюсь работать в таких условиях".
Конечно, последователь действий уже отработана: надо начинать с Xorg.log. А лучше сразу запускать nvidia-bug-report.sh и там будут все интересующие логи.
[ 72.326] (EE) NVIDIA(0): Failed to initialize the NVIDIA kernel module. Please see the [ 72.326] (EE) NVIDIA(0): system's kernel log for additional error messages and [ 72.326] (EE) NVIDIA(0): consult the NVIDIA README for details. [ 72.326] (EE) NVIDIA(0): *** Aborting *** [ 72.326] (EE) NVIDIA(0): Failing initialization of X screen 0
Таких сообщений не помню, но удивления не вызываает. Не пытаюсь особо вникать в обстоятельства (а может и стоило бы) — первая мысль: опять кто-то конфиг сожрал. И точно. Запускаем nvidia-xconfig… Помнится как-то получалось поднимать иксы даже без перезагрузки. Но не в этот раз.
Модуль? Ну да: "
modprobe nvidia-304
тоже всегда помогал".Но ни в этот раз. "
Sent; server replied with: Couldn't connect to server
"Изучаю логи ещё внимательнее и начинаю удивляться: "
Parsing /var/crash/nvidia-304.0.crash.
"Или вот: "
modprobe: FATAL: Module nvidia-304 not found in directory /lib/modules/4.4.0-63-generic
""Становится что чудастее и чудастее"©.
NVRM: API mismatch: the client has the version 304.135, but
NVRM: this kernel module has the version 304.134. Please
NVRM: make sure that this kernel module and all NVIDIA driver
NVRM: components have the same version.
Но это я еще не сразу заметил.
После очередной перезагрузки на второй консоли депрессивный Марвин, но на седьмой — работающий стол. Да, с таким тоже сталкивался.
Ещё несколько камланий с перезагрузками и решаю откатить дрова назад. А они не откатываются. Даунгрейдом занимался только один раз и сейчас понимаю что недопонял синтаксис. Если на 304.134-0ubuntu0.16.04.1 даунгрейдиться, то надо указывать 304.134-0ubuntu0, а если на 304.135-0ubuntu0~gpu16.04.1? Я указывал 304.135-0ubuntu0, а, похоже, надо 304.135-0ubuntu0~gpu?
Ну, не важно, "и так хорошо получилось"©.
В общем, решил сделать даунгрейд более серьёзным образом: снести дрова с зачисткой purge, естественно, отключить альтернативный репозитарий, и инсталировать что есть уже из основного. Точнее, в нём лежат, например, 304.131-0ubuntu3, на которые я уже один раз возвращался.
Сказано — сделано. Но, лыжи, извиняюсь, почему-то всё-равно не едут. Что за хрень?
Снова штудирую логи: "
Failed to start /etc/rc.local Compatibility
"Ага. Это я в прошлый раз поставил тут костыль: если ничего не получилось автоматом, то запускать "
modprobe nvidia-304
". ;) Вообще-то это не правильно, надо убрать.Проверяю за компанию /etc/modules. Прописан и закоменчен с прошлых камланий nvidia_304. В /etc/modprobe.d/nvidia-graphics-drivers.conf как положено введён модуля алиас, в чёрный список загнаны близкие дрова, которые не должны загрузиться по ошибке и присвоен алиас off тому же nouveau. Вроде порядок.
На всякий случай проверяю лежащие там-же остальные конфиги и обнаруживаю в blacklist-local.conf "blacklist nvidia_304". Ах ты …
Убираем, перезагружаемся — работает. "Не дышим". На вчера с меня было достаточно.
Но удовлетворение будет не полным, если не попытаться — да, да, да, я люблю плясать по граблям ;)!!! — из основного репозитария поставить всё-таки последние дрова — не 131, а 134.
Собственно, стою на пороге паразагрузки. Поехали? ;)
UPD. Итог: при перезагрузке система зависла в фазе выключения. Вообще, с этим systemd выгрузка стала проходить на порядок дольше. Но загрузка оказалась успешной, вплоть до рабочего стола. Медленно, конечно, но может это ureadahead трудился.