2.使用者/組資訊儲存的檔案
二.使用者/組管理
2.使用者組
1.系統上的每個程序(正在執行的程式)都以特定使用者身份執行。
2.每個檔案均由特定使用者擁有。
3.對檔案和目錄的訪問受使用者限制。
4.與正在執行的程序關聯的使用者確定該程序可訪問的檔案和目錄。
1.檢視當前登入使用者資訊
[root@localhost ~]
# id
uid=0(root) gid=0(root) 組=0(root)
2.檢視檔案的owner
[root@localhost ~]
# ll /home/
或[root@localhost ~]
# ls -l /home/ (兩個命令等同)
總用量 8
drwx------
. 15 js js 4096 7月 24 18:42 js
drwx------
. 15 1001 1001 4096 7月 24 09:39 user1
drwx------
. 3 2002 2002 78 7月 24 14:59 user2
3.檢視執行程序的username
[root@localhost ~]
# ps aux
user pid %cpu %mem vsz rss tty stat start time command
root 1 0.2 0.4 193760 4420 ? ss 18:40 0:02 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0.0 0.0 0 0 ? s 18:40 0:00 [kthreadd]
[root@localhost ~]
# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin..
.js:x:1000:1000:js:/home/js:/bin/bash//
(root:x:0:0:root:/root:/bin/bash
使用者名稱:x:uid:gid:描述:home:shell)冒號分割為7列欄位
示例解釋:
root:x:0:0:root:/root:/bin/bash//
root: 使用者名稱:登入系統的名字
x: 密碼佔位符:
0: uid: 使用者的身份證號 系統約定: rhel7
uid: 0 特權使用者
uid: 1~999 系統使用者
uid: 1000+ 普通使用者
0: gid:group 組號 /
/每建立乙個使用者,系統會自動建立同名的組
root: 描述:比如經理 manager /
/預設是使用者名稱或空著
/root: 家目錄:登入系統時,所在目錄
/bin/bash: 登入shell:命令直譯器
[root@localhost ~]
# cat /etc/shadow
root:$6
$vh6zgrvv9h3tauqd
$s8fk7s4by01fz7rq6no8qodocbagt
/tut59jlf2s7btqfrjgoxzp8waa.oubaqisbgaehndirlwzsm2qgi1d0.::0:99999:7:::
示例解釋:
root:$1
$myg2n:15636:0:99999:7: : :
root:$1
$myg2ndg6
$a1wtyr5gdm2esapjug0yp0:15636:0:99999:7:: ://
1)「登入名」是與/etc/passwd檔案中的登入名相一致的使用者賬號
2)「口令」字段存放的是加密後的使用者口令字,如果為空,則對應使用者沒有口令,登入時不需要口令;
星號代表帳號被鎖定;
雙嘆號表示這個密碼已經過期了。
$6$開頭的,表明是用sha-512加密的,
$1$ 表明是用md5加密的
$2$ 是用blowfish加密的
$5$ 是用 sha-256加密的。
3)「最後一次修改時間」表示的是從某個時刻起,到使用者最後一次修改口令時的天數。時間起點對不同的系統可能不一樣。例如在scolinux中,這個時間起點是2023年1月1日。
4)「最小時間間隔」指的是兩次修改口令之間所需的最小天數。
5)「最大時間間隔」指的是口令保持有效的最大天數。
6)「警告時間」字段表示的是從系統開始警告使用者到使用者密碼正式失效之間的天數。
7)「不活動時間」表示的是使用者沒有登入活動但賬號仍能保持有效的最大天數。(軟限制。到期後多少天就不能用賬號了。)
8)「失效時間」字段給出的是乙個絕對的天數,如果使用了這個字段,那麼就給出相應賬號的生存期。期滿後,該賬號就不再是乙個合法的賬號,也就不能再用來登入了。(硬限制。)
9) 保留
[root@localhost ~]
# cat /etc/group
root:x:0: /
/組名:組密碼:組id:組成員,組成員預設為空
[root@localhost ~]
# useradd user01
[root@localhost ~]
# id user01
uid=1001(user01) gid=1001(user01) 組=1001(user01)//
使用者編號=具體數字(使用者名稱) 組編號=具體數字(組名) 組=組id(成員名字)
小結:如果建立乙個使用者時,未指定任何選項,系統會建立乙個和使用者名稱相同的組作為使用者的primary group
.
[root@localhost ~]
# useradd user02 -u 2002 //建立使用者user02指定uid
[root@localhost ~]
# useradd user03 -d /user03 //建立使用者user03指定家目錄
[root@localhost ~]
# userdel -r user02 //(-r 遞迴依次刪除全部)
方法一:root修改其他使用者(js)密碼
[root@localhost ~]
# passwd js
方法二:使用者(js)登入,自己修改密碼。
[js@localhost ~]$ passwd
[root@localhost ~]
# usermod -s /sbin/nologin user02 //修改登入shell
1)檢視使用者原先資訊
[root@localhost ~]
# id user02
uid=1002(user02) gid=1002(user02) 組=1002(user02)
2)將使用者追加到hr組
語法:usermod -ag 組名 使用者名稱
[root@localhost ~]
# usermod -ag hr user02
3)再次檢視使用者資訊
[root@localhost ~]
# id user02
uid=1002(user02) gid=1002(user02) 組=1002(user02)
,1005(hr)
4)將使用者移除組(擴充套件)
語法:gpasswd -d user02 hr
或 vim /etc/
group
//直接刪除組裡面使用者
1)建立乙個hr組
[root@localhost ~]
# groupadd hr
[root@localhost ~]
# tail -3 /etc/group
tcpdump:x:72:
js:x:1000:
hr:x:1001: /
/說明該組已經 建立,但和任何使用者都沒有關係。
2)建立組net01,並指定gid 2002
[root@localhost ~]
# groupadd net01 -g 2002
[root@localhost ~]
# tail -3 /etc/group
js:x:1000:
hr:x:1001:
net01:x:2002:
3)刪除組
[root@localhost ~]
# groupdel net01
[root@localhost ~]
# tail -3 /etc/group
tcpdump:x:72:
js:x:1000:
hr:x:1001:
1)基本組
隨使用者建立,自動建立的同名組。
2)附加組
使用者加入的其他組。
linux系統使用者以及使用者組管理
這兩個檔案可以說是linux系統中最重要的檔案之一。如果沒有這兩個檔案或者這兩個檔案出問題,則你是無法正常登入linux系統的。etc passwd由 分割成7個字段,每個欄位的具體含義是 1 使用者名稱 如第一行中的root就是使用者名稱 代表使用者賬號的字串。使用者名稱字元可以是大小寫字母 數字...
Linux系統使用者與使用者組管理
一 使用者和使用者組的管理 1.新增組 groupadd 命令 格式 groupadd 組名 2.刪除組 groupdel 格式 groupdel 組名 3.增加用使用者命令 useradd 格式 useradd 使用者名稱 u 表示自定義uid。g 表示使新增使用者屬於已經存在的某個組,後面可以跟...
linux 系統使用者與使用者組管理
關於 etc passwd和 etc shadow etc passwd 第1個字段為使用者名稱 第一行中的root就是使用者名稱 第2個字段存放的是該賬號的口令。第3個字段為乙個數字,這個數字代表的使用者識別符號,也稱uid 這裡的0就是root 第4個字段也是數字,表示組識別符號,也稱為gid ...