今天我们来给大家介绍下如何快速锁定所有的账户,嘿嘿,首先我们需要列举出在系统上所有的用户名,接着我们需要把他们的账号锁定,记得,之前给大家介绍passwd这个命令的时候,不知道大家还记得没有有个-l的参数可以锁定账户,也就是passwd  -l  user   这样就可以锁定账户user,这样锁定之后,他不能再远程登录了,呵呵,那我们如何来知道系统上所有的用户名呢,用一个awk的简单命令就可以知道系统上所有的用户名,下面看下简单的命令和操作:

   1:  [root@centos6 shell]# awk -F : '{print $1}' /etc/passwd
   2:  root
   3:  bin
   4:  daemon
   5:  adm
   6:  lp
   7:  sync
   8:  shutdown

 

 

呵呵,我们知道了如何列举所有的用户,知道了如何锁定账号的密码,那么我们来试验下写个脚本来实现我们的目标吧

下面看下我写的很简单的一个脚本吧:

   1:  [root@centos6 shell]# vi lock-alluser.sh
   2:  #!/bin/bash
   3:  awk -F : '{print $1}' /etc/passwd > temp.txt
   4:   
   5:  for user in $(cat temp.txt)
   6:  do
   7:          passwd -l $user
   8:          echo $user "has been locked"
   9:  done
  10:   
  11:  rm -rf temp.txt
  12:  ~

 

下面来看看实际的效果吧

 

shell如何快速锁定所有账号_如何

 

 

 

 

    嘿嘿,效果还是不错的吧,你可以这个时候试验下,你再用一个账号远程登录的时候,是否还能够登录呢,答案是必然的吧,我们毕竟只是做个试验而已,我们马上吧账号恢复正常吧,呵呵,很简单,只要在脚本里面改一下参数-l  改成-u就可以了,我们再来看看效果,

 

   1:  [root@centos6 shell]# vi lock-alluser.sh
   2:  #!/bin/bash
   3:  awk -F : '{print $1}' /etc/passwd > temp.txt
   4:   
   5:  for user in $(cat temp.txt)
   6:  do
   7:          passwd -u $user
   8:          echo $user "has been unlocked"
   9:  done
  10:   
  11:  rm -rf temp.txt

 

 

下面看看演示小实际效果吧,呵呵,看截图:

 

shell如何快速锁定所有账号_快速_02

shell如何快速锁定所有账号_账号_03

 

   今天就到这里吧,给大家介绍了如何快速的锁定所有的账号和解锁账号,大家感兴趣的话,可以去实践下。