web-dev-qa-db-ja.com

Ubuntu 1804(MBR / GPT)qcow2イメージを物理パーティション(GPT)に移行する

Ubuntu Mate 1804をqcow2イメージから物理パーティションに移行することはできますか?私のアプローチは

$ Sudo apt install libguestfs-tools 
$ Sudo guestmount -a /media/user/images/mate1804.qcow2 -m /dev/sda1 /mnt 

そして、物理パーティションを別のマウントポイント(/tmp/test)このように、/ mntディレクトリ全体をその物理マウントポイントにコピーしました

$ Sudo cp -p -R /mnt/* /tmp/test/
$ Sudo update-grub

しかし、mate1804を起動しようとすると、VMのパーティションUUIDがまだ検索されていると思うので、 here になりました。このようなUbuntu 16.04を使用してchroot envにカーネルを再インストールしようとしました-

$ Sudo mount /dev/sda8 /mnt 
$ Sudo mount --bind /dev /mnt/dev
$ Sudo mount --bind /dev/pts /mnt /pts
$ Sudo mount --bind /sys /mnt /sys
$ Sudo mount --bind /run /mnt /run
$ Sudo mount --bind /proc /mnt /proc
$ chroot /mnt
$ apt install --reinstall linux-image-4.15.0-20-generic linux-image-generic linux-headers-4.15.0-20-generic linux-headers-4.15.0-20 linux-modules-4.15.0-20-generic linux-headers-generic linux-firmware linux-base linux-modules-4.15.0-20-generic linux-modules-extra-4.15.0-20-generic pptp-linux syslinux util-linux

しかし、まだ here になってしまいました。私が試してみました

Sudo qemu-img convert -p -O raw /media/user/images/mate1804.qcow2 /dev/sdb8 

しかし、MBRパーティションの汚染としてGPTパーティションテーブルが破損し、GPTタイプqcow2イメージでも、パーティションが破損するだけです。

N.B。qcow2イメージには、スワップとルートパーティションが結合されています。

1
Pavel Sayekat

たぶん、転送はtarballを介して行うのが最も簡単で、別のパーティション(外部​​ドライブにあるかもしれません)に保存します。バックアップとしても機能します。

  • 別のドライブから起動し、ルートパーティションをマウントし、ディレクトリをマウントポイントに変更して実行します

    Sudo tar -cvzf storage/file.tar.gz .
    

    ファイルを含む各パーティション(ルートパーティション、おそらくブートパーティションとホームパーティション)からtarballを作成します。

  • その後、GPTファイルパーティションテーブルとファイルシステムを準備します。

    このリンクが役立つ場合があります: help.ubuntu.com/community/DiskSpace

  • Tarファイルから抽出します。別のドライブから起動したら、新しいGPTドライブのルートパーティションをマウントし、ディレクトリをマウントポイントに変更して実行します

    Sudo tar -xvf storage/file.tar.gz
    
  • 新しいパーティションのUUIDが新しいGPTシステムのファイル内のUUIDと一致するように、転送されたシステムを調整します

    • /mountpoint/etc/fstab
    • /mountpoint/boot/grub/grub.cfg

これは、UUIDを変更するか、ファイルを変更することで実行できます。仮想システムとの混同の危険はないはずなので、パーティションのUUIDを変更するのが最も簡単かもしれません。 ext4ファイルシステムの場合はtune2fsを使用し、スワップパーティションの場合はmkswapを使用します。


これが機能しない場合は、新規インストールを行い、/homeディレクトリのみを転送するのが最も簡単な場合があります(ターゲットシステムのホームパーティションに移動し、インストーラーで「他の何か」エイリアスの手動パーティションを使用します)。

1
sudodus