Bagaimana Anda bisa keluar melalui terminal?

248

Apakah ada perintah terminal yang akan mengeluarkan Anda dari sesi desktop Anda saat ini dan membawa Anda kembali ke layar login?

TheXed
sumber

Jawaban:

197

11.10 ke atas

gnome-session-quit

11.04 dan versi sebelumnya

dbus-send --session --type=method_call --print-reply --dest=org.gnome.SessionManager /org/gnome/SessionManager org.gnome.SessionManager.Logout uint32:1

(via teks alternatifDoR , lihat jawabannya "Reboot tanpa hak istimewa sudoer?" untuk kebaikan dbus lainnya!)

atau sebagai alternatif, Anda dapat menggunakan

gnome-session-save --force-logout

--force-logoutberbeda dengan --logouttidak akan meminta pengguna untuk berurusan dengan dokumen yang belum disimpan dan sebagainya.

Apakah ini cara termudah? tidak ada perintah satu baris sederhana seperti sudo logout ?? Saya tidak akan pernah mengingat semua itu.

Ya, ada perintah yang disebut logout, tetapi menyangkut Terminal. gnome-session-save adalah program yang benar-benar berhenti gnome-session, yang tentu saja bisa Anda bunuh, tetapi itu tidak memenuhi syarat sebagai logout. :-)

Perhatikan juga bahwa perintah-perintah ini tidak mengharuskan Anda untuk menjadi root.

Anda selalu dapat menambahkan alias ke sistem Anda jika Anda ingin memiliki perintah yang lebih pendek.

Buka ~/.bash_aliasesdengan editor teks, atau buat jika itu tidak ada, dan tambahkan sesuatu seperti ini ke sana:

alias logout-gnome="gnome-session-save --force-logout"

(.bashrc adalah skrip yang dijalankan setiap kali terminal virtual baru dijalankan, Anda harus mengatur semua alias permanen Anda di sana, lihat juga: Cara membuat "alias" permanen? )

Stefano Palazzo
sumber
1
Apakah ini cara termudah? tidak ada perintah satu baris yang sederhana seperti sudo logout?? Saya tidak akan pernah mengingat semua itu.
TheXed
2
Yah, selalu ada Ctrl-Alt-Backspace (jika Anda mengaktifkannya), tapi sekali lagi itu mematikan sesi daripada keluar dari itu.
koanhead
4
Bisakah Anda memperbarui jawaban Anda dengan mengatakan "gnome-session-save" diubah namanya menjadi "gnome-session-stops" untuk 11.10 +
mac
1
Anda mungkin ingin menambahkan DISPLAY =: 0.0 atau serupa ketika mencoba keluar dari sesi dari ssh atau terminal lain.
patrikf
3
Sepertinya saya bahwa "--force-logout" tidak berfungsi, karena memberikan kesalahan ini: PERINGATAN **: Tidak dapat memulai: Opsi tidak dikenal --force-logout. Setelah mencari- man gnome-session-quitcari, saya menemukan bahwa "- force" dan "--logout" sebenarnya dimaksudkan sebagai argumen yang berbeda. Karenanya, "--force --logout" (dua minus bernyanyi sebelum "force" dan "logout", dengan spasi di antara) akan lebih baik karena Anda tidak akan memiliki kesalahan. Setidaknya, itulah yang terjadi dengan Ubuntu 13.04 dan Linux Mint 15. IDK tentang versi lain / lama dari kedua distro.
TSJNachos117
76

Saya telah menginstal desktop mate dan tidak ada menu yang berfungsi, bahkan tombol-f tidak berfungsi. Saya berhasil mendapatkan xterm melalui penelusuran dengan pengelola file.

Satu-satunya hal yang berhasil adalah:

sudo pkill -u username
Dan
sumber
2
Saya juga melakukan alias untuk saya alias ulogout="sudo pkill -KILL -u $1". Mungkin berguna bagi seseorang. Penggunaan:ulogout user_name
Eugene
1
@Eugene Bagaimana alias logout="sudo pkill -u ${USER}"?
Georgi-it
Ini adalah solusi hebat untuk VM seperti di Virtualbox.
Phil Lawlor
1
Apakah ada alasan Anda membutuhkannya sudo? Juga, saya pikir ini berbeda dari logout, karena ini akan mematikan semua proses Anda (misalnya, jika Anda memiliki sesi remote lain, itu juga akan dibunuh). Saya juga tidak yakin bahwa itu akan membunuh semua proses Anda (saya bisa membayangkan itu mungkin membunuh dirinya sendiri dulu?) Apakah Anda tahu kalau itu mungkin?
capybaralet
Untuk sobat, gunakan mate-session-save --force-logout. Lihat jawaban ini .
Jérôme
32

11.10 ke atas

Inilah solusi pribadi saya!

Di terminal, jalankan:

gedit ~/.bash_aliases

Dan tambahkan:

alias log-out="gnome-session-quit"

ke file! Sekarang Anda hanya perlu menjalankan log-out!

Nick
sumber
11

Untuk sesi gnome, gnome-session-quitbekerja dengan baik. Secara default ia meminta konfirmasi dan kemudian mengeluarkan Anda (yaitu, --logoutargumen diasumsikan kecuali diganti dengan --power-offsecara eksplisit). Anda juga dapat memberi tahu perintah untuk tidak meminta konfirmasi saat keluar:

--no-prompt
      End the session without user interaction. This only works with --logout.

gnome-session-quit masih berlaku dalam 12,04.

Karena OP tidak menentukan jendela / desktop manager, dan sesi-gnome-berhenti mungkin tidak bekerja dengan semua kemungkinan, inilah cara X-windows umum untuk kembali ke layar masuk atau pemilih yang telah saya gunakan beberapa kali lipat beberapa rilis terakhir:

Dari terminal (dipanggil dengan, beragam, 'Alt-F2 + xterm, atau Ctrl-T, atau Crt-Alt-F1, atau dengan mengklik kanan pada desktop di Nautilus dan menggunakan pintasan "terminal terbuka", dll. ) Tipe

sudo pkill X

Ini umumnya berlebihan untuk sebagian besar situasi. Saya cenderung menggunakannya ketika saya mengalami proses yang macet atau ketika saya harus keluar dengan cepat. Ketika saya melakukan ini, Ubuntu dengan sopan mengembalikan saya ke layar login dengan memunculkan kembali X-windows.

Saya belum menggunakan power-offfitur gnome-session-quit, seperti yang biasanya saya gunakan shutdown -P nowuntuk tujuan itu.

belacqua
sumber
9

Pada Xubuntu (atau setiap kali menggunakan sesi Xfce), Anda dapat keluar melalui terminal dengan menggunakan

xfce4-session-logout --logout

Anda harus menentukan --logoutatau layar konfirmasi logout akan ditampilkan. Ini akan berfungsi apakah Anda telah menentukan 'sesi Xubuntu' atau 'sesi Xfce' saat Anda masuk Lightdm, karena sesi tersebut masih dikelola oleh manajer sesi Xfce.

Selain itu, opsi lain juga akan mengeluarkan Anda:

xfce4-session-logout --fast  

Jika perintah ini dikeluarkan, sesi tidak disimpan, jadi biasanya yang terbaik adalah menggunakan xfce4-session-logout --logout.

Kemampuan untuk logout menggunakan terminal akan sangat berguna bagi Anda, seperti halnya opsi lain seperti menangguhkan yang tersedia xfce4-session-logout.

Untuk informasi lebih lanjut, lihat man xfce4-session-logoutatau manual Ubuntu online .


sumber
Dikonfirmasi, ini juga berlaku untuk semua rasa Ubuntu Studio.
sekitar
9

Anda dapat menggunakan perintah di bawah ini:

sudo service lightdm restart
Osama El-gedawy
sumber
2
Itu sulit membunuh semua menjalankan sesi X, untuk semua pengguna.
lihat
dalam ~/.bash_aliasesmenulisalias logmeout="service lightdm restart"
noobninja
7

Untuk penggunaan Ubuntu Mate mate-session-save --force-logout. Itu seperti gnome-session-quit.

Badman Gray Tua
sumber
6

lubuntu 12.10 LXDE berjalan pada netbook Samsung (CPU: 1.66 GHZ Intel Atom; RAM: 2GB)

Dua perintah di bawah ini segera mengeluarkan saya:

sudo pkill -u username
sudo service lightdm restart
afc888ny
sumber
ini jawaban yang tepat untukku!
3

Saya mencoba gnome-session-quit --forcedan berhasil!

Catatan: Saya menggunakan ubuntu 15.04

Vazha Gelashvili
sumber
3

Jika Anda tidak ingin membunuh sesi Anda, Anda dapat kembali ke layar masuk menggunakan:

dm-tool switch-to-greeter

Jika Anda memilih pengguna dan memasukkan kata sandi Anda, sesi akan dilanjutkan, jadi itu bukan logout penuh.

Zanna
sumber
2

Tentukan fungsi dengan menambahkan baris berikut ke .bashrc Anda, lalu aktifkan dengan mengetikkan logoff pada prompt shell.

  logoff() { gnome-session-quit --logout --no-prompt ; } # Log Out
vanvliet.eric
sumber
2
Bisakah Anda menambahkan informasi lebih lanjut tentang cara menggunakan ini? Agak kabur sekarang. Terima kasih!
Seth
tambahkan baris ke .bashrc Anda, cukup ketik logoff saat diminta.
vanvliet.eric
Anda harus mengedit informasi itu menjadi jawaban Anda;)
Seth
1

Dan di kubuntu 12.04+ itu adalah:

qdbus org.kde.ksmserver /KSMServer org.kde.KSMServerInterface.logout 0 0 0
Adobe
sumber
0

Ada cara yang akan berfungsi apakah Anda menjalankan X atau Anda berada di TTY. Ini dia:

  • Jika Anda menggunakan lightdm

    sudo service lightdm restart
    
  • jika Anda menggunakan gdmatau di Ubuntu GNOME

    sudo service gdm restart
    
  • Jika Anda menggunakan kdmatau di Kubuntu

    sudo service kdm restart
    

Kelemahan dari perintah ini adalah ia akan meminta kata sandi Anda.

pengguna258456
sumber
0

Pembaruan 2019

Jawaban lain tidak berhasil untuk saya. Di Ubuntu 18 (LTS) mudah untuk mengetik:

exit

Ini akan mengembalikan Anda ke layar login.

Pavel Kovalev
sumber
-1

Saya menemukan ini secara tidak sengaja.

luvpreet@DHARI-Inspiron-3542:~/go/bin$ who -uH
NAME     LINE         TIME             IDLE          PID COMMENT
luvpreet tty7         2017-12-27 17:33  old        27458 (:0)

Di sini Anda mendapatkan id proses dari sesi Anda saat ini.

Begitu mudah. Bunuh itu

luvpreet@DHARI-Inspiron-3542:~$ kill 27458

Ini dia.

luv.preet
sumber