Rootユーザーのパスワードをリセットする方法はいくつか知っていますが、どちらが最適で、なぜそうなのかを知りたいです。例えば:
方法:
init=/bin/sh
(必要に応じてrhgb
およびquiet
タグを削除します)> ctrl+x/usr/sbin/load_policy -i
mount -o remount,rw /
passwd root
またはpasswd
mount -o remount,ro /
Bメソッド:
rd.break
> ctrl+xmount -o remount,rw /sysroot/
chroot /sysroot/
passwd root
またはpasswd
touch /.autorelabel
どちらがベストか?なぜそれが一番良いのですか? RHCSA(Red Hat Certified System Admin)試験の準備をしています。それぞれのアプローチの相対的なメリットを知る必要があります。それらの1つはよりポータブルですか?安全ですか?どちらか一方を選択する理由はありますか?
最良の方法は、Red Hat documentation に示されている方法だと思います。
これは2番目の方法です。 GRUB2/RHEL7の場合、コマンドプロンプトを表示する前にsulogin
を使用して認証するため、シングル/緊急モードは機能しません。
それでは、さまざまなメソッドをマークしてみましょう。
RHEL5、RHEL6の場合、1
、s
またはinit=/bin/bash
をカーネルのコマンドラインに追加します
RHEL 7の場合、カーネルコマンドラインにrd.break
またはinit=/bin/bash
を追加します
2つ目の方法はRHEL5およびRHEL6では使用できないようです。ただし、RHEL7の場合は、シングルモードがパスワードで保護されている場合にinit =/bin/bashを追加するのが少し難しいので、最初の方を優先します。
「rd.break」の「rd」の部分は、ramdisk(初期のramdisk(initrd)環境)を指します。
2番目の方法(rd.breakを使用)は、RHEL7に適しています。一部のシステム(USBキーボードまたはVMを使用)は、再起動しても実際にはパスワードを設定していないようです。おそらく、それはramdisk内の/ etc/shadowのパスワードを設定するだけであり、予想していたものではありません。
それがUSBキーボードとどう関係しているのかはわかりませんが、それがナレッジベースの登場によるもので、これまでの私の経験はそうです。これはルートファイルシステムがLVM上にあるかどうかに関係していると私は思っています(ヒント:dracut)