Драйверы NVIDIA не работают после обновления. Почему я могу видеть только терминал?
Сегодня вечером я обновился до 11.04. Проблемы. Когда я закончил обновление, я перезагрузил компьютер, как он мне и сказал. Когда я прошел Ubuntu 11.04 (фиолетовые точки оранжевого цвета), он просто подошел к терминалу и попросил меня войти в систему. Я попытался перезапустить X-сервер с помощью "sudo service gdm restart", но дисплей не появился. В моем файле загрузок также оказалось несколько драйверов NVIDIA, поэтому я попробовал, но "скрипт установки" не удался.
После всего этого я загрузил Ubuntu в графическом отказоустойчивом режиме. Затем я решил посмотреть, что произойдет, если я удалил проприетарный драйвер. После этого и перезагрузки моя Ubuntu загрузилась в графическом режиме "yay!". Таким образом, без драйверов Nvidia я, наконец, вижу что-то другое, кроме терминала, но мне нужны эти драйверы NVIDIA для моей работы. Так что я могу сделать? Я попытался установить новые драйверы NVIDIA linux с веб-сайта NVIDIA и попытался установить рекомендуемый драйвер через "дополнительные драйверы", но оба привели к тому, что я застрял в терминале.
Если вы можете помочь или дать мне несколько советов, пожалуйста, сделайте! Я действительно в очень плохой ситуации...
7 ответов
Вам нужно будет загрузиться в режиме восстановления, затем выполнить apt-get remove --purge nvidia-current
на корневом терминале, а затем apt-get install nvidia-current
- пересобрать драйвер nvidia для нового ядра. У меня тоже была эта проблема, когда я обновился.
Пожалуйста, не устанавливайте драйверы с сайта nVidia, кстати! Вы можете столкнуться с серьезными проблемами, если затем попытаетесь установить рекомендуемый драйвер, не удаляя предыдущий.
Изменить: вам нужно будет запустить эти команды из терминала. Я не могу гарантировать идеальный результат, так как я собираюсь основываться на том, что я нашел через Интернет и по памяти.
Проблема, которую вы получаете, вызвана наличием различных компонентов пользовательского режима и модулей ядра. Чтобы это исправить, модуль ядра nvidia должен быть перестроен. Это должно произойти при перезагрузке, но часто это не так.
Сначала вам нужно установить заголовки ядра Linux:
sudo apt-get install linux-headers-generic
Затем вам нужно будет запустить dkms, чтобы удалить старый модуль ядра nvidia:
sudo dkms remove nvidia
Затем запустите:
sudo apt-get install nvidia-current
- это должно сделать его правильно установленным, поэтому все, что вам нужно сделать, это запустить
sudo nvidia-xconfig and reboot.
- Если вы все еще получаете ошибку о версии модуля, запустите:
sudo dkms build nvidia
Это должно решить проблему.
Извините, если что-то немного сбивает с толку, я попытался собрать воедино процесс, который мне пришлось использовать в меру моей памяти:)! Если у вас возникнут проблемы, не стесняйтесь, дайте мне знать (и если кто-нибудь обнаружит какие-либо проблемы с инструкциями, пожалуйста, дайте мне знать как можно скорее)!!!!
Обновить:
Я нашел другую возможную причину. Nouveau, возможно, не занесен в черный список, а nvidia-current может не помещаться в файл.conf, который используется для выбора драйвера дисплея. Вот как это исправить:
NB:
Прежде чем продолжить, убедитесь, что у вас есть драйвер nvidia-current из репозиториев. Загрузка драйвера с веб-сайта nvidia может вызвать проблемы позже, поскольку он не использует формат пакета debian и оставляет вещи, которые могут конфликтовать с более поздними установками. Поэтому сначала убедитесь, что вы удалили его следы, а затем установите стандартный драйвер из репозитория Ubuntu. Если вы этого не сделаете, вы получите несоответствие драйверов, и это исправление будет бессмысленным.
- Если вы застряли на консоли, войдите в систему и установите драйвер nouveau X.org:
sudo apt-get install xserver-xorg-video-nouveau
- Перезагрузите компьютер (у вас будет рабочая графика, да! Но это временно).
- Откройте gedit от имени пользователя root:
gksu gedit
, - От Гедит открыт
/etc/modprobe.d/blacklist.conf
, - Добавьте эту строку внизу:
blacklist nouveau
, - Сохраните файл и откройте
/etc/modprobe.d/nvidia-graphics-drivers.conf
,- Добавьте эти строки:
черный список нуво
черный список lbm-nouveau
черный список nvidia-173
черный список nvidia-96
псевдоним NVIDIA NVIDIA тока
- Добавьте эти строки:
- Теперь сохраните этот файл и закройте gedit.
- Бежать:
sudo nvidia-xconfig
,- а потом:
sudo apt-get remove xserver-xorg-video-nouveau
,- с последующим:
sudo shutdown -r now
,
- Когда ваша система перезапустится, у вас должны быть работающие драйверы nvidia.
Альтернативное решение: если вы установили драйверы NVIDIA с их веб-сайта, то вы должны загрузиться в текстовый терминал (удерживайте при загрузке, чтобы увидеть меню grub и выберите режим восстановления версии ядра, которая в последний раз работала с драйверами NVIDIA, и выберите командную строку в качестве корневого параметра)
Затем запустите оригинальный скрипт установки оболочки NVIDIA, который вы запустили, чтобы установить драйверы NVIDIA с их сайта. например sudo ./NVIDIA-Linux-x86-290.10.run --uninstall
, (Ваша версия может отличаться.)
Вам не нужно будет запускать команду "sudo dkms remove nvidia", так как это не относится к вашему случаю.
Вот почему я всегда рекомендую устанавливать Ubuntu как чистую установку вместо обновления. Это только мое мнение, но у меня всегда были какие-то проблемы при обновлении. Нет проблем при выполнении чистой установки.
Для того, что я прочитал поверх других ответов, вы установили драйвер Nvidia с сайта Nvidia. Даже если это работает хорошо и т. Д. НЕ ДЕЛАЙТЕ ЭТОГО! Тот, что входит в репозитории Ubuntu, был протестирован и рекомендован.
В вашем случае вам нужно будет сделать несколько вещей.
Шаг 1 - Удалите установленный драйвер nvidia и никогда не устанавливайте его снова. Это избавит вас от этой конкретной проблемы, что... э-э-э... у кого-то тоже было это (Me;)), вам также нужно удалить модули из нее и все файлы конфигурации, которые она оставляет. Если не ошибаюсь, то у драйверов nvidia с сайта Nvidia есть бинарный файл для удаления. Запустите его и убедитесь, что другие файлы nvidia не работают.
ОБНОВЛЕНО - Чтобы удалить драйвер Nvidia, установленный с сайта Nvidia, у вас может быть один из нескольких вариантов:
- Некоторые предлагают удалить с помощью того же установщика.
Пример: NVIDIA-Linux-x86-1.0-8178.run --uninstall - Другие предлагают использовать Nvidia Installer.
Пример: nvidia-installer --uninstall
СОВЕТ. Попробуйте ввести --help в конце двоичного исполняемого файла Nvidia, чтобы увидеть, не показывает ли он какую-то помощь. Такие страницы, как https://help.ubuntu.com/community/NvidiaManual и http://www.nvnews.net/vbulletin/showthread.php?t=83678 дают представление о том, как удалить драйвер Nvidia с сайта Nvidia.
Шаг 2 - перезагрузите компьютер и убедитесь, что вы НИЧЕГО не оставили от nvidia. Удалите файл xorg.conf, так как вы скоро создадите новый. Перезагружать.
Шаг 3 - Установите рекомендуемые драйверы Nvidia. sudo apt-get install nvidia-current
или же sudo apt-get reinstall nvidia-current
(Если он уже установлен. Я бы порекомендовал unistall, а затем установить его снова.)
Шаг 4 - СОЗДАЙТЕ файл xorg.conf для рекомендуемого драйвера Nvidia. nvidia-xconfig
, Это создаст файл xorg.con с параметрами, необходимыми для вашей видеокарты nvidia. Перезагрузите снова.
До этого шага мне понадобилась бы обратная связь, если у вас возникли проблемы. Для более общего решения, пожалуйста, не стесняйтесь читать это руководство: Как мне установить драйверы Nvidia?
У меня также была проблема с драйверами nvidia, и я сделал все, что смог найти (также в других ответах):
- удалите ранее установленные драйверы и установите снова
- загрузка через
failsafeX
и активация водителя - используя предыдущий драйвер (
173
) - я добавил
UNITY_FORCE_START=1
в/etc/environment
как упомянуто здесь (поскольку GeForce 7300/7400 занесены в черный список, но у меня есть GeForce Go 7100)
Но все продолжало терпеть неудачу. Итак, в крайнем случае (я должен был подумать об этом раньше), я исследовал X-log-файлы. Внутри моего /var/log/Xorg.0.log
Я обнаружил, что у nvidia были проблемы с выделением памяти:
[ 14.055] (EE) NVIDIA(0): Failed to allocate primary buffer: out of memory.
[ 14.055] (EE) NVIDIA(0): *** Aborting ***
Видимо, это известная ошибка, и мне пришлось сделать следующее, чтобы это исправить:
- редактировать
/etc/default/grub
найти вариант
GRUB_CMDLINE_LINUX
и добавитьnopat
так для меня это выглядело какGRUB_CMDLINE_LINUX="nopat"
бежать
sudo update-grub
И вот, наконец, у меня все заработало:) Надеюсь, это поможет.
Мое обновление 11.04 также загружалось только в окно терминала. Тогда я нашел этот сайт. Я начал делать то, что рекомендовал Роланд Тейлор, сначала я сделал
sudo apt-get install linux-headers-generic
Тогда я попытался сделать:
sudo dkms remove nvidia
Но это не удалось жаловаться, что команда была не завершена, что мне нужно -m
а также -v
и версия
Я собирался повторить попытку, но заметил, что на экране была информация журнала из первой команды, отметив, что он установил nvidia-current
когда я установил заголовки-generic, так что я подумал, интересно, что будет, если я перезагружусь сейчас? Так я и сделал, и рабочий стол X подошел нормально. Так что только одна команда исправила мою проблему с установкой.
Обратите внимание, что ядро ниже указывает на предыдущий выпуск Ubuntu. Новое ядро с Ubuntu 11.10: 3.0.0.12. У меня была та же проблема с тем, что меня перевели в командный режим, и Xserver не удался, хотя я не смог найти драйвер nvidia_173. Затем я понял, что обновление не обновило мою MBR до версии 3.0.0.12. Я использовал EasyBCD для обновления файла, перезагрузился, и все было хорошо. Конечно, такие сбои драйверов могут происходить, когда они находятся на смешанных уровнях. Мой совет, после обновления убедитесь, что вы запускаете новое ядро, initrd, vmlinuz, ... что у вас есть.
DKMS make.log for nvidia-current-270.41.06 for kernel 2.6.38-8-generic (x86_64)
Sat May 14 20:48:39 EDT 2011
The C compiler 'cc' does not appear to be able to
create executables. Please make sure you have
your Linux distribution's gcc and libc development
packages installed.
*** Failed CC sanity check. Bailing out! ***
make: *** [select_makefile] Error 1
Я выяснил, что cc (псевдоним для gcc), используемый в моем /usr/bin, не был той же версией, что и gcc, найденный в этом же каталоге, независимо от всех пакетов dev, которые уже были установлены на моем компьютере. Мне пришлось сделать символическую ссылку, чтобы указать на файл gcc.
sudo mv /usr/bin/cc /usr/bin/cc.old
sudo ln -s /usr/bin/gcc /usr/bin/cc
После этого переустановка пакета nvidia-current пошла мне на пользу.
С уважением
Для тех, у кого также есть эта проблема, убедитесь, что Optimus (технология переключения видеокарт Nvidia) отключен в BIOS.
Это сработало для меня.
1) Перейдите к Терминалу F1, нажав Ctrl + Alt + F1.
2) Запустите следующие команды.
sudo /etc/gdm stop
sudo apt-get install linux-headers-$(uname -r) linux-image-$(uname -r)
wget -O /tmp/nvidia.run http://us.download.nvidia.com/XFree86/Linux-x86/280.13/NVIDIA-Linux-x86-280.13.run
# Make sure to allow the script to uninstall all existing drivers.
sudo sh /tmp/nvidia.run
sudo /etc/gdm start