ブロックデバイスのコンテンツ転送

ブロックデバイスのコンテンツ転送

バックアップ目的でSSHリンクを介して(複数の)ディスクパーティション全体を転送したいと思います。ソースはブロック特殊デバイスで、ターゲットは通常のファイルでなければなりません。しかし、一般的なツールはそれに適していないようです。

  • scp文句を言うnot a regular file
  • tarターゲット側でデバイスinodeを再生成しようとします。
  • rsync説明するskipping non-regular file

現在の最良のオプションは、ncポート転送を介して、またはcatリモート側でパーティションごとに1回呼び出すことです。これは、公開鍵が設定されていない限り、パーティションごとに1つのパスワード入力を意味します。よりエレガントなソリューションはありますか?

環境は合理的なLinuxライブシステムです。現在、私は Debian でうんざりしていますが、そうする必要はありません。またこれについて具体的に説明してください。

ベストアンサー1

SSH経由でパイプできます。使用例dd:

dd bs=1M if=/dev/disk | ssh -C target dd bs=1M of=disk.img

転送中にネットワーク接続が中断された場合は、コピーされたコンテンツの量を知ることで転送を再開できます。たとえば、1つ以上のファイルが転送1000MiBされたと確信している場合(ファイルサイズの確認disk.img):

dd bs=1M skip=1000 if=/dev/disk | ssh -C target dd bs=1M seek=1000 of=disk.img

ddこれは単なる例であり、パイプで使用される限り、他のコマンドのように動作します。

おすすめ記事