linux基礎之使用者和使用者組管理

2021-10-03 15:24:05 字數 4570 閱讀 4230

1.1使用者資訊檔案/etc/passwd

檢視配置檔案幫助: man 5 [檔名]

例如:man 5 passwd

name:password:uid:gid:gecos:directory:shell #passwd配置檔案的格式,以:為分割符的7個字段

root:x:0:0:root:/root:/bin/bash #真實的passwd配置檔案

1.name:使用者名稱

2.password:密碼標識一般為x,代表有密碼,且以加密方式存放在/etc/shadow

3.uid:使用者id,0代表超級使用者,1-499代表系統使用者,500-65535代表普通使用者,修改其他使用者的uid可以讓其變成超級使用者

4.gid:使用者初始組id

5.gecos:使用者說明

6.directory:家目錄,超級使用者/root 普通使用者/home/使用者名稱

7.shell:登入之後的shell

1.2影子檔案/etc/shadow

#真實配置檔案root:$6$2vrbarbasdcmtm1z$2lqnibrlafi3xcx3h2jdpkcvtwwelzg/shzgirckyw.j5ucyle5kd/doaol5ftugxuminihvtbabkkujwy8uw/::0:99999:7:::

1.使用者名稱

2.加密密碼,sha512雜湊加密演算法,密碼位是!!或者*代表沒有密碼不能登入

3.密碼最後一次修改時間,以2023年1月1作為標準時間,每過一天時間戳加一

4.兩次密碼的修改時間間隔

5.密碼有效期

6密碼修改到期前的警告天數

7.密碼過期後的寬限天數,0或空白代表密碼過期後立即失效,-1代表密碼永遠不會失效

8.賬號失效時間,用時間戳表示,無視5

9.保留

1.3組資訊檔案/etc/group

#和windows不同的是每新增乙個使用者會生成和乙個使用者名字相同的組

#格式 group_name:password:gid:user_list

#真實配置檔案 root:x:0:

1.group_name 組名

2.password 組密碼標識

3.gid

4.user_list 組中附加使用者

1.4組密碼檔案/etc/gshadow

#真實配置檔案 root:::

1.組名

2.組密碼

3.組管理員使用者名稱

4.組中附加使用者

2.1.使用者的家目錄 普通使用者/home/使用者名稱,所有者和所屬組都是此使用者,許可權700 超級使用者 /root/,所有者和所屬組都是root使用者,許可權550

2.2.使用者的郵箱 /var/spool/mail/使用者名稱/

2.3.使用者模板目錄 /etc/skel,在當前目錄建立檔案,其他新建使用者的家目錄會自動生成這個檔案,例如:root對其他使用者的通知

3.1新增使用者 useradd

語法: useradd [-u-d-c-g-g-s] 使用者名稱

-u uid:手工指定使用者的id號

-d 家目錄:手動指定使用者的家目錄

-c 使用者說明 :手工指定使用者的說明

-g 組名 : 手工指定使用者的初始組

-g 組名 :指定使用者的附加組,加入多個組可用分隔符,來指定

-s shell 手工指定使用者的登入shell,預設是/bin/bash

例如:useradd sc 缺省會生成4個使用者配置檔案和2個使用者管理檔案

例如: useradd -u 550 -g root,bin -d /home/lamp1 -c "test user" -s /bin/bash sc

建立使用者預設值檔案/etc/default/useradd,/etc/login.defs

# useradd defaults file

group=100 #使用者預設組

home=/home #使用者家目錄

inactive=-1 #密碼過期寬限天數

expire= #密碼失效時間

shell=/bin/bash #預設shell

skel=/etc/skel #模板目錄

create_mail_spool=yes #是否建立郵箱

#etc/login.defs

mail_dir /var/spool/mail

pass_max_days 99999 #密碼有效期

pass_min_days 0 #密碼修改間隔時間

pass_min_len 5 #密碼最小位

pass_warn_age 7 #密碼到期警告

uid_min 1000 #最小和最大uid範圍

uid_max 60000 #最小和最大uid範圍

sys_uid_min 201

sys_uid_max 999

gid_min 1000

gid_max 60000

sys_gid_min 201

sys_gid_max 999

create_home yes

umask 077 #許可權

usergroups_enab yes

encrypt_method sha512 #加密方式

3.2修改密碼 passwd

語法:passwd [-s-l-u--stdin] 使用者名稱

-s 查詢使用者密碼的密碼狀態,root使用者可用

-l 暫時鎖定使用者,root使用者可用,其實是在/etc/shadow中的加密密碼前增加了!!

-u 解鎖使用者,root使用者可用,取消/etc/shadow中的加密密碼前的!!

--stdin 可以用過管道符輸出的資料作為使用者的密碼

例如: [root@miwifi-r3l-srv home]# passwd test #root使用者需要跟使用者名稱

[localhost@miwifi-r3l-srv home]$ passwd #修改自己直接passwd

echo "123" | passwd --stdin test 將123設定為test使用者的密碼

3.3修改使用者資訊usermod

引數等同useradd和passwd,唯一區別乙個是操作新使用者,而usermod是操作已經存在使用者

3.4修改使用者密碼狀態 chage

引數等同於/etc/shadow中的關鍵字段,略過

3.5刪除使用者 userdel

語法: userdel [-r]  使用者名稱

-r 刪除使用者的同時刪除使用者家目錄,等於刪除了4個使用者配置檔案和2個使用者管理檔案

3.6檢視使用者

id 使用者名稱

3.7檢視使用者環境變數

env

3.8使用者切換su

語法: su [- -c] 使用者名稱

- 代表連帶使用者的環境變數一起切換,推薦使用

-c 僅執行一次命令,而不是切換使用者身份

例如: su -root -c "useradd user1" 臨時呼叫root的許可權新增乙個使用者user1

1.新增組

groupadd [-g] 組名

-g gid 指定組id

2.修改組

group [-g-n] 組名

-g gid 修改組id

-n 新組名

例如:group -n newtest test

3.刪除組

groupdel 組名 #刪除前注意組中不能有初始使用者,附加使用者無所謂

4.把使用者新增組或從組中刪除

gpasswd [-a -d] 組名

-a 把使用者加入組

-d 把使用者從組刪除

例如: gpasswd -a test root #把test加入root

gpasswd -d test root #把test從root刪除

Linux之使用者和使用者組管理 使用者組管理命令

linux之使用者和使用者組管理 使用者組管理命令 盡量不要改使用者初始組 一 新增使用者組 root hhh groupadd hhhg 選項 g gid 指定組id 二 修改使用者組 root hhh groupmod 選項 組名 選項 g gid 修改組id n 新組名 修改組名 例子 roo...

Linux 之 使用者 使用者組以及許可權

由於linux是乙個多人多任務的系統,因此經常會出現同一臺機器同時有多個人進行操作,為了考慮每個人的隱私權以及每個人喜好的工作環境,所以檔案的許可權歸屬就至關重要。為了保障系統的安全性和檔案的私隱性,乙個檔案針對不同許可權的賬戶有著不同的許可權,如下圖 如圖所示,檔案許可權是由乙個字串所表示,其所代...

Linux學習筆記(4)之使用者 使用者組及許可權管理

使用者組管理 1 groupadd 使用者組名 eg gruopadd grp1 建立使用者組grp1 2 gruopdel 使用者組名 eg groupdel grp1 刪除使用者組grp1 使用者管理 1 useradd 選項 使用者名稱 eg useradd usr1 建立使用者usr1 us...