2021-05-12 14:32:11
Linux命令su、sudo、sudo su、sudo -i使用和區別
sudo 與 su 兩個命令的最大區別是:
sudo 命令需要輸入當前使用者的密碼,su 命令需要輸入 root 使用者的密碼。另外一個區別是其預設行為。sudo 命令只允許使用提升的許可權執行單個命令,而 su 命令會啟動一個新的 shell,同時允許使用 root 許可權執行盡可能多的命令,直到明確退出登入。
su 用以切換成不同的使用者的身份
預設只是切換身份,並沒有切換環境變數,環境變數依然是普通使用者的。切換使用者身份時,使用者的環境變數也切換成新使用者的環境變數,所以"-"不能省略,不然有些操作無法執行。
su root 輸入root密碼後切換之root使用者但是pwd目錄不變
su - root 輸入root密碼後切換之root使用者但是pwd目錄/root
sudo 一般加的是命令
sudo -i root與sudo - root、sudo -i ,sudo - ,sudo root效果相同 提示輸入密碼時該密碼為當前賬戶的密碼 要求執行該命令的使用者必須在sudoers中才可以 su需要的是切換後賬戶的密 用法為“su 賬戶名稱”
sudo : 暫時切換到超級使用者模式以執行超級使用者許可權,一般指的是root使用者,提示輸入密碼時該密碼為當前使用者的密碼,而不是超級賬戶的密碼。不過有時間限制,Ubuntu預設為一次時長15分鐘。
su : 切換到某某使用者模式,提示輸入密碼時該密碼為切換後賬戶的密碼,用法為“su 賬戶名稱”。如果後面不加賬戶時系統預設為root賬戶,密碼也為超級賬戶的密碼。沒有時間限制。
sudo -i: 為了頻繁的執行某些只有超級使用者才能執行的許可權,而不用每次輸入密碼,可以使用該命令。提示輸入密碼時該密碼為當前賬戶的密碼。沒有時間限制。執行該命令後提示符變為“#”而不是“$”。想退回普通賬戶時可以執行“exit”或“logout” 。 要求執行該命令的使用者必須在sudoers中才可以
sudo -i 直接執行sudo命令加-i引數 要求執行該命令的使用者必須在sudoers中才可以
sudo su 執行sudo命令給su命令提權,執行su命令。 要求執行該命令的使用者必須在sudoers中才可以。
相關文章