Debian

在 debian 8.1 中,為什麼超級使用者使用 su 而不是 sudo 執行?

  • October 16, 2015

我很好奇為什麼su執行超級使用者命令而不是超級使用者執行(sudo)。

su並且sudo是作為另一個使用者(可能是 root)執行程序(可能是 shell)的兩種最常見的方式。它們具有相同的效果,但在確定是否允許該操作方面,它們的工作方式非常不同:

  • su要求源使用者是 root,或者使用者證明他們可以訪問目標帳戶(通常通過輸入密碼)。
  • sudo需要預授權:必須在其配置文件中聲明源使用者、目標使用者和命令的組合。

su首先出現:它早在 1973 年的Unix V3就已經存在。當時它只涵蓋了成為 root 的情況(因此得名:s超級使用者**)**。1980 年sudo稍晚一點,增加了定義復雜授權策略的可能性。因為它更舊且更簡單,所以它是一個標準工具,可用於所有類 unix 系統,而.雖然是一個非常常見的附加組件,但通常在預設安裝和嵌入式系統中缺少。su``sudo

Debian 預設是su因為它是基本系統的一部分——在 Linux 下,在GNU Coreutils(與,等一起)和util-linux(與, ,等一起)中都有一個su程序。許多以 root 身份執行的系統腳本用於以系統使用者身份啟動任務。該軟體包是可選的,因為您可以在沒有它的情況下執行系統,它是一種最終使用者工具,很少被其他軟體使用。ls``cp``mount``fdisk``taskset``su``sudo

在安全性方面,請參閱獲取 root 權限最安全的方法是:sudo、su 還是登錄?

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