Linux系統使用userdel命令刪除使用者

2021-08-14 03:32:25 字數 1679 閱讀 6750

userdel是什麼

userdel 是乙個底層用於刪除使用者的工具。在 debian 上,我們通常會使用 deluser 命令。userdel 會查詢系統賬戶檔案,例如 /etc/password 和 /etc/group。那麼它會刪除所有和使用者名稱相關的條目。在我們刪除它之前,使用者名稱必須存在。

如何使用userdel

由於 userdel 會修改系統賬戶檔案,那麼我們需要root特權來執行它。不然我們會遇到乙個報錯資訊「只有root許可權才能執行這項操作」或者類似的資訊。在我們得到特權後,我們可以通過輸入 userdel 從你的控制台刪除使用者。下面是乙個預設使用 userdel 的樣例。

$ sudo userdel pasadena

或者

正如你所見,我們不能沒有root許可權而刪除使用者 pasadena。當我們有許可權時,系統不會給出錯誤資訊,這意味著使用者已經成功刪除。

完全刪除使用者家目錄

不帶選項使用 userdel,只會刪除使用者。使用者的家目錄將仍會在/home目錄下。

當我們進入/home目錄時,我們仍舊可以看到id 1002擁有 pasadena 資料夾。已建立的使用者通常會有乙個與使用者名稱相同的組名。1002是 pasadena 使用者名稱的 uid 和 pasadena 組名的 gid。

為了在刪除使用者時完全刪除家目錄,我們可以使用 -r 選項。這個選項同樣會刪除使用者的郵件池,如果存在的話。

強制刪除乙個使用者

userdel 提供了 -f 選項來強制刪除使用者。甚至當使用者已經登入 linux 系統時此選項仍舊生效。請看一下示例截圖。

截圖的上面顯示使用者 pasadena 已經登入了系統。它被標記的程序6218是 sshd 程序。而當我們用「userdel -f pasadena」只會顯示已經登入的要被刪除的使用者資訊。命令本身已經成功。如果我們使用cat 命令檢視/etc/passwd的內容,我們看不到到使用者 pasadena 存在了。他的家目錄還存在但是所有者只能顯示為數字id。

有一件事我們必須了解,帶 -f 選項的 userdel 不會斷開 該使用者已有的 ssh 鏈結。因此,即使使用者已經不存在,但實際上仍是登入狀態,並且是活躍使用者。但是當使用者登出後不可再登入,因為使用者已經被刪除。

因此所以這個選項使用起來有些危險,因為它會使你的系統進入不一致的狀態。

總結

userdel 是乙個 linux 系統內部刪除使用者的工具。userdel同樣是deluser命令的後端,這是乙個用perl編寫的刪除使用者的指令碼。如往常一樣,你可以輸入man userdel來檢視關於userdel命令的更多細節。

出處

linux系統shell使用

1 shell的命令格式 使用者登入系統後,shell命令列啟動。shell遵循一定的語法格式將使用者輸入的命令進行分析解釋並傳遞給系統核心。shell命令的一般格式為 command options arguments 命令列是使用者與shell之間對話的基本單位。command 表示命令的名稱。...

linux 系統svn使用

1.檢視svn目錄 find name svn 2.進入該目錄的conf,其中有authz passwd svnserve.conf三個檔案 3 進入passwd,在 users 下面加上你要新增的svn賬號及密碼 格式為 users yhm pm 然後儲存wq 如果只增加使用者,不用重啟 4 再進...

linux系統使用python監測系統負載指令碼分享

複製 如下 usr bin env python import os def load stat load g f op程式設計客棧en 程式設計客棧proc load g con f.read split f.close load g l g 1 con 0 load g l g 5 con 1 ...