1. 程式人生 > >2.4-用戶及權限管理

2.4-用戶及權限管理

用戶及權限管理

組創建:groupadd

groupadd [OPTION]... group_name

-g GID:指明GID號[GID_MIN,GID_MAX]

-r:創建系統組

CentOS 6:ID<500

CentOS 7:ID<1000


查看用戶相關的ID信息:id

id [OPTION]... [USER]

-u:UID

-g:GID

-G:groups

-n:name


切換用戶或其他用戶身份執行命令:su

su [OPTION]... [-] [user [args...]]

切換用戶的方式:

su UserName:非登錄式切換,不會讀取目標用戶的配置文件

su - UserName:登錄式切換,會讀取目標用戶的配置文件(完全切換)

Note:root su至其他用戶無須密碼,非root用戶切換時需要密碼

換個身份執行命令:

su [-] UserName -c "COMMAND"

選項:

-l: "su -l UserName"相當於"su - UserName"


用戶屬性修改:

usermod [OPTION] login

-u UID:新UID

-g GID:新基本組

-G GROUP1[,GROUP2,...[GROUPN]]:新附加組,原來的附加組將會被覆蓋,若保留原有,則要同時使用-a選項,表示追加之意

-s SHELL:新的默認SHELL

-c ‘COMMENT‘:新的註釋信息

-d HOME:新的家目錄:原有家目錄中的文件不會同時移動至新的家目錄,若要移動,則同時使用-m選項

-l login_name:

-L:鎖定指定用戶

-U:解鎖指定用戶

-e YYYY-MM-DD:指明用戶帳號過期日期

-f INACTIVE:設定非活動期限


給用戶添加密碼:passwd

passwd UserName:修改指定用戶的密碼,僅root用戶權限

passwd:修改自己的密碼

常用選項:

-l:鎖定指定用戶

-u:解鎖指定用戶

-n mindays:指定最短使用期限

-x maxdays:指定最大使用期限

-w warndays:提前多少天開始警告

-i inactivedays:非活動期限


--stdin:從標準輸入接收用戶密碼

echo "PASSWORD" | passwd --stdin USERNAME

Note:/dev/null,(bit buckets:位筒)

/dev/zero,吐泡機

echo "PASSWORD" | passwd --stdin USERNAME &>/dev/null


刪除用戶:userdel

userdel [OPTION]... login

-r:同時刪除指定用戶家目錄


組屬性修改:groupmod

groupmod [OPTION] group_name

-n group_name:新名字

-g GID:新的GID


組刪除:groupdel

groupdel group_name


組密碼:gpasswd

gpasswd [OPTION] group_name

-a user:將user添加至指定組

-d user:將user刪除出指定組

-A user1,user2,...:設置有管理權限的用戶列表


newgrp命令:臨時切換基本組

如果用戶本不屬於此組,則需要組密碼,否則不用密碼


修改用戶屬性:chage

chage [OPTION] login

-d LAST_DAY

-E, --expiredate EXPIRE_DATE

-I, --inactive INACTIVE

-m, --mindays MIN_DAYS

-M, --maxdays MAX_DAYS

-W, --warndays WARN_DAYS


其他命令:chfn,chsh,finger


命令總結:useradd,usermod,userdel,id,su,groupadd,groupmod,groupdel,newgrp,pwck,passwd,gpasswd,chage,chsh,chfn,finger



權限管理:

文件的權限主要針對三類對象進行定義:

owner:屬主,u

group:屬組,g

other:其它,o

每個文件針對每類訪問者都定義了三種權限:

r:Readable

w:Writable

x:Excutable


文件:

r:可使用文件查看類工具獲取其內容

w:可修改其內容

x:可以把此文件提請內核啟動為一個進程

目錄:

r:可以使用ls查看此目錄中文件列表

w:可在此目錄中創建文件,也可刪除此目錄中的文件

x:可以使用ls -l查看此目錄中文件列表,可以cd進入此目錄


--- 000 0

--x 001 1

-w- 010 2

-wx 011 3

r-- 100 4

r-x 101 5

rw- 110 6

rwx 111 7

例如:

644:rw-r--r--

rwxr-xr-x:755


修改文件權限:chmod

chmod [OPTION]... OCTAL-MODE FILE...

-R:遞歸修權限

chmod [OPTION]... MODE[,MODE]... FILE...

MODE:

修改一類用戶的所有權限

u=,g=,o=,ug=,a=,u=,g=

修改一類用戶某位或某些位權限

u+,u-,g+,g-,o+,o-

chmod [OPTION]... --reference=RFILE FILE...

參考RFILE文件的權限,將FILE的權限修改為同RFILE的權限


修改文件的屬主和屬組:僅root可用

修改文件的屬主:chown

chown [OPTION]... [OWNER][:[GROUP]] FILE...

用法:

OWNER

OWNER:GROUP

:GROUP

Note:命令中的冒號可用.替換:

-R:遞歸修改

chown [OPTION]... --reference=RFILE FILE...

參考RFILE文件的屬主,將FILE的屬主修改為同RFILE的屬主

修改文件的屬組:chgrp

chgrp [OPTION]... GROUP FILE...

-R

chgrp [OPTION]... --reference=RFILE FILE...


文件或目錄創建時的遮罩碼:umask

FILE:666-umask

Note:如果某類用戶的權限減得的結果中存在x權限,則將其權限+1

DIR:777-umask

umask:查看

umask #:設定umask為#

2.4-用戶及權限管理