為什麼sudo能夠在fakeroot中運作?

為什麼sudo能夠在fakeroot中運作?

拿取以下片段:

fakeroot -- sudo cat /etc/shadow

這將列印出 的內容/etc/shadow,但在 fakeroot 中運行 sudo 不會破壞它的整個目的,還是我遺漏了一些東西?

答案1

假根 提供一個假的 root 環境,通常是為了消除成為軟體包建構的 root 的需要。

Fakeroot 在似乎具有檔案操作 root 權限的環境中執行命令。

因此sudo變成空操作,因為它認為呼叫者已經擁有 root 權限。因此,它不需要密碼。

蘇多爾手冊 有一個例外:

如果 sudo 由 root 運行並且設定了 SUDO_USER 環境變量,則 sudoers 策略將使用該值來確定實際使用者是誰。即使已呼叫 root shell,使用者也可以使用它透過 sudo 記錄命令。

如果sudo使用參數調用,它們將具有通常的效果。

相關內容