方法一
1 | echo "123456" | passwd --stdin root |
- 优点:方便快捷
- 缺点:如果你输入的指令能被别人通过history或者其他方式捕获,那么这样的方式是很不安全的,更重要的是如果密码同时含有单引号和双引号,那么则无法通过这种方法修改。
- 说明:
批量修改linux密码 passwd –stdin user 从标准输入中读取密码,所以用户可以在脚本中使用如 echo NewPasswd | passwd –stdin username 这种方式来批量更改密码 但在其它的一些发行版(如Debian/Suse)所提供的passwd并不支持–stdin这个参数
方法二
1) 首先将用户名密码一起写入一个临时文件.
1 | echo "root:123456">/tmp/passwd.txt |
2) 使用如下命令对用户口令进行修改:
1 | chpasswd < chpass.txt |
或者不创建文件
1 | echo "root:123456" | chpasswd |
3) 可以使用 123456 来登录系统,密码修改完毕.
- 优点:可以很快速方便的修改多个用户密码
- 缺点:明文密码写在文件里仍然显得不够安全,但是避免了第一种修改方式不能有特殊字符串密码的情况.