前文說到建立新使用者的必要以及如何建立新使用者。那麼如果不使用 root 賬號,在所有者為 root 的目錄下,就沒有辦法執行mkdir
等命令了嗎?當然不是,我們可以使用sudo
。
首先看下這個命令的介紹
sudo命令用來以其他身份來執行命令,預設的身份為root。在/etc/sudoers中設定了可執行sudo指令的使用者。若其未經授權的使用者企圖使用sudo,則會發出警告的郵件給管理員。使用者使用sudo時,必須先輸入密碼,之後有5分鐘的有效期限,超過期限則必須重新輸入密碼。通過介紹我們能看到,使用這個命令之後,就可以執行 root 許可權的命令,當然可以根據實際的需求進行修改。
切換到 root 賬號,輸入命令visudo
,就會預設使用vi
開啟/etc/sudoers
。仿照root all=(all) all
在下方輸入[username] all=(all) all
即新增完成。
上圖中輸入的是錯誤的(all 大小寫),當我嘗試儲存的時候,visudo
給了提示,如下
輸入e
後重新編輯,儲存成功。
檔案修改完成,切換到 user 賬號,測試一下是否有許可權
第一次嘗試rm
的時候沒有成功,然後使用sudo
,輸入 uesr 賬號的密碼後即成功。
第一次嘗試mkdir
的時候同樣沒有成功,再次使用sudo
後,因為是在五分鐘的有限期內,沒有要求輸入密碼,執行成功。
每次都需要輸入密碼的話,有些麻煩,下面修改檔案取消密碼。切換到 root 賬號,輸入visudo
,如下修改
修改完成後,再切換到 user 賬號進行測試
再次使用sudo
的時候,沒有提示輸入密碼即執行成功。
關於sudo
的其他內容,例如許可權限制、切換身份等,請檢視參考鏈結中內容。
Linux sudo命令詳解
sudo 語法 who which host whom command 誰能以誰的身份,在那些主機上執行那些命令 visudo hadoop all root usr sbin useradd 1 別名 alias 都以大寫字母定義 host alias 定義主機別名,使用,分隔 user alia...
linux sudo命令詳解
首先檢查 var db sudo下是否有時間戳檔案,並檢查是否已經超過五分鐘?如果未超過五分鐘 超過五分鐘,使用者需要輸入口令 檢查 etc sudoers配置檔案是否有執行sudo和執行相應命令的許可權 如果有許可權則執行命令。visudo 可以檢查語法 vim etc sudoers 不會檢查語...
linux sudo許可權分配
背景 linux的安全很大程度上依賴於許可權的分配,而目前線上機器sudo許可權的分配統一以all的形式分配,很容易因為誤操作而造成一些不可恢復的錯誤,因此現在需要重新細化sudo許可權,以保障linux環境的安全。原理 linux etc sudoers中已為我們提供了許可權細化的example,...