Sudo

‘sudo’ 和 ‘su -c’ 有什麼區別

  • January 18, 2022

sudousing和 using之間有什麼區別su -c嗎?在某些情況下應該使用一種但不能使用另一種?

我以前使用的 Ubuntusudo似乎無處不在,但現在我正在嘗試 Fedora 15,su -c當我嘗試學習如何做一些事情時,這個習語經常出現,儘管我仍然不時看到sudo它被使用。

sudo和之間的區別在於su它們如何執行身份驗證:

  • su提示輸入目標使用者的密碼。
  • sudo檢查源使用者是否被授權執行命令(授權在 中指定/etc/sudoers)。根據配置,它可能會提示輸入源使用者的密碼,以減輕無人值守控制台的風險並提醒使用者權限升級正在進行。

一旦獲得授權,效果是一樣的:以 root 身份執行命令(或者,如果在命令行上指定,則以其他使用者身份執行)。

還有進一步的細微差別:它們沒有採用相同的選項,並且它們沒有為它們以完全相同的方式執行的命令設置環境。“命令”的含義略有不同: forsu -c是一個字元串,由目標使用者的 shell 執行,而 forsudo沒有選項,它是一個帶參數執行的程序。但是對於常見的用法,它們是相同的。

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