Ubuntuシステム全体を別のハードディスクに移動(コピー)するにはどうすればよいですか?


57

UbuntuをインストールしたHDDが故障しそうです。むしろ、3年分のデータ、カスタマイズ、アプリを失うことはありません。システム全体(システムを新しいSWAPパーティションに再リンクできるかどうか不明なため、SWAPを含む)を別のHDDに移動する方法を探しています。しかし、完全なHDDではなく、Ubuntuを含むパーティションのみで、別のHDDのパーティションに。基本的に、Windowsインストール用にNorton Ghostでできることをしたいと思います。Clonezillaの使用を考えましたが、GRUBに問題があると思います(特にconfファイルにあるものとは異なるUUIDから起動しようとしています)。これを行う方法を知っていますか?

PS、私のホームディレクトリは暗号化されていますが、私はそれを回避できるので、それは本当に問題ではありません。

編集:説明をより明確にするために変更

回答:


30

実際、Live CDのGpartedを使用しました。パーティションをコピーして、他のHDDの未割り当て領域に貼り付けました。次に、blkidを使用してUUIDを確認し、fstabファイルを編集しました。魅力のように働いた!


5
何らかの理由で同じシステム内でパーティションを移動する場合(たとえば、より多くのスペースが必要な場合)、fstabを変更する前に新しいパーティションのUUIDを変更する必要があります。 com / questions / 109938 / change-hdds-uuid
グレッグクラミダ

Linuxが大好きだからです
-deFreitas

古いブートドライブを新しいものと交換する場合は、grubもインストールする必要があります。新しいドライブを追加するか、データドライブを交換する場合、これを行う必要はありません。
デビッドC.

9

まあ、私はちょうどUSBスティック+ Ubuntuのライブを使用しました。

ubuntu 13.10を大きなhddから小さなssdに転送していましたが、clonezillaは、ターゲットパーティションがソースパーティションよりも小さいため、この方法では実行できないと「言いました」。

そこで私はライブでubuntuを開始し、両方のhddをマウントしました(新しいディスク、もちろん以前にパーティション分割されました、スワップを忘れないでください;))、そしてちょうど:

cd /media/ubuntu/old-hdd-uuid/

その後:

sudo cp -R --preserve=all bin/ boot/ cdrom/ dev/ etc/ home/ lib/ lib32/ lib64/ media/ mnt/ opt/ proc/ root/ run/ sbin/ srv/ sys/ tmp/ usr/ var/ /media/ubuntu/new-hdd-uuid/

上記のように、すべてのディレクトリを1つのhddから別のhddにコピーし、再帰的にすべてのアクセス許可と内容を保持していることがわかります。

cd /media/ubuntu/new-hdd-uuid/

次に、新しいディスクのルートディレクトリに2つのシンボリックリンクを作成する必要がありました。

sudo ln -s boot/vmlinuz-x.xx.x-xx-generic vmlinuz
sudo ln -s boot/initrd.img-x.xx.x-xx-generic initrd.img

次のステップはgrubのインストールでした。

sudo grub-install --boot-directory=boot/ /dev/sdxy

ここで、x-デバイス、y-パーティション番号(不明な場合は、cfdiskまたはfdiskを使用してパーティションテーブルを印刷します...)

最後のステップは、新しいhddのuuidを古いhddからuuidに変更することでした(構成を検索して修正することなく、grub構成、fstabなどをだます最も簡単な方法です)。

sudo tune2fs /dev/sdxy -U OLD-UUID

デバイスを再マウントすると、新しいUUIDが表示されます。だから今リブートし、すべてがうまくいけば、あなたのubuntuが起動するはずです...


4

ddを使用して実行できます。完全な情報については、サイトを確認してください。

Ubuntu Live CDを使用してハードドライブのクローンを作成する

警告 ddは非常に強力な低レベルのツールであり、わずかな誤植でもディスク全体を一掃するのに十分です。使用には十分注意し、可能な限り高レベルのツールを使用してください。
この方法は、ターゲットディスクが同じサイズ以上の場合にのみ機能することにも注意してください


ハードドライブのクローン作成は、一般的なメンテナンスタスクです。新しいブートCDを焼いたり、新しいソフトウェアにお金を払ったりする必要はありません。UbuntuLive CDで簡単にできます。

Ubuntu Live CDでこれを実行できるだけでなく、追加設定なしですぐに実行できます。追加のソフトウェアは不要です!使用するプログラムはddと呼ばれ、ほとんどすべてのLinuxディストリビューションに含まれています。ddは、低レベルのコピーを行うために使用されるユーティリティです。ファイルを操作するのではなく、ストレージデバイスの未加工データに対して直接機能します。

以下も使用できます。

Clonezilla、無料のハードドライブクローン作成ソフトウェア。ClonezillaはライブCDから実行され、シンプルなユーザーインターフェイスを備えています。もちろん、自分が何をしているのかを認識する必要がありますが、このツールを使用すると、段階的な内訳により作業を大幅に簡素化できます。

Clonezillaはこちらからダウンロードできます

警告開始する前に、必ずClonzillaの制限事項を確認してください。

また、GhostをWindowsに使用したことも述べましたが、Ghost for Linuxも使用できます。

ソース:http : //www.howtogeek.com/howto/19141/clone-a-hard-drive-using-an-ubuntu-live-cd/

ソース:http : //www.makeuseof.com/tag/2-methods-to-clone-your-linux-hard-drive/


ddはパーティションのコピーのみを許可しますか?sudo dd of = / dev / sdb3 of = / dev / sda2のように
-boywithaxe

両方のドライブを提供すると、同じ正確なサイズになります。そして、コマンドはあなたの場合dd dd if = / dev / sd3 of = / dev / sd2
Mitch

ただし、パーティションは2つの異なる物理ドライブ/ dev / sdaと/ dev / sdbにあります。sd3とsd2を記述子として使用して、1つの物理ドライブ内にコピーしませんか?
-boywithaxe

ドライブは同じサイズである必要はありません。唯一の要件は、情報をコピーするドライブがコピーされるドライブよりも大きいことです。
ブルーノペレイラ

1
ddrescueハードディスクが故障しているため、ここではより良いオプションになります。
Ciro Santilli新疆改造中心法轮功六四事件14

4

数年前、このツールを使用してパーティションG4Lを「クローン」しました。パーティションのサイズ変更(パーティションを異なるサイズのHDに複製)やgrubの再インストール(非常に簡単です。MBRに再インストールするのにライブCDのみが必要です)など、インストール後の修正ですべてが機能しました。

スワップパーティションを安全に無視する(2度目に再作成できる)か、クローンを作成して後でアクティブにし、手動で編集する/etc/fstabか、コマンドラインから実行できます。

過去数週間、私は再びclonezillaでクローンを作成しましたが、同じクローン後修正ですべてがうまくいきました。心配する必要はありません。試してみてください。元のHDには何も触れられません。

編集:

最初のクローン作成プロセスを説明した古いメールを見つけました。私は次のように行動しました:

  • 古いHDとまったく同じようにUSBで接続された新しいHDをパーティション分割した
  • G4Lを使用してrawモードでパーティションを複製しました
  • Live CDで起動し、resize2fsでパーティションのサイズを変更しました
  • HDをUSBから切断し、SATA / PATAにマウントしました。
  • Live CDで再度ブートし、新しいディスクをマウントしました。

    mkdir disk
    mount /dev/sda1 disk        (where sda1 contains boot and root partitions)
    mount /dev/sda2 disk/boot   (if you have a different boot partition) 
    mount --bind /dev/ disk/dev/
    mount -t proc none disk/proc
    chroot disk /bin/bash
    grub-install /dev/sda       (to install GRUB on sda MBR)
    
  • 再起動、スワップを確認

  • 楽しい

3

@boywithaxe- Mitchの 回答に対するコメントについては、を実行することにより、関連するパーティションをコピーすることができますdd if=/dev/sdb3 of=/dev/sda3。それが実際に最も簡単な部分です。最もトリッキーな部分はあなたにも、新たにコピーされたパーティションをマウントする必要があるだけでなく、他のパーティションのカップルやGRUBをインストール(ということですgrub-install /dev/sda()あなたがクローニングされている場合(あなたが再起動する前に、スワップパーティションを追加し、ブート可能なパーティション))。この方法を使用する必要もありませんresize2fs

私はこれを自分でやらなければならなかったので、Ubuntu 14.04(非RAID)でのWindowsアップグレード後ブート修復ジャスミンの 回答を組み合わせて使用​​しました。

したがって、liveCDから起動した後:

dd if=/dev/sdb3 of=/dev/sda3

それが終わったら、

sudo mount /dev/sda3 /mnt 

sda3には、最近コピーされたブートパーティションとルートパーティションが含まれます)

sudo mount --bind /dev/ /mnt/dev/

sudo mount -t /proc none /mnt/proc

sudo chroot /mnt

sudo grub-install /dev/sda 

注意これは、SDAではありませんsda3と

update-grub

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