VirtualBox + CentOS 7 で root のパスワードがわからない時の対処法

はじめに

実務にて、検証環境(VirtualBox + CentOS 7)で設定している root ユーザー(管理者権限)のパスワードが誰もわからない問題が発生、それを解決した情報になります。

環境

解説

結論から言うと、GRUB 2Single-user mode(シングルユーザーモード)を起動して root ユーザーのパスワードを変更します。

GRUB とは ブートローダー のことです。ブートローダーとは BIOS(Basic Input/Output System)が 補助記憶装置 から呼び出す OS(Operating System)を動かすプログラムのことです。

1. 仮想マシンを起動します。

2. 起動後に表示される GRUB 2 メニューで e キーを押下して設定ファイル(/boot/grub2/grub.cfg)を開きます。

3. 設定ファイルの内容が出力されます。

4. キーを入力して下方にカーソルを移動させて、行頭で linux16 /vmlinuz-... と書かれた行を探します。

5. 行末に rw init=/bin/sh と書き加えます、=^ キーを押下すると入力できます。

6. Bourne Shell で文字化けが発生しないように LANG=ja_JP.UTF-8 を削除します。

7. control + x キーを押下してシングルユーザーモードを起動します。

8. passwd コマンドを実行してパスワードを再設定します。

passwd

9.  exec コマンドで /sbin/init をオーバーレイします、処理が終わるまで待ちましょう。

exec /sbin/init

10. 正しくパスワード再設定ができているか root ユーザーでログインします。

以上です。

おわりに

root ユーザーのパスワードを関係者の誰も知らないってあるあるなので対処法を知っていると良いです。