web-dev-qa-db-ja.com

DDを使用してLinuxパーティションのみを外部USBドライブにクローンしますか?

Windows用とUbuntu 14.04 LTS用の2つの1/2 TBパーティションを持つ1 TB内部ドライブがあります。ステーションは主にLinuxステーションになり、Windowsを起動することはありません。

イメージバックアップを作成したいので、DDを使用して内部ドライブを外部1 TB USBドライブに複製しました。残念ながら、USBドライブは内部ドライブにわずか数ギガバイトしかかからないようで、DDは「ドライブの空き容量が不足しています」というエラーメッセージで終了しました。今、私は奇妙なものを見ています。 USBドライブを取り出して再び接続すると、2つの1/2 GBパーティションが重複しているように見えます。それらは同じGUIDを持ち、Nautilusは同じディレクトリ構造とコンテンツを表示します。パーティションの1つの不完全なコピーに関する何かが外付けドライブを破損状態のままにしたと推測しています。

DDを使用してLinuxパーティションを複製するを外部ドライブにするにはどうすればよいですか?私が本当に欲しいのはそれだけです。

1
Robert Oschler

まず、HDDに関するデータを見つける必要があるので、ターミナルに入力してこれを行うことができます。

Sudo fdisk -l

次のような出力が得られるはずです。

Disk /dev/sda: 149,1 GiB, 160041885696 bytes, 312581808 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x06bd4abe

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sda1  *         2048 230055935 230053888 109,7G 83 Linux
/dev/sda2       292970494 312580095  19609602   9,4G  5 Extended
/dev/sda3       230055936 292968447  62912512    30G 83 Linux
/dev/sda5       292970496 312580095  19609600   9,4G 82 Linux swap / Solaris

Partition table entries are not in disk order.

/ dev/sda3がクローンを作成するドライブであるとしましょう。そうすれば、次のことができます。

dd bs=512 if=/dev/sda of=/dev/sdb1/partition.ddfile seek=230055936 count=$(expr 292968447 - 230055936)

ここでこれを思い出してください、それはあなたがあなたの状況にそれを合わせるのに必要な例に過ぎません。

2
Videonauth

より簡単な方法:

  1. Sudo fdisk -l Videonathによると。クローンを作成するパーティションを見つけます
  2. dd bs=512 if=/dev/<partition-name> of=/<external-media-path>

例:dd bs=512 if=/dev/sda2 of=/dev/sdb1

注意:

  • ddでは、ターゲットのサイズがソースのサイズ以上である必要があります
  • この方法(パーティションレベル)で作成されたバックアップは起動できません
1
Anonymint

ddについて尋ねるとき、partcloneをお勧めできますか?パーティションのクローン作成と復元を行います。基礎となるファイルシステムを認識する必要があります。ddを上回る利点は、 used ブロックのみをコピーし、多くの時間またはスペースを節約することです。パーティションの未使用部分は圧縮可能です(ゼロではなく古いデータガベージ)。

Sudo partclone.ext4 -c -b -s /dev/sdaX -o /dev/sdbY 

あなたがしたいことをします。 -cはクローン、-bはデバイス間、-sはソース、-oはターゲットを表します。また、クローンを作成したため、ソースとターゲットのUUIDは同一です。 blkidでこれを確認し、uuidgenを使用して新しいUUIDを生成し、Sudo tune2fs /dev/sdbY -U <uuidgen-generated new UUID>を使用して変更します。

同じマシン上に2つの同一のUUIDがあると、外部デバイスの「壊れた」状態で発生した問題の根本原因になる可能性さえあります。

これを行う前に、新しいパーティションが古いパーティションより小さくならないように、ターゲットデバイスをfdiskでセットアップする必要があります。大きい場合は、gpartedを使用して、クローンされたパーティションを新しい最大サイズまで拡大できます。

1
emk2203