remotely log out of (graphical) gnome session
After logging in with ssh
, run:
env DISPLAY=:0.0 gnome-session-quit --logout
This will force a logout on the remote machine just as if you had logged out from the menu (but without prompting). You may need to run gnome-session-quit
with --force-logout
if there's an application with, for example, unsaved work, that would otherwise prevent a clean logout.
If you use a very old version (<2011) of GNOME, then you need to
env DISPLAY=:0.0 gnome-session-save --logout
... because gnome-session-save
was renamed to gnome-session-quit
in 2011.
Related videos on Youtube
drevicko
Updated on September 18, 2022Comments
-
drevicko over 1 year
I have a (graphical) login session running on an office computer, and I'd like to log it out to save on a few computer resources.
I can ssh to the office box, but when I try
gnome-session-quit
I get this:$ gnome-session-quit --logout --no-prompt ** (gnome-session-quit:18500): WARNING **: Command line `dbus-launch --autolaunch=fca99a51622d1930b068883b00000005 --binary-syntax --close-stderr' exited with non-zero exit status 1: Autolaunch error: X11 initialization failed.\n ** (gnome-session-quit:18500): WARNING **: Unable to start: Cannot open display:
Makes sense as my
$DISPLAY
is empty (as it's a headless ssh session). When I runw
, I see that thegnome-session
is running ontty7
. Is there a way I can pretend to betty7
and initiate a logout? Is there a better way to do this?-
Admin over 9 yearsUsually with
w
, I see some line to this effect:muru :0 Wed20 ?xdm? 11:15m 1.10s gdm-session-worker [pam/gdm-password]
, the:0
being my relevant$DISPLAY
. Don't you? You can also trypgrep -fa X
and see what X is running with. -
Admin over 9 yearsthe entry from
w
withgnome-session
hadtty7
as the display, but the session had several other entries with:0
(terminals open I guess?). Checking the time column fromw
I realised:0
was the graphical session for sure (:
-
-
drevicko over 9 yearsOn the office box, there is no
gnome-session-save
, but there is agnome-session-quit
which (with the rest of your answer) did the trick. I forgot to mention it's running Ubuntu 12.04 - perhaps that's why? -
muru over 9 years@drevicko probably a typo. It's still
-quit
on a 12.04 box I have. -
Jetson Earth over 9 yearsgnome-session-save was renamed to gnome-session-quit in 2011: mail.gnome.org/archives/desktop-devel-list/2011-February/…
-
Jetson Earth over 9 years@muru: updated answer accordingly
-
Bloodgain over 3 yearsNote that if the session is run under a session manager like Xvnc, it may not be on display 0.0. You can often find the display by doing a
ps ux
listing to find the process and see which display number is listed with the process. For example, my Xvnc process was listed asXvnc :10 -geometry...
, so I had to useenv DISPLAY=:10.0 ...
.