web-dev-qa-db-ja.com

異なるサイズのパーティションでcpの代わりにcatを使用します

パーティションのすべてのデータをサイズが異なる別のパーティションにコピーするためにddまたはcatを使用することは不可能であることを理解しました。このステートメントは正しいですか?、例

2台のHDD、最初の/dev/sdd1(100gb)、および30gbと2番目の/dev/sdc1(50gb)、およびデータがありません


cat /dev/sdd1 >/dev/sdc1

なぜ? sdd1には100gbのパーティションがあり、sdc1には50gbの制限があるため


本当ですか?コピーには何を使うべきですか?

使用できます(hddsがマウントされていると仮定):

cp -avr /mnt/sdd1/* /mnt/sdc1/

cpを使用するのは正しいですか?誰かがcpの代わりに知っている

EDIT:Linuxがパーティションを認識しないためにhddをマウントできない場合、どうすればよいですか?次の新しい質問に進みます。 「認識されないパーティションに空き領域のないバックアップ」

注:ddrescueのような回復ツールについては話していない

どうもありがとうございました。

3
Milor123

もちろん、cpは問題なく動作します。 shopt -s dotglobを使用して、*.で始まる名前のファイルとフォルダーに一致するようにする必要があります。

shopt -s dotglob
cp -avr /mnt/sdd1/* /mnt/sdc1/

rsyncもあります:

rsync -a --info=progress2 /mnt/sdd1/ /mnt/sdc1/

より良い進行状況表示があります。

2
muru

ファイルレベルでのコピーと、デバイスレベルでのパーティションまたはドライブ全体のクローン作成の違いに注意してください。

Muruの説明に従ってファイルをコピーします

この場合、マウントされたパーティションを使用します。ここには、ディレクトリとファイルが表示されます。

rsyncは、バックアップと同期のための非常に優れたツールです。

以下の説明に従ってデバイスを複製します

デバイスのクローン作成は非常にリスクが高いため、正しいデバイスに書き込むことを確認および再確認する必要があります。それ以外の場合は、家族の写真を上書きする可能性があります...それはわずかなタイプミスです。クローンを作成するときは、ソースデバイスとターゲットデバイスのすべてのパーティションをアンマウントする必要があります。少なくとも同じデバイスにクローンを作成する必要があることにすでに気付いています。

Sudo dd if=/dev/sdx of=/dev/sdy bs=4096

uSBペンドライブ(ドライブxからドライブyへ)などのデバイスのクローンを作成します。

Sudo dd if=/dev/sdxm of=/dev/sdyn bs=4096

パーティションを別のパーティションにクローンします(パーティションxmからパーティションyn。xとyはドライブ文字、mとnはパーティション番号)。

Sudo dd if=/dev/sdx of=file.img bs=4096

ドライブのイメージファイルを作成します。

Sudo dd if=/dev/sdx bs=4096 | xz > file.img.xz

圧縮画像ファイルを作成します。

Sudo if=ubuntu.iso of=/dev/sdx bs=4096

ubuntu isoファイルからUSBブートドライブを作成します。

-o-

Ddの代わりにcpを使用してクローンを作成し、同様の結果を得ることができます。

ツール

リスクを軽減し、プロセスを簡単にするために、このプロセスを支援するツール、特にisoファイルと[圧縮]イメージファイルからブートドライブを作成するツールがあります。例:buntu Startup Disk Creator(16.04 LTS以降)、Disks(gnome-disks)、mkusb

Clonezillaは、「ドライブサーフェス」上の使用済みブロックを選択し、コピー/クローンを作成できるツールです。未使用のブロックはスキップします。これにより、特に空き容量の多いドライブでは、dd(またはcp)によるクローン作成よりもClonezillaによるクローン作成の方がはるかに高速になります。

1
sudodus

まず、短いバージョンはありません。その理由は、最初のドライブのどこにデータがあるのか​​わからないからです。データが最初の30GBにないことはほぼ確実です。これはLinuxファイルシステムに組み込まれているものであり、デフラグする必要がない理由です。すなわち。データはランダムに空き領域に割り当てられます。これは、週に1回デフラグする必要がある古いMSDOSの日とは逆です。

上記の表彰を調整する評判ポイントはありませんが、必要なものを達成するための最も迅速な方法は次のとおりです。

rsync -avz --delete /mnt/sdd1 /mnt/sdc1

-rは、-aも自動的に-rを暗示するため、必要ありません。スイッチの説明を含めました。

-a, --archiveアーカイブモード。等しい-rlptgoD-H-A-Xなし)

--delete宛先dirsから無関係なファイルを削除

-z, --compress転送中にファイルデータを圧縮する

-zを無視することもできますが、ネットワークコピー、特にWi-Fiには非常に便利です。

修理のため、fsckを試しましたか?

http://www.cgsecurity.org/ からTestDiskと呼ばれる別のツールを見つけましたが、少なくとも回復したい量の空き容量が必要です。