Sudo
執行 sudo 命令,在同一行指定密碼
我想做這樣的事情:
sudo -p password rm /a/file
我可以將密碼和使用者放在同一行嗎?
我的 Sudo 版本是
1.8.9p5
sudo
沒有指定密碼的選項,但您仍然可以在命令行上進行身份驗證,如下所示:echo password | sudo -u root --stdin
要不就
echo password | sudo -S
參考sudo 手冊頁:
-S
, 將提示寫入標準錯誤並從標準輸入讀取密碼,而不是使用終端設備。密碼後面必須跟一個換行符。--stdin
和
-u
user, user 作為預設目標使用者以外的使用者(通常是 root)執行命令。使用者可以是使用者名或以“#”字元為前綴的數字使用者 ID (UID)(例如,#0 表示 UID 0)。當作為 UID 執行命令時,許多 shell 要求使用反斜杠 (’') 對“#”進行轉義。某些安全策略可能會將 UID 限制為密碼數據庫中列出的那些。只要未設置 targetpw 選項,sudoers 策略就允許密碼數據庫中沒有的 UID。其他安全策略可能不支持這一點。--user=
但是
sudo
已經開發了很長時間。檢查版本:
-V
, 列印版本字元串以及安全策略外掛和任何 I/O 外掛的版本字元串。如果呼叫使用者已經是根使用者,則該選項將顯示在建構時傳遞給配置的參數,並且外掛可能會顯示更詳細的資訊,例如預設選項。--version
sudo``-V``sudo
2013年增加了對長選項的支持。
除了進行身份驗證之外,您還需
sudo
要做一些事情,例如命令。我經常檢查它是否正在工作sudo id
這應該顯示root使用者,例如,
uid=0(root) gid=0(root) groups=0(root)