假設我在 /etc/shadow 檔案中有這樣的內容:
root:!!:16087::::::
ftp:!!:14796::::::
在 /etc/passwd 檔案中,如下所示:
ftp:x:40:49:FTP account:/srv/ftp:/sbin/nologin
root:x:0:0:root:/root:/bin/bash
我想將它們分組為:
ftp:!!:14796::::::x:40:49:FTP account:/srv/ftp:/sbin/nologin
root:!!:16087:::::::x:0:0:root:/root:/bin/bash
我上面做了什麼:
我首先從兩個文件中找到命令用戶名,然後將它們連接成一行。另外,我從第二行刪除使用者名稱(因為它已經存在於啟動中,所以不需要兩次)。
簡單的指令是什麼?
答案1
您可以使用該join
實用程式
sudo bash -c 'join -t: <(sort -t: -k1,1 /etc/shadow) <(sort -t: -k1,1 /etc/passwd)'
答案2
您可以使用John The Ripper密碼解密工具中的unshadow工具
為此,您必須先將 John 安裝到您的系統中。
為此,請轉到終端並鍵入以下命令。
sudo apt-get install john
安裝 John 後,使用 unshadow 如下:
sudo unshadow /etc/passwd /etc/shadow > $HOME/pwd.txt
您需要的資料將位於您的主資料夾中名為 pwd.txt 的文字檔案中。