Existe-t-il une simple commande linux qui me dira ce qu'est mon gestionnaire d'affichage?
J'utilise Xfce. Différents environnements de bureau sont-ils généralement associés à différents gestionnaires d’affichage?
command-line
display-manager
ptrcao
la source
la source
Réponses:
Malheureusement, la configuration diffère pour chaque distribution:
Debian / Ubuntu
RedHat (devrait également s'appliquer à Fedora)
OpenSuSe
la source
cat
./usr/bin/xdm
- cela signifie-t-il que xdm est mon gestionnaire d'affichage?Il n'y a pas. Le gestionnaire d'affichage n'est pas nécessairement lié à quoi que ce soit d'autre qui s'exécute sur le même serveur X. Le gestionnaire d'affichage s'exécute avant de vous connecter; c'est choisi par l'administrateur système. Tout le reste (gestionnaire de fenêtre, gestionnaire de session, environnement de bureau,…) est choisi par l'utilisateur. Il n'est même pas nécessaire d'avoir un gestionnaire d'affichage: si vous vous connectez en mode texte et démarrez l'interface graphique avec
startx
, aucun gestionnaire d'affichage n'est impliqué.Vous pouvez vérifier quel gestionnaire d'affichage est celui par défaut sur votre système . Cela ne fera que donner la bonne réponse sous certaines hypothèses communes mais non universelles. Si vous avez exécuté manuellement un autre gestionnaire pour une raison quelconque, cette méthode ne vous le dira pas.
Un bon pari consiste à connaître l'ID de processus du serveur X: son processus parent est probablement un gestionnaire d'affichage, le cas échéant. Cela nécessite que vos clients s'exécutent sur le même ordinateur que le serveur X.
lsof /tmp/.X11-unix/X${DISPLAY#:}
montrera le processus du serveur X (en supposant que les sockets X vivent/tmp/.X11-unix
).(Explication:
lsof -F ''
imprime la sortie commep1234
. L'-F
option désigne un format de sortie analysable par machine et''
n'imprime que le PID, avec la lettre lap
précédant.x=${x#p}
Élimine la lettre initialep
. La dernière ligne obtient le PID du parent du serveur X (ps -o ppid -p $x
), et appelleps
pour afficher des informations sur ce processus parent.)Certaines distributions permettent d'installer plusieurs gestionnaires d'affichage. Il n'y en aura qu'un seul en cours d'exécution, sauf si vous avez un système multiseat. Pour lister tous les paquets du gestionnaire d’affichage installés sous Debian et ses dérivés:
ou
la source
Si vous utilisez une distribution basée sur systemd . Cette commande donnera le nom du gestionnaire d'affichage actuellement configuré car plusieurs gestionnaires d'affichage peuvent être installés.
SORTIE sera quelque chose comme
On dirait que j'utilise le gestionnaire d'affichage à la menthe.
la source
grep '/usr/bin' /etc/systemd/system/display-manager.service
. (Et, à proprement parler, puisqu'il/usr/bin
ne contient aucun caractère spécial pour le shell, vous n'avez pas besoin de le citer, mais cela ne fait pas mal.)cat <file> | grep <searchterm>
au lieu de la secondegrep <searchterm> <file>
lors de la récupération.Si vous utilisez systemd, alors
Affiche le nom et l’état du service du gestionnaire d’affichage actif sur votre machine.
la source
Le nom du gestionnaire d'affichage doit être dans DESKTOP_SESSION.
retourne "gnome" pour moi.
EDIT
Vous avez raison. Ils vont et viennent à ce sujet sur le bugzilla de XFCE, donc ce n'est probablement pas très fiable.
la source
$DESKTOP_SESSION
c'estunknown
.Comme @Gilles a dit, le gestionnaire d'affichage va démarrer votre environnement de bureau.
Selon le wiki de Debian , la plupart du temps, ils se terminent par
dm
, seule exceptionslim
.Cela devrait donc suffire à la plupart des besoins de la population:
Ou pour être sûr, il existe en tant que processus parent et n'est pas créé (à l'exception du système init):
la source
lightdm
. La solution RedHat / Fedora de la réponse principale n'a pas fonctionné, la configuration semble s'être déplacée.Dans certains cas, wmctrl pourrait vous aider. Cet utilitaire est compatible avec beaucoup de gestionnaires de fenêtres.
devrait afficher le nom du gestionnaire de fenêtres actuellement utilisé.
la source
Comme déjà mentionné, il y a beaucoup de confusion dans ce fil. La question initiale est de savoir quel gestionnaire d’affichage, et non pas le gestionnaire de bureau ou le gestionnaire de fenêtres. J'utilise actuellement Xfwm4, gestionnaire de fenêtres Xfce, et lxdm, gestionnaire d'affichage X11 léger (de LXDE et non de Xfce). Vous devriez pouvoir voir quel gestionnaire d’affichage vous utilisez via htop. Vous avez probablement depuis longtemps découvert la réponse au cours des 4 dernières années :)
la source
Vous pouvez le faire via un script tiers appelé screenfetch
Screenfetch est un script bash disponible pour Linux qui affiche des informations système à côté de la version ASCII de la distribution Linux. Logo du système
Installer via le gestionnaire de paquets
sudo apt-get install screenfetch
(en supposant que vous êtes sur des variantes de Debian)et juste courir
screenfetch
dans votre terminalLien du projet https://github.com/KittyKatt/screenFetch
la source
X est hautement modulaire, vous pouvez donc mélanger les environnements de bureau et les gestionnaires de fenêtres. Après tout, un gestionnaire de fenêtres n’est qu’un moyen de peindre des fenêtres (c’est la simple vue).
Donc, si vous prenez gnome, Metacity était le gestionnaire de fenêtres, mais maintenant, il est remplacé par Mutter.
Le problème du mélange réside dans les environnements de bureau modernes. Le bureau et le gestionnaire de fenêtres sont étroitement liés. Trop de mixage pourrait aboutir à moins de fonctionnalités.
Comme mentionné précédemment, $ DESKTOP_SESSION fonctionne, mais si vous voulez demander à votre serveur X11, vous pouvez le faire:
Qui se décompose en
Ce qui obtient l'id de la fenêtre créée par le gestionnaire de fenêtres. La spécification dit (http://standards.freedesktop.org/wm-spec/1.3/ar01s03.html):
Et ensuite, vous demandez la propriété WM_NAME de ladite fenêtre.
WM_NAME étant:
la source
_NET_SUPPORTING_WM_CHECK
donne des informations sur le gestionnaire de fenêtres, pas sur le gestionnaire d'affichage. Cela ne fonctionne même pas toujours; sur mon système, cette propriété est définie sur un ID de fenêtre, mais la fenêtre en question n'a pas de nom.la source