1、配置檔案(/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow):
#whatis passwd
#man 5 passwd(配置檔案中各字段表示的内容)
account登入名:password密碼:UID:GID基本組ID:GECOS注釋comment:home directory:shell使用者的預設shell
#man 5 shadow
account:encrypted passwd加密的密碼:date of lastpassword change:minimum password age:maximum password age:password warningperiod:password inactivity period:account expiration date:reserved field
/etc/skel(模闆檔案目錄,skeleton骨骼,骨架,包括:.bashrc,.bash_logout,.bash_profile)
/etc/default/useradd(指定建立使用者時的某些預設值)
/etc/login.defs(指定建立使用者時的某些預設值)
2、使用者類别:
管理者:用0表示;
普通使用者(1-65535):系統使用者(1-499);一般使用者(500-65535)
使用者組類别:
管理者組;
普通組:系統組;一般組
注:私有組,建立使用者時如果沒有為其指定所屬的組,系統會自動為其建立一個與使用者名同名的組作為私有組或初始組;基本組,使用者的預設組;附加組,額外組,預設組以外的其它組。
3、指令:
使用者管理指令: useradd,userdel,usermod,id,passwd,chsh,chfn,chage
組管理指令:groupadd,groupdel,groupmod,gpasswd,newgrp
#useradd options USERNAME
options:
-u UID(--uid,UID,添加使用者時UID預設從最後一個添加的使用者ID号加1,無論中間是否有未被使用的号)
-g GID(--gid,GID基本組,初始組)
-G GID(--groups,GID附加組)
-d /PATH/TO/SOMEDIRECTORY(--home,/path/to/somedirectory指定預設家目錄)
-s SHELL(--shell,SHELLPATH,/etc/shells檔案中指定了目前系統可用的安全shell,若使用者的shell不可用則無法切換,檢視目前使用者shell:#echo $SHELL)
-m -k(--create-home,--skel,強制建立家目錄并将模闆目錄下的檔案複制到建立的家目錄中)
-M(不建立家目錄,但會應用配置檔案/etc/login.defs中的各項值)
#userdel options USERNAME
#userdel -r USERNAME(-r同時删除使用者家目錄及郵件目錄/var/spool/mail)
#id options USERNAME
-u(--user顯示的是UID)
-g(--group,GID)
-u|-g -n(--name,與-u或-g合用,顯示名稱)
#usermod options USERNAME
-u UID(--uid)
-g GID(--gid)
-a -G GID(--apend添加使用者至一附加組,必須要與-G合用,否則會覆寫此前的附加組)
-c “.....”(--comment,注釋資訊)
-d HOME_DIR -m(--home,--move-home,既指定新的家目錄位置,又移動此前家目錄下的檔案到新指定的目錄下)
-s SHELL(--shell)
-l NEW_LOGIN(--login,改變登入的使用者名)
-L(--lock鎖定賬号)
-U(--unlock解鎖)
#passwd (更改目前使用者密碼,RHS333加密機制)
#passwd options USERNAME(更改指定使用者密碼,僅管理者使用)
--stdin(用于标準輸入,如#echo “redhat” | passwd --stdin USERNAME)
-d(用于清空密碼,預設禁止空密碼登陸)
-l(鎖定賬号)
-u(解鎖)
#chsh USERNAME(change your login shell修改使用者的預設SHELL)
#chfn USERNAME(change your finger information修改注釋資訊)
#pwck(verify integrity ofpassword files檢查使用者賬号完整性)
#chage options USERNAME
-d LAST_DAY(--lastday最近一次的修改時間)
-E EXPIRE_DATE(--expiredate過期時間)
-I INACTIVE(--inactive非活動時間)
-m MIN_DAYS(--mindays最短使用期限)
-M MAX_DAYS(--maxdays最長使用期限)
-W WARN_DAYS(--warndays警告時間)
#groupadd options GROUPNAME
-r (--system,添加為系統組)
#groupmod options GROUPNAME
-n NEW_GROUPNAME(--new-name,更改組名)
#groupdel GROUPNAME
#gpasswd GROUPNAME(為組設密碼)
#newgrp GROUPNAME(從基本組臨時切換到其它組,可退出)
#su [-l] USER(switch user)
#su user1(半切換)
#exit
#su -l user1(完全切換,使用-l(--login)或-均可)
以上是學習《馬哥網絡視訊》做的筆記。
一、相關檔案
》/etc/passwd 使用者資訊檔案
root:x:0:0:root:/root:bin/bash(以下依次為第1到第7字段)
1、使用者名
2、密碼标記
3、uid:超級使用者root的uid為0,普通使用者要更新為管理者,uid改為0即可(不建議建立多個管理者賬号;1-499系統使用者uid(僞使用者),不能登入系統,用來運作系統或服務的,其中1-99是系統保留的賬号,自動建立,100-499是預留給使用者建立系統賬号的;500-65535普通使用者的uid,2.6核心之後uid可支援232
4、gid:如果不指定使用者所屬的初始組,那麼會建立和使用者名相同的組
5、使用者說明
6、使用者家目錄
7、登入shell
》/etc/shadow 影子檔案
root:密碼位:15775:0:99999:7: : : (以下依次為第1到第9字段)
2、加密密碼:可在密碼前人為加入“!”或“*”讓密碼暫時失效,使這個使用者無法登入;所有僞使用者密碼都是“!!”或“*”代表沒有密碼不能登入,新建立的使用者不設密碼也是“!!”
3、密碼最近更改時間:用時間戳顯示,以1970-01-01作為标準時間
時間戳轉日期:#date -d “1970-01-01 15775 days”
日期轉時間戳:#echo $(($(date --date=”2015/04/28” +%S)/86400 +1))
4、兩次密碼的修改間隔時間(與3相比)
5、密碼有效期(與3相比)
6、密碼修改到期前的警告天數(和5相比)
7、密碼過期後的寬限天數(和5相比)
8、密碼失效時間,用時間戳表示
9、保留
》/etc/group 組資訊檔案
root:x:0:root
1、組名
2、組密碼位
3、GID
4、此組中支援其它使用者,附加組是此組的使用者
》/etc/gshadow 組密碼檔案
如果給使用者組設定了組管理者,并給該使用者組設定了組密碼,組密碼就儲存在這個檔案中,且管理者可利用這個密碼管理這個使用者組
》使用者的家目錄
》使用者郵箱目錄 /var/spool/mail
》使用者模闆目錄 /etc/skel
》手工删除使用者,需處理以下檔案
/etc/passwd ;/etc/shadow; /etc/group;/etc/gshadow;/home/user;/var/spool/mail/user
》useradd的預設值與/etc/default/useradd和/etc/login.defs有關
二、使用者管理指令
#useradd 使用者名 (常用)
#useradd -u|-g|-G|-c|-d|-s 使用者名
#userdel -r 使用者名 (删除使用者,連帶家目錄一并删除)
#passwd -l|-u 使用者名 (#passwd回車修改目前使用者密碼,#passwd 使用者名,隻有root用,-l(lock),-u(unlock))
#usermod -u|-G|-c|-d|-s|-L|-U 使用者名(修改已存在的使用者資訊)
#usermod -l 新名 舊名 (使用者改名)
#groupadd 組名
#groupdel 組名
#usermod -G 組名 使用者名 (已存在的使用者加入組,注意以下幾條指令的差別)
#gpasswd -a 使用者名 組名
#gpasswd -d 使用者名 組名
三、使用者相關指令
#id 使用者名 (顯示使用者的UID初始組、附加組)
#su - 使用者名 (切換使用者身份,連帶環境變量一直切換)
#newgrp group1 (改變有效組的指令,有效組,建立新檔案時的預設屬組)
四、使用者權限賦予
#groupadd testgroup
#gpasswd -a aa testgroup
#chmod 770 /test
#chgrp testgroup /test
本文轉自 chaijowin 51CTO部落格,原文連結:http://blog.51cto.com/jowin/1641469,如需轉載請自行聯系原作者