Comment désactiver le démarrage automatique du serveur X dans Debian Jessie?


39

J'ai une machine distante sous Debian 8 (Jessie) avec lightdm installé. Je veux qu'il démarre en mode sans interface graphique, mais je ne veux pas supprimer tous les éléments liés à X pour pouvoir toujours l'exécuter via SSH avec le -Xparamètre. Alors, comment désactiver le démarrage automatique du serveur X sans le supprimer?

J'ai essayé systemctl stop lightdm, cela arrête le lightdm, mais il redémarre après le redémarrage. J'ai aussi essayé systemctl disable lightdm, mais au fond ça ne fait rien. Il renomme les scripts de lightdm dans les /etc/rc*.drépertoires, mais il démarre toujours après le redémarrage, alors qu'est-ce que je fais mal? Et je ne peux pas simplement update-rc.d lightdm stop, parce que c'est obsolète et que ça ne marche pas.


2
Exécuter X par le biais de ssh ne nécessite pas l'installation d'un serveur X sur la machine. (Cela nécessite seulement les bibliothèques du client X ). Voulez-vous vraiment un serveur X installé? Autant que je sache, vous avez trouvé un bogue - la désactivation aurait dû fonctionner. Bien sûr que ce n'est guère une réponse ...]
derobert

@derobert Oh, alors ... je pense que je n'ai pas besoin du serveur X dans ce cas. C'est toujours plus une solution de contournement qu'une solution, mais merci. Puis-je supprimer en toute sécurité le paquet lightdm et tous les paquets xorg-server- * ou dois-je conserver quelque chose, par exemple des pilotes xorg-server-input- * ou vidéo?
Kurogetsusai


@ Kurogetsusai, vous pouvez supprimer lightdm et xorg-server- *. Vous avez vraiment besoin de conserver xauth(recommandé par openssh-server) et toutes les bibliothèques sur lesquelles vos clients X dépendent. Vous avez probablement aussi besoin de polices.
derobert

Réponses:


82

La désactivation n'a pas fonctionné car la /etc/X11/default-display-managerlogique Debian est en train de la remplacer.

Pour que le texte démarre par défaut sous systemd (quelle que soit la distribution, réellement):

systemctl set-default multi-user.target

Pour revenir au démarrage sur l'interface graphique,

systemctl set-default graphical.target

J'ai confirmé ces travaux sur ma machine virtuelle Jessie et Slashback l'a également confirmé sur Stretch.

PS: Vous n’avez pas besoin du serveur X sur votre machine pour exécuter des clients X sur ssh. Le serveur X n’est nécessaire que lorsque l’affichage (moniteur) est.


2
+1 pour faire remarquer que X n'est pas obligé d'exécuter X clients sur SSH
jlh

Fonctionne sur ma machine virtuelle Stretch.
Slashback

fonctionne mais il y a toujours un terminal xterm, impossible de s'en débarrasser.
Ransh

@ransh On dirait que vous devriez poser votre propre question. Faites référence à celle-ci dans votre question et expliquez également ce que vous entendez par cela fonctionne - je ne sais pas comment vous avez encore un xterm surgissant si X ne démarre pas. Aussi, tout ce qui pourrait être différent de votre système.
derobert

1
Vous pouvez utiliser systemctl get-default pour savoir quel est l'actuel. très utile pour le serveur distant.
Sadi

4

vous pouvez également ajouter systemd.unit=multi-user.targetà la ligne de commande du noyau, si vous ne pouvez pas accéder au système en cours d'exécution.


2

Je ne connais pas grand chose à propos de Debian, mais sur mon ordinateur portable Ubuntu 14.04, voici la procédure standard que j'utilise pour désactiver X et démarrer command promptpour le dépannage:

  1. Éditez le fichier /etc/default/gruben mode superutilisateur et définissez GRUB_CMDLINE_LINUX_DEFAULT="text"

Si vous le souhaitez, supprimez également le commentaire de cette ligne: #GRUB_TERMINAL=console puis faites-le sudo update-grub. La machine démarrera en mode texte.

  1. Pour démarrer l'interface graphique à partir de là, vous pouvez alors sudo service lightdm start#could être gdm ou startx dans certaines situations

Source: https://askubuntu.com/questions/52089/how-do-i-boot-to-a-command-line-interface-instead-of-a-gui


Ne fonctionnait pas sous Ubuntu 16.04. Il démarre toujours automatiquement à gnome.
Juha Untinen

Avez-vous essayé de supprimer le commentaire GRUB_TERMINAL=consoleet de mettre à jour le ver?
Prahlad Yeri

Oui. Je devais faire cela, ce qui est mentionné dans la réponse acceptée:systemctl set-default multi-user.target
Juha Untinen

0

Essayez la commande suivante:

echo  "manual" | sudo tee -a /etc/init/lightdm.override

0

Je devais faire ceci:

systemtcl disable *dm

*est un gou kpeut - être un x.


bien sûr * est un "g" ou un "k" peut-être "x"
emile boyer
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.