Linux使用者和使用者組管理

2021-09-16 21:26:33 字數 3816 閱讀 5253

使用者資訊檔案/etc/passwd

影子檔案/etc/group

組資訊檔案/etc/group和組密碼檔案/etc/gshadow

在linux中主要是通過使用者配置檔案來檢視和修改使用者資訊

/etc/passwd

第1欄位:使用者名稱

第2欄位:密碼標誌(有x表示有密碼)

第3欄位:uid(使用者id)

0: 超級使用者

1-499: 系統使用者(偽使用者)

500-65535: 普通使用者

第4欄位:gid(使用者初始組id)

第5欄位:使用者說明

第6欄位:家目錄

普通使用者:/home/使用者名稱/

超級使用者:/root/

第7欄位:登入之後的shell

初始組和附加組

每個使用者都有初始組,並且只有乙個。使用者可以加入其它多個附加組,並擁有這些組的許可權

shell是什麼?

shell就是linux的命令直譯器

在/etc/passwd當中,除了標準shell是/bin/bash外,還可以寫如/sbin/nologin

影子檔案/etc/shadow

第1欄位:使用者名稱

第2欄位:加密密碼

加密演算法公升級為sha512雜湊加密演算法

如果密碼是「!!」或「*」代表沒有密碼,不能登入

第3欄位:密碼最後一次修改日期

使用2023年1月1日作為標準時間,每過一天時間戳加1

第4欄位:兩次密碼的修改間隔時間(和第3欄位相比)

第5欄位:密碼有效期(和第3欄位相比)

第6欄位:密碼修改到期前的警告天數(和第5欄位相比)

第7欄位:密碼過期後的寬限天數(和第5欄位相比)

0: 代表密碼過期後立即失效

-1:代表密碼永遠不會失效

第8欄位:賬號失效時間

要用時間戳表示

第9欄位:保留

時間戳換算

把時間戳換算為日期

date -d 「1970-01-01 16066 days」

把日期換算為時間戳

echo $(($(date --date=」2014/01/06」+%s)/86400+1))組資訊檔案/etc/group和組密碼檔案/etc/gshadow

使用者的家目錄(新增使用者的同時自動生成)

普通使用者:/home/使用者名稱/,所有者和所屬組都是此使用者,許可權是700

超級使用者:/root/,所有者和所屬組都是root使用者,許可權是550

使用者的郵箱

/var/spool/mail/使用者名稱/ (新增使用者的同時自動生成)

使用者模板目錄

/etc/skel/

useradd命令格式

# useradd 【選項】使用者名稱

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

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

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

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

-g: 指定使用者的附加組

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

新增預設使用者

指定選項新增使用者

使用者預設值檔案(以下兩個)

/etc/default/useradd

group=100     使用者預設組

home=/home    使用者家目錄

inactive=-1    密碼過期寬限天數(shadow檔案7欄位)

expire=      密碼失效時間(8欄位)

shell=/bin/bash   預設shell

skel=/etc/skel    模板目錄

creat_mail_spool=yes    是否建立郵箱

/etc/login.defs

pass_max_days 99999 密碼有效期

等等。# passwd 【選項】 使用者名稱

選項:-s查詢使用者密碼的密碼狀態。僅root使用者可用

-l暫時鎖定使用者。僅root使用者可用

-u解鎖使用者。僅root使用者可用

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

使用字串作為使用者的密碼(多用於shell程式設計,批量新增):# echo 「123」 | passwd –stdin user1

修改使用者資訊usermod

# usermod 【選項】 使用者名稱

-l 臨時鎖定使用者(lock)

-u 解鎖使用者鎖定(unlock)

-u -c -g等於useradd裡的選項一樣

修改使用者密碼狀態chage

# chage 【選項】 使用者名稱

-l 列出使用者的詳細密碼狀態

-d 修改密碼最後一次更新日期(shadow3欄位)

-m (4欄位)

-m (5欄位)

-w (6欄位)

-i (7欄位)

-e (8欄位)

# chage -d 0 user1(用的較多的乙個選項)

該命令是把密碼修改日期歸0了(shadow3欄位),這樣使用者一登入就要修改密碼

刪除使用者userdel

# userdel 【-r】 使用者名稱

-r 刪除使用者的同時刪除使用者家目錄

也可通過手工修改以下使用者檔案的方式刪除使用者(但一般都用命令)

# vi /etc/passwd

# vi /etc/shadow

# vi /etc/group

# vi /etc/gshadow

# rm -rf /var/spool/mail/user1

# rm -rf /home/user1檢視使用者id(使用者id,組id等)

# id 使用者名稱切換使用者身份su

# su 【選項】 使用者名稱

-: 選項只使用「-」代表連帶使用者的環境變數一起切換

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

$ su – root -c 「useradd user2」

不切換成root,但是執行useradd命令新增user2使用者

新增使用者組

# groupadd 【選項】 組名

-g: gid 指定組id

修改使用者組

# groupmod 【選項】 組名

-g修改組id

-n修改組名

# groupmod -n testgrp group1(把組名group1修改為testgrp)

刪除使用者組(要刪除組,要求這個組中沒有初始使用者,即這個組不是其他使用者的初始組)

# groupdel 組名把使用者新增入組或從組中刪除

# gpasswd 【選項】 組名

-a使用者名稱:把使用者加入組

-d使用者名稱:把使用者從組中刪除

例:# gpasswd -a user1 root(將user1使用者加入root組)

Linux使用者和使用者組管理

1 linux使用者分為三類 1 root使用者 超級使用者 除登入系統外,可以作業系統任何檔案和命令,擁有最高許可權。2 虛擬使用者 偽使用者或假使用者 不能登入系統,但不可缺少,如bin daemon adm fpt mail。3 普通真實使用者 能登入系統,但只能操作其根目錄的內容,許可權受限...

linux使用者和使用者組管理

檔案內容格式 使用者名稱 密碼標誌 使用者id 初始組id 使用者說明 home目錄 登陸後的shell 使用者id id使用者型別 0root使用者 1 499 系統使用者 偽使用者 500 65535 普通使用者 home目錄 root使用者 root,許可權 550 普通使用者 home 使用...

Linux使用者和使用者組管理

linux系統是乙個多使用者多工的分時作業系統 詳細請看 每個使用者都有乙個使用者組,系統可以對乙個使用者組中的所有使用者進行集中管理。不同linux 系統對使用者組的規定有所不同,如linux下的使用者屬於與它同名的使用者組,這個使用者組在建立使用者時同時建立。使用者組的管理涉及使用者組的新增 刪...