Command-Line
如何檢索有關鎖定帳戶的資訊
是否可以檢索有關鎖定的 unix 帳戶的資訊?我有興趣查看有關鎖定發生的日期和時間以及來自哪個主機名(PC 名稱)的資訊。我想看到類似於
who
命令的東西。
我不相信這些資訊會保存在任何地方。他們唯一的地方是您可以從
sudo
命令日誌中獲取一些此類資訊,假設您正在使用sudo
並且您的sudo
設置授予權限以便您登錄單個命令,例如 passwd。我以前用過這個命令來顯示哪些帳戶被鎖定,即“LK”。
$ cat /etc/passwd | cut -d : -f 1 | awk '{ system("passwd -S " $0) }' root PS 2010-12-18 0 99999 7 -1 (Password set, SHA512 crypt.) ftp LK 2010-11-11 0 99999 7 -1 (Alternate authentication scheme in use.) nobody LK 2010-11-11 0 99999 7 -1 (Alternate authentication scheme in use.) usbmuxd LK 2010-12-18 0 99999 7 -1 (Password locked.) avahi-autoipd LK 2010-12-18 0 99999 7 -1 (Password locked.) dbus LK 2010-12-18 0 99999 7 -1 (Password locked.) ntop LK 2011-05-22 0 99999 7 -1 (Password locked.) nginx LK 2011-08-19 0 99999 7 -1 (Password locked.) postgres LK 2012-06-26 0 99999 7 -1 (Password locked.) fsniper LK 2012-06-26 0 99999 7 -1 (Password locked.) clamupdate LK 2012-08-31 0 99999 7 -1 (Password locked.)
替代方法
感謝評論中的@RahulPatil,這是一個更簡潔的方法:
$ awk -F: '{ system("passwd -S " $1) }' /etc/passwd root PS 2007-06-20 0 99999 7 -1 (Password set, MD5 crypt.) bin LK 2007-06-20 0 99999 7 -1 (Alternate authentication scheme in use.) daemon LK 2007-06-20 0 99999 7 -1 (Alternate authentication scheme in use.) adm LK 2007-06-20 0 99999 7 -1 (Alternate authentication scheme in use.)