如果一台電腦需要同時由幾個人來管理,最好不要讓他們都用root帳號。 因為如果每個人都用一樣的許可權,很難確定是誰什麼時間什麼位置做了什麼。 sudo命令就是用來解決這個難題的。
sudo命令允許在/etc/sudoers設定檔中所定義的使用者擁有臨時的許可權來運行一些在正常情況下根據檔存取權限他們不能運行的命令。 這些命令可以以root使用者或者其他在/etc/sudoers設定檔中所定義的使用者所運行。
如果你想運行有特權的命令你必須在這個命令前加上sudo。 當運行帶有sudo作首碼的命令時,系統在執行該命令之前,會提醒你輸入你的密碼。 在五分鐘內你也可以運行其他有特權的命令而不需要輸入密碼。 所有的以sudo執行的命令都會被記錄在日誌檔/var/log/messages中。
以下是幾個運用sudo的簡單的實例。
臨時獲得root使用者許可權
在這個例子中,使用者bob試圖流覽檔/etc/sudoers中的目錄,而那是需要特權才能訪問的。 因為沒有用sudo,該命令失敗:
[bob@bigboy bob]$ more /etc/sudoers/etc/sudoers: Permission denied[bob@bigboy bob]$
這一次Bob用了sudo命令並且輸入了他自己的密碼,他成功了:
[bob@bigboy bob]$ sudo more /etc/sudoersPassword:...... [bob@bigboy bob]$
完全以root使用者登錄
su命令允許一個般的使用者轉變成root使用者,只要他知道root使用者的密碼。 而一個使用者以sudo許可權運行su命令時也可以變成root使用者,不過這時他們只需要知道他們自己的密碼,而不是root使用者的密碼,就像你在這裡看到的。
someuser@u-bigboy:~$ sudo su -Password:root@u-bigboy:~#
一些HTTP://www.aliyun.com/zixun/aggregation/13879.html">系統管理員允許用sudo命令來獲得root許可權操作他們自己的帳戶而不需要輸入密碼。
下載安裝sudo命令包
很幸運在RedHat/Fedora中sudo命令包是被預設安裝的,也就不需要再安裝了。
visudo命令是一個模仿vi編輯器的文字編輯器,vi編輯器是用來編輯設定檔/etc/sudoers的。 我們不建議你們其它文字編輯器來修改sudo參數,因為sudoers檔在不同版本的Linux有不有同的目錄。 visudo用的命令和vi編輯器一樣,visudo命令毫無疑問必須以root使用者運行:
[root@aqua tmp]# visudo