自分のローカルコンピュータでSSHを使用してリモートディスクのバックアップを作成し、それを自分のローカルディスクに保存するにはどうすればよいですか?
私は以下を試しました:
ssh [email protected] "sudo dd if=/dev/sdX " | \
dd of=/home/username/Documents/filename.image`
ただし、次のエラーが発生します。
ttyが存在せず、Askpassプログラムが指定されていません。
ベストアンサー1
リモートコンピュータをバックアップすることが目的の場合ハードディスクドライブSSHを介してローカルコンピュータHDDの単一のファイルに接続すると、次のいずれかを実行できます。
はい
リモートコンピュータで実行
$ dd if=/dev/sda | gzip -1 - | ssh user@local dd of=image.gz
ローカルコンピュータで実行
$ ssh user@remote "dd if=/dev/sda | gzip -1 -" | dd of=image.gz
はい
$ ssh skinner "dd if=/dev/sda5 | gzip -1 -" | dd of=image.gz
208782+0 records in
208782+0 records out
106896384 bytes (107 MB) copied, 22.7608 seconds, 4.7 MB/s
116749+1 records in
116749+1 records out
59775805 bytes (60 MB) copied, 23.9154 s, 2.5 MB/s
$ ll | grep image.gz
-rw-rw-r--. 1 saml saml 59775805 May 31 01:03 image.gz
監視方法?
ssh
別の端末でログインしてls -l
ファイルサイズを確認してください。これを使用して、
pv
大規模なddジョブの進行状況を監視できます。たとえば、上記のリモート例では、次のことができます。$ dd if=/dev/sda | gzip -1 - | pv | ssh user@local dd of=image.gz
「SIGUSR1」シグナルを送信すると、
dd
統計が印刷されます。それは次のとおりです。$ pkill -USR1 dd
dd
プログレススイッチを使用してください。status=progress
引用する
上記の監視方法は、元のコメントとして残した内容です。@ライアン&@愛子そして私自身。私はそれらをより明確にするために答えに移しました。