¿Cuál es la forma más fácil de quitar una edición de escritorio a una edición de servidor?

22

Hemos instalado Ubuntu Desktop Edition en nuestro servidor de desarrollo. Ahora que lo tenemos en un centro de datos, nos gustaría reducirlo a una edición de servidor.

¿Hay una manera fácil de hacerlo en lugar de simplemente ingresar y desinstalar paquetes a mano?

Gabriel Solomon
fuente
2
Lo mejor es volver a instalar: el CD del servidor tiene configurados los parámetros del kernel de los que carece el escritorio (puede obtenerlos, por supuesto, también con el escritorio, pero es más trabajo que una reinstalación;))
Rinzwind
Además, también se debe eliminar x11 cruft después con sudo apt-get remove x11 *
Rob K

Respuestas:

16

Es posible hacerlo al revés, pero nunca he visto a nadie que haya podido hacerlo simplemente instalando un metapaquete o algo así.

Tu mejor apuesta es:

  • una instalación limpia
  • eliminar manualmente los paquetes innecesarios e instalar los componentes del servidor que necesita
Nathan Osman
fuente
1
Una instalación limpia es el camino a seguir, pero si desea eliminar paquetes manualmente, ejecute dpkg --get-selections "*"> ~ / aplicaciones.txt y elimine lo que sabe que no necesita.
jugar el
14

Puede eliminar ubuntu-desktopy, al mismo tiempo, eliminar automáticamente todos sus dependientes huérfanos:

sudo apt-get autoremove ubuntu-desktop

Agregue la --purgeopción si también desea eliminar la configuración de los paquetes afectados (y no conservarla para una posible reinstalación posterior).

Si tiene otro escritorio, elimínelos también. Si reinicia después de esto, no debería tener GUI para iniciar sesión. Si purga un programa en lugar de simplemente eliminarlo, también eliminará los archivos de configuración que puedan quedar.

Como Rinzwind sugiere probar sudo apt-get remove gnome-*.

Antes de Ubuntu 16.04 , también proporciona un paquete especial de kernel para instalaciones de servidor linux-image-server:

  • sudo apt-get install linux-image-server y reiniciar.

Luego le sugiero que instale las aplicaciones de servidor que desee, como ssh-server.


Pero como siempre es mejor hacer una instalación limpia. Da menos riesgo de errores y paquetes rotos.

Alvar
fuente
1
Bueno, eliminé ubuntu-desktop, pero no hizo nada, ya que ningún paquete depende de ello. Entonces me quita todos los paquetes que ubuntu-desktopdependen de, que funciona mejor, pero todavía deja un poco de un desastre con paquetes como unity-common, gedit-common, etc.
Bart van Heukelom
@BartvanHeukelom bien, ¿lo hiciste purgeo simplemente remove? editado la pregunta.
Alvar
1
Iirc sudo apt-get remove gnome-*se encargaría de la mayoría de los paquetes. La unidad debe eliminarse junto con esto (debido a las dependencias). (aunque necesita confirmación ya que tiendo a no hacer esto)
Rinzwind
Lo eliminé (accidentalmente), no lo purgué, pero AFAIK eso no debería importar con respecto a las dependencias.
Bart van Heukelom
2
Desde 12.04, no hay diferencia en el kernel entre Ubuntu Desktop y Ubuntu Server ya que linux-image-server se fusiona en linux-image-generic. (desde Ubuntu ServerFaq)
Amir Ali Akbari
12

Nota: como se indica en los comentarios, taskel solo debe usarse para instalar tareas, no eliminarlas. En esta tarea específica (eliminar escritorio -> instalar servidor) parece funcionar bien. Así que úsalo con precaución.


Puedes probar taskel. Con él, puede hacer lo que quiera seleccionando Basic Ubuntu Server y desmarcando Ubuntu Desktop .

sudo apt-get install tasksel

pantalla de taskel

Salem
fuente
1
¿Puede usted u otra persona confirmar que esto funciona? Dices probar, pero si funciona, esta es una gran respuesta.
djeikyb
1
Extracto de la página de Ubuntu Tasksel: ADVERTENCIA: ¡Use taskel solo para instalar tareas, nunca para eliminar ninguna! De acuerdo con launchpad.net/bugs/574287 , eliminará cada paquete de la lista de esa tarea (y posiblemente hará que su sistema sea inutilizable).
Andrejs Cainikovs
Como se indicó anteriormente, no le recomiendo que use taskel en su caso.
Andrejs Cainikovs
1
@djeikyb Probé esto con ubuntu 9.10 y ubuntu 11.10, y ambos funcionan (instalar wubi, eliminar el escritorio e instalar "paquetes de servidor"). En 11.10 hay una pequeña falla: el sistema arranca pero no muestra el mensaje de inicio de sesión.
Salem
@AndrejsCainikovs solo utilicé taskel con esta tarea específica (eliminar escritorio -> instalar servidor) y en los sistemas que utilicé funciona. Actualizaré la respuesta
Salem,
2

Si no desea ejecutar el DM y WM en el inicio, pero tiene la capacidad de ejecutarlos a voluntad, puede ejecutar:

sudo systemctl set-default runlevel3.target

luego reiniciar.

El sistema se iniciará en el nivel de ejecución 3 (init 3) que no inicia el DM y WM y todas las demás cosas relacionadas con el entorno de escritorio, pero inicia todo lo demás. Cuando el sistema se inicia en el terminal tty1 en la consola, puede iniciar sesión y luego

sudo init 5

para acceder al entorno de escritorio de inicio de sesión.

En los escritorios ubuntu y xfce4 que estaba probando con el botón de cierre de sesión de la GUI colgó mi sistema.
En el escritorio de ubuntu, los botones de apagado y reinicio funcionaron bien; el escritorio xfce4 solo tiene un botón para cerrar sesión.

La forma segura de volver a tty solo es abrir una terminal y ejecutar:

sudo init 3
Technopeon
fuente