Alors que la plupart des systèmes Linux modernes utilisent un gestionnaire d'affichage pour connecter les utilisateurs et démarrer un environnement de bureau, il est possible de démarrer X11 et votre gestionnaire de fenêtres/environnement de bureau préféré sans un. Vous pouvez démarrer X à partir d'une console virtuelle et même le configurer pour qu'il se lance automatiquement à la connexion. Voici comment.

Étape 1: Désactivation de votre gestionnaire d'affichage

Les gestionnaires d'affichage ont été conçus à l'origine pour connecter des utilisateurs distants à un serveur central afin d'exécuter des applications X. Les utilisateurs utiliseraient des "terminaux X", à ne pas confondre avec xterm, qui étaient des terminaux graphiques conçus pour être utilisés avec X11. Étant donné que la plupart des PC modernes exécutent à la fois le serveur X et les applications sur la même machine, vous pouvez les désactiver.

Si vous avez un système exécutant systemd, comme le font la plupart des distributions Linux modernes, vous pouvez désactiver votre gestionnaire d'affichage au démarrage.

instagram viewer

Pour ce faire, commencez par déterminer le gestionnaire d'affichage que vous utilisez. Un indice sera quel environnement de bureau a été installé par défaut. Si vous utilisez GNOME, GDM sera probablement le gestionnaire d'affichage. Si vous êtes un utilisateur de KDE, il s'agit très probablement de KDM. Sinon, il peut s'agir de XDM ou de LightDM.

Si vous n'êtes pas sûr, un bon indice est de vérifier les processus en cours d'exécution en utilisant ps, top ou htop. Recherchez quelque chose dans la liste qui inclut "-dm".

Lorsque vous savez quel gestionnaire d'affichage vous utilisez, il est facile de le désactiver à l'aide de systemd. Utilisez simplement le systemctl commande. Voici un exemple pour LightDM :

sudosystemctldésactiverlumièredm.service

Redémarrez et vous vous retrouverez dans un texte console virtuelle. Entrez votre nom d'utilisateur et votre mot de passe lorsque vous y êtes invité et vous pouvez exécuter des commandes Linux dans votre shell comme si vous aviez ouvert une fenêtre de terminal. Vous l'utiliserez pour démarrer votre bureau, mais vous devrez d'abord configurer votre .xinitrc déposer.

Étape 2: Configurez votre .xinitrc

Pour démarrer votre gestionnaire de fenêtres ou votre bureau, vous devez d'abord configurer votre fichier .xinitrc dans votre répertoire personnel. C'est facile à faire. Ouvrez-le simplement avec votre éditeur de texte préféré.

Maintenant que vous l'avez ouvert, vous devrez ajouter au moins la ligne qui démarre votre environnement préféré. Voici un exemple pour démarrer XFCE :

exec startxfce4

Il est important d'utiliser "exec" car cela entraînera la déconnexion du système lorsque vous quitterez XFCE.

Vous pouvez également avoir tous les programmes que vous souhaitez exécuter lorsque vous démarrez X dans votre .xinitrc. Par exemple:

Firefox &
xterm &
xcalc &
exec startxfce4

Il est important d'ajouter le "&" à la fin de tous les autres programmes qui s'exécutent avant le gestionnaire de bureau/fenêtre. Cela les fait fonctionner en arrière-plan. Si vous ne le faites pas, le programme s'exécutera et rien ne se passera à moins que vous ne le quittiez. Cela ne lancera même pas votre gestionnaire de fenêtres. Le .xinitrc n'est en fait qu'un script shell et obéit à la syntaxe shell.

Étape 3: Utilisation de startx sur la ligne de commande

Le démarrage de votre gestionnaire de fenêtres ou de votre environnement de bureau préféré est assez simple. Tapez simplement "startx" sur la ligne de commande, et si vous avez configuré votre fichier .xinitrc, vous devriez le trouver en cours d'exécution comme si vous vous étiez connecté avec un gestionnaire de fenêtres.

Si vous souhaitez démarrer un gestionnaire de fenêtres différent de celui que vous avez configuré dans votre .xinitrc, vous pouvez simplement utiliser le chemin absolu du gestionnaire comme argument :

startx /chemin/vers/fenêtre/manager

Étape 4: Démarrage automatique de X lors de la connexion

Vous pouvez également démarrer X à la connexion sans gestionnaire de fenêtres. Vous pouvez modifier les fichiers de démarrage du shell qui ne s'exécutent que lorsque vous utilisez un shell de connexion. Sur Bash, c'est .bash_login, et sur Zsh, c'est .zprofil.

Ajoutez simplement cette séquence au fichier :

Si [ -z "${AFFICHER}" ] && [ "$XDG_VNTR" éq 1 ]; alors
exec commencerx
Fi

Ce morceau de code shell vérifie que la variable d'environnement $DISPLAY est vide (ce qui sera le cas si X n'est pas en cours d'exécution) et que vous êtes connecté à la console virtuelle 1. Cela signifie que si X est déjà en cours d'exécution, une autre copie de X ne se reproduira pas. Il ne démarrera pas non plus lorsque vous démarrez un shell dans un émulateur de terminal, car cela exécutera les fichiers .bashrc ou .zshrc à la place.

Vous n'avez pas besoin d'un gestionnaire d'affichage lors de la connexion

Comme pour beaucoup de choses liées aux interfaces graphiques sous Linux, l'exécution d'un gestionnaire d'affichage est strictement facultative. Vous pouvez démarrer X en ligne de commande et même lorsque vous vous connectez automatiquement. Vous pouvez exécuter Linux sans interface graphique complètement si vous le souhaitez.