sudo命令

你在使用 Linux 命令行時曾經獲得過「拒絕訪問Permission denied」的錯誤提示嗎?這多是由於你正在嘗試執行一個須要 root 權限的操做。例如,下面的截圖展現了當我嘗試複製一個二進制文件到一個系統目錄時產生的錯誤。shell

shell 的拒絕訪問

那麼該怎麼解決這個錯誤?很簡單,使用 sudo 命令。安全

用 sudo 運行命令

用戶運行此命令後會被提示輸入他們(本身)的登陸密碼。一旦輸入了正確的密碼,操做將會成功執行。工具

 

 

 

 

在sudo於1980年先後被寫出以前,通常用戶管理系統的方式是利用 su切換爲超級用戶。可是使用su的缺點之一在於必需要先 告知超級用戶的密碼。
sudo使通常用戶不須要知道超級用戶的密碼便可得到權限。首先超級用戶將普通用戶的名字、能夠執行的特定命令、按照哪一種用戶或用戶組的身份執行等信息,登記在特殊的文件中(一般是/etc/sudoers),即完成對該用戶的受權(此時該用戶稱爲「 sudoer」);在通常用戶須要取得特殊權限時,其可在命令前加上「sudo」,此時sudo將會詢問該用戶本身的密碼(以確認終端機前的是該用戶本人),回答後系統即會將該命令的進程以超級用戶的權限運行。以後的一段時間內(默認爲5分鐘,可在/etc/sudoers自定義),使用sudo不須要再次輸入密碼。

 

Sudo是Unix/Linux平臺上的一個很是有用的工具,它容許系統管理員分配給普通用戶一些合理的「權力」,讓他們執行一些只有超級用戶或其餘特許用戶才能完成的任務(主要體現爲命令)好比:運行一些像mount,halt,su之類的命令,或者編輯一些系統配置文件,像/etc/mtab, /etc/samba/smb.conf等。這樣以來,就不只減小了root用戶的登錄次數和管理時間,也提升了系統安全性。spa

權力分配主要經過在配置文件/etc/sudoers按照約定格式添加一行信息。命令行

     用戶名主機名=(運行用戶名) 可運行的命令code

例如:sn ALL=(ALL) /usr/sbin/useradd          給sn用戶添加系統用戶的權利blog

 這樣,就能夠執行在sn用戶下,執行sudo useradd username 命令來添加用戶。進程

相關文章
相關標籤/搜索