Після оновлення драйвери NVIDIA не працюють. Чому я можу бачити лише термінал?


34

Сьогодні вночі я модернізував до 11.04. Проблеми. Після завершення оновлення я перезапустив комп’ютер так, як він мені також сказав. Коли я пройшов повз ubuntu 11.04 (фіолетовий помаранчевий фон), він просто перейшов до терміналу і попросив мене увійти. Я спробував перезапустити X-сервер із "перезавантаженням служби gdm sudo", але жоден дисплей не вискочив. У моєму файлі завантажень у мене також було декілька драйверів NVIDIA, тому я спробував це, але "встановити сценарій" не вдалося.

Після всього цього я завантажив Ubuntu в режимі графічного відключення. Тоді я вирішив подивитися, що станеться, якщо я видалю фірмовий драйвер. Після цього і перезавантаження мого Ubuntu завантажився в графічний режим "так!". Тож без драйверів Nvidia я нарешті бачу щось інше, ніж термінал, але мені потрібні ці драйвери NVIDIA для моєї роботи. То що я можу зробити? Я спробував встановити нові драйвери для NVIDIA Linux з веб-сайту NVIDIA і спробував встановити рекомендований драйвер через "додаткові драйвери", але обидва призвели до того, що я застряг у терміналі.

Якщо ви можете допомогти чи дати мені поради, будь ласка! Я справді в дуже поганій ситуації ...


2
Ви видалили файл /etc/X11/xorg.conf спочатку, потім перезавантажте, а потім спробуйте активувати версію Додаткові драйвери драйвера NVIDIA?
fossfreedom

1
Я відчуваю ту саму проблему. Я активую драйвер, виходжу з системи та бачу "Не знайдено пристроїв" у журналі X. Якщо я видаляю xorg.conf, X починається без підтримки GLX. Modprobe каже, що nvidiaдрайвер завантажений.
vissi

Ні, я не видалив файл Xorg.conf. У мене є та сама проблема, про яку ти говориш. Це жахливо.
Шостий закон

Рекомендую прочитати цей посібник: askubuntu.com/questions/61396/…
Луїс Альварадо

Відповіді:


30

Вам потрібно буде завантажитися в режим відновлення, потім випустити apt-get remove --purge nvidia-currentна кореневий термінал, після чого apt-get install nvidia-current- відновити драйвер nvidia для нового ядра. Цю проблему я мав і під час модернізації.

Будь ласка, не встановлюйте драйвери з веб-сайту nVidia btw! Ви можете створити серйозні проблеми, якщо потім спробувати встановити рекомендований драйвер пізніше, не видаляючи попереднього.

Редагувати: Вам потрібно буде запустити ці команди з терміналу. Я не можу гарантувати ідеального результату, оскільки я базуюсь на тому, що я знайшов через Інтернет та на пам'ять.

Проблема, яку ви отримуєте, викликана різними компонентами режиму користувача та модулями ядра. Щоб виправити це, модуль ядра 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, який використовується для вибору драйвера дисплея. Ось як це виправити:

Примітка:

Перш ніж продовжити, переконайтеся, що у вас є драйвер nvidia-потоку із сховищ. Завантаження драйвера з веб-сайту nvidia може спричинити проблеми пізніше, оскільки він не використовує формат пакету debian і залишає після себе речі, які можуть суперечити пізнішим встановленням. Тому переконайтеся, що ви очистите спочатку будь-які його сліди, а потім встановіть стандартний драйвер з репостів Ubuntu. Якщо цього не зробити, ви отримаєте невідповідність драйвера, і це виправлення буде безглуздим.

  • Якщо ви застрягли на консолі, увійдіть та встановіть драйвер nouveau X.org: sudo apt-get install xserver-xorg-video-nouveau
  • Перезавантажте комп'ютер (у вас буде робоча графіка, так! Але це тимчасово).
  • Відкрийте Gedit в якості кореня: gksu gedit.
  • Від gedit відкрити /etc/modprobe.d/blacklist.conf.
  • Додайте цей рядок в нижній частині : blacklist nouveau.
  • Збережіть файл та відкрийте /etc/modprobe.d/nvidia-graphics-drivers.conf.
    • Додайте ці рядки:

      blacklist nouveau
      blacklist lbm-nouveau
      blacklist nvidia-173
      blacklist nvidia-96
      alias nvidia nvidia-current

  • Тепер збережіть цей файл і закрийте gedit.
  • Виконати:
    • sudo nvidia-xconfig,
    • і потім:
    • sudo apt-get remove xserver-xorg-video-nouveau,
    • далі:
    • sudo shutdown -r now.
  • Коли система перезавантажиться, у вас повинні бути працюючі драйвери nvidia.
До речі, ця проблема не чорного списку nouveau, здається, існує в нових драйверах (nvidia-current), тому я б запропонував після виправлення проблеми зачекати оновлення цієї помилки (я збираюся повідомити про помилку незабаром ).

Альтернативне рішення: Якщо ви встановили драйвери NVIDIA зі свого веб-сайту, тоді вам слід завантажитися в текстовий термінал ((утримуйте при завантаженні, щоб побачити меню grub, і виберіть режим "відновлення" версії ядра, яка востаннє працювала з драйверами NVIDIA, і виберіть командний рядок як основний варіант)

Потім запустіть оригінальний сценарій оболонки для встановлення NVIDIA, який ви запустили, щоб встановити драйвери NVIDIA зі свого веб-сайту. напр sudo ./NVIDIA-Linux-x86-290.10.run --uninstall. (Ваша версія може відрізнятися.)

Вам не потрібно буде запускати команду "sudo dkms remove nvidia", оскільки це не стосується вашого випадку.


Я спробував це, але коли я перезапустив, знову показав лише термінал. Я спробував sudo startx в терміналі і отримав такі повідомлення серед інших: ПОМИЛКА: невідповідність API: модуль ядра NVIDIA має версію 260.19.36, компонент драйвера NVIDIA має версію 270.41.06. Запропонуйте переконатися, що модуль ядра та всі компоненти драйверів nvidia мають однакову версію.
Шостий закон

Я також отримав це: Фатальна помилка сервера не знайдено екрана.
Шостий закон

1
@Sixthlaw: а-а-а - міцно тримайте, це проблема dkms, і це та сама, що у мене була. Вам потрібно буде випустити збірку dkms з командного рядка (я забув команду, тому зачекайте, поки я отримаю її, і я оновлю свою відповідь).
RolandiXor

1
sudo apt-get install nvidia current->sudo apt-get install nvidia-current
IanVaughan

1
Зауважте, що даний виклик dkmsпідтримується лише в 11.10 або новішій версії. 11.04 або пізнішої версії потрібно також надати модулі та версії ядра ( man dkms).
кинан

12

Ось чому я завжди рекомендую встановлювати Ubuntu як чисту установку, а не робити оновлення. Це лише моя думка, але у мене завжди були якісь проблеми чи інші, коли я робив оновлення. Немає проблем при чистій установці.

Щодо того, що я прочитав над іншими відповідями, ви встановили драйвер Nvidia з сайту Nvidia. Незважаючи на те, що це працює добре тощо. НЕ РОБИТИ! Тест, який надходить у сховища ubuntu, був протестований, і це рекомендовано.

У вашому випадку вам потрібно буде зробити кілька речей.

Крок 1 - Видаліть встановлений драйвер nvidia та більше ніколи його не встановлюйте. Це позбавить вас від такої конкретної проблеми, що ... ех .... у когось теж було (Me;)) вам також потрібно видалити з нього модулі та всі файли конфігурації, які він залишає після себе. Якщо я не помиляюся, то у драйверів nvidia з веб-сайту Nvidia є двійковий файл для видалення. Запустіть це та переконайтесь, що немає інших файлів nvidia.

ОНОВЛЕНО - Для видалення драйвера Nvidia, встановленого з сайту Nvidia, у вас може бути один з декількох варіантів:

  • Деякі пропонують видалити за допомогою того ж інсталятора.
    Приклад: NVIDIA-Linux-x86-1.0-8178.run - uninstall
  • Інші пропонують використовувати інсталятор Nvidia.
    Приклад: nvidia-installer - uninstall

ПОРАДА - Спробуйте ввести --help в кінці бінарного виконуваного файлу Nvidia, щоб побачити, чи не показує він деяку допомогу. Такі сторінки, як https://help.ubuntu.com/community/NvidiaManual And 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(Якщо ви вже встановили його. Я рекомендую видалити його, а потім встановити його знову.)

Крок 4 - Створіть файл xorg.conf для рекомендованого драйвера Nvidia. nvidia-xconfig. Це створить файл xorg.con з параметрами, необхідними для вашої відеокарти nvidia. Перезавантажте знову.

До цього кроку мені знадобляться відгуки, якщо у вас виникли проблеми. Для більш загального рішення, будь ласка, прочитайте цей посібник: Як встановити драйвери Nvidia?


1
Мої вибачення, але я точно не знаю, як виконати крок 1. Я, здається, не можу знайти сценарій видалення, про який ви говорите.
Шостий закон

1
Немає проблем Шостий закон. Дозвольте мені його знайти. Дайте мені пару хвилин
Луїс Альварадо

1
Оновлено, щоб включити невелику допомогу щодо її видалення. Будь ласка, дайте мені знати, чи допомагає це, і яка допомога зробила трюк.
Луїс Альварадо

1
Це не рішення, якщо я хочу встановити певний драйвер, тоді рішення - не встановлювати щось інше. Це як вирішити проблему Java, кажучи не користуватися Java, використовуйте Python. У мене така ж проблема (невідповідність версії модуля ядра), але мені точно потрібен цей девдривер NVIDIA CUDA.
skrat

1
Я не говорю встановлювати щось інше. Хочу сказати, що найбільш сумісним у цьому випадку є той, який постачається з Ubuntu. Це було доведено раз і раз, що це створює менше проблем, воно є більш привітним при здійсненні оновлення / оновлення, і ви маєте більше документації та відгуків громади про це. Якщо я хотів би поговорити про Java, я б рекомендував openjdk з багатьох причин, для python - та, яка за замовчуванням, тому що вона вже перевірена і так далі тощо. Ви розумієте мою думку тут, я здогадуюсь.
Луїс Альварадо

7

У мене також була проблема з драйверами nvidia, і я зробив усе, що міг знайти (також в інших відповідях):

  • видаліть раніше встановлені драйвери та встановіть знову
  • завантаження failsafeXі активація водія
  • використання попереднього драйвера ( 173)
  • я доданий UNITY_FORCE_START=1до /etc/environmentзазначеного тут (як GeForce 7300/7400 перебуває у чорному списку, але у мене є GeForce Go 7100)

Але все це не вдавалось. Отже, в останню чергу (я повинен був подумати про це раніше), я дослідив X-logfiles. Всередині /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

І тоді, нарешті, для мене все спрацювало нормально :) Сподіваюся, це допомагає.


Це чудово зробило трюк, велике спасибі! (Nvidia GeForce 9400 на Natty 64 біт працює з "поточними" драйверами)
кульбабамод

2

Зауважте, ядро ​​нижче вказує на попередній випуск 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, знайдений у тому самому каталозі, незалежно від усіх пакетів розробників, які вже були встановлені на моїй машині. Мені довелося зробити символічне посилання, щоб вказати на файл gcc.

sudo mv /usr/bin/cc /usr/bin/cc.old
sudo ln -s /usr/bin/gcc /usr/bin/cc

Після цього перевстановлення пакету nvidia-потоку для мене зробило трюк.

З повагою


2

Моє оновлення 11.04 також завантажувалося лише до вікна терміналу. Тоді я знайшов цей сайт. Я почав робити те, що рекомендував Роланд Тейлор, спочатку я це зробив

sudo apt-get install linux-headers-generic

Тоді я спробував зробити:

sudo dkms remove nvidia 

Але не вдалося поскаржитися, що команда не була повною, що мені потрібна -mі -vверсія

Я збирався повторити спробу, але помітив, що на екрані була інформація про журнал з першої команди, зазначивши, що вона встановила редактор, nvidia-currentколи я встановила загальні заголовки, тому подумала, мені цікаво, що це буде робити, якщо я перезавантажуюсь зараз? Так я і зробив, і робочий стіл X підійшов чудово. Отже, лише одна команда вирішила мою проблему з установкою.


0

Це працювало для мене.

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

0

Для тих, хто також має цю проблему, переконайтесь, що Optimus (технологія комутації відеокарт Nvidia) відключений у BIOS.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.