systemctl
是一個用于管理 systemd 系統和服務的命令行工具
普通用戶:普通用戶可以使用 systemctl
命令查看系統狀態、列出單元文件、顯示單元文件信息等。但是,普通用戶無法啟動、停止或重啟服務,因為這需要 root 權限。
使用 sudo
:如果你需要以普通用戶身份執行需要 root 權限的操作,可以使用 sudo
命令。例如,要啟動一個名為 example.service
的服務,可以運行:
sudo systemctl start example.service
在這種情況下,你需要輸入密碼以獲得臨時的 root 權限。
systemctl
命令,可以使用 sudo -i
命令切換到 root 用戶,然后執行 systemctl
命令。例如:sudo -i
systemctl start example.service
systemctl
命令,可以編輯 /etc/sudoers
文件。首先,使用 visudo
命令打開該文件:sudo visudo
然后,添加一行以允許特定用戶執行特定的 systemctl
命令。例如,要允許用戶 user1
啟動和停止 example.service
,可以添加以下行:
user1 ALL=(ALL) NOPASSWD: /bin/systemctl start example.service, /bin/systemctl stop example.service
保存并退出編輯器。現在,用戶 user1
可以使用 sudo
命令啟動和停止 example.service
,而無需輸入密碼。
請注意,編輯 /etc/sudoers
文件時要格外小心,因為錯誤的配置可能導致系統安全問題。始終使用 visudo
命令編輯該文件,因為它會檢查語法錯誤。