1 votes

Objet des fichiers /etc/X11/Xsession.d

Je suis avec linux et j'ai quelques questions sur Xsession. Tel que je comprends le script /etc/X11/Xsession est lancé lorsque la session du système de fenêtrage X démarre. Mais en examinant le code dans /etc/X11/Xsession.d j'ai été un peu confus. Les scripts ici sont lancés dans l'ordre, 99x11-common_start est le dernier qui contient exec $STARTUP J'ai journalisé cette variable et c'est juste init --user. Donc il semblerait que tout ce script est écrit juste pour lancer init --user? J'ai supprimé certains fichiers et me suis connecté avec un autre utilisateur et tout fonctionnait bien, (par exemple 75dbus_dbus-launch). Est-ce que cela signifie que Xsession lance seulement init --user? Et le dbus de session, qui le lance? merci.

0voto

Numenor Points 1462

Il y a deux daemons DBus lancés au démarrage : --session & --system. Celui dans Xsession est le bus de session (possédé par l'utilisateur).

~$ ps aux | grep dbus-daemon
message+   944  0.0  0.0  44504  5640 ?        Ss   07:55   0:01 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
sneetsh+  2428  0.0  0.0  43864  4340 ?        Ss   07:56   0:00 dbus-daemon --fork --session --address=unix:abstract=/tmp/dbus-xcqH0l6FdF
sneetsh+  2522  0.0  0.0  43028  3932 ?        S    07:56   0:00 /usr/bin/dbus-daemon --config-file=/etc/at-spi2/accessibility.conf --nofork --print-address 3
sneetsh+  4593  0.0  0.0  14328   964 pts/19   S+   08:17   0:00 grep --color=auto dbus-daemon

La sortie ci-dessus était à partir d'Ubuntu 16.04 et utilise systemd.

  • Le bus système est lancé par systemd

    ~$ service dbus status
     dbus.service - D-Bus System Message Bus
       Loaded: loaded (/lib/systemd/system/dbus.service; static; vendor preset: enabled)
       Active: active (running) since Wed 2016-07-06 07:55:13 CET; 27min ago
         Docs: man:dbus-daemon(1)
     Main PID: 944 (dbus-daemon)
        Tasks: 1
       Memory: 3.5M
          CPU: 1.574s
       CGroup: /system.slice/dbus.service
               944 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
  • Le bus de session est lancé par upstart

    ~$ initctl status dbus 
    dbus start/running, process 2428
    
    ~$ initctl show-config dbus 
    dbus
      start on starting xsession-init

    (Soyez conscient que ce daemon upstart de session, et PAS le daemon init/systeme upstart)

Ubuntu avant 15.10 utilise upstart init.

Vous pouvez vérifier cela en utilisant pstree -up. Une autre façon est de vérifier la variable DBUS_SESSION_BUS_ADDRESS à partir du fichier que vous avez supprimé comme vous l'avez fait avec STARTUP.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X