CentOSイメージを手動でインストールする方法は?

CentOSイメージを手動でインストールする方法は?

私のプロジェクトをCentOS 6からCentOS 7に移行し、CentOS 7で導入されたブート要件の変更、特にgrubからgrub2へのアップグレードを処理する必要があります。質問の要旨はこんな感じです。

CentOS 6ベースのタスクでは、ハードドライブを別々のパーティションに分割し、それぞれがvirt-installを介してインストールされた仮想マシンをホストしました。 VMをホストするパーティションに直接抽出された事前生成されたCentOS 6イメージを使用して、virt-installの--importオプションを使用できました。各仮想マシンのパーティションは、ブートパーティション、スワップパーティション、およびルートファイルシステムパーティションにさらに分けられます。 device.map grub.confファイルを手動で作成し、必要なgrubインストールコマンドを実行してVMを起動可能にしました。

CentOS 7では状況が若干変わりました。 grub2がGPTドライブにインストールされると、追加の「bios_grub」パーティションが必要です。私のVMパーティションは、CentOS 6.6では3つではなく4つのパーティションに細分化されています。たとえば、/dev/sda4の下にVMをインストールすると、partedは次のように表示します。

    # parted -s /dev/sda4 print
    Model: Unknown (unknown)
    Disk /dev/sda4: 75.2GB
    Sector size (logical/physical): 512B/4096B
    Partition Table: gpt
    Disk Flags:

    Number Start End Size File system Name Flags
    1 1049kB 2097kB 1049kB primary bios_grub
    2 2097kB 136MB 134MB ext3 primary boot
    3 136MB 153MB 16.8MB linux-swap(v1) primary
    4 153MB 75.2GB 75.0GB ext4 primary

問題は、私が作成した仮想マシンを起動できないことです。さて、VMが起動しましたが、すぐに中断されました。エラーはなく、virshは実行中であることを示しますが、BIOSからgrubへの転送は発生しません。 grubをインストールするために実行したコマンドは次のとおりです(VMが/ dev / sda4にインストールされていると仮定)。

    # chroot /mnt/rootfs/grub2-install --force /dev/sda4
    Installing for i386-pc platform.
    Installation finished. No error reported.

    # chroot /mnt/rootfs grub2-mkconfig -o /boot/grub2/grub.cfg
    Generating grub configuration file ...
    Found linux image: /boot/vmlinuz-3.10.0-229.el7.x86_64
    Found initrd image: /boot/initramfs-3.10.0-229.el7.x86_64.img
    done

VM 生成コマンドは次のとおりです。

    # virt-install --connect=qemu:///system --network bridge=br0,mac=RANDOM,model=virtio --name=vm1 --disk path=/dev/sda4,bus=virtio --force --vcpus=1 --ram=1024 --check-cpu --accelerate --hvm --nographics --noreboot --import

    Starting install...
    Creating domain...
    Domain creation completed. You can restart your domain by running:
    virsh --connect qemu:///system start vm1

残念ながら、私が言ったように、仮想マシンは起動しますが、すぐに中断されます。 BIOSはCentOSを起動するためにgrubに変換しません。 CentOS 6でも同じ基本的な方法が機能するため、ここではgrub2のインストール方法に関連するいくつかの重要な手順がありません。もしこのような経験があった方やアドバイスをいただける方、ありがとうございます。

ピーター

ベストアンサー1

おすすめ記事