Désactiver GNOME sur une installation Debian

Je suis très nouveau sur Linux, et je suis en train de configurer un server Debian. Puisque je n'ai pas besoin d'une interface graphique la plupart du time, je voudrais le désactiver de fonctionner au démarrage et gaspiller les ressources du système.

Cependant, j'aimerais quand même qu'il soit disponible pour exécuter Firefox et effectuer des tâches qui pourraient être douloureuses avec la command line.

J'ai essayé de faire des searchs sur le sujet, et les gens semblent dire que cette ligne va le faire:

#update-rc.d -f gdm remove

(Je suppose que le hachage signifie que je devrais l'entrer dans le terminal, si je le laisse là-bas, rien ne se passe)

Si je SSH en tant que root et entrez cette ligne, je reçois le résultat:

 update-rc.d: using dependency based boot sequencing 

qui est merveilleusement cryptique. Lorsque je redémarre l'ordinateur par la suite, GNOME revient immédiatement. Est-ce que quelqu'un sait ce que je fais mal ici?

En supposant que le système est une variante de Red Hat (les instructions de Debian sont légèrement différentes) – Voir U & L Question: Comment démarrer Debian en mode text sans utiliser l'interface graphique?

Variantes Red Hat

Plutôt que de supprimer gdm vous pouvez envisager d'exécuter le système au niveau d'exécution 3 plutôt qu'au niveau d'exécution 5.

RunLevels

 ID Name Description -- ---- ----------- 0 Halt Shuts down the system. 1 Single-user Mode Mode for administrative tasks. 2 Multi-user Mode Does not configure network interfaces and does not export networks services. 3 Multi-user Mode with Networking Starts the system normally. 4 Not used/User-definable For special purposes. 5 Start the system normally with As runlevel 3 + display manager. appropriate display manager. ( with GUI ) 6 Reboot Reboots the system. 

Vous pouvez voir le niveau d'exécution d'un système en utilisant la command runlevel :

 $ runlevel N 5 

Cela vous montre les niveaux d'exécution précédents et actuels. S'il n'y a pas de niveau d'exécution précédent, un N est substitué dans cette position.

Pour modifier votre niveau d'exécution, vous pouvez le faire temporairement en utilisant la command telinit <runlevel> , par exemple:

 telinit 3 

runlevel le runlevel d' runlevel montre maintenant ceci:

 $ runlevel 5 3 

Pour rendre ce changement permanent, vous pouvez éditer le file /etc/inittab et modifier cette ligne:

 $ sudo vim /etc/inittab id:3:initdefault: 

Ensuite, faites un redémarrage et votre système devrait maintenant être au niveau d'exécution 3.

chkconfig

Pour voir si un serivce est configuré pour un niveau d'exécution donné, vous pouvez utiliser la command chkconfig :

 chkconfig --list | grep ssh sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off 

Donc, ssh est configuré pour démarrer dans les niveaux d'exécution 2,3,4, & 5.

Variante Debian / Ubuntu

Sur Debian / Ubuntu, l'location des choses est différent et les niveaux d'exécution sont différents aussi.

RunLevels

 0 - shutdown 1 - single user mode 2 - multiuser graphical mode 6 - reboot 

Le niveau d'exécution par défaut est 2. Vous pouvez le confirmer avec la command runlevel :

 $ runlevel N 2 

Le niveau d'exécution peut être modifié avec la command telinit :

 telinit 3 

Pour rendre ces changements permanents, vous pouvez éditer le file: /etc/init/rc-sysinit.conf et modifier la ligne suivante:

 $ sudo vim /etc/init/rc-sysinit.conf env DEFAULT_RUNLEVEL=2 

sysv-rc-conf

L'outil sysv-rc-conf peut être utilisé depuis le terminal pour interroger les services qui sont câblés pour fonctionner dans un niveau d'exécution donné. Par exemple:

 $ sysv-rc-conf --list|grep rsync rsync 2:on 3:on 4:on 5:on 

Certains services ne vont pas apparaître sous ce, cependant. Sous Debian / Ubuntu, le mécanisme des services sysV est progressivement éliminé par un nouveau mécanisme appelé upstart .

 $ status ssh ssh start/running, process 928 

Vous pouvez voir quel niveau d'exécution le service démarrera comme ainsi:

 $ initctl show-config ssh ssh start on (filesystem or runlevel [2345]) stop on runlevel [!2345] 

En fonction de la version de Debian que vous utilisez, il peut être

 update-rc.d -f gdm remove 

ou

 update-rc.d -f gdm3 remove 

Redémarrez .. C'est ça! Je viens de le tester

L'environnement graphique est démarré par un "gestionnaire d'affichage X". Selon la version de Debian que vous utilisez, gdm3 ou gdm3 (au less pour GNOME, il existe d'autres gestionnaires d'affichage tels que kdm pour KDE).

Vous pouvez vérifier quel gestionnaire d'affichage est utilisé sur votre système en consultant le /etc/X11/default-display-manager . Vous pouvez le modifier en éditant ce file. Vous pouvez le désactiver en modifiant ce file pour contenir, disons, none . Mais alors vous ne seriez pas en mesure de le démarrer manuellement si nécessaire (bien que startx fonctionnerait toujours bien).

Alternativement, vous pouvez modifier gdm3 (ou n'importe lequel) pour ne pas démarrer au démarrage. Vous faites la même chose que n'importe quel autre service, en manipulant les liens dans /etc/rc?.d . Sur un Debian assez récent, vous pouvez facilement le faire avec update-rc.d gdm3 disable . Vous pouvez ensuite le démarrer manuellement en exécutant le service gdm3 start .

Sur mon système Debian, le gestionnaire d'affichage était LightDM, donc pour le supprimer du process de démarrage, j'ai émis update-rc.d lightdm disable .