私は1024 GBのディスク(ディスクA)でUbuntu 14.04を実行しており、最大130 GBのスペースしか使用していませんでした。 256 GB SSDディスク(ディスクB)にクローンを作成します。しかし失敗した。
gparted
を使用して、ディスクBを正常に準備するために、ディスクAのパーティションを約180 GBに縮小しました。
どこが間違っていたか教えていただけますか?
ディスクAのパーティションテーブルをバックアップしました。
└──╼ $ Sudo sfdisk -d /dev/sda
# partition table of /dev/sda
unit: sectors
/dev/sda1 : start= 2048, size= 997376, Id=83, bootable
/dev/sda2 : start= 999424, size= 15624192, Id=82
/dev/sda3 : start= 16623616, size=337020928, Id=83
/dev/sda4 : start= 0, size= 0, Id= 0
/dev/sda1
は/boot
、/dev/sda2
はswap
、/dev/sda3
は/
。
Sudo sfdisk -d /dev/sda > partition.table
次に、パーティションテーブルをディスクB(このシナリオでは/dev/sdc
)に復元しようとしました。
ファイルpartition.table
のsda
をsdc
に置き換えました。その後、次のようになります。
# partition table of /dev/sdc
unit: sectors
/dev/sdc1 : start= 2048, size= 997376, Id=83, bootable
/dev/sdc2 : start= 999424, size= 15624192, Id=82
/dev/sdc3 : start= 16623616, size=337020928, Id=83
/dev/sdc4 : start= 0, size= 0, Id= 0
次に、復元を正常に実行します。
Sudo sfdisk /dev/sdc < partition.table
Sudo dd if=/dev/sda1 of=/dev/sdc1
Sudo dd if=/dev/sda2 of=/dev/sdc2
Sudo dd if=/dev/sda3 of=/dev/sdc3
移行後、/ dev/sdc上のパーティションをマウントして表示できます。
しかし、SSDディスク(ディスクB)をラップトップに差し込んだ場合、Thinkpad BIOSの出力後に起動しません。エラーは出ませんでしたが、カーソルが点滅しています...
起動時にBIOSがディスクBの/boot
を検出しなかったに違いありません。
手伝って頂けますか?どうもありがとう!
トリックを行うためにgrub-install /dev/sdc
を使用するように勧められた人がいます。
grub-install
の機能を検索しました link 試してみましょう。そして、私はディスクA(MBRがインストールされていた)をかなり確信しています。
dd if=/dev/sda of=/dev/sdc bs=512 count=1
を実行した後、ディスクBのみを挿入します。それでも、点滅しているカーソルは同じです。 BIOSの後には何もありません。
grub-install --boot-directory=/mnt/mypartition/boot /dev/sdc
を実行した後、ディスクBのみを起動しました。
しかし、grubコンソールが出てきました。そして報告された
今それは働いています!!!
OSとしてディスクAを実行し、USBハードドライブとしてディスクB(/dev/sdc
)を実行しているPCで、これを実行した方法を次に示します。
Sudo mount /dev/sdc3 /mnt
Sudo mount /dev/sdc1 /mnt/boot
Sudo grub-install --boot-directory=/mnt/boot /dev/sdc3
次に/mnt/boot/grub/grub.cfg
に移動し、ファイルgrub.cfg
の2つの項目を置き換えました。 (ファイルgrub.cfg
への書き込み権限を与えることを忘れないでください)
hd1
をhd0
に置き換えます/dev/sdc3
を/dev/sda3
に置き換えます次に、ファイルを保存します。 ->コンピュータの電源をオフにします-> SATA経由でディスクBを挿入し、ディスクAを永久に取り出します。 ->起動-> grubエラーが表示されるが起動する
エラーError: invalid environment block. Press any key to continue
が発生した場合は、これを確認して解決してください。任意のキーを押すと、システムが起動します。 https://askubuntu.com/questions/191852/error-invalid-environment-block-press-any-key-to-continue
Sudo -i
次に、各コマンドを1つずつ実行します。
cd /boot/grub
rm grubenv
grub-editenv grubenv create
grub-editenv grubenv set default=0
grub-editenv grubenv list
update-grub
今すぐ再起動してください、それはうまくいきます!
これが1024GBのディスクハードドライブを縮小し、システム全体を新しい256GB SSDディスクに移行した方法です。
私はsfdisk
に精通していませんが、dd
を使用してパーティションテーブルとMBRをバックアップすることで、同じことを実現できます。
これは私のメモにあり、私は作者ではありません...
MBRのバックアップ
MBRはディスクの最初の512バイトに格納されます。 3つの部分で構成されています。
MBRをmbr.imgとしてクローンします。
dd if=/dev/sdX of=/path/mbr_file.img bs=512 count=1
パーティションをpX.imgとしてクローン
dd if=/dev/sdX of=/path/pX.img bs=1024
MBRを新しいディスクに復元する
dd if=/path/mbr_file.img of=/dev/sdY bs=512
パーティションを新しいディスクに復元
dd if=/path/pX.img of=/dev/sdX bs=1024
[〜#〜]または[〜#〜]
clonezilla
を使用してOSのイメージを作成し、すでにパーティションが作成されているディスクにそれを復元できます。
この方法では、新しいディスクにGRUBを再インストールする必要があるかもしれません
grub-install
grub-mkconfig
そして、スワップパーティションを「新しい」OSに設定します。
mkswap
swapon