ネットワーク越しにDDコマンドでコピーする(ローカルネットワーク内)

現行のサーバーのバックアップ用にもう一台同じ仕様のサーバーを作っている時、ネットワーク越しにDDコマンドが使えるか探すとここに回答があった。
考え方は dd コマンドの出力側と受け側に分け、間を nc コマンドでつなぐ見たいになっている。
まずは現行のサーバーの方で
# dd if=/dev/Kvm/web4 | nc 192.168.xx.xx 12345
if=の後ろは例によって領域(device)の指定。私はLVMでサブホストのルート領域を作っているのでこんな風になっている。普通なら /dev/sda1 とかかな
パイプ(|)の後は nc コマンド(netcat)の略らしい。その後のIPアドレスはバックアップ用のサーバーのIPアドレス、次の数字が使用するポート番号
ーーーーーーーーーーーーーーーーーーー
バックアップ用サーバーに移って
# nc -l 12345 | dd of=/dev/Kvm/web5
-l で nc をリッスンモードにし、同じポート番号にして、パイプの後は dd コマンドの後ろの設定
同じホスト間での dd だったら、上記は dd if=/dev/Kvm/web4 of=/dev/Kvm/web5 となるが、これを出力側(if)と受け側(of)に分けている。
ネットワークはギガビットだが思ったより早く終了した。多分同じホスト間より早いくらい。
これには理由がある。私はサブホストのルート領域、データー部分などを1台のSSDの押し込めているので(サーバーを小さく作りたい)出力側も受け側も同じディスクを指定する事になるからだと思う。

追記:2022-2-5
今日やったら、先に受け側をやらないと駄目だった。

フジマル について

1947年生れ、東京電機大学二部電気通信工学科卒、最後はスリランカ航空で営業だったのですが2018年に㈱インパック・ジャパンに再就職。趣味:登山、スキー、車いじり、コンピューター
カテゴリー: Linux運用時のメモ パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください