インストールを新しいディスクに移動


10

私は現在、これらのパーティションを持つ1つのhdを持っています:

/dev/sdb1    /
/dev/sdb2    swap
/dev/sdb3    /home

/パーティション用にSSDを購入することを考えています。

今私の質問です:現在の構成を新しい構成に移動/変換することは可能ですか(2つのディスク、/ homeは残ります)?実行中のシステム内からか。

回答:


11

の使用はお勧めしませんdd。セクターごとにコピーするという単純なセクターのコピーを実行するだけです。つまり、コピー先パーティションが小さい場合は失敗し、空きスペースのコピーに多くの時間を浪費します。コピー先パーティションが大きい場合は、実行するまで追加スペースは利用できません。resize2fsファイルシステムを拡張します。

変更中のファイルをコピーすると、結果が破損するため、ライブCDから実行するのが最適です。

ssdをフォーマットし、新しいssdパーティションと元のルートパーティションの両方をマウントしてから、を実行しますsudo cp -ax /media/old-partition/* /media/new-partition。この場合、old-partitionとnew-partitionは実際のマウントポイントに置き換えられます。これにより、すべてのファイルがコピーされ、所有権、権限、およびタイムスタンプが保持されます。

次にsudo grub-install --root-directory=/media/new-partition /dev/SSD_DEVICE、new-partitionとSSD_DEVICEを正しい値に置き換えた後、を実行します。これでgrubがインストールされ、ディスクが起動可能になります。

あなたが(代わりに、古いドライブのSSDから起動するように設定されていることを確認あなたのBIOSを作る)再起動したら、あなたはの出力チェックすることで、SSDからではなく、古いドライブから実行されていることを確認してdf、および/またはmount、あなたがする必要があります古いパーティションを吹き飛ばすのは良いことです。

そして/etc/fstab、ルートパーティションのUUIDをコピーして更新した後、古いパーティションではなく新しいSSDパーティションのUUIDと一致するように、新しいパーティション上のファイルを編集する必要があります。を実行すると、そのUUIDを見つけることができますsudo blkid

編集:上記のコピーに/ *を追加しましたが、6文字を超えるように編集する必要がありました。これで101文字になりました。


1
私はそれがうまくいったと思いますか?
Martin Ueding、2011年

2
上記の方法を使用してgrubをインストールする際に問題が発生しました。最終的に私はこのスレッドが示唆することをした:askubuntu.com/a/3409/8152をセットアップして他のディスクにGRUBをインストールしました。残りの回答はうまくいきました。
MladenJablanović12年

1

このコマンド:

dd if=/dev/sdb1 of=DEVICE_PATH_OF_SSD_DRIVE

/SSDドライブにパーティションを複製するために機能するはずです。

編集:これは、パーティションがドライブと同じサイズの場合にのみ機能します。それらが同じサイズでない場合は、partimageを使用できます。

partimage -z0 -d save /dev/sdb1 clone.partimg
partimage restore DEVICE_PATH_OF_SSD_DRIVE clone.partimg
rm clone.partimg

この方法の注意点は、のすべての内容を含むイメージ用にドライブに十分なスペースが必要であることです/。10GB以上の空き容量があれば問題ないはずです。それ以外の場合は、-z1代わりに-z0を使用して画像を圧縮できます。さらに圧縮するには、を使用します-z2。また、partimageはext4ファイルシステムをサポートしていません

それが完了したら、SSDをマウントし、データが正しくコピーされているかどうかを確認する必要があります。

$ mkdir /tmp/ssd
$ sudo mount -t ext4 DEVICE_PATH_OF_SSD_DRIVE /tmp/ssd
$ ls /tmp/ssd
bin    dev   initrd.img      lost+found  opt   sbin     sys  var
boot   etc   initrd.img.old  media       proc  selinux  tmp  vmlinuz
cdrom  home  lib             mnt         root  srv      usr  vmlinuz.old

ext4使用したファイルシステムに置き換えます/

このドライブにGRUBブートローダーをインストールする必要があるでしょう:

sudo grub-install DEVICE_PATH_OF_SSD_DRIVE

次に、/etc/fstabファイルを編集して/dev/sdb1、にマウントするエントリ内のSSDドライブのデバイスパスに置き換える必要があります/。(sudo $EDITOR /etc/fstab

これらの指示に従う前に、この回答にいくつかの賛成票があるまで待ってください。私はこれらのことの専門家ではないので、いくつかの重要な情報を見逃したかもしれません。これに欠陥を見つけた人は誰でも、それらを説明するコメントを追加してください。何か問題が発生するとコンピュータが起動できなくなる可能性があるため、このような予防策を講じる必要があります。


(-1)この解決策はより危険です。特にデバイスのサイズが一致しない場合。
Raphael Bossek、2011年

ddを使用する場合、ソースドライブのUUIDもコピーされます。
Michael

0

最初に移行方法をお読みください。OSをあるハードドライブから別のハードドライブに簡単に転送する方法はありますか?

SSDから起動し、次の行を追加します/etc/fstab(バインドのみです)。

/media/slowhd/home /home none rw,bind 0 0

起動しmount -a、変更をアクティブにします。

ヒント古い hdにmount /dev/yourhd /homeさらにディレクトリを移動する柔軟性が失われるので注意してください。

より技術的なソリューションは、LVM(論理ボリュームマネージャー)を使用することです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.