Odpowiedzi:
gnome-session-quit
dbus-send --session --type=method_call --print-reply --dest=org.gnome.SessionManager /org/gnome/SessionManager org.gnome.SessionManager.Logout uint32:1
(poprzez DoR , zobacz jego odpowiedź na „Uruchom ponownie bez uprawnień sudoer?”, aby uzyskać więcej dobroci dbus!)
lub alternatywnie możesz użyć
gnome-session-save --force-logout
--force-logout
w przeciwieństwie do po prostu --logout
nie poprosi użytkownika o postępowanie z niezapisanymi dokumentami i tak dalej.
czy to najłatwiejszy sposób? nie ma jednego prostego polecenia, takiego jak sudo wylogowanie? Nigdy tego nie zapamiętam.
Tak, istnieje polecenie o nazwie wylogowanie, ale dotyczy ono terminala. gnome-session-save to program, który faktycznie zamyka program gnome-session
, który można oczywiście zabić, ale nie kwalifikowałby się jako wylogowanie. :-)
Zauważ też, że te polecenia nie wymagają rootowania.
Zawsze możesz dodać alias do swojego systemu, jeśli chcesz mieć krótsze polecenie.
Otwórz ~/.bash_aliases
za pomocą edytora tekstu lub utwórz go, jeśli go nie ma, i dodaj do niego coś takiego:
alias logout-gnome="gnome-session-save --force-logout"
(.bashrc to skrypt uruchamiany za każdym razem, gdy uruchamiany jest nowy terminal wirtualny , powinieneś skonfigurować tam wszystkie swoje stałe aliasy, zobacz także: Jak utworzyć stały „alias”? )
man gnome-session-quit
doszedłem do wniosku, że „--force” i „--logout” mają w rzeczywistości być różnymi argumentami. Dlatego „--force --logout” (dwa minusy śpiewa przed „force” i „logout”, z odstępem pomiędzy) byłoby lepsze, ponieważ nie będziesz mieć błędów. Przynajmniej tak jest w przypadku Ubuntu 13.04 i Linux Mint 15. IDK o innych / starszych wersjach obu dystrybucji.
Zainstalowałem komputer stacjonarny i żadne z menu nie działało, nawet klawisze funkcyjne nie działały. Udało mi się zdobyć Xterm poprzez przeglądanie za pomocą menedżera plików.
Jedyne, co zadziałało, to:
sudo pkill -u username
alias ulogout="sudo pkill -KILL -u $1"
. Może się przydać komuś. Zastosowanie:ulogout user_name
alias logout="sudo pkill -u ${USER}"
?
sudo
? Myślę też, że różni się to od wylogowania, ponieważ zabije wszystkie twoje procesy (na przykład, jeśli masz inną zdalną sesję, zostanie również zabita). Nie jestem też pewien, czy to koniecznie zabije wszystkie twoje procesy (mogę sobie wyobrazić, że może zabić się samo?) Czy wiesz, czy to możliwe?
mate-session-save --force-logout
. Zobacz tę odpowiedź .
Wygląda na gnome-session-save
to, że zmieniono jego nazwę gnome-session-quit
na 11.10. Cała reszta w głównej odpowiedzi powinna nadal działać z tą pojedynczą zmianą.
http://mail.gnome.org/archives/desktop-devel-list/2011- lutego, msg00147.html
W przypadku sesji gnome gnome-session-quit
działa dobrze. Domyślnie prosi o potwierdzenie, a następnie wylogowuje (tzn. --logout
Argument jest przyjmowany, chyba że zostanie to nadpisane --power-off
jawnie). Możesz także powiedzieć komendie, aby nie monitowała o potwierdzenie przy wylogowaniu:
--no-prompt
End the session without user interaction. This only works with --logout.
gnome-session-quit
jest nadal ważny w 12.04.
Ponieważ OP nie określił menedżera okien / pulpitu i zamknięcie sesji gnome może nie działać ze wszystkimi możliwościami, oto ogólny sposób na X-Windows, aby powrócić do ekranu logowania lub selektora, z którego korzystałem kilka razy kilka ostatnich wydań:
Z terminala (wywoływanego z różnymi klawiszami Alt-F2 + xterm lub Ctrl-T lub Crt-Alt-F1 lub klikając prawym przyciskiem myszy pulpit w Nautilus i używając skrótu „otwórz w terminalu” itp. ) rodzaj
sudo pkill X
W większości przypadków jest to przesada. Zwykle używam go, gdy mam zawieszony proces lub gdy muszę się szybko wylogować. Kiedy to zrobiłem, Ubuntu uprzejmie przywrócił mnie do ekranu logowania, ponownie uruchamiając X-Windows.
Nie korzystałem jeszcze z power-off
funkcji gnome-session-quit
, jak zwykle używam shutdown -P now
do tego celu.
Na Xubuntu (lub za każdym razem, gdy używasz sesji Xfce), możesz wylogować się za pomocą terminala, używając
xfce4-session-logout --logout
Musisz określić --logout
lub wyświetli się ekran potwierdzenia wylogowania. Działa to niezależnie od tego, czy podczas logowania wybrano opcję „sesja Xubuntu” czy „sesja Xfce” Lightdm
, ponieważ sesją nadal zarządza menedżer sesji Xfce.
Ponadto wyloguje Cię również inna opcja:
xfce4-session-logout --fast
Jeśli to polecenie zostanie wydane, sesja nie zostanie zapisana, więc zwykle najlepiej jest użyć xfce4-session-logout --logout
.
Możliwość wylogowania się przy użyciu terminala będzie bardzo przydatna, podobnie jak inne opcje, takie jak zawieszanie, które są dostępne za pomocą xfce4-session-logout
.
Aby uzyskać więcej informacji, zobacz man xfce4-session-logout
lub strony internetowe Ubuntu online .
Do użytku z Ubuntu Mate mate-session-save --force-logout
. To jest jak gnome-session-quit
.
Próbowałem gnome-session-quit --force
i działa!
Uwaga: używam Ubuntu 15.04
Zdefiniuj funkcję, dodając następujący wiersz do pliku .bashrc, a następnie uruchom ją, wpisując wylogowanie w wierszu poleceń powłoki.
logoff() { gnome-session-quit --logout --no-prompt ; } # Log Out
A w kubuntu 12.04+ jest to:
qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout 0 0 0
Istnieje sposób, który zadziała, niezależnie od tego, czy korzystasz z X, czy z TTY. Proszę bardzo:
Jeśli użyjesz lightdm
sudo service lightdm restart
jeśli używasz gdm
lub w Ubuntu GNOME
sudo service gdm restart
Jeśli używasz kdm
lub w Kubuntu
sudo service kdm restart
Minusem tego polecenia jest to, że poprosi o podanie hasła.
Aktualizacja 2019
Inne odpowiedzi nie działały dla mnie. W Ubuntu 18 (LTS) łatwo jest wpisać:
exit
Nastąpi powrót do ekranu logowania.
Znalazłem to przypadkowo.
luvpreet@DHARI-Inspiron-3542:~/go/bin$ who -uH
NAME LINE TIME IDLE PID COMMENT
luvpreet tty7 2017-12-27 17:33 old 27458 (:0)
Tutaj otrzymasz identyfikator procesu bieżącej sesji.
Tak łatwo. Zabij to
luvpreet@DHARI-Inspiron-3542:~$ kill 27458
Proszę bardzo.
sudo logout
? Nigdy tego nie zapamiętam.