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) 注:查詢用戶的密碼狀態(tài),僅能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用戶密碼狀態(tài);
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 :統(tǒng)計當前目錄下文件大小,并按文件大小排序
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 ,然后再修改用戶密碼。
|