自分が構築に全く関わっていないシステムを引き継いだ経験は誰にでもあるでしょう。システム管理者であれば、あるシステムで作業をする必要があるのに何らかの理由で root パスワードがないという事態に遭遇するかもしれません。そしてそもそもそんな日は最悪のタイミング、つまり「今すぐに」アクセスが必要というときにやってくることが多いのです。
root パスワードの回復は難しく、面倒な作業のように思えるかもしれませんが、実際はそうではありません。RHEL/CentOS バージョン 7 以降のシステムでは、GRUB ブートローダーのおかげでとても簡単です。
- まずは、やかんでお湯を沸かしましょう (これは任意ですが、おすすめします)。
- はじめに、コンソールにアクセスする必要があります。ローカルのキーボードとモニターで、または仮想マシンのリモートコンソール経由で、ブートローダーを表示して操作する必要があります。
- マシンを再起動します。ブートローダーの選択画面が表示されたら、すぐに上下の矢印キーを押してカウントダウンを停止します。
- 起動したいカーネルを選択し、「
e」を押します。GRUB ブートローダーのスクリプトを編集できる画面が表示されます。 - カーネルを参照する行を探します。ここに「boot parameters」という一連の文字列が表示されます。これらはカーネルのロード中に渡される指示です。
- RHEL/CentOS 7 の場合、この行は「linux16」で始まります。
- RHEL/Centos 8x および Fedora の場合、行は「
linux」で始まります。
- その行の末尾に「rd.break」を追加します (ここで他の作業をすることもできますが、現時点で必要なのはこれだけです) [ 注:この変更は一時的なものです ]。
Ctrl-xを押して、編集したブートローダーのスクリプトを実行します。- 「rescue」プロンプトが起動します。表示は
switch_root:/#のようになります。 - コマンドを実行できるように、root パーティションを読み取り/書き込みモードで再マウントします。
mount -o remount,rw /sysrootと入力して ENTER を押します。 chroot /sysrootと入力し、ENTER を押します。これにより、sysroot (/)ディレクトリに移動し、コマンドを実行するためのパスが作成されます。- これで、
passwdコマンドを使って root のパスワードを変更できます。 - 次に、再起動する前に、SELinux がファイル変更を許可するように設定する必要があります。プロンプトで
touch /.autorelabelと入力します。これで SELinux は次の再起動時にファイルシステムが変更されたこと (変更されたパスワード) を認識し、変更内容を読み込みます。これによってファイルシステム全体が「再ラベル付け」されます。ファイルシステムのサイズやマシンのスピードによってはこの処理に時間がかかる場合があるため、ご注意ください。 exitと入力して chroot 環境を終了し、rebootと入力します。- さあ、頑張ったごほうびにお茶を一杯飲んで一息つきましょう。お湯が沸いているはずです。(これは任意ですが、手順 1 を完了した方にはぜひおすすめします。)
たったのこれだけです。 このシステムに root パスワードでアクセスできるはずです。
Red Hat Enterprise Linux を試してみませんか?ダウンロードは無料です。
執筆者紹介
Glen Newell has been solving problems with technology for 20 years. As a Systems Engineer and administrator, he’s built and managed servers for Web Services, Healthcare, Finance, Education, and a wide variety of enterprise applications. He’s been working with and promoting open source technologies and methods for his entire career and loves to share what he learns and help people understand technology.
類似検索
More than meets the eye: Behind the scenes of Red Hat Enterprise Linux 10 (Part 4)
RPM and DNF features and enhancements in Red Hat Enterprise Linux 10.1
The Overlooked Operating System | Compiler: Stack/Unstuck
Linux, Shadowman, And Open Source Spirit | Compiler
チャンネル別に見る
自動化
テクノロジー、チームおよび環境に関する IT 自動化の最新情報
AI (人工知能)
お客様が AI ワークロードをどこでも自由に実行することを可能にするプラットフォームについてのアップデート
オープン・ハイブリッドクラウド
ハイブリッドクラウドで柔軟に未来を築く方法をご確認ください。
セキュリティ
環境やテクノロジー全体に及ぶリスクを軽減する方法に関する最新情報
エッジコンピューティング
エッジでの運用を単純化するプラットフォームのアップデート
インフラストラクチャ
世界有数のエンタープライズ向け Linux プラットフォームの最新情報
アプリケーション
アプリケーションの最も困難な課題に対する Red Hat ソリューションの詳細
仮想化
オンプレミスまたは複数クラウドでのワークロードに対応するエンタープライズ仮想化の将来についてご覧ください