คุณจะออกจากระบบได้อย่างไร?


248

มีคำสั่งเทอร์มินัลที่จะนำคุณออกจากเซสชันเดสก์ท็อปปัจจุบันและนำคุณกลับไปที่หน้าจอเข้าสู่ระบบหรือไม่

คำตอบ:


197

11.10 ขึ้นไป

gnome-session-quit

11.04 และรุ่นก่อนหน้า

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

(ผ่านข้อความแสดงแทนDoRดูคำตอบของเขาที่ "Reboot โดยไม่มีสิทธิ์ sudoer?"เพื่อความดียิ่งขึ้นของ dbus!)

หรืออีกวิธีหนึ่งคุณสามารถใช้

gnome-session-save --force-logout

--force-logoutในทางตรงกันข้าม--logoutจะไม่ขอให้ผู้ใช้จัดการกับเอกสารที่ไม่ได้บันทึกและอื่น ๆ

นี่เป็นวิธีที่ง่ายที่สุดหรือไม่ ไม่มีคำสั่งบรรทัดเดียวอย่างง่ายเช่นการออกจากระบบ sudo ?? ฉันจะไม่จดจำทุกสิ่งนั้น

ใช่มีคำสั่งเรียกว่าออกจากระบบ แต่เกี่ยวข้องกับเทอร์มินัล gnome-session-save เป็นโปรแกรมที่หยุดทำงานจริงgnome-sessionซึ่งคุณสามารถฆ่าได้แน่นอน แต่นั่นจะไม่ถือว่ามีคุณสมบัติเหมือนการออกจากระบบ :-)

โปรดสังเกตว่าคำสั่งเหล่านี้ไม่ต้องการให้คุณรูท

คุณสามารถเพิ่มนามแฝงเข้าสู่ระบบของคุณได้ตลอดเวลาหากคุณต้องการคำสั่งที่สั้นกว่า

เปิด~/.bash_aliasesด้วยโปรแกรมแก้ไขข้อความหรือสร้างมันขึ้นมาหากไม่ได้อยู่ที่นั่นและเพิ่มสิ่งนี้ลงไป:

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

(.bashrc เป็นสคริปต์ที่ทำงานทุกครั้งที่มีการเปิดเทอร์มินัลเสมือนใหม่คุณควรตั้งค่านามแฝงถาวรทั้งหมดของคุณที่นั่นดู: วิธีสร้าง "นามแฝง" แบบถาวรได้อย่างไร )


1
นี่เป็นวิธีที่ง่ายที่สุดหรือไม่ ไม่มีคำสั่งบรรทัดเดียวที่เรียบง่ายเช่นsudo logout?? ฉันจะไม่จดจำทุกสิ่งนั้น
TheXed

2
มี Ctrl-Alt-Backspace อยู่เสมอ (ถ้าคุณเปิดใช้งาน) แต่มีอีกครั้งที่ฆ่าเซสชันแทนที่จะออกจากระบบ
koanhead

4
โปรดอัปเดตคำตอบของคุณว่า "gnome-session-save" ได้รับการเปลี่ยนชื่อเป็น "gnome-session-quit" เป็นเวลา 11.10 +
mac

1
คุณอาจต้องการเพิ่ม DISPLAY =: 0.0 หรือคล้ายกันเมื่อพยายามออกจากระบบเซสชันจาก ssh หรือเทอร์มินัลอื่น
patrikf

3
สำหรับฉันแล้วดูเหมือนว่า "--force-logout" ใช้งานไม่ได้เนื่องจากมีข้อผิดพลาดนี้: คำเตือน **: ไม่สามารถเริ่ม: ตัวเลือกที่ไม่รู้จัก - บังคับให้ออกจากระบบ หลังจากขุดไปด้วยman gnome-session-quitฉันพบว่า "--force" และ "- logout" นั้นมีความหมายว่าเป็นอาร์กิวเมนต์ที่แตกต่างกัน ดังนั้น "--force --logout" (สองลบด้วยกันก่อน "บังคับ" และ "ออกจากระบบ" โดยมีช่องว่างระหว่าง) จะดีกว่าเนื่องจากคุณไม่มีข้อผิดพลาด อย่างน้อยนั่นก็เป็นกรณีของ Ubuntu 13.04 และ Linux Mint 15. IDK เกี่ยวกับ distro ทั้งสองรุ่นอื่น / เก่า
TSJNachos117

76

ฉันติดตั้งเดสก์ท็อปคู่ครองแล้วและไม่มีเมนูใดทำงานเลยแม้แต่ปุ่ม f ไม่ทำงาน ฉันจัดการเพื่อรับ xterm ผ่านการสืบค้นด้วยตัวจัดการไฟล์

สิ่งเดียวที่ทำงานคือ:

sudo pkill -u username

2
ฉันยังทำนามแฝงออกมาให้ฉันalias ulogout="sudo pkill -KILL -u $1"ด้วย อาจมีประโยชน์สำหรับใครบางคน การใช้งาน:ulogout user_name
Eugene

1
@Eugene แล้วalias logout="sudo pkill -u ${USER}"ล่ะ
Georgi-it

นี่เป็นโซลูชันที่ยอดเยี่ยมสำหรับ VM's like ใน Virtualbox
Phil Lawlor

1
มีเหตุผลที่คุณต้องการsudoหรือไม่ นอกจากนี้ฉันคิดว่านี่แตกต่างจากการออกจากระบบเนื่องจากมันจะฆ่ากระบวนการทั้งหมดของคุณ (ตัวอย่างเช่นหากคุณมีเซสชันระยะไกลอีกรายการหนึ่งก็จะถูกฆ่าด้วย) ฉันเองก็ไม่แน่ใจเหมือนกันว่ามันจะต้องฆ่ากระบวนการทั้งหมดของคุณ (ฉันสามารถจินตนาการได้ว่ามันอาจจะฆ่าตัวเองก่อน) คุณรู้ไหมว่ามันเป็นไปได้หรือไม่?
capybaralet

mate-session-save --force-logoutสำหรับคู่ใช้ ดูคำตอบนี้
Jérôme

32

11.10 ขึ้นไป

นี่คือทางออกส่วนตัวของฉัน!

ในเทอร์มินัลให้เรียกใช้:

gedit ~/.bash_aliases

และเพิ่ม:

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

ไปที่ไฟล์! ตอนนี้คุณต้องออกจากระบบ!



11

สำหรับช่วงคำพังเพยgnome-session-quitทำงานได้ดี โดยค่าเริ่มต้นจะถามเพื่อยืนยันแล้วล็อกคุณออก (เช่น--logoutอาร์กิวเมนต์จะสันนิษฐานเว้นแต่แทนที่ด้วย--power-offอย่างชัดเจน) คุณยังสามารถบอกให้คำสั่งไม่แสดงพร้อมท์เพื่อยืนยันการออกจากระบบ:

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

gnome-session-quit ยังคงใช้ได้ใน 12.04

เนื่องจาก OP ไม่ได้ระบุตัวจัดการหน้าต่าง / เดสก์ท็อปและ gnome-session-quit อาจไม่ทำงานกับความเป็นไปได้ทั้งหมดนี่เป็นวิธี X-windows ทั่วไปเพื่อกลับไปที่หน้าจอเข้าสู่ระบบหรือตัวเลือกที่ฉันใช้มาหลายครั้ง หลายรุ่นล่าสุด:

จากเทอร์มินัล (เรียกใช้ด้วย, หลากหลาย, 'Alt-F2 + xterm หรือ Ctrl-T หรือ Crt-Alt-F1 หรือโดยการคลิกขวาบนเดสก์ท็อปใน Nautilus และใช้ทางลัด "open in terminal" ฯลฯ ) ประเภท

sudo pkill X

โดยทั่วไปจะมีค่าใช้จ่ายมากเกินไปสำหรับสถานการณ์ส่วนใหญ่ ฉันมักจะใช้เมื่อฉันมีกระบวนการที่หยุดทำงานหรือเมื่อฉันต้องออกจากระบบอย่างรวดเร็ว เมื่อฉันทำสิ่งนี้ Ubuntu ได้ส่งฉันกลับไปที่หน้าจอการเข้าสู่ระบบอย่างสุภาพด้วยการวางไข่ X-windows อีกครั้ง

ฉันยังไม่ได้ใช้power-offคุณสมบัติของgnome-session-quitเพราะตามปกติฉันจะใช้shutdown -P nowเพื่อจุดประสงค์นั้น


9

บน Xubuntu (หรือเมื่อใดก็ตามที่ใช้เซสชัน Xfce) คุณสามารถออกจากระบบโดยใช้

xfce4-session-logout --logout

คุณต้องระบุมิ--logoutฉะนั้นหน้าจอยืนยันการออกจากระบบจะปรากฏขึ้น สิ่งนี้จะทำงานได้ไม่ว่าคุณจะระบุ 'เซสชัน Xubuntu' หรือ 'เซสชัน Xfce' เมื่อคุณเข้าสู่ระบบด้วยLightdmเนื่องจากเซสชันดังกล่าวยังคงได้รับการจัดการโดยตัวจัดการเซสชัน Xfce

นอกจากนี้ตัวเลือกอื่นจะนำคุณออกจากระบบเช่นกัน:

xfce4-session-logout --fast  

xfce4-session-logout --logoutถ้าคำสั่งนี้จะออกเซสชั่นที่ไม่ได้บันทึกไว้เพื่อให้เป็นปกติที่สุดที่จะใช้

ความสามารถในการออกจากระบบโดยใช้เทอร์มินัลจะมีประโยชน์กับคุณมากเช่นเดียวกับตัวเลือกอื่น ๆ เช่นการระงับที่ใช้งานxfce4-session-logoutได้

สำหรับข้อมูลเพิ่มเติมโปรดดูที่man xfce4-session-logoutหรืออูบุนตู manpages ออนไลน์


ยืนยันแล้วสิ่งนี้ถือเป็นจริงสำหรับทุกรสชาติของ Ubuntu Studio
somethis

9

คุณสามารถใช้คำสั่งด้านล่าง:

sudo service lightdm restart

2
นั่นเป็นการฆ่าเซสชัน X ทั้งหมดที่กำลังทำงานอยู่
sehe

ในการ~/.bash_aliasesเขียนalias logmeout="service lightdm restart"
noobninja


6

lubuntu 12.10 LXDE ทำงานบนเน็ตบุ๊ค Samsung (CPU: 1.66 GHZ Intel Atom; RAM: 2GB)

คำสั่งด้านล่างสองคำสั่งให้ฉันออกจากระบบทันที:

sudo pkill -u username
sudo service lightdm restart

นี่คือคำตอบที่ถูกต้องสำหรับฉัน!


3

ในกรณีที่คุณไม่ต้องการฆ่าเซสชันคุณสามารถกลับไปที่หน้าจอเข้าสู่ระบบโดยใช้:

dm-tool switch-to-greeter

หากคุณเลือกผู้ใช้และป้อนรหัสผ่านเซสชันจะกลับมาทำงานต่อดังนั้นจึงไม่ใช่การออกจากระบบแบบเต็ม


2

กำหนดฟังก์ชั่นโดยเพิ่มบรรทัดต่อไปนี้ใน. bashrc ของคุณจากนั้นเรียกใช้โดยพิมพ์ล็อกออฟที่ shell prompt

  logoff() { gnome-session-quit --logout --no-prompt ; } # Log Out

2
คุณสามารถเพิ่มข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้งานจริงได้หรือไม่ ตอนนี้มันค่อนข้างคลุมเครือ ขอบคุณ!
เซท

เพิ่มบรรทัดลงใน. bashrc ของคุณเพียงพิมพ์ออกจากระบบที่พรอมต์
vanvliet.eric

คุณควรแก้ไขข้อมูลนั้นเป็นคำตอบของคุณ;)
เซท


0

มีวิธีที่จะทำงานไม่ว่าคุณจะใช้ X หรือคุณอยู่ใน TTY ไปที่นั่น:

  • ถ้าคุณใช้ lightdm

    sudo service lightdm restart
    
  • ถ้าคุณใช้gdmหรือใน Ubuntu GNOME

    sudo service gdm restart
    
  • หากคุณใช้kdmหรือใน Kubuntu

    sudo service kdm restart
    

ข้อเสียของคำสั่งนี้คือมันจะถามรหัสผ่านของคุณ


0

อัพเดต 2019

คำตอบอื่น ๆ ใช้ไม่ได้สำหรับฉัน บน Ubuntu 18 (LTS) พิมพ์ได้ง่าย:

exit

มันจะนำคุณกลับไปที่หน้าจอเข้าสู่ระบบ


-1

ฉันพบสิ่งนี้โดยไม่ตั้งใจ

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

ที่นี่คุณจะได้รับรหัสกระบวนการของเซสชั่นปัจจุบันของคุณ

ง่ายมาก. ฆ่ามัน

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

ไปแล้ว

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.