Làm thế nào bạn có thể đăng xuất thông qua thiết bị đầu cuối?


248

Có một lệnh thiết bị đầu cuối sẽ đăng xuất bạn khỏi phiên máy tính để bàn hiện tại của bạn và đưa bạn trở lại màn hình đăng nhập?

Câu trả lời:


197

11.10 trở lên

gnome-session-quit

11.04 và các phiên bản trước

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

(thông qua văn bản thay thếDoR , hãy xem câu trả lời của anh ấy về "Khởi động lại mà không có đặc quyền sudoer?" để biết thêm sự tốt lành của dbus!)

hoặc cách khác, bạn có thể sử dụng

gnome-session-save --force-logout

--force-logoutngược lại, --logoutsẽ không yêu cầu người dùng xử lý các tài liệu chưa được lưu, v.v.

Đây có phải là cách dễ nhất? không có lệnh một dòng đơn giản như đăng xuất sudo ?? Tôi sẽ không bao giờ nhớ tất cả điều đó.

Vâng, có một lệnh gọi là đăng xuất, nhưng nó liên quan đến Terminal. gnome-session-save là chương trình thực sự thoát khỏi chương trình gnome-sessionmà bạn dĩ nhiên có thể giết, nhưng điều đó sẽ không đủ điều kiện để đăng xuất. :-)

Cũng lưu ý rằng các lệnh này không yêu cầu bạn phải root.

Bạn luôn có thể thêm bí danh vào hệ thống của mình nếu bạn muốn có một lệnh ngắn hơn.

Mở ~/.bash_aliasesbằng trình soạn thảo văn bản hoặc tạo nó nếu không có ở đó và thêm một cái gì đó như thế này vào nó:

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

(.bashrc là tập lệnh được chạy mỗi khi thiết bị đầu cuối ảo mới được khởi động, bạn nên thiết lập tất cả các bí danh vĩnh viễn của mình ở đó, xem thêm: Làm cách nào để tạo một "bí danh" vĩnh viễn? )


1
Đây có phải là cách dễ nhất? không có lệnh một dòng đơn giản như thế nào sudo logout?? Tôi sẽ không bao giờ nhớ tất cả điều đó.
TheXed

2
Chà, luôn có Ctrl-Alt-Backspace (nếu bạn bật nó), nhưng một lần nữa, điều đó sẽ giết chết phiên thay vì đăng xuất khỏi nó.
koanhead

4
Bạn có thể vui lòng cập nhật câu trả lời của bạn nói rằng "gnome-session-save" đã được đổi tên thành "gnome-session-Thoát" cho 11.10 +
mac

1
Bạn có thể muốn thêm HIỂN THỊ =: 0,0 hoặc tương tự khi cố gắng đăng xuất khỏi phiên từ ssh hoặc thiết bị đầu cuối khác.
patrikf

3
Dường như với tôi rằng "- Force-logout" không hoạt động tốt, vì nó gây ra lỗi này: CẢNH BÁO **: Không thể bắt đầu: Tùy chọn không xác định - Force-logout. Sau khi tìm hiểu kỹ man gnome-session-quit, tôi thấy rằng "--force" và "--logout" thực sự có nghĩa là những đối số khác nhau. Do đó, "--force --logout" (hai lần trừ trước khi "bắt buộc" và "đăng xuất", với khoảng cách giữa) sẽ tốt hơn vì bạn sẽ không gặp lỗi. Ít nhất, đó là trường hợp của Ubuntu 13.04 và Linux Mint 15. IDK về các phiên bản khác / cũ hơn của một trong hai bản phân phối.
TSJNachos117

76

Tôi đã cài đặt máy tính để bàn mate và không có menu nào hoạt động, ngay cả các phím f cũng không hoạt động. Tôi quản lý để có được xterm thông qua trình duyệt với trình quản lý tập tin.

Điều duy nhất đã làm việc là:

sudo pkill -u username

2
Tôi cũng đã làm một bí danh cho nó alias ulogout="sudo pkill -KILL -u $1". Có thể có ích cho một ai đó. Cách sử dụng:ulogout user_name
Eugene

1
@Eugene thế nào alias logout="sudo pkill -u ${USER}"?
Georgi-it

Đây là một giải pháp tuyệt vời cho VM như trong Virtualbox.
Phil Lawlor

1
Có một lý do bạn cần sudo? Ngoài ra, tôi nghĩ rằng điều này khác với đăng xuất, vì nó sẽ giết tất cả các quy trình của bạn (ví dụ: nếu bạn có một phiên từ xa khác, nó cũng sẽ bị giết). Tôi cũng không chắc chắn rằng nó nhất thiết sẽ giết tất cả các quy trình của bạn (tôi có thể tưởng tượng nó có thể tự giết mình trước không?) Bạn có biết nếu điều đó là có thể?
capybaralet

Đối với bạn đời, sử dụng mate-session-save --force-logout. Xem câu trả lời này .
Jérôme

32

11.10 trở lên

Đây là giải pháp cá nhân của tôi!

Trong thiết bị đầu cuối, chạy:

gedit ~/.bash_aliases

Và thêm:

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

vào tập tin! Bây giờ bạn chỉ cần chạy đăng xuất!



11

Đối với phiên gnome, gnome-session-quithoạt động tốt. Theo mặc định, nó yêu cầu xác nhận và sau đó đăng xuất bạn (nghĩa là, --logoutđối số được giả sử trừ khi được ghi đè --power-offrõ ràng). Bạn cũng có thể ra lệnh để không nhắc xác nhận khi đăng xuất:

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

gnome-session-quit vẫn còn hiệu lực trong 12.04.

Vì OP không chỉ định trình quản lý cửa sổ / máy tính để bàn và trình thoát phiên gnome có thể không hoạt động với tất cả các khả năng, nên đây là cách X-windows chung để quay lại màn hình đăng nhập hoặc trình chọn mà tôi đã sử dụng nhiều lần một số bản phát hành cuối cùng:

Từ một thiết bị đầu cuối (được gọi bằng, khác nhau, 'Alt-F2 + xterm hoặc Ctrl-T hoặc Crt-Alt-F1 hoặc bằng cách nhấp chuột phải vào màn hình nền trong Nautilus và sử dụng phím tắt "mở trong thiết bị đầu cuối", v.v. ) thể loại

sudo pkill X

Điều này thường là quá mức cần thiết cho hầu hết các tình huống. Tôi có xu hướng sử dụng nó khi tôi có một quy trình treo hoặc khi tôi phải đăng xuất nhanh chóng. Khi tôi thực hiện điều này, Ubuntu đã lịch sự đưa tôi trở lại màn hình đăng nhập bằng cách sinh ra X-windows.

Tôi chưa sử dụng power-offtính năng này gnome-session-quit, vì tôi thường sử dụng shutdown -P nowcho mục đích đó.


9

Trên Xubfox (hoặc bất cứ khi nào sử dụng phiên Xfce), bạn có thể đăng xuất qua thiết bị đầu cuối bằng cách sử dụng

xfce4-session-logout --logout

Bạn phải chỉ định --logouthoặc màn hình xác nhận đăng xuất sẽ được hiển thị. Điều này sẽ hoạt động cho dù bạn đã chỉ định session Phiên Xubfox 'hoặc session Phiên Xfce' khi bạn đăng nhập Lightdm, vì phiên vẫn được quản lý bởi trình quản lý phiên Xfce.

Ngoài ra, một tùy chọn khác cũng sẽ đăng xuất bạn:

xfce4-session-logout --fast  

Nếu lệnh này được ban hành, phiên không được lưu, vì vậy thông thường tốt nhất là sử dụng xfce4-session-logout --logout.

Khả năng đăng xuất bằng thiết bị đầu cuối sẽ rất hữu ích cho bạn, cũng như các tùy chọn khác như tạm ngưng có sẵn xfce4-session-logout.

Để biết thêm thông tin, hãy xem man xfce4-session-logouthoặc các trang web Ubuntu trực tuyến .


Khẳng định, điều này cũng đúng với mọi hương vị Ubuntu Studio.
đôi khi

9

Bạn có thể sử dụng lệnh dưới đây:

sudo service lightdm restart

2
Điều đó khó giết chết tất cả các phiên X đang chạy, cho tất cả người dùng.
sehe

bằng ~/.bash_aliasesvăn bảnalias logmeout="service lightdm restart"
noobninja

7

Để sử dụng Ubuntu Mate mate-session-save --force-logout. Nó là như thế gnome-session-quit.


6

Lubfox 12.10 LXDE chạy trên netbook Samsung (CPU: 1.66 GHZ Intel Atom; RAM: 2GB)

Hai lệnh dưới đây đã đăng xuất tôi ngay lập tức:

sudo pkill -u username
sudo service lightdm restart

đây là câu trả lời đúng cho tôi

3

Tôi đã thử gnome-session-quit --forcevà nó hoạt động!

Lưu ý: Tôi sử dụng Ubuntu 15.04


3

Trong trường hợp bạn không muốn giết phiên của mình, bạn có thể quay lại màn hình đăng nhập bằng cách sử dụng:

dm-tool switch-to-greeter

Nếu bạn chọn người dùng và nhập mật khẩu của mình, phiên sẽ được tiếp tục, vì vậy đó không phải là đăng xuất đầy đủ.


2

Xác định hàm bằng cách thêm dòng sau vào .bashrc của bạn, sau đó gọi bằng cách nhập logoff tại dấu nhắc shell.

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

2
Bạn có thể thêm thông tin về cách thực sự sử dụng này? Bây giờ hơi mơ hồ. Cảm ơn!
Seth

thêm dòng vào .bashrc của bạn, chỉ cần gõ logoff tại dấu nhắc.
vanvliet.eric

Bạn nên chỉnh sửa thông tin đó vào câu trả lời của mình;)
Seth

1

Và trong kubfox 12.04+, đó là:

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

0

Có một cách sẽ hoạt động cho dù bạn đang chạy X hay bạn đang ở trong TTY. Bạn đi đây

  • Nếu bạn dùng lightdm

    sudo service lightdm restart
    
  • nếu bạn sử dụng gdmhoặc trong Ubuntu GNOME

    sudo service gdm restart
    
  • Nếu bạn sử dụng kdmhoặc trong Kubfox

    sudo service kdm restart
    

Nhược điểm của lệnh này là nó sẽ hỏi mật khẩu của bạn.


0

Cập nhật 2019

Những câu trả lời khác không hiệu quả với tôi. Trên Ubuntu 18 (LTS) thật dễ dàng để nhập:

exit

Nó sẽ đưa bạn trở lại màn hình đăng nhập.


-1

Tôi vô tình tìm thấy điều này.

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

Ở đây bạn có được id quá trình của phiên hiện tại của bạn.

Quá dễ. Giết nó

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

Có bạn đi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.