Kali Linux でユーザー名を忘れてしまい、ログインできなくなりました。ユーザー名を表示する方法はありますか?
答え1
ユーザー名は にリストされます/etc/passwd
。
さまざまなシステム ユーザーも含まれているため、かなり長くなります。実際のユーザーは通常、UID 1000 から始まります。UID は:
区切りテーブルの 3 番目の列で、ユーザー名は最初の列です。
しかし、それを見るには、何らかの方法でマシンにログインする必要があります。他のログインと対応するパスワードを知っている場合は、それを使用してそこを確認してください。
ログインできないが再起動できる場合は、次の 2 つのオプションがあります。
- ライブCDから起動する
- パラメータをカーネルに渡します
init=/bin/bash
。これにより、ログインなどせずにルート シェルが取得されますが、システムの初期化も行われません (ただし、/etc/
ルート ファイル システム上にある必要があり、マウントされます)。
答え2
それは本当に奇妙ですね。そんなに複雑だったんですか?
最初に思いついたアイデアは、ハード ディスクをマウントできる場合 (ライブ CD またはアクセス権を持つ別のアカウントを使用)、内部にどのようなサブ フォルダーがあるかを確認することです/home
。理論的には、ユーザーごとに 1 つあるはずです。
これをもう少し詳しく説明すると、おそらく次のようなことが考えられます。
cat /etc/passwd | grep /home
これにより、ホームディレクトリを持つすべてのユーザーのリストが取得されます。
次のような出力が得られます (Raspbian を実行している Raspberry Pi からの例):
pi@raspberrypi ~ $ cat /etc/passwd | grep /home
pi:x:1000:1000:,,,:/home/pi:/bin/bash
ntp:x:102:104::/home/ntp:/bin/false
usbmux:x:105:46:usbmux daemon,,,:/home/usbmux:/bin/false
git:x:1001:1004:,,,:/home/git:/usr/bin/git-shell
ご覧のとおり、アクセスできないシステム アカウントがいくつかあります (ntp
およびusbmux
)。また、実際のユーザー アカウントも 2 つあります (pi
およびgit
)。
したがって、少し拡張するには、false
シェルとして を含むすべての行を削除します。
cat /etc/passwd | grep /home | grep -v /bin/false
私の場合、これによりすべてのユーザー アカウントが返されます (ただし、システムのものがまだ残っている可能性があります)。
pi@raspberrypi ~ $ cat /etc/passwd | grep /home | grep -v /bin/false
pi:x:1000:1000:,,,:/home/pi:/bin/bash
git:x:1001:1004:,,,:/home/git:/usr/bin/git-shell
答え3
root ユーザーのログインを変更していない場合、ログインを求められたら「その他」を選択し、ユーザー名として「root」(引用符なし)、パスワードとして「toor」(引用符なし) を入力すると、/etc/passwd でユーザー名を表示できます。通常のユーザーは UID 1000 から始まります。