web-dev-qa-db-fra.com

Qu'est-ce qui fait que Nautilus redémarre chaque fois que je le tue?

Dans htop, je tue Nautilus et, en une seconde, il revient avec un nouveau PID!

Nautilus redémarré apparaît dans la liste des processus, mais ne dispose d'aucune interface graphique jusqu'à ce que je lance manuellement Nautilus ... J'ai entendu parler de Nautilus qui fonctionne en parallèle avec le bureau ... c'est peut-être la raison (?).

Existe-t-il une sorte de "programme de surveillance" surveillant certains programmes critiques pour la distribution? Surveiller Nautilus ne semble pas être un problème de noyau Linux, alors je me demande ce qui se passe ici?

28
Peter.O

Gnome utilise un gestionnaire de session (gnome-session) pour garder une trace de ce qu'il doit faire. Il est chargé d’afficher la totalité de la session, de tous les sous-processus, de restaurer l’état et de le sauvegarder lors de la déconnexion.

GNOME fournit des outils permettant à votre application de s’exécuter en douceur d’une session à l’autre. Les utilisateurs peuvent se déconnecter avec des applications en cours d'exécution et les restaurer complètement lorsqu'ils se reconnectent. - depuis la bibliothèque de documentation de Gnome

Entre autres choses, le gestionnaire de session essaie de garder son instance de Nautilus en fonctionnement. Nautilus doit s'enregistrer auprès du gestionnaire de session pour cela - ce qu'il fait par défaut; naturellement, il y a une option en ligne de commande pour le désactiver:

nautilus --sm-disable

Vous pouvez arrêter définitivement un processus Nautilus en cours d'exécution en exécutant:

killall -9 nautilus

20
Stefano Palazzo

Comme d'autres l'ont mentionné, gnome-session réengage automatiquement le processus nautilusname__. Il le fait également pour gnome-panel et gnome-wm (qui à son tour lance le gestionnaire de fenêtres configuré par l'utilisateur, généralement compizou metacityname__).

Ce comportement est personnalisable via les clés desktop > gnome > session > required_components gconf.

required_components gconf keys

La modification de ces valeurs peut être utile si, par exemple, vous exécutez sans le panneau GNOME et utilisez uniquement Docky ou AWN.

11
andrewsomething

gnome-session est responsable de la réapparition du nautile. En tant que parent dans l'arborescence des processus, il n'y a aucun autre processus pouvant le réapparaître.

ps -eaH vous montre l'arborescence hiérarchique des processus extraite ici:

    1 ?        00:00:00 init
 1113 ?        00:00:00   gdm-binary
11391 ?        00:00:00     gdm-simple-slav
11396 tty8     00:00:13       Xorg
11465 ?        00:00:00       gdm-session-wor
11629 ?        00:00:00         gnome-session
11746 ?        00:00:02           nautilus
6
msw

Chipaca et Andrewsomething sont à la fois proches ... :)

La clé /desktop/gnome/session/required_components_list répertorie les "composants" qui doivent être surveillés par gnome-session et redémarrés automatiquement à leur fermeture. La valeur par défaut pour GNOME 2 est quelque chose comme [windowmanager,panel,filemanager].

Si vous souhaitez empêcher le redémarrage de nautilus (ou de tout "composant de gestionnaire de fichiers" que vous avez configuré) par ce mécanisme, vous pouvez remplacer la valeur par [windowmanager,panel]. (Vous pouvez toujours le faire démarrer lors de la connexion en l'ajoutant à la liste des programmes de démarrage de session bien sûr, mais il ne sera plus redémarré automatiquement.)

Quelle application (avec quels paramètres de ligne de commande) démarrée pour chaque composant est définie sous /desktop/gnome/session/required_components dans une clé portant le nom du composant. Il est possible que plus de composants soient listés ici que n'en utilise la clé /desktop/gnome/session/required_components_list.

Maintenant, dans le cas de Nautilus, par défaut, quand il ne fonctionne pas encore, il commence en arrière-plan et si la clé /apps/nautilus/preferences/show_desktop est définie, elle affiche également le Bureau. Il est également possible de dire à Nautilus de se comporter différemment avec les paramètres de ligne de commande.

5
JanC

Nautilus est en cours de redémarrage, car il dessine le bureau. Entrer

gconftool-2 --type bool --set /apps/nautilus/preferences/show_desktop False

dans un terminal pour que cela cesse, et il ne devrait pas revenir après avoir tué.

2
Chipaca

au total faire:

gconftool-2 -s -t bool /desktop/gnome/background/draw_background false
gconftool-2 -s -t bool /apps/nautilus/preferences/show_desktop false

et

Sudo gedit /usr/share/applications/nautilus.desktop

changer à:

X-GNOME-AutoRestart = false

(trouvé à: https://bbs.archlinux.org/viewtopic.php?id=119254 )

c'est tout...

0
O...