linux使用者 組管理

2021-10-08 14:52:38 字數 4182 閱讀 2469

linux是乙個可以實現多使用者登陸的作業系統,允許多個使用者同時登陸到系統上使用資源。系統根據賬戶來區分每個使用者的檔案、程序、任務,給每個使用者提供特定的工作環境。

使用者組的基本概念:

使用者(users)和組(group):

系統上的每個程序(執行程式 )都作為特定使用者進行。

每個檔案都由特定使用者擁有。

使用者對檔案和目錄的訪問受到限制。

與執行中的程序相關聯的使用者確定該程序可訪問的檔案和目錄。

(* 使用者組group,就是具有相同特徵的使用者的集合體)

使用者的類別:

管理員普通使用者

系統使用者

登入使用者

組類別2:

使用者的基本組

使用者的附加組

組類別3:

私有組:組名同使用者名稱,且只包含乙個使用者;

公共組:組內包含了多個使用者。

使用者識別符號(gid和uid):

當我們登入linux主機的時候,我們輸入的是使用者的帳號,比如root,但其實linux主機本不認識賬號名稱,他能認識的只是id,每乙個檔案都有屬組和屬主,所以每一次登入都有兩個id,乙個屬主(user id,簡稱uid),乙個屬組(group id,簡稱gid)。

uid:

16bits二進位制數字:0-65535

管理員:0

普通使用者:1-65535

系統使用者:1-499(centos6),1-999(centos7)

登入使用者:500-60000(centos6),1000-60000(centos7)

名稱解析:名稱轉換

username<-------->uid

根據名稱解析庫 /etc/passwd

gid:

管理員組:0

普通使用者組;1-65635

系統使用者組:1-499(centos6),1-999(centos7)

登陸使用者組:500-60000(centos6),1000-60000(centos7)

名稱解析:groupname<—>gid

解析庫: /etc/group

使用者組管理:

程序以其發起者的身份執行; 程序對檔案的訪問許可權,取決於發起此程序的使用者的許可權;系統使用者:為了能夠讓那後台程序或服務類程序以非管理員的身份執行,通常需要為此建立多個普通使用者;這類使用者從不用

登入系統。

groupadd命令:新增組

groupadd [選項] group_name

-g gid:指定gid;預設是上乙個組的gid+1;

-r: 建立系統組;

groupmod命令:修改組屬性

groupmod [選項] group

-g gid:修改gid;

-n new_name:修改組名;

groupdel命令:刪除組

groupdel [選項] group

useradd命令:建立使用者

useradd [選項] 登入名

-u, --uid uid:指定uid;

-g, --gid group:指定基本組id,此組得事先存在;

-g, --groups group1[,group2,…[,groupn]]]:指明使用者所屬的附加組,多個組之間用逗號分隔;

-c, --comment comment:指明注釋資訊;

-d, --home home_dir:以指定的路徑為使用者的家目錄;通過複製/etc/skel此目錄並重命名實現;指定的家

目錄路徑如果事先存在,則不會為使用者複製環境配置檔案;

-s, --shell shell:指定使用者的預設shell,可用的所有shell列表儲存在/etc/shells檔案中;

-r, --system:建立系統使用者;

注意:建立使用者時的諸多預設設定配置檔案為/etc/login.defs

useradd -d:顯示建立使用者的預設配置;

useradd -d 選項: 修改預設選項的值;

修改的結果儲存於/etc/default/useradd檔案中;

usermod命令:修改使用者屬性passwd命令:

passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i

inactivedays] [-s] [–stdin] [username]

(1) passwd:修改使用者自己的密碼;

(2) passwd username:修改指定使用者的密碼,但僅root有此許可權;

-l, -u:鎖定和解鎖使用者;

-d:清除使用者密碼串;

-e date: 過期期限,日期;

-i days:非活動期限;

-n days:密碼的最短使用期限;

-x days:密碼的最長使用期限;

-w days:警告期限;

–stdin:

echo 「password」 | passwd --stdin username

gpasswd命令:

組密碼檔案:/etc/gshadow

gpasswd [選項] group

-a username:向組中新增使用者

-d username:從組中移除使用者

newgrp命令:臨時切換指定的組為基本組;

newgrp [-] [group]

-: 會模擬使用者重新登入以實現重新初始化其工作環境;

chage命令:更改使用者密碼過期資訊

chage [選項] 登入名

-d:指定密碼最後修改日期

-e:密碼到期的日期,過了這天,此賬號不可用,0表示馬上過期,-1表示永不過期

-w:密碼過期前,提前收到警告資訊的天數

-m:密碼可以更改的最小天數。為零代表任何時候都可以更改密碼

-m:密碼保持有效的最大天數。

id命令:顯示使用者的真和有效id;

id [option]… [user]

-u: 僅顯示有效的uid;

-g: 僅顯示使用者的基本組id;

-g:僅顯示使用者所屬的所有組的id;

-n: 顯示名字而非id;

如果建立乙個使用者時,未指定任何選項,系統會建立乙個和使用者名稱相同的組作為使用者的primary group.

建立使用者 指定選項:

#useradd user02 -u 503 //建立使用者usr02,指定uid

#useradd user03 -d /aaa //建立使用者user03 指定家目錄

#useradd user05 -s /sbin/nologin //建立使用者並指定shell

#useradd user07 -g hr,it,fd //建立使用者,指定附加組

刪除使用者:

#userdel user10 //刪除使用者user10,但不刪除使用者家目錄和mail spool

#userdel -r user2 //刪除使用者user2,同時刪除使用者家目錄mailspool

使用者密碼:

[root@nebulalinux03 ~]# passwd alice

[nebula@nebulalinux03 ~]$ passwd

組成員管理:

注意:只針對已存在的使用者

#usermod -g hr niuniu2 //覆蓋原有的附加組

#usermod -g fd,it niuniu2

#usermod -ag hr niuniu2 //增加新的附加組

補充:檢視當前登入的使用者資訊:id

檢視檔案的owner:ll /home/

檢視執行程序的username:ps aux |less

檢視執行程序的使用者:ps -ef |grep sshd,

檢視程序:ps -ef |grep httpd

啟動程序:systemctl start httpd

檢視屬組和屬主:ll -d httpd

屬組屬主許可權改為root : chown -r root:root

linux 使用者 組管理

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

Linux使用者組管理

使用者組資訊存放 etc group 當組內只有乙個使用者,並且使用者名稱和使用者組名一致時預設不顯示 組號1 499是系統預留的使用者組,500的使用者組是管理員手動建立的,組密碼佔位符用x表示 組密碼配置檔案 etc gshadow 也是四段存放的,乙個 代表組密碼為空,比如ssh免密登入後就為...

linux 使用者 組管理

useradd 選項 使用者名稱選項 u 為使用者指定id d 為使用者指定家目錄userdel r 使用者名稱 徹底刪除使用者usermod 選項 使用者名稱選項 s 修改shellpasswd 使用者名稱 設定密碼groupadd 選項 組名選項 ggroupdel 選項 組名groupmod ...