¿Cómo cerrar X Server para evitar errores al actualizar el controlador nVidia?

33

Intenté actualizar mi controlador nVidia pero recibí un error cuando ejecuté la instalación del controlador.

Ver el error:

  ERROR: parece estar ejecutando un servidor X; salga de X antes            
         instalación Para más detalles, consulte la sección INSTALACIÓN   
         EL CONTROLADOR NVIDIA en el archivo README disponible en el controlador Linux         
         página de descarga en www.nvidia.com.


Nota: Traté de seguir una guía escribiendo init 3pero todavía nada cambió. ¿Cómo cerrar el servidor X?

Entonces puedo actualizar el controlador

Rev3rse
fuente
1
intentaste mi servicesugerencia?
Kevin
¿Qué distribución es esta?
Patrick

Respuestas:

17

No creo haber conseguido instalar / actualizar nvidia, pero aquí:

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

Aunque no estoy 100% seguro de que funcionará en Ubuntu, IIRC se alejaron de init. En Ubuntu, intente esto (reemplace gdm con kdm / slim / cualquier administrador de pantalla que use):

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

Estoy bastante seguro de que eso detiene toda la sesión X

Menos limpiamente, podrías matarlos:

sudo killall /usr/bin/X

Pero podrían reaparecer.

Kevin
fuente
Probé su primera solución y no funcionó, luego probé su segunda solución, dice servicio no reconocido (probé todas) También probé su última solución y diceno proccess found
Rev3rse
2
Bajo Ubuntu, el administrador de pantalla básico no es GDM sino LightDM. service lightdm stop.
John WH Smith, el
@JohnWHSmith tal vez lo sea ahora, pero no hace 3 años cuando escribí esto.
Kevin
6

Dependiendo de su versión, la forma de detener el servidor X varía. Debe salir del modo gráfico (escribiendo alt+ctrl+F1, por ejemplo), iniciar sesión y luego escribir uno de los siguientes comandos para detener el servidor 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

Ahora puede instalar los controladores y luego escribir

sudo reboot

Cuando escriba, sudo servicepresione la pestaña para ver las opciones que tiene (gdm, kdm, ...)

Jav_Rock
fuente
4

Como indica el error, todavía está ejecutando un servidor X. Este error ocurre cuando intenta instalar los archivos .run de Nvidia mientras está conectado.

Asegúrate de haber cerrado sesión.

  • Presione CTRL + ALT + F1 e inicie sesión con sus credenciales.
  • matar su sesión actual de servidor X escribiendo sudo service lightdm stoposudo stop lightdm
  • Ingrese el nivel de ejecución 3 (o 5) escribiendo sudo init 3 (o sudo init 5) e instale su archivo .run .
  • Es posible que deba reiniciar cuando finalice la instalación. Si no, ejecute sudo service lightdm starto sudo start lightdmpara iniciar su servidor X nuevamente.
Manan Sharma
fuente
2

Desde mi experiencia, probaría esto:

  • Alt+F1luego inicie sesión sudo telinit 3(si eso no es trabajo, intente /sbin/telinit 3) y verifique que se haya cambiado al nivel 3 con runleveleso debería generar algo como lo 5 3que significa que el nivel de ejecución actual es 3y antes 5.

En caso de que eso no funcione, haga lo siguiente:

  • ps ax | grep X, y en la salida, verá el PIDnúmero del proceso X, por lo que debe eliminarlo con sudo kill -9 numberdónde numberestá el PIDnúmero del proceso.
Hanan N.
fuente
1
sudo kill -9 <all pids from ps ax>¡trabajó!
voy
1

Si está utilizando Linux Mint, use sudo service mdm stop

cripdick
fuente
Para mí fue sudo service lightdm stopen Linux Mint 19.
Angelorf
@Angelorf ¿Qué entorno de escritorio utiliza? ¿Canela?
crypdick
Sí, Linux Mint 19 Cinnamon.
Angelorf
0

Arrancar a un nivel de ejecución diferente

Los niveles de ejecución en Linux dictan qué servicios se inician y se detienen automáticamente cuando el sistema se inicia o se apaga. Los niveles de ejecución suelen oscilar entre 0 y 6, y el nivel de ejecución 5 suele iniciar el sistema de ventanas X como parte de los servicios (el nivel de ejecución 0 es en realidad una interrupción del sistema y 6 es un reinicio del sistema). Es una buena práctica instalar el controlador NVIDIA Linux mientras X no se está ejecutando, y es una buena idea evitar que X comience a reiniciarse en caso de que haya problemas con la instalación (de lo contrario, es posible que se encuentre con un sistema dañado que intenta automáticamente para iniciar X, pero luego se cuelga durante el inicio, evitando que realice las reparaciones necesarias para reparar X). Dependiendo de la configuración de su red, los niveles de ejecución 1, 2 o 3 deberían ser suficientes para instalar el controlador. El nivel 3 generalmente incluye servicios de red, entonces, si las utilidades utilizadas por el sistema durante la instalación dependen de un sistema de archivos remoto, los niveles 1 y 2 serán insuficientes. Si su sistema normalmente arranca en una consola con un símbolo del sistema, no debería necesitar cambiar nada. Si su sistema normalmente arranca en el sistema de ventana X con un inicio de sesión gráfico y un escritorio, debe salir de X y cambiar su nivel de ejecución predeterminado.

En la mayoría de las distribuciones, el nivel de ejecución predeterminado se almacena en el archivo / etc / inittab, aunque es posible que deba consultar la guía para su propia distribución. La línea que indica el nivel de ejecución predeterminado aparece como

id:n:initdefault:

o similar, donde n indica el número del nivel de ejecución. / etc / inittab debe editarse como root. Lea las secciones sobre edición de archivos y usuario root si no está familiarizado con este concepto. Además, se recomienda que cree una copia del archivo antes de editarlo, especialmente si es nuevo en los editores de texto de Linux, en caso de que accidentalmente corrompa el archivo:

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

La línea debe editarse de modo que el nivel de ejecución apropiado sea el predeterminado (1, 2 o 3 en la mayoría de los sistemas):

id:3:initdefault:

Después de guardar los cambios, salga de X. Una vez completada la instalación del controlador, puede revertir el nivel de ejecución predeterminado a su estado original, ya sea editando nuevamente el / etc / inittab o moviendo su copia de respaldo a su nombre original.

Las diferentes distribuciones proporcionan diferentes formas de salir de X. En muchos sistemas, la utilidad init cambiará el nivel de ejecución actual. Esto se puede usar para cambiar a un nivel de ejecución en el que X no se está ejecutando.

init 3

Existen otros métodos para salir de X. Consulte su distribución.

README y Guía de instalación de NVIDIA Accelerated Linux Graphics Driver

Enumere todos sus procesos con:

ps ax

Enumere todos sus servicios de carrera con:

service --status-all | grep +
DevWL
fuente
0

Estoy ejecutando kubuntu y tuve el mismo problema y ninguna de las respuestas funcionó, pero apareció un mensaje que decía que se estaba ejecutando en "modo de gráficos bajos". Tuve que golpear ctrl-alt-backspacepara matar al servidor X.

Usé ssh para conectarme a la máquina e instalar los controladores de Nvidia después de eso. Probablemente ir a un shell virtual usando ctrl-alt-F1funcionaría.

localhost
fuente