Câu hỏi được đặt ra bởi K.Chen là: tại sao tôi cần các đặc quyền sudo khi tôi làm điều đó từ CLI, ahile Tôi không cần các đặc quyền đó khi tôi làm điều đó từ GUI.
Phần đầu tiên của câu trả lời là những người thiết kế Môi trường máy tính để bàn, như Gnome, KDE, Xfce, Mate, Cinnamon, ... cố gắng đơn giản hóa công việc của người dùng của họ và họ định cấu hình tắt và khởi động lại mà không yêu cầu thông tin xác thực. Điều này, tình cờ, ngụ ý rằng phải có một chuỗi tắt máy không liên quan đến tắt chương trình, không yêu cầu đặc quyền sudo (không có cách nào khác).
Tôi không biết chi tiết cách mỗi DE thực hiện nó, nhưng tôi biết rằng có một cách nhẹ nhàng để đưa xuống hoặc khởi động lại / tắt / ngủ đông hệ thống của bạn, không yêu cầu quyền root. Bạn có thể tìm thấy bài viết gốc trong bài đăng trên Diễn đàn Arch Linux . Về bản chất, nó có nghĩa là ban hành các lệnh hese:
tạm dừng lại
#!/bin/bash
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit"/org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
khởi động lại
#!/bin/bash
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart
đình chỉ
#!/bin/bash
dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Suspend
ngủ đông
#!/bin/bash
dbus-send --system --print-reply --dest="org.freedesktop.UPower" /org/freedesktop/UPower org.freedesktop.UPower.Hibernate
Tôi đoán là các nút GUI sử dụng khoảng các lệnh này. Để chắc chắn một người nên xem mã, nhưng tôi tin rằng đây là một vụ cá cược an toàn.