GRUB構成ファイルのルートの意味

GRUB構成ファイルのルートの意味

引用するここ、次のように構成されています

grub> root (hd0,0)
grub> kernel /vmlinuz-i686-up-4GB root=/dev/hda9
grub> boot

一般的に、上記はLinuxシステムを起動するのに十分です。スタンドアロンrootステートメントは、カーネルを含むパーティションを通知します。このkernelステートメントはパスとファイル名を記述します。カーネルを含むパーティション内、カーネル。ステートメントroot=の引数は、kernel包含パーティション/sbin/init(もちろんブートシステムのルートパーティション)を示します。

これらの競合するキーワードに注意してくださいroot。独立は、カーネルを含む grub に表示されるルートディレクトリです。このkernel問い合わせ引数は、完全に起動したシステムで見られるルートです/sbin/init

root私はこれら2つの構成の意味をよく理解していません。これは、OSが/dev/hda9インストール保留のままであることを意味しますか(hd0, 0)、またはOSが/vmlinuz次の場所にインストールされることを意味しますか/dev/had9

ベストアンサー1

私のシステムは/dev/sda1-3にあります。私のハードディスクの最初のパーティションはブートパーティションを含むsda1です。 sda2にスワップドライブがあります。私のデフォルトのパーティションはsda3にあります。 Sda3 には、ルート "/" ディレクトリと /etc および /usr などのすべてのサブディレクトリが含まれています。

私はGrub.cfgで設定しました。

set root=(hostdisk//dev/sda,gpt1)

これにより、ファイルシステムが準備される前に、ブートローダがカーネルファイルを見つけることができます。技術的にsda1を起動しています。

カーネルがfstabにドライブをロードしてマウントすると、ルート "/"自体はsda3にありますが、/ boot(ブートファイル)はsda1にマウントされます。

linux /kernel-genkernel-x86_64-4.9.144-3 root=/dev/sda3 real_root=/dev/sda3 rootfstype=ext4
initrd /early_ucode.cpio /initramfs-genkernel-x86_64-4.9.144-3

したがって、システムがsda1のファイルから起動しても、ルートディレクトリ"/"は実際にsda3にあります。

おすすめ記事