Inicie Ubuntu 16.04 en la línea de comandos / no inicie la GUI


30

Quiero que mi Ubuntu 16.04 no inicie la GUI en el arranque y muestre solo la consola de línea de comandos. He intentado las siguientes recetas, pero ninguna de ellas es para la versión 16.04 y, por lo tanto, no parecen funcionar: la GUI comienza de todos modos:

  1. GRUB_CMDLINE_LINUX = "texto"

  2. Cambiar el nivel de ejecución predeterminado

Idealmente, también quiero poder iniciar la GUI escribiendo un comando.

Respuestas:


27

Puede deshabilitar el servicio del administrador de pantalla con systemctl. Por ejemplo, si su administrador de pantalla se lightdmejecuta:

sudo systemctl disable lightdm.service

Esto evitará que el servicio se inicie en el arranque.

Editar :

Olvidé mencionar cómo iniciar la GUI. Es tan simple como iniciar el servicio systemd:

sudo systemctl start lightdm.service

1
Esto funcionó para mí el 16.04 en un tablero de brazo. Gracias. :)
wojci

Esto no funcionó en mi sistema. (16.04 LTS en una PC) Muestra la pantalla inicial con todos los mensajes [OK] cuando comienzan los servicios, y luego se congela.
Paul Williams

Por cierto, para volver a habilitar el servicio, el comando es en realidad sudo systemctl enable lightdm.service
Paul Williams

16

En lugar de textusar runlevel 3:

GRUB_CMDLINE_LINUX="3"

# To remove all the fancy graphics you need to get rid of `splash`.
GRUB_CMDLINE_LINUX_DEFAULT=”quiet”

# Uncomment to disable graphical terminal (grub-pc only) 
GRUB_TERMINAL=console

Luego update-gruby reiniciar.


Pero realmente solo necesitas GRUB_CMDLINE_LINUX="3". Para una prueba rápida ESCdurante el arranque, ingrese al menú de arranque de grub. Luego presione ey busque la línea que especifica el núcleo y agregue 3al final:

 linux /vmlinuz root=/dev/mapper/ubuntu ro 3

Arrancar con CTRL+x


Idealmente, también quiero poder iniciar la GUI escribiendo un comando.

Uno de estos:

$ sudo telinit 5
$ sudo service lightdm restart
$ sudo systemctl start lightdm

Probado en Ubuntu 16.04.1 LTS.


2
¡Reemplazar "texto" por "3" funcionó para mí! Muy eficiente ! Gracias
ThomasGuenet

Hola. la respuesta se ve bien pero es difícil de entender. Simplemente necesito un comando para iniciar en modo texto, hacer lo que necesito y volver al modo de escritorio normal.
nyxee

1
@nyxee Mi respuesta tiene 3 secciones. Siga el segundo: "Para un golpe de prueba rápido ..."
AD

Agradezco la información en tu publicación. cuando las personas buscan esta información, normalmente están agotadas con otras opciones. Di un ejemplo de una respuesta simple a continuación.
nyxee

1
Buena respuesta. Solo estoy acostumbrado a publicar respuestas más largas con mucha información para que todos podamos aprender más. Y también estoy familiarizado con las opciones de línea de grub cmd, por lo que es más rápido para mí agregar 3 y estoy listo para ir + es una solución de distribución múltiple :)
AD

10
  • Cuando esté en modo GUI, esto lo llevará al modo texto (nivel de ejecución 2,3,4) al reiniciar. Usted puede obtener una pantalla en blanco (sin-GUI), que es un recordatorio de que no hay interfaz gráfica de usuario :-), enter ctrlalt( F1, F2, ...) para utilizar los niveles de ejecución.

systemctl set-default multi-user.target

  • Esto lo llevará nuevamente al inicio de la GUI cuando esté en modo texto.

systemctl set-default graphical.target


9

Uno de los siguientes, como parte de la línea de comando del núcleo (editable a través de GRUB), debería funcionar:

  • systemd.unit=multi-user.targetanulará el valor predeterminado de "graphical.target"; esto, junto con systemctl set-default , es el equivalente de "default runlevel";
  • systemd.mask=lightdm.serviceprohibirá que se inicie un servicio específico, hasta que systemctl lo desenmascare manualmente más tarde;
  • systemd.mask=display-manager.service - lo mismo
  • rescueaka systemd.unit=rescue.targetes el equivalente de "nivel de ejecución de usuario único"; no para uso diario, pero es útil cuando se repara una GUI rota.

Sería útil mencionar cómo vuelve a la normalidad desde esa "configuración de emergencia".
nyxee

1
Para el beneficio de otros, el comando real de CLI que desea es systemctl set-default multi-user.target(y creo que systemctl set-default graphical.targetlo restablecería)
Andrea

Eso es solo si lo quieres semipermanente y puedes alcanzar un caparazón en primer lugar. La publicación principal no tiene nada que ver con los comandos de la CLI.
Grawity

3

para ubuntu 18.04 habilitar usuario root

 sudo passwd

y entonces

systemctl set-default multi-user.target
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.