Linux 使用者和使用者組

2021-09-25 14:37:42 字數 4083 閱讀 4501

一、概述

linux系統是乙個多使用者多工的分時作業系統,任何乙個要使用系統資源的使用者,都必須首先向系統管理員申請乙個賬號,然後以這個賬號的身份進入系統。

使用者的賬號一方面可以幫助系統管理員對使用系統的使用者進行跟蹤,並控制他們對系統資源的訪問;另一方面也可以幫助使用者組織檔案,並為使用者提供安全性保護。每個使用者賬號都擁有乙個惟一的使用者名稱和各自的口令。使用者在登入時鍵入正確的使用者名稱和口令後,就能夠進入系統和自己的主目錄。

實現使用者賬號的管理,要完成的工作主要有如下幾個方面:

1️⃣使用者管理:使用者賬號的新增、刪除與修改

2️⃣使用者口令的管理

3️⃣使用者組的管理

二、使用者管理

1、新增使用者

useradd 使用者名稱
2、對使用者設定密碼

passwd 使用者名稱

#根據提示輸入要設定的密碼

3、檢視使用者

id 使用者名稱
4、檢視當前使用者

whoami 或者 who am i
5、切換使用者:由root使用者切換到其他使用者時不需要輸入密碼,其他情況均需要根據提示輸入密碼

su - 使用者名稱 #注意-前後都有空格 另外#標識的是超級管理員,$標識的是普通使用者
6、刪除使用者:普通使用者的主目錄都在檔案系統的home目錄下

userdel 使用者名稱 #刪除使用者但是儲存使用者主目錄

userdel -r 使用者名稱 #刪除使用者同時刪除主目錄

7、修改使用者

usermod -g 使用者組 使用者名稱 #修改使用者的使用者組

useradd -g 使用者組 使用者名稱 #將使用者新增到某個使用者組

三、使用者組管理

每個使用者都有乙個使用者組,系統可以對乙個使用者組中的所有使用者進行集中管理。不同 linux 系統對使用者組的規定有所不同,如預設linux下的使用者屬於與它同名的使用者組,這個使用者組在建立使用者時同時建立。使用者組的管理涉及使用者組的新增、刪除和修改。組的增加、刪除和修改實際上就是對/etc/group檔案的更新。

1、新增使用者組

groupadd 使用者組名 #新增使用者組

useradd -g 使用者組名 使用者名稱 #往使用者組中新增使用者

usermod -g 使用者組名 使用者名稱 #修改使用者的使用者組(在建立使用者的時候,使用者預設屬於和使用者名稱相同的使用者組,因此此命令用的較多)

2、刪除使用者組

groupdel 使用者組名
3、修改使用者組

groupmod -n 新使用者組名 舊使用者組名 #更改使用者組名

groupmod -g 新使用者組id 舊使用者組id #更改使用者組id(當新增的群組id與舊有的相同時需要更改新新增的使用者組id)

四、與使用者賬號有關的系統檔案

完成使用者管理的工作有許多種方法,但是每一種方法實際上都是對有關的系統檔案進行修改。與使用者和使用者組相關的資訊都存放在一些系統檔案中,這些檔案包括/etc/passwd, /etc/shadow, /etc/group等。

1、/etc/passwd

linux系統中的每個使用者都在/etc/passwd檔案中有乙個對應的記錄行,它記錄了這個使用者的一些基本屬性,如家目錄位置。

從上面的截圖我們可以看到,/etc/passwd中一行記錄對應著乙個使用者,每行記錄又被冒號(:)分隔為7個字段,其格式和具體含義如下:

使用者名稱:口令:使用者標識號:組標識號:注釋性描述:家目錄位置:登入shell
①使用者名稱

"使用者名稱"是代表使用者賬號的字串。通常長度不超過8個字元,並且由大小寫字母和/或數字組成。使用者名稱中不能有冒號,因為冒號在這裡是分隔符。為了相容起見,登入名中最好不要包含點字元(.),並且不使用連字元(-)和加號(+)打頭。

②口令一些系統中,存放著加密後的使用者口令字。雖然這個字段存放的只是使用者口令的加密串,不是明文,但是由於/etc/passwd檔案對所有使用者都可讀,所以這仍是乙個安全隱患。因此,現在許多linux 系統(如svr4)都使用了shadow技術,把真正的加密後的使用者口令字存放到/etc/shadow檔案中,而在/etc/passwd檔案的口令欄位中只存放乙個特殊的字元,例如「x」或者「*」。

③使用者標識號

「使用者標識號」是乙個整數,系統內部用它來標識使用者。一般情況下它與使用者名稱是一一對應的。如果幾個使用者名稱對應的使用者標識號是一樣的,系統內部將把它們視為同乙個使用者,但是它們可以有不同的口令、不同的主目錄以及不同的登入shell等。

通常使用者標識號的取值範圍是0~65535。0是超級使用者root的標識號,1~99由系統保留,作為管理賬號,普通使用者的標識號從100開始,在linux系統中,這個界限是500。

④組標識號

「組標識號」字段記錄的是使用者所屬的使用者組。它對應著/etc/group檔案中的一條記錄。

⑤注釋性描述

「注釋性描述」字段記錄著使用者的一些個人情況。例如使用者的真實姓名、**、位址等,這個欄位並沒有什麼實際的用途。在不同的linux 系統中,這個欄位的格式並沒有統一。在許多linux系統中,這個字段存放的是一段任意的注釋性描述文字,用做finger命令的輸出。

⑥主目錄

「主目錄」或稱家目錄,也就是使用者的起始工作目錄。它是使用者在登入到系統之後所處的目錄。在大多數系統中,各使用者的主目錄都被組織在同乙個特定的目錄下,而使用者主目錄的名稱就是該使用者的登入名。各使用者對自己的主目錄有讀、寫、執行(搜尋)許可權,其他使用者對此目錄的訪問許可權則根據具體情況設定。

⑦登入shell

使用者登入後,要啟動乙個程序,負責將使用者的操作傳給核心,這個程序是使用者登入到系統後執行的命令直譯器或某個特定的程式,即shell。shell是使用者與linux系統之間的介面。linux的shell有許多種,每種都有不同的特點。常用的有sh(bourne shell)、csh(c shell)、ksh(korn shell)、tcsh(tenex/tops-20 type c shell)、bash(bourne again shell)等。系統管理員可以根據系統情況和使用者習慣為使用者指定某個shell。如果不指定shell,那麼系統使用sh作為預設的登入shell,即這個欄位的值為/bin/sh。

使用者的登入shell也可以指定為某個特定的程式(此程式不是乙個命令直譯器)。利用這一特點,我們可以限制使用者只能執行指定的應用程式,在該應用程式執行結束後,使用者就自動退出了系統。有些linux 系統要求只有那些在系統中登記了的程式才能出現在這個欄位中。

2、/etc/shadow

由於/etc/passwd檔案是所有使用者都可讀的,如果使用者的密碼太簡單或規律比較明顯的話,一台普通的計算機就能夠很容易地將它破解,因此對安全性要求較高的linux系統都把加密後的口令字分離出來,單獨存放在乙個檔案中,這個檔案就是/etc/shadow檔案。 只有超級使用者才擁有該檔案讀許可權,這就保證了使用者密碼的安全性。

它的檔案格式與/etc/passwd類似,由若干個字段組成,字段之間用":"隔開。這些欄位是:

3、/etc/group

將使用者分組是linux 系統中對使用者進行管理及控制訪問許可權的一種手段。每個使用者都屬於某個使用者組;乙個組中可以有多個使用者,乙個使用者也可以屬於不同的組。

使用者組的所有資訊都存放在/etc/group檔案中。此檔案的格式也類似於/etc/passwd檔案,由冒號(:)隔開若干個字段:

組名:口令:組標識號:組內使用者列表
①組名:是使用者組的名稱,由字母或數字構成。與/etc/passwd中的登入名一樣,組名不應重複

②口令:存放的是使用者組加密後的口令字。一般linux 系統的使用者組都沒有口令,即這個字段一般為空,或者是*

③組標識號:與使用者標識號類似,也是乙個整數,被系統內部用來標識組

④組內使用者列表:是屬於這個組的所有使用者的列表,不同使用者之間用逗號(,)分隔。這個使用者組可能是使用者的主組,也可能是附加組

linux使用者和使用者組

使用者和使用者組 1.etc group 組名 x 組編號 使用者列表 組號 1 499 預留系統編號 組號 500 使用者建立 2.etc gshadow 組名 組密碼 組管理者 使用者列表 3.etc passwd 使用者名稱 密碼佔位符 使用者編號 使用者組編號 注釋 主目錄 shell型別 ...

Linux 使用者和使用者組

etc group 儲存當前系統中所有使用者組資訊 格式資訊 組名稱 組密碼佔位符 組編號 組中使用者名稱列表 組編號0 root 組編號1 499 系統預留的主編號,安裝在作業系統的軟體或服務 etc gshadow 儲存當前系統中使用者組的密碼資訊 etc passwd 儲存當前系統中所有使用者...

linux使用者和使用者組

linux系統是乙個多使用者多工的分時作業系統,任何乙個要使用系統資源的使用者,都必須首先向系統管理員申請乙個賬號,然後以這個賬號的身份進入系統。使用者的賬號一方面可以幫助系統管理員對使用系統的使用者進行跟蹤,並控制他們對系統資源的訪問 另一方面也可以幫助使用者組織檔案,並為使用者提供安全性保護。每...