略微加速

略速 - 互联网笔记

Linux 修改用户密码

2020-04-30 leiting (1569阅读)

标签 Linux

Linux修改密码用 passwd 命令,用root用户运行passwd ,passwd user_name可以设置或修改任何用户的密码,普通用户运行passwd只能修改它自己的密码。


[root@localhost ~]#  passwd  ##修改root用户密码

Changing password for user root..

New password: ##输入新密码

Retype new password:  ##再次确认新密码

passwd: all authentication tokens updated successfully.


[root@localhost ~]# passwd hadoop  ##修改hadoop用户密码

Changing password for user hadoop.

New password:  ##输入新密码

Retype new password:  ##再次确认新密码

passwd: all authentication tokens updated successfully.


一、passwd 常用参数如下:


-k ##keep-tokens keep non-expired authentication tokens 注:保留即将过期的用户在期满后能仍能使用;

-d ##delete delete the password for the named account (root only) 注:删除用户密码,仅能以root权限操作;

-l ##lock lock the named account (root only) 注:锁住用户无权更改其密码,仅能通过root权限操作;

-u ##unlock unlock the named account (root only) 注:解除锁定;

-f ##force force operation 注:强制操作;仅root权限才能操作;

-x ##maximum=DAYS maximum password lifetime (root only) 注:两次密码修正的最大天数,后面接数字;仅能root权限操作;

-n ##minimum=DAYS minimum password lifetime (root only) 注:两次密码修改的最小天数,后面接数字,仅能root权限操作;

-w ##warning=DAYS 注:在距多少天提醒用户修改密码;仅能root权限操作;

-i ##inactive=DAYS 注:在密码过期后多少天,用户被禁掉,仅能以root操作;

-S ##status report password status on the named account (root only) 注:查询用户的密码状态,仅能root用户操作;

1、例如让某个用户不能修改密码,可以用-l 参数来锁定:


[root@localhost ~]# passwd -l hadoop   ## 注:锁定用户hadoop不能更改密码;

Locking password for user hadoop.

passwd: Success  ##注:锁定成功;

[hadoop@localhost ~]# su - hadoop   ##注:su切换到hadoop用户;

[hadoop@localhost ~]$ passwd  ##注:hadoop用户更改密码;

Changing password for user hadoop.

Changing password for hadoop

(current) UNIX password:   ## 注:输入hadoop的当前密码;

passwd: Authentication token manipulation error  ## 注:失败,不能更改密码;


2、例如清除一个用户的密码 用参数-d,密码清除后登录就无需密码


[root@localhost ~]# passwd -d hadoop  ##注:清除hadoop用户密码;

Removing password for user hadoop.

passwd: Success    ##注:清除成功;

[root@localhost ~]# passwd -S hadoop  ##注:查询hadoop用户密码状态;

Empty password.   ##注:空密码,没有密码


二、密码时效命令:chage ,修改用户密码有效期限;chage 命令格式:chage [-l] [-m 最小天数] [-M 最大天数] [-W 警告] [-I 失效日] [-E 过期日] [-d 最后日] 用户


-m days: 密码可更改的最小天数。为零时代表任何时候都可以更改密码。

-M days: 指定口令有效的最多天数。当该选项指定的天数加上-d选项指定的天数小于当前的日期时,用户在使用该帐号前就必须改变口令。

-d days: 指定从1970年1月1日起,口令被改变的天数。

-I days: 指定口令过期后,帐号被锁前不活跃的天数。如果值为0,帐号在口令过期后就不会被锁。

-E date: 指定帐号被锁的日期。日期格式YYYY-MM-DD。若不用日期,也可以使用自1970年1月1日后经过的天数。

-W days: 指定口令过期前要警告用户的天数。

-l: 列出指定用户当前的口令时效信息,以确定帐号何时过期。

例如设置用户hadoop两天内不能更改口令,并且口令最长的存活期为30天,并且口令过期前5天通知用户的命令:chage -m 2 -M 30 -W 5 hadoop

查看用户hadoop当前的口令时效信息:chage -l hadoop

备注:1.可以用chage user_name进入交互模式修改用户的口令时效;

2.修改口令实质上就是修改口令文件/etc/shadow中与口令时效相关的字段值。


三、passwd 修改密码报错 passwd:Authentication token manipulation error

root用户或者普通用户修改密码失败 ;报的错误 密码:身份验证令牌操作错误;一般是密码文件的权限的问题,或者是该用户锁定不能修改密码,或者是根目录空间满了。

1.首先查看磁盘空间是否满了df -hl,如果满了,查找出占用较大的无用文件清空或删除;常用到命令:


du -lh --max-depth=1 :查看当前目录下各文件大小

du -sh:查看当前目录总的大小

du -sh * | sort -n:统计当前目录下文件大小,并按文件大小排序

du -sk file_name:查看指定的file文件大小

2.可以用lsattr命令查看存放用户和密码的文件属性lsattr /etc/passwd、lsattr /etc/shadow,(i:不得任意更动文件或目录),如果有i选项,则会导致所有的用户都不能修改密码,因为没有权限允许;

可以用chattr命令将i权限撤销 chattr -i /etc/passwd、chattr -i /etc/shadow,然后再修改用户密码。


北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3