首頁 > 軟體

Linux使用者管理詳解

2020-06-16 17:21:09

一、常用命令:

(1)建立使用者命令兩條:

adduser

useradd

(2)使用者刪除命令:

userdel

二、兩個使用者建立命令之間的區別

adduser: 會自動為建立的使用者指定主目錄、系統shell版本,會在建立時輸入使用者密碼。

useradd:需要使用引數選項指定上述基本設定,如果不使用任何引數,則建立的使用者無密碼、無主目錄、沒有指定shell版本。

三、使用adduser

例如:

$    adduser   apple

輸出顯示:

這樣在建立使用者名稱時,就建立了使用者的主目錄以及密碼。

預設情況下:

adduser在建立使用者時會主動呼叫  /etc/adduser.conf;

在建立使用者主目錄時預設在/home下,而且建立為 /home/使用者名稱  

如果主目錄已經存在,就不再建立,但是此主目錄雖然作為新使用者的主目錄,而且預設登入時會進入這個目錄下,但是這個目錄並不是屬於新使用者,當使用userdel刪除新使用者時,並不會刪除這個主目錄,因為這個主目錄在建立前已經存在且並不屬於這個使用者。

為使用者指定shell版本為:/bin/bash

因此常用引數選項為:

(1)   --home:                       指定建立主目錄的路徑,預設是在/home目錄下建立使用者名稱同名的目錄,這裡可以指定;如果主目錄同名目錄存在,則不再建立,僅在登入時進入主目錄。

(2)   --quiet:                        即只列印警告和錯誤資訊,忽略其他資訊。

(3)   --debug:                     定位錯誤資訊。

(4)   --conf:                         在建立使用者時使用指定的configuration檔案。

(5)   --force-badname:     預設在建立使用者時會進行/etc/adduser.conf中的正規表示式檢查使用者名稱是否合法,如果想使用弱檢查,則使用這個選項,如果不想檢查,可以將/etc/adduser.conf中相關選項遮蔽。如:

四、使用useradd

注意: 在使用useradd命令建立新使用者時,不會為使用者建立主目錄,不會為使用者指定shell版本,不會為使用者建立密碼。

例如:

1、不使用任何引數選項建立使用者:

例如建立新使用者 tt

$  sudo  useradd  tt

(1)需要為使用者指定登入密碼:

(2)需要為使用者指定shell版本和使用者登入主目錄

如上圖所示,最後一行行首只出現:

$

檢視shell版本,發現是/bin/sh:

說明這是沒有指定shell版本

使用者登入後的所在目錄為根目錄:  /

雖然$HOME環境變數為/home/tt

2、為使用者指定引數的useradd命令:

常用命令列選項:

(1) -d:           指定使用者的主目錄

(2) -m:          如果存在不再建立,但是此目錄並不屬於新建立使用者;如果主目錄不存在,則強制建立; -m和-d一塊使用。

(3) -s:           指定使用者登入時的shell版本

(4) -M:           不建立主目錄

例如:

$   sudo  useradd  -d  "/home/tt"   -m   -s "/bin/bash"   tt

解釋:   -d   “/home/tt" :就是指定/home/tt為主目錄

               -m   就是如果/home/tt不存在就強制建立

               -s    就是指定shell版本

修改tt密碼:

$  sudo passwd tt

五、刪除使用者命令

userdel

(1)只刪除使用者:

sudo   userdel   使用者名稱

(2)連同使用者主目錄一塊刪除:

sudo  userdel   -r   使用者名稱

如果建立時主目錄已經存在,即主目錄不屬於當前要刪除的使用者,則無法刪除主目錄,例如:

可以看出無法刪除已有主目錄/home/tt。

六、相關檔案:

       /etc/passwd - 使 用 者 帳 號 資 訊,可以檢視使用者資訊
       /etc/shadow - 使 用 者 帳 號 資 訊 加 密
       /etc/group - 群 組 資 訊
       /etc/default/useradd - 定 義 資 訊
       /etc/login.defs - 系 統 廣 義 設 定
       /etc/skel - 內 含 定 義 檔 的 目 錄

更多詳情見請繼續閱讀下一頁的精彩內容http://www.linuxidc.com/Linux/2017-02/140794p2.htm


IT145.com E-mail:sddin#qq.com