天天看點

mysql删除使用者userdel_Linux userdel指令詳解:删除使用者

userdel 指令功能很簡單,就是删除使用者的相關資料。此指令隻有 root 使用者才能使用。

通過前面的學習我們知道,使用者的相關資料包含如下幾項:

使用者基本資訊:存儲在 /etc/passwd 檔案中;

使用者密碼資訊:存儲在 /etc/shadow 檔案中;

使用者群組基本資訊:存儲在 /etc/group 檔案中;

使用者群組資訊資訊:存儲在 /etc/gshadow 檔案中;

使用者個人檔案:主目錄預設位于 /home/使用者名,郵箱位于 /var/spool/mail/使用者名。

其實,userdel 指令的作用就是從以上檔案中,删除與指定使用者有關的資料資訊。

userdel 指令的文法很簡單,基本格式如下:

[[email protected] ~]# userdel -r 使用者名

-r 選項表示在删除使用者的同時删除使用者的家目錄。

注意,在删除使用者的同時如果不删除使用者的家目錄,那麼家目錄就會變成沒有屬主和屬組的目錄,也就是垃圾檔案。

例如,删除前面章節中建立的 lamp 使用者,隻需執行如下指令:

[[email protected] ~]# userdel -r lamp

除了使用 userdel 指令删除使用者,還可以手動方式删除,畢竟通過前面的學習,我們已經知道與使用者相關資訊的存儲位置。雖然這樣做沒有實際意義,但對于初學者來說,可以加深對 userdel 指令的了解。

手動删除指定使用者的具體操作如下:

#建立新 lamp 使用者

[[email protected] ~]# useradd lamp

[[email protected] ~]# passwd lamp

#為 lamp 使用者設定密碼,由此 lamp 使用者才算是建立成功

#下面開始手動删除 lamp

[[email protected] ~]# vi /etc/passwd

lamp:x:501:501::/home/lamp:/bin/bash   

#修改使用者資訊檔案,删除lamp使用者行

[[email protected] ~]#vi /etc/shadow

lamp:$6$KoOYtcOJ $56Xk9vp3D2vMRBxibNOn.21cVJ9onbW8IHx4WrOx6qBqfGa9U3mjMsGjqYnj L/4t3zt3YxElce2X8rbb12x4a0:15716:0:99999:7:::   

#修改影子檔案,删除lamp使用者密碼行,注意,這個檔案的權限是000,是以要強制儲存

[[email protected] ~]#vi /etc/group

lamp:x:501: 

#修改組資訊檔案,删除lamp群組資訊

[[email protected] ~]#vi /etc/gshadow

lamp:!:: 

#修改組影子檔案,删除lamp群組密碼資訊。同樣注意需要強制儲存

[[email protected] ~]# rm -rf /var/spod/mail/lamp  #删除使用者郵箱

[[email protected] ~]# rm -rf/home/lamp/  #删除使用者的家目錄

#至此,使用者徹底删除,再建立使用者lamp。如果可以正常建立,則說明我們手工删除幹淨了

[[email protected] ~]# useradd lamp

[[email protected] ~]# passwd lamp

#重建立立同名使用者,沒有報錯,說明前面的手工删除是可以完全删除使用者的

手動删除使用者,僅是為了讓讀者對 userdel 指令了解地更透徹,實際使用中,使用 userdel 删除使用者更友善。

最後需要大家注意的是,如果要删除的使用者已經使用過系統一段時間,那麼此使用者可能在系統中留有其他檔案,是以,如果我們想要從系統中徹底的删除某個使用者,最好在使用 userdel 指令之前,先通過 find -user 使用者名 指令查出系統中屬于該使用者的檔案,然後在加以删除。