教你如何在 Linux 中锁定和解锁多个用户

开发 前端
“usermod”和“passwd”命令用于一次锁定或解锁一个用户帐户,但也可以使用shell 循环用于一次设置多个用户账号。

 [[391191]]

我们将创建以下三个Shell脚本来锁定和解锁多个帐户和查看账号状态。

  • 创建锁定用户的脚本
  • 创建查看用户状态的脚本
  • 创建解锁用户的脚本

列出需要锁定或解锁的用户列表,前提是已经创建了下面的用户:

 

  1. [root@localhost ~]# cat user-lists.txt  
  2. u1 
  3. u2 
  4. u3 
  5. u4 
  6. u5 
  7. [root@localhost ~]# tail -5 /etc/passwd 
  8. u1:x:1002:1002::/home/u1:/bin/bash 
  9. u2:x:1003:1003::/home/u2:/bin/bash 
  10. u3:x:1004:1004::/home/u3:/bin/bash 
  11. u4:x:1005:1005::/home/u4:/bin/bash 
  12. u5:x:1006:1006::/home/u5:/bin/bash 

 

脚本一、锁定多个用户的脚本

使用以下Shell脚本在Linux中锁定多个用户帐户。

 

  1. [root@localhost ~]# vim user-lock.sh  
  2.  
  3. #!/bin/bash 
  4. for user in `cat user-lists.txt` 
  5. do 
  6. passwd -l $user 
  7. done 

最后,运行脚本锁定文件中的用户列表。

 

  1. [root@localhost ~]# sh user-lock.sh  
  2. Locking password for user u1. 
  3. passwd: Success 
  4. Locking password for user u2. 
  5. passwd: Success 
  6. Locking password for user u3. 
  7. passwd: Success 
  8. Locking password for user u4. 
  9. passwd: Success 
  10. Locking password for user u5. 
  11. passwd: Success 

 

脚本二、查看用户锁定状态的脚本

使用以下shell脚本来检查锁定的用户帐户的状态:

 

  1. [root@localhost ~]# vim user-lock-status.sh 
  2.  
  3. #!/bin/bash 
  4. for user in `cat user-lists.txt` 
  5. do 
  6. passwd -S $user 
  7. done 

最后运行该脚本,查看用户锁定状态:

  1. [root@localhost ~]# sh user-lock-status.sh  
  2. u1 LK 2021-02-28 0 99999 7 -1 (Password locked.) 
  3. u2 LK 2021-02-28 0 99999 7 -1 (Password locked.) 
  4. u3 LK 2021-02-28 0 99999 7 -1 (Password locked.) 
  5. u4 LK 2021-02-28 0 99999 7 -1 (Password locked.) 
  6. u5 LK 2021-02-28 0 99999 7 -1 (Password locked.) 

 

如果上面的输出在用户名后面显示LK,则表明用户密码已锁定。

脚本三、解锁多个用户的脚本

使用以下Shell脚本来解锁多个用户帐户:

 

  1. [root@localhost ~]# vim user-unlock.sh 
  2.  
  3. #!/bin/bash 
  4. for user in `cat user-lists.txt` 
  5. do 
  6. passwd -u $user 
  7. done 

运行该脚本解锁用户密码:

 

  1. [root@localhost ~]# sh user-unlock.sh  
  2. Unlocking password for user u1. 
  3. passwd: Success 
  4. Unlocking password for user u2. 
  5. passwd: Success 
  6. Unlocking password for user u3. 
  7. passwd: Success 
  8. Unlocking password for user u4. 
  9. passwd: Success 
  10. Unlocking password for user u5. 
  11. passwd: Success 

 

如果以上输出在用户名后面显示PS,则用户密码未锁定。

总结

 

在本教程中,学习了如何使用Shell脚本在Linux中锁定和解锁多个用户帐户。

 

责任编辑:华轩 来源: Linux就该这么学
相关推荐

2022-11-18 15:09:29

2019-07-02 17:34:42

2018-05-04 09:32:32

Linux快速监控rwho

2022-08-19 15:02:10

Linuxsu 命令

2023-10-19 11:27:22

Linux记账工具

2009-07-28 08:39:56

Linux应用软件Linux应用

2016-12-20 09:47:17

Linux命令复制文件到多个目录

2012-03-02 09:02:17

云计算云锁定

2018-09-14 16:18:26

Linux压缩文件应用程序

2022-01-17 13:34:45

MySQLLinux数据库

2018-07-30 09:26:39

Windows 10Windows锁定屏幕

2020-12-15 09:26:20

LinuxVLAN命令

2019-11-18 10:00:05

Linux桌面添加用户

2017-12-06 09:11:48

Linux用户组管理用户

2023-12-14 13:02:00

BashLinuxShell

2020-05-17 16:12:03

Linux终端命令

2020-04-17 08:00:22

Docker命令普通用户

2018-10-30 09:20:00

Linux控制台命令

2022-04-20 10:25:27

Linux用户密码命令

2023-02-18 14:32:02

LinuxSSH用户
点赞
收藏

51CTO技术栈公众号