Linuxでパスワードを忘れてログインできなくなった時、どうすればいいでしょうか。そのコンピュータがそばにあり、直接操作できれば(sshなどでのアクセスでなければ)問題を解決できます。ここでは、Ubuntu 20.04の場合を解説していきますが、他のディストリビューションでも同様に解決できると思います。

最初にコンピュータをリブートします。すると次の画面のようなGrubメニューが表示されます。

grub menue

このメニューが消えないうちにEキーを押します。すると次の画面が表示されます。

Edit

下から2行目の先頭がlinuxの行の最後にカーソルを移動し、

init=/bin/bash

を入力します(次の画面)。

F10またはCtrl+xを押します。するとブートプロセスが始まり、シングルユーザーモード(rootでログインされた状態)になり、#のプロンプトで止まります。

rootでログインされた状態なので、あらゆる操作が可能ですが、/ファイルシステムはリードオンリーでマウントされていますので、全てのファイルの書き込みができません。ファイルの内容を表示したりすることはできますが、パスワードを変更したりすることはできません。そこで、

mount -o rw,remount /

を実行して/ファイルシステムを書き込み可能にします。

rootのパスワードの設定や変更をしたい場合は、

passwd root

コマンドで新しいパスワードを入力します。

シングルユーザーモードを抜け出して通常のモードにするには、

exec /sbin/init

を入力します。