一、用戶和組的概念
Linux系統是多任務、多用戶的分時操作系統。用戶要使用系統資源,需要向管理員驗證身份,由管理員進行認證和授權,并對用戶的行為進行追蹤和審計,以保障系統資源的合理分配以及系統的安全。
要達到賬號管理的目的,需要對用戶和用戶組進行管理。下面分別來介紹用戶管理和用戶組管理。
每個用戶都有唯一的一個編號來標識,這個標識號叫Uid,每個用戶至少屬于一個用戶組,用戶組使用Gid來進行標識
Linux用戶信息按Username/ UID分兩類:
管理員:root,0。管理員具有系統的超級權限,可以進行絕大多數的系統操作。有“管理員即上帝”的說法。所以,在使用管理員進行操作時,對于可能造成系統破壞的操作應加倍小心。
普通用戶:Uid范圍是1-65535,普通用戶又可以劃分為系統用戶和登錄用戶。
系統用戶對守護進程獲取資源進行權限分配。
登錄用戶采用交互式登錄方式登錄系統。
在CentOS6和CentOS7上具體的的劃分又有所區別
CentOS6:
系統用戶:1-499
登錄用戶:500+
CentOS7:
系統用戶:1-999
登錄用戶:1000+
Linux組的劃分:Groupname/GID
組的劃分與用戶的劃分相對應。
管理員組:root,0
普通組:
系統組:1-499(centos6);1-999(centos7)
普通組:500+(centos6);1000+(centos7)
組對系統用戶來說,又可以劃分問用戶的基本組和附加組。用戶必須屬于一個且只能有一個基本組,組名同用戶名。一個用戶可以屬于0個或多個附加組。
二、用戶和組的配置文件詳解
Linux用戶的主要配置文件有/etc/passwd、/etc/shadow,其中
/etc/passwd 存放用戶的用戶名及其屬性信息(包含uid、基本組id等)
/etc/shadow 存放用戶密碼及其相關屬性
下面來解釋一下/etc/passwd文件的格式
每行為一個用戶的信息,用“:”作分割,分別對應
root x 0 0 root /root /bin/bash
用戶名 密碼信息 UID GID 用戶描述 用戶家目錄 用戶登錄時的默認shell
為什么密碼信息顯示為x呢,因為所有用戶都可以訪問/etc/passwd文件,這是很不安全的,所以,密碼另存在/etc/shadow文件中
/etc/shadow文件的格式:
同樣也是使用”:”做分隔符
bin * 15980 0 99999 7 第七列 第八列
用戶名 用戶密碼 密碼最近 密碼最小 密碼最大 密碼過期 密碼鎖定 賬號過期時間 賬號過期
修改時間 修改時間 修改時間 提醒時間 時間 時間
第七列和第八列因為沒有設置,所以沒有顯示
解釋:
用戶密碼: 經加密算法加密后的密文
密碼最近修改時間:從1970年1月1日起到密碼最近一次被更改的時間
密碼最小修改時間: 密碼再過幾天可以被變更( 0表示隨時可被變更)
密碼最大修改時間:密碼再過幾天必須被變更( 99999表示永不過期)
密碼過期提醒時間:密碼過期前幾天系統提醒用戶(默認為一周)
密碼鎖定時間:密碼過期幾天后帳號會被鎖定
賬號過期時間:從1970年1月1日算起,多少天后帳號失效。
用圖表來表示:
組的相關信息保存在/etc/group和/etc/gshadow文件中,來看看兩個文件的結構:
查看/etc/group
從左至右分別對應:組名、組密碼(通常不設定)、組id(GID)、組成員列表
查看/etc/shadow
從左至右分別對應:組名、組密碼、組管理員列表、以本組問附加組的成員列表
三、用戶管理
創建用戶、管理用戶、刪除用戶
1、創建用戶:使用useradd命令
useradd [options] username
常用選項
-u UID: 指定用戶UID
-o 配合-u 選項,不檢查UID的唯一性。一般來說,用戶名和UID是一一對應的。在創建用戶時如果為用戶指定已使用的UID,會報錯。
例:12346UID已使用,
-g GID:指明用戶所屬基本組,可為組名,也可以GID
-c "COMMENT":用戶的注釋信息
-d HOME_DIR: 以指定的路徑(不存在)為家目錄
-s SHELL: 指明用戶的默認shell程序;可用列表在/etc/shells文件中
-G GROUP1[,GROUP2,…]:為用戶指明附加組,組必須事先存在
-N 不創建私用組做主組,使用users組做主組
-r: 創建系統用戶
示例:創建用戶hadoop,附加組為bin和root,默認shell為/bin/csh,注釋信息為”Hadoop,I’m coming "
注:多個附加組以”,”逗號分隔
2、查看用戶相關信息:
id [options] usename
-u UID:查看用戶的UID
-g GID:查看用戶的GID
-G Groups:查看的所有組信息,以GID的形式展現
3、設定密碼:管理員可為所有設定密碼,普通用戶只能為自己設定密碼
passwd
passwd [OPTIONS] UserName
4、管理用戶
創建用戶之后想修改用戶的配置,使用usermod命令
usermod [OPTION] username
-u UID: 指定新UID
-g GID: 指定新基本組
-G GROUP1[,GROUP2,…[,GROUPN]]]:新附加組,原來的附加組將會被覆蓋;若保留原有,則要同時使用-a選項,表示append(追加);
-s SHELL:新的默認SHELL;
-c 'COMMENT':新的注釋信息;
-d HOME: 新家目錄不會自動創建,原家目錄中的文件不會同時移動至新的家目錄;若要創建新家目錄并移動原家數據,同時使用-m選項
-l login_name: 新的名字;
-L: lock指定用戶,在/etc/shadow 密碼欄的增加 !;此時用戶將不可登錄系統
-U: unlock指定用戶,將 /etc/shadow 密碼欄的 ! 拿掉,即解鎖
-e YYYY-MM-DD: 指明用戶賬號過期日期
5、刪除用戶:
userdel 命令
userdel [OPTION]… username
-r 刪除用戶及其家目錄
四、組管理:
創建、修改、刪除
1、創建組
groupadd [OPTION]… group_name
-g GID: 指明GID號
-r: 創建系統組
2、查看組成員或增加、刪除組成員
groups [OPTION]. [USERNAME]… 查看用戶所屬組列表
groupmems [options] [action] 查看或增加、刪除組成員
options:
-g, –group groupname 更改為指定組 (只有root)
Actions:
-a, –add username 指定用戶加入組
-d, –delete username 從組中刪除用戶
-p, –purge 從組中清除所有成員
-l, –list 顯示組成員列表
例:
刪除bin組里面的成員wobushikaqiusha
3、組屬性修改: groupmod
groupmod [OPTION]… group
-n group_name: 新名字
-g GID: 新的GID;
4、組刪除: groupdel
groupdel GROU
原創文章,作者:M20-1鐘明波,如若轉載,請注明出處:http://www.www58058.com/27155