1. 程式人生 > >linux系統 使用者身份與檔案許可權(一)

linux系統 使用者身份與檔案許可權(一)

0.瞭解檔案的所有者、所屬組以及其他人可對檔案進行的讀(r)、寫(w)、執行(x)等操作,以及如何在Linux系統中新增、刪除、修改使用者賬戶資訊。在Linux系統中建立每個使用者時,將自動建立一個與其同名的基本使用者組(私有組),而且這個基本使用者組只有該使用者一個人。如果該使用者以後被歸納入其他使用者組,則這個其他使用者組稱之為擴充套件使用者組(標準組)。一個使用者只有一個基本使用者組,但是可以有多個擴充套件使用者組,從而滿足日常的工作需要。

1.useradd

useradd命令用於建立新的使用者,格式為“useradd [選項] 使用者名稱”。

可以使用useradd命令建立使用者賬戶。使用該命令建立使用者賬戶時,預設的使用者家目錄會被存放在/home目錄中,預設的Shell直譯器為/bin/bash,而且預設會建立一個與該使用者同名的基本使用者組。這些預設設定可以根據下表中的useradd命令引數自行修改。

引數 作用
-d 指定使用者的家目錄(預設為/home/username)
-e 賬戶的到期時間,格式為YYYY-MM-DD.
-u 指定該使用者的預設UID
-g 指定一個初始的使用者基本組(必須已存在)
-G 指定一個或多個擴充套件使用者組
-N 不建立與使用者同名的基本使用者組
-s 指定該使用者的預設Shell直譯器

下面我們建立一個普通使用者並指定家目錄的路徑、使用者的UID以及Shell直譯器。在下面的命令中,請注意/sbin/nologin,它是終端直譯器中的一員,與Bash直譯器有著天壤之別。一旦使用者的直譯器被設定為nologin,則代表該使用者不能登入到系統中

useradd -d /home/linux -u 8888 -s /sbin/nologin user1
id user1

2.groupadd

groupadd命令用於建立使用者組,格式為“groupadd [選項] 群組名”。

為了能夠更加高效地指派系統中各個使用者的許可權,在工作中常常會把幾個使用者加入到同一個組裡面,這樣便可以針對一類使用者統一安排許可權。建立使用者組的步驟非常簡單,例如使用如下命令建立一個使用者組zaq:

groupadd zaq

3.usermod

usermod命令用於修改使用者的屬性,格式為“usermod [選項] 使用者名稱”。

Linux系統中的一切都是檔案,因此在系統中建立使用者也就是修改配置檔案的過程。使用者的資訊儲存在/etc/passwd檔案中,可以直接用文字編輯器來修改其中的使用者引數專案,也可以用usermod命令修改已經建立的使用者資訊,諸如使用者的UID、基本/擴充套件使用者組、預設終端等。usermod命令的引數以及作用如下表所示。

引數 作用
-c 填寫使用者賬戶的備註資訊
-d -m 引數-m與引數-d連用,可重新指定使用者的家目錄並自動把舊的資料轉移過去
-e 賬戶的到期時間,格式為YYYY-MM-DD
-g 變更所屬使用者組
-G 變更擴充套件使用者組
-L 鎖定使用者禁止其登入系統
-U 解鎖使用者,允許其登入系統
-s 變更預設終端
-u 修改使用者的UID

將使用者user1加入到root使用者組中,這樣擴充套件組列表中則會出現root使用者組的字樣,而基本組不會受到影響:

usermod -G root user1

用-u引數修改user1使用者的UID號碼值。除此之外,我們還可以用-g引數修改使用者的基本組ID,用-G引數修改使用者擴充套件組ID。

usermod -u 6666 user1

4.passwd

passwd命令用於修改使用者密碼、過期時間、認證資訊等,格式為“passwd [選項] [使用者名稱]”。

普通使用者只能使用passwd命令修改自身的系統密碼,而root管理員則有許可權修改其他所有人的密碼。更酷的是,root管理員在Linux系統中修改自己或他人的密碼時不需要驗證舊密碼,這一點特別方便。既然root管理員可以修改其他使用者的密碼,就表示完全擁有該使用者的管理許可權。passwd命令中可用的引數以及作用如下表所示。

引數 作用
-l 鎖定使用者,禁止其登入
-u 解除鎖定,允許使用者登入
--stdin 允許通過標準輸入修改使用者密碼,如echo "NewPassWord" | passwd --stdin Username
-d 使該使用者可用空密碼登入系統
-e 強制使用者在下次登入時修改密碼
-S 顯示使用者的密碼是否被鎖定,以及密碼所採用的加密演算法名稱

如何修改使用者自己的密碼,以及如何修改其他人的密碼(修改他人密碼時,需要具有root管理員許可權):

鎖定使用者,解鎖使用者,檢視鎖定狀態:

5.userdel

userdel命令用於刪除使用者,格式為“userdel [選項] 使用者名稱”。

如果我們確認某位使用者後續不再會登入到系統中,則可以通過userdel命令刪除該使用者的所有資訊。在執行刪除操作時,該使用者的家目錄預設會保留下來,此時可以使用-r引數將其刪除。userdel命令的引數以及作用如下表所示。

引數 作用
-f 強制刪除使用者
-r 同時刪除使用者及使用者家目錄
userdel user1

後續見《linux系統 使用者身份與檔案許可權(二)》(詳細學習,請見)