In htop, I kill Nautilus, and within one second, it's back, with a new PID!

The restarted Nautilus shows in the Processes list, but has no GUI until I manually launch Nautilus... I've heard mention of Nautilus works in lockstep with the desktop... maybe that is the reason(?).

Is there some sort of "watchdog" program keeping an eye on some distro-critical programs? Monitoring Nautilus doesn't seem like a Linux kernel issue, so I just wonder what is happening here?

6 Answers 6


Gnome uses a Session Manager (gnome-session) to keep track of what it needs to do. It is responsible for bringing up the whole session, all subprocesses, restoring state and saving it when you log out.

GNOME provides tools to allow your application to run smoothly from session to session. Users can log out with running applications and have those applications fully restored when they log back in. – from the Gnome Documentation Library

Among other things, the session manager tries to keep it's instance of Nautilus running. Nautilus has to register with the session manager for that - which it does by default; naturally, there's a command-line option to disable it:

nautilus --sm-disable

You can kill a running Nautilus process for good by running:

killall -9 nautilus

  • Thanks Stefano.. You have given a good overview, and that's what I was after, but as is often the case, an explanation can bring up another question(s)...I'll mention one now: I ran nautilus --sm-disable (user and sudo). This may have disabled the connection to the session-manager, but the session-manager kept right on restarting nautilus (with "nautilus --sm-disable" showing in the process list)... So does this parameter only take effect if it is applied at session startup (vs. mid-session), and are there any serious ramifications when disabled? (I think auto-mounting would vanish, but...?
    – Peter.O
    Commented Dec 12, 2010 at 1:08
  • Well, nautilus --sm-disable in an Undocumented Feature. So it's hard to say. But keep in mind that nautilus will restart as soon as it's killed, you'd have to start the first instance of it with this parameter. killall nautilus && nautilus --sm-disable won't work. The command doesn't disable the feature for the running instances of nautilus. You might try to combine mine and andrewsomething's answer. ;-) Commented Dec 12, 2010 at 14:47
  • use killall -9 nautilus.
    – RolandiXor
    Commented Dec 30, 2010 at 12:09
  • nautilus --sm-disable doesn't work in Ubuntu 15.10 (Unknown option --sm-disable). Also there is no Gnome session.
    – Hubro
    Commented Apr 1, 2016 at 13:00

As others have mentioned, gnome-session respawns the nautilus process automatically. It also does so for gnome-panel and gnome-wm (which in turn starts the window manager configured by the user, usually compiz or metacity).

This behavior is customizable through the desktop > gnome > session > required_components gconf keys.

required_components gconf keys

Editing these value can be useful if you would like to, for instance, run with out the GNOME Panel and only use Docky or AWN.


gnome-session is responsible for respawning nautilus. As its parent in the process tree, there is no other process that could respawn it.

ps -eaH shows you the hierarchical process tree excerpted here:

    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
  • Thanks msw... That's quite an informative listing (-eaH).
    – Peter.O
    Commented Dec 11, 2010 at 17:30

Chipaca & andrewsomething are both close... :)

The /desktop/gnome/session/required_components_list key lists the "components" that should be monitored by gnome-session, and restarted automatically when they exit. The default value for GNOME 2 is something like [windowmanager,panel,filemanager].

If you want to prevent nautilus (or whatever "filemanager component" you have configured) from getting (re)started by this mechanism, you can change the value to [windowmanager,panel]. (You can still have it start during login by adding it to the list of session start-up programs of course, but it won't get restarted automatically anymore.)

What application (with what commandline parameters) gets started for each component is defined under /desktop/gnome/session/required_components in a key with the name of the component. It is possible that more components are listed here than are used in the /desktop/gnome/session/required_components_list key.

Now, in case of nautilus, by default when it is not running yet it starts in the background, and if the /apps/nautilus/preferences/show_desktop key is set it also shows the Desktop. It is also possible to tell nautilus to behave differently with commandline parameters.

  • This is the correct answer. Commented Dec 14, 2010 at 4:30

Nautilus is being restarted because you have it drawing the desktop. Enter

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

in a terminal for it to stop doing that, and it then shouldn't come back after killing.

  • The show_desktop = False option does not prevent Nautilus from restarting... so I think Nautilus must be doing more behind the scenes than just that... By the way, I like this option, as I don't keep anything on the desktop, and it is annoying when Screenshot saves its images there (it doesn't seem to have any way to change this).... Also just noticed another option I really like: show_advanced_permissions True ... Thanks :)
    – Peter.O
    Commented Dec 11, 2010 at 22:59

in total do:

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


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

change to:


(found it at: https://bbs.archlinux.org/viewtopic.php?id=119254 )

thats all...

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .