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
,然後再修改用戶密碼。