13.7 CentOS 7
环境下大量½置账号的方法
系统上面如果有一堆账号存在,你怎么判断某些账号是否存在一些问题?这时需要哪些软件的协助处
理比½好?
另外,如果你跟鸟哥一样,在开学之初或期末之后,经常有需要大量½立账号、删除账
号的需求时,那么是否要使用
useradd
一行一行指令去½立?
此外,如果还有需要使用到下一章会
½绍到的
quota (
磁盘配额
)
时,那是否还要额外使用其他机制来½立这些限制值?既然已经学过
shell script
了,
当然写支½本让它½所有的动作做完最轻松吧!所以啰,底下我们就来聊一聊,如
何检查账号以及½立这个½本要怎么½行比½好?
13.7.1
一些账号相关的检查工具
先来检查看看用户的家目录、密码等数据有没有问题?这时会使用到的主要有
pwck
以及
pwconv /
pwuconv
等,让我们来了½一下先!
.
pwck
pwck
这个指令在检查
/etc/passwd
这个账号配置文件内的信息,与实际的家目录是否存在等信息,
还可以比对
/etc/passwd /etc/shadow
的信息是否一致,另外,如果
/etc/passwd
内的数据字段错误时,
会提示使用者修订。
一般来说,我只是利用这个玩意儿来检查我的输入是否正确就是了。
[root@study ~]#
pwck
user 'ftp': directory '/var/ftp' does not exist
user 'avahi
-
autoipd': directory '/var/lib/avahi
-
autoipd' does not exist
user 'pulse': directory '/var/run/pulse' does not exist
pwck: no changes
瞧!上面½是告知我,这些账号并没有家目录,由于那些账号绝大部分都是系统账号,确实也不需要
家目录的,所以,那是『正常的错误!』呵呵!不理他。
^_^
。
相对应的群组检查可以使用
grpck
这
个指令的啦!
.
pwconv
这个指令主要的目的是在『½
/etc/passwd
内的账号与密码,移动到
/etc/shadow
当中!』
早期的
Unix
系统当中并没有
/etc/shadow
呢,所以,用户的登入密码早期是在
/etc/passwd
的第二栏,后来为了
系统安全,才½密码数据移动到
/etc/shadow
内的。使用
pwconv
后,可以:
.
比对
/etc/passwd
及
/etc/shadow
,若
/etc/passwd
内存在的账号并没有对应的
/etc/shadow
密码时,则
pwconv
会去
/etc/login.defs
取用相关的密码数据,并½立该账号的
/etc/shadow
数据;
.
若
/etc/passwd
内存在加密后的密码数据时,则
pwconv
会½该密码栏移动到
/etc/shadow
内,并½原本的
/etc/passwd
内相对应的密码栏变成
x
!