command

馬鹿でかいデータを送る方法(rsync&sshをバックグラウンドで動かし続ける)

突然だが馬鹿でかいデータを送りつけたい。別のサーバに。

馬鹿でかいデータを作る

実態はどこかにあるとして検証用に馬鹿でかいダミーデータを作る。
ddコマンドを使って以下の通り作れる。

dd if=/dev/zero of=1G.dummy bs=1M count=1000
mkdir ~/dst
mv 1G.dummy ~/dst

実に馬鹿でかい

馬鹿でかいデータを送りつける

次に馬鹿でかいデータを送りつけます。
ここではrsyncを使いました。

nohup sudo rsync -av -e ssh ~/src/ user@192.168.x.x:~/rsync_ssh/dst 

(userはユーザ名、192.168.x.xはIPアドレス)
→Ctrl+Zでサスペンドにする。

jobs -l

→停止中のジョブ一覧がでてくるので停止中のジョブ番号を控える。(ここでは1)

bg 1

→バックグラウンド実行する。

ここでターミナルを消すとバックグラウンドで動き続けます。
別ターミナルで確認するとrsyncが動き終わったのが確認できました。

何故この記事を書いたか

nohup sudo rsync -av -e ssh ~/src/ user@192.168.x.x:~/dst &

これでいけるのかなと思ったらパスワード認証通せず止まってしまい(?)バックグラウンドで動かせなかった。公開鍵認証だったらいける?(まだ試せていない)

参考

■rsyncをバックグラウンド且つログアウトしても処理が継続されるよう実行する方法
http://devilab.net/archives/1200
■ログアウトしても scp による転送が終了しないようにする方法
http://d.hatena.ne.jp/yohei-a/20100212/1265950974