1、当前用户是root
root用户修改密码 ,直接 passwd【不要输入当前用户密码】
如果修改其他用户密码,需要 passwd 用户名 如: passwd sc
短短的密码,如123也能通过,因为是超级用户。
2、当前用户是 user,如sc
修改当前用户密码 passwd 【需要重新输入当前用户密码】
而且密码过于简单也不能通过,如123。
passwd root 错误,不能修改root 密码。passwd: Only root can specify a user name.
-----------------------------------------------------------------------------
一、passwd 修改成功了,那哪些文件发生了改变呢?
1、发现之前的两个感叹号不见了 cat /etc/shadow
sc:$6$Z5Qkmr1B$rvFQWY2.wS3ESyy1.U0i1UgOH/KJQMQ5IHPQVihylL3EVdkyYWqAna9krdCsrXD957w6kOywbesFPpMXSaX6S0:16525:0:99999:7:::
还有哪些文件呢(待定)
二、passwd的一些选项 man passwd一下
1、锁定用户 passwd -l sc【用户没有下线】,重新登陆,密码验证失败 【cat /etc/shadow其实是这个文件里面,最后一行加入了一个感叹号】
sc:!!$6$Z5Qkmr1B$rvFQWY2.wS3ESyy1.U0i1UgOH/KJQMQ5IHPQVihylL3EVdkyYWqAna9krdCsrXD957w6kOywbesFPpMXSaX6S0:16525:0:99999:7:::
加入了两个感叹号
2、解锁用户 passwd -u sc
3、添加密码 echo '654321' | passwd --stdin sc【利用管道添加密码,有利于shell脚本自动添加用户名和用户密码】
/etc/passwd 和/etc/group
具体的字段参考见
1、cat /etc/passwd
[这里是看不出是否设置了密码]
1)username UID到名称的一种映射,用户名
2)password 保存密码的位置,现在保存在/etc/shadow 中
3)UID 用户ID
4)GID 主组ID
5)GECOS 字段存储任意文本,用户注释
6)/home/dir 用户的家目录
7)shell 用户登入后使用的shell名称
2、 cat /etc/group
第一字段:用户组名称;
第二字段:用户组密码;第三字段:GID第四字段:用户列表,每个用户之间用,号分割;本字段可以为空;如果字段为空表示用户组为GID的用户名;3、cat /etc/shadow
【是否设置了密码,在这里看,!!就是没有密码的】
1)用户名
2)加密的密码
3)上次更改密码的日期(从1970-1-1开始)
4)最短密码期限(按天计算,0 = 无最短期限)
5)最长密码期限(按天计算)
6)密码警告期限(按天计算,0 = 未指定警告)
7)密码非活动期限(按天计算)
8)账号到期时间(从1970-1-1开始)
9)保留域
grep如何筛选两行呢