Как закрыть X Server, чтобы избежать ошибок при обновлении драйвера nVidia?


33

Я попытался обновить драйвер nVidia, но у меня возникла ошибка при запуске установки драйвера.

Смотрите ошибку:

  ОШИБКА: вы, кажется, используете X-сервер; пожалуйста, выйдите из X раньше            
         установка. Для получения более подробной информации, пожалуйста, смотрите раздел УСТАНОВКА   
         ДРАЙВЕР NVIDIA в README доступен в драйвере Linux         
         Страница загрузки на www.nvidia.com.


Примечание: я попытался следовать руководству, набрав, init 3но ничего не изменилось. Как закрыть X-сервер?

Так что я могу обновить драйвер


1
ты попробовал мое serviceпредложение?
Кевин

что это за дистрибутив?
Патрик

Ответы:


17

Я не думаю, что когда-либо получал эту установку / обновление nvidia, но здесь:

# To stop:
sudo init 3
# To resume:
sudo init 5

Хотя я не уверен на 100%, что это сработает на Ubuntu, IIRC отошли от init. В Ubuntu попробуйте это (замените gdm на kdm / slim / любой другой менеджер дисплея, который вы используете):

# To stop:
sudo service gdm stop
# To start:
sudo service gdm start

Я уверен, что это останавливает всю сессию X

Менее чисто, вы могли бы просто убить их

sudo killall /usr/bin/X

Но они могут возродиться.


Я попробовал ваше первое решение, но оно не сработало, затем я попробовал ваше второе решение, в котором говорится о нераспознанном сервисе (я пробовал все из них) Я также попробовал ваше последнее решение и в нем говоритсяno proccess found
Rev3rse

2
В Ubuntu основным диспетчером отображения является не GDM, а LightDM. service lightdm stop,
Джон В. У. Смит,

@JohnWHSmith, может быть, сейчас, но это было не 3 года назад, когда я написал это.
Кевин

6

В зависимости от вашей версии способ остановки X-сервера варьируется. Вы должны выйти из графического режима (набрав alt+ctrl+F1, например), войти, а затем ввести одну из следующих команд, чтобы остановить X-сервер:

sudo service lightdm stop

sudo service gdm stop

sudo service kdm stop  //this is the one that worked for mi as I use kdm and Linux mint

Теперь вы можете установить драйверы, а затем набрать

sudo reboot

Когда вы пишете, sudo serviceнажмите вкладку, чтобы увидеть опции, которые у вас есть (gdm, kdm, ...)


4

Как говорится в сообщении об ошибке, вы все еще используете X-сервер. Эта ошибка возникает при попытке установить файлы Nvidia .run во время входа в систему.

Убедитесь, что вы вышли из системы.

  • Нажмите CTRL + ALT + F1 и войдите, используя свои учетные данные.
  • завершите текущий сеанс X-сервера, набрав sudo service lightdm stopилиsudo stop lightdm
  • Введите уровень запуска 3 (или 5) , набрав sudo init 3 (или sudo init 5), и установите файл .run .
  • Вам может потребоваться перезагрузить компьютер после завершения установки. Если нет, запустите sudo service lightdm startили, sudo start lightdmчтобы снова запустить X-сервер.

2

Из моего опыта я бы попробовал это:

  • Alt+F1затем войдите в систему sudo telinit 3(если это не работает, попробуйте /sbin/telinit 3), и убедитесь, что он изменен на уровень 3, и runlevelэто должно вывести что-то вроде этого, 5 3что означает, что текущий уровень запуска равен 3и был раньше 5.

Если это не сработает, сделайте:

  • ps ax | grep X, И на выходе вы увидите PIDномер процесса X, так что вы должны убить его , sudo kill -9 numberгде numberэто PIDчисло процесса.

1
sudo kill -9 <all pids from ps ax>работал!
Voy

1

Если вы используете Linux Mint, используйте sudo service mdm stop


Для меня это было sudo service lightdm stopна Linux Mint 19.
Angelorf

@Angelorf Какую рабочую среду вы используете? Cinnamon?
crypdick

Да, Linux Mint 19 Корица.
Ангелорф

0

Загрузка на другой уровень запуска

Уровни запуска в Linux определяют, какие службы запускаются и останавливаются автоматически при загрузке или выключении системы. Уровни выполнения обычно варьируются от 0 до 6, при этом уровень запуска 5 обычно запускает систему X Window как часть служб (уровень запуска 0 на самом деле является остановкой системы, а 6 - перезагрузка системы). Рекомендуется устанавливать драйвер NVIDIA Linux, когда X не работает, и рекомендуется не запускать X при перезагрузке в случае проблем с установкой (в противном случае вы можете столкнуться с неисправной системой, которая автоматически пытается запустить X, но затем зависает во время запуска, не давая вам сделать ремонт, необходимый для исправления X). В зависимости от настроек вашей сети, для установки драйвера должно быть достаточно уровней запуска 1, 2 или 3. Уровень 3 обычно включает в себя сетевые сервисы, поэтому, если утилиты, используемые системой во время установки, зависят от удаленной файловой системы, уровней 1 и 2 будет недостаточно. Если ваша система обычно загружается в консоль с командной строкой, вам не нужно ничего менять. Если ваша система обычно загружается в систему X Window с графическим логином и рабочим столом, вы должны выйти из X и изменить уровень запуска по умолчанию.

В большинстве дистрибутивов уровень запуска по умолчанию хранится в файле / etc / inittab, хотя вам, возможно, придется обратиться к руководству для вашего собственного дистрибутива. Строка, которая указывает уровень запуска по умолчанию, выглядит как

id:n:initdefault:

или аналогичный, где n указывает номер уровня выполнения. / etc / inittab должен быть отредактирован как root. Пожалуйста, прочтите разделы о редактировании файлов и пользователя root, если вы не знакомы с этой концепцией. Кроме того, рекомендуется создать копию файла до его редактирования, особенно если вы новичок в текстовых редакторах Linux, если вы случайно повредили файл:

# cp /etc/inittab /etc/inittab.original

Строка должна быть отредактирована так, чтобы соответствующий уровень запуска был по умолчанию (1, 2 или 3 в большинстве систем):

id:3:initdefault:

После сохранения изменений выйдите из X. После завершения установки драйвера вы можете вернуть уровень запуска по умолчанию в исходное состояние, либо снова отредактировав файл / etc / inittab, либо вернув резервную копию к ее первоначальному имени.

Разные дистрибутивы предоставляют разные способы выхода из X. Во многих системах утилита init изменит текущий уровень выполнения. Это можно использовать для перехода на уровень выполнения, на котором X не работает.

init 3

Есть и другие способы выхода из X. Пожалуйста, обратитесь к вашему дистрибутиву.

Графический драйвер NVIDIA для Linux README и руководство по установке

Перечислите все ваши процессы с:

ps ax

Перечислите все ваши службы бега с:

service --status-all | grep +

0

Я использую kubuntu, и у меня возникла та же проблема, но ни один из ответов не сработал, но мне пришло сообщение о том, что он работает в «режиме низкой графики». Я должен был ударить, ctrl-alt-backspaceчтобы убить X-сервер.

Я использовал ssh для подключения к машине и установки драйверов Nvidia после этого. Вероятно, ctrl-alt-F1будет работать виртуальная оболочка с использованием .

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.