Sudo

超級使用者組或使用者?

  • February 21, 2014

我在 Oracle Exadata 中使用以下命令:

    sudo su - odiadmin

當 sudo 提示輸入我自己的密碼時,我想知道是我將自己升級為超級使用者還是切換到超級使用者“odiadmin”。此外,odiadmin 是超級使用者組還是只是另一個使用者。

任何人都可以解釋一下嗎?

sudo作為超級使用者(即root)執行給定的命令。它執行的命令是su - odiadmin,它替換了使用者 odiadmin- 所以這是另一個使用者,而不是組,它本身不是某種意義上的超級使用者root

使其成為登錄 shell的-標誌su,並且您沒有以該使用者身份執行特定命令,因此您以該使用者身份進入新 shell - 基本上與您以該使用者身份啟動新會話相同通過telnetssh

效果也與您剛剛完成一樣su - odiadmin,但如果您這樣做了,您需要知道該帳戶的密碼。使用sudo意味著您只需要知道自己的密碼,這使您的生活更簡單,但需要sudo配置服務以允許您發出su命令,因此如果未正確執行,可能會產生安全隱患。

所以……您將自己升級為超級使用者(root),但只是切換到非超級使用者odiadmin帳戶。當您在 shell 中時,因為odiadmin您沒有任何root權限,或者您的原始帳戶的任何權限,例如,您只能查看由 擁有的文件odiamdin,或者也位於其中的組中的文件odiadmin,或者是世界可讀的文件。您可能看不到您自己的主目錄中的文件,如果該目錄具有 700 之類的合理權限。並且您無法執行任何僅限 root 的執行檔,例如useradd. 你不是root在你執行那個命令之後。

引用自:https://unix.stackexchange.com/questions/116307