本人初學linux運維,在觀看oldboy視頻教程後,對學習到的知識進行總結,知識內容均出自oldboy視頻教程。
#########################################################################################
linux系統中,只有root用戶才能添加和刪除用戶,而在工作中,假如有很多個運維工程師作爲普通用戶,我們希望一部分的普通用戶可以實現只有在root用戶下才能實現的操作,但不是能幹所有root用能幹的事兒(比如我們不希望普通用戶可以修改root密碼,但又希望普通用戶能添加用戶),這個時候我們就需要用到sudo權限管理。
在root用下給普通用戶分配權限。輸入命令visudo
在82行下面添加 oldboy ALL=(ALL) user/sbin/useradd,uesr/sbin/userdel 這樣就允許普通用戶能夠添加和刪除用戶。注意我們在執行該命令時,前面必須加上sudo 如sudo user/sbin/useradd kkk
這就好比皇帝root給了大臣oldboy一把尚方寶劍,oldboy執行公務時需要拿出這把尚方寶劍才能幹活。
工作中,領導作爲用戶需要一個大的權限,我們就可以添加一個權限leader ALL=(ALL) ALL 這樣leader就可以同sudo的方式進入到root用戶 sudo su - root,需要輸入leader自己的密碼。設置leader用戶的密碼,在root用戶下輸入命令 passwd leader 回車後輸入密碼即可。或者leader ALL=(ALL) NOPASSWD:ALL這樣在使用sudo su - root切換到root用戶時就不需要密碼了。
查詢當前用戶擁有哪些權限 sudo -l
查看useradd命令的全路徑 which useradd
查看環境變量 echo $PATH
爲什麼又是命令需要用全路徑?原因是環境變量中沒有該命令的路徑,比如useradd命令的路徑user/sbin在環境變量中,所以我們可以直接使用useradd KKK 命令來用戶,就不需要用user/sbin/useradd kkk。注意root用戶的$PATH和普通用戶的$PATH是不一樣的。比如ifconfig命令的路徑/sbin,root用戶的環境變量中有/sbin,而普通用戶oldboy沒有,所以oldboy用戶下不能直接使用ifconfig命令,怎麼呢解決呢?
輸入命令vi .bash_profile,然後修改PATH路徑(在路徑後添加:sbin(用冒號分割)),最後輸入source .bash_profile重新加載即可生效。