因?yàn)橐诮M內(nèi)進(jìn)行Linux基礎(chǔ)培訓(xùn),所以就得給他們每人都創(chuàng)建一個(gè)使用賬號(hào). 雖然我可以一個(gè)個(gè)手動(dòng)創(chuàng)建,但是這和程序員優(yōu)秀的品質(zhì)“懶”相悖。因此在這里記錄我學(xué)習(xí)批量用戶(hù)增加和刪除的操作過(guò)程
回憶一下單個(gè)用戶(hù)操作管理命令是useradd, userdel,用法很簡(jiǎn)單,就是useradd zs即可,至于創(chuàng)建用戶(hù)家目錄文件夾和設(shè)置密碼,則需要增加很多的參數(shù)。
批量管理用戶(hù)命令是newusers, 他的輸入文件格式如下
用戶(hù)名:用戶(hù)密碼:用戶(hù)的UID:用戶(hù)的組ID:用戶(hù)說(shuō)明:用戶(hù)家目錄:用戶(hù)默認(rèn)的shell
這個(gè)文件和/etc/passwd文件格式一樣,除了這里的密碼是明文存放,因此一定要小心保管。
先試試創(chuàng)建兩個(gè)用戶(hù), 例如Tom和Jerry,,在此之前先創(chuàng)建一個(gè)用戶(hù)組groupadd -g 1024 test
vim users.txt
# 增加如下內(nèi)容
Tom:Tom123:1010:1024::/home/Tom:/bin/bash
Jerry:Jerry123:1011:1024::/home/Jerry:/bin/bash
之后便可以
chmod 0600 users.txt
newuesrs users.txt
最后可以在/etc/passwd里面查找是否增加了用戶(hù)
grep -E "1024" /etc/passwd
# 結(jié)果如下
Tom:x:1010:1024::/home/Tom:/bin/bash
Jerry:x:1011:1024::/home/Jerry:/bin/bash
下一個(gè)問(wèn)題,如何給這些用戶(hù)增加一定的期限呢,比如說(shuō)一個(gè)月后刪除用戶(hù). 其實(shí)不難,相對(duì)簡(jiǎn)單,從users.txt里面解析出用戶(hù)名,后面循環(huán)操作即可, 只不過(guò)你要學(xué)習(xí)一個(gè)新的命令 usermod。
cut -d ':' -f 1 users.txt | xargs -i usermod -e "Apr 30,2019" {}
用chage檢查
chage -l Tom
# 結(jié)果如下
Last password change : Apr 11, 2019
Password expires : never
Password inactive : never
Account expires : Apr 30, 2019
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
接下來(lái)一個(gè)問(wèn)題就是,應(yīng)該如何批量刪除用戶(hù)呢? 批量用userdel即可
cut -d ':' -f 1 users.txt | xargs -i userdel {}