linux使用者群組有2種:1、基本群組 ( 私有群組 );建立帳戶時,若沒有指定帳戶所屬的群組,系統會建立一個和使用者名稱相同的群組,而此群組就是基本群組。 2.附加組 ( 公有組 ),可容納多個用戶,組中的用戶都具有群組所擁有的權利。
本教學操作環境:linux7.3系統、Dell G3電腦。
#1、linux下的使用者可以分為3類別
#超級使用者 - 使用者名稱為 root ,它有一切權限,只有進行系統維護 ( 例如:建立用戶等 ) 或其他必要情形下才用超級用戶登錄,以避免系統出現安全問題。
系統使用者(偽使用者) — 是 Linux 系統正常運作所必需的使用者。主要是為了滿足對應的系統程序對檔案屬主的要求而建立的,例如: bin 、 daemon 、 adm 、 lp 等用戶。系統使用者不能用來登入。
一般使用者-是為了讓使用者能夠使用Linux系統資源而建立的,我們的大多數用戶屬於此類。
2、linux中的群組有以下兩類:
基本群組 ( 私有群組 ) :建立帳戶時,若沒有指定帳戶所屬的群組,系統會建立一個和使用者名稱相同的群組,這個群組就是基本群組。
附加群組 ( 公有組 ) :可以容納多個用戶,群組中的用戶都有群組所擁有的權利。
3、linux中使用者群組和使用者的設定檔
在linux中,使用者帳號,密碼、使用者群組訊息,和使用者群組密碼是存放在不同的設定檔中的。
檔案功能 | 檔案名稱 |
#使用者帳號檔案 |
|
使用者密碼 | |
使用者群組帳號檔案 | |
使用者群組密碼檔案 |
(1)用戶帳號檔案——/etc/passwd
passwd 是一個文字文件,用來定義系統的使用者帳號,由於所有使用者都對 passwd 有讀取權限,所以在該檔案中只定義使用者帳號,而不儲存口令。
## 每行定義一個使用者帳號訊息,每行由 7 個字段組成,字段之間用 “:” 分隔,其格式如下:
帳號名稱
:
密碼
:UID:GID:
個人檔案
:
主目錄
:Shell
/etc/passwd 檔案中欄位說明
#帳號名稱:使用者登入 Linux 系統時所使用的名稱。
#程式碼:以前是以加密格式儲存密碼的位置,現在密碼儲存在 /etc/shadow# 檔案中,這裡只是密碼佔 位符 “x” 或 “*” 。若為 “x” ,說明密碼經過了 shadow 的保護。
UID :使用者的標識,是一個數值,用它來區分不同的用戶,每個使用者都有一個 UID 數值:
普通用戶的 UID—— ≥ 1000
#GID :使用者所在基本群組的標識,是一個數值,用它來區分不同的群組,相同的群組具有相同的 GID 。
個人資料:可以記錄使用者的完整姓名、地址、辦公室電話、家庭電話等個人資料。
主目錄:類似 Windows 的個人目錄,通常是 /home/username ,這裡 username 是使用者名稱,使用者 執行 「cd ~ ” 指令時目前目錄會切換到個人主目錄。
(2)使用者密碼檔案——/etc/shadow
# 每行定義了一個使用者訊息,行中各字段以 “:” 隔開 , 其格式如下:
登入名稱 : 加密口令 : 最後一次修改時間 : 最小時間間隔 : 最大時間間隔 : 警告時間 : 不活動時間 : 失效時間 : 標誌
/etc/shadow檔案中的每行9個欄位的意義分別為欄位
登入:登入
加密口令:使用SHA-512/SHA -256/MD5 演算法加密後的密碼( $id$, id為1顯示 md5,5表示sha256, 6為sha512),若為空,表示該使用者無需密碼即可登錄,若為「*」 表示該帳號不可用於登入系統,若為「!」表示此帳號密碼已鎖定
最後一次修改時間:最近一次變更密碼的日期, 以距離 1970 年 1 月 1 日的天數表示
最大時間間隔 :密碼在幾天後必須修改。預設值為99999, 表示不限制
不活動時間:密碼過期多少天後停用此使用者
檢視使用者上次一次修改root密碼的日期
(3)使用者群組帳號檔案—/etc/group
#系統中的每個群組,在 /etc/group# 檔案中有一行記錄,任何使用者均可讀取使用者群組帳戶資訊設定檔。
#欄位說明
Groupname :群組的名字
Passwd :群組的加密口令
GID :是系統區分不同群組的ID ,在 /etc/passwd 域中的 GID 欄位是用這個數字指定使用者的基本群組
作業:
#1、建立使用者lockuser, 並指定家庭目錄為/home/lock, 然後鎖定該用戶2、解鎖lockuser, 並設定下次登入時必須修改密碼
#3、建立使用者testuser並設定密碼,修改使用者名稱為normaluser
4、建立文件,查詢檔案的acl,設定acl 使用者為檔案為testuser1 權限為rwx,設定acl的mask: 權限為r-x
#
5、設定suid,設定suid(兩種方式u s和nnnn)的方式
6、設定sgid, 為檔案設定sgid(兩種方式g s和nnnn)的方式
7、設定sbit,為目錄設定sbit(兩種方式o t和nnnn)的方式
透過使用Linux 命令列的幾個的範例,逐步向您展示如何在Linux 上將使用者新增至使用者群組中,以及如何在Linux 上新增使用者和群組。這些命令應該可以在任何 Linux 發行版上運作,並且已經在CentOS、Debian 和 Ubuntu 上進行過測試。
新增一個新使用者到使用者群組
#一個Linux 使用者可以有一個主群組(Primary group)和一個或多個附屬群組(Secondary groups)。這些群組可以在建立使用者時作為 adduser
命令的參數。
所有指令都必須以 root
使用者的身分執行。在 Ubuntu 上,請在所有指令前加上 sudo
,或執行sudo -s
切換到 root
使用者。
新增使用者群組
作為第一步,我將新增兩個新的使用者群組,分別是family
和friends
:
groupadd family groupadd friends
新增用戶至單一用戶群組
#下面我將一個新用戶tom
,同時將用戶新增到用戶組family
。 family
使用者群組將透過使用 -G
參數作為一個附屬群組添加。
useradd -G family tom
將新使用者新增至多個使用者群組
tom
現在是 family
使用者群組的使用者。參數 -G
允許指定多個使用者群組,每個使用者群組之間使用逗號進行分隔。如果要將用戶tom
新增至family
和friends
兩個用戶群組,請使用下面的命令:
useradd -G family,friends tom
設定用戶密碼
請注意,新的Linux 使用者tom
還沒有密碼,所以無法登入。要設定此使用者的密碼,可以執行下面的命令:
passwd tom
並在命令請求時輸入兩個新密碼。
在上面的範例中,我們將使用者tom
新增到輔助群組中,adduser
指令自動建立了一個新的主群組,並將該群組指派為主組。
設定新的主群組
也許你想在新增tom
使用者時,設定主群組為family
(而不是預設建立的tom
使用者群組),附屬群組為friends
,可以使用這個指令:
useradd -g family -G friends tom
使用man
指令可以獲得useradd
命令的所有命令列選項的詳細描述:
man useradd
#將現有的使用者新增至使用者群組
對於這個任務,我們將使用usermod
指令。 usermod
指令可以修改使用者的各種選項,包括使用者的組成員關係。
首先,我將新增第三個使用者群組colleagues
:
groupadd colleagues
使用usermod
我將colleagues
使用者群組作為附屬群組新增至使用者tom
:
usermod -a -G colleagues tom
命令解釋:-a
表示append
,它只能與-G
選項(附屬群組)組合使用。所以最終我們將 tom
使用者加入到 colleagues
使用者群組中,這個使用者群組是使用者的一個附屬群組。
-G
選項可以指定多個使用者群組,每個使用者群組之間使用逗號進行分隔。例如:-G group1,group2,group3
。
如果想要修改 tom
用户的主组为 family
,可以使用命令:
usermod -g family tom
使用 man
命令可以获取 usermod
命令的所有命令行选项的详细说明:
man usermod
相关推荐:《Linux视频教程》
以上是linux用戶群組有哪幾種的詳細內容。更多資訊請關注PHP中文網其他相關文章!