Linuxでrsyncを使用してデータをバックアップしようとしたところ、インターネットに接続できなくなってしまいました。
Linux(debian11最小構成)のファイルサーバーAがあり(sambaで共有)、その中に保存されているデータを同じくLinux(debian11最小構成)のファイルサーバーBを新たに構築しました。
CIFSでAのフォルダをBにマウントし、rsyncでAからBにデータをコピー。
ところが、その後、インターネットにまったく繋がらない状態になっている事に気づきました。
スマホで確認しても、別にネット上にトラブルは起きていない。プロバイダーのHPも障害情報等は出ていない。
ルーター(YAMAHA製)の状態を確認しようとIPアドレスを叩いて設定画面を呼び出そうとしても応答しない。すわコレはルーターが物理的に壊れたか?!
しかし、ルーターの電源を入れ直したりと右往左往したあげく・・・
そう言えばと、動かしっぱなしにしていた rsync を停止した途端、すべて正常に戻りましたorz
これは、rsyncによるデータ転送が帯域を食いつぶして起きたという事なのでしょうか?
だとするとrsyncによるデータバックアップが怖くてできないのですが。
うーん、じゃぁバックアップ時の通信量を絞る(帯域制限)すればいいのでは?
検索してみたら、Linuxには「 tc 」という、OS自体に帯域制限の機能があるようで。「 tc 」はTraffic Controlの略のようですね。これでメインサーバーの通信速度を制限したら・・・ちょっと待て、メインサーバーの速度を落としてしまったら、バックアップ用途以外の他のPCの通信速度も遅くなってしまいますね(笑)
アプリケーションごとに制限する方法はないものか?
そう思って検索してみたら、rsync自体のオプションに、帯域制限がありました・・・orz
syncに --bwlimit=1024 を追加。
試してみたら、rsyncを使ってもインターネットに繋がらなくなる事はありませんでした。
ただ、バックアップが遅い(笑)
じゃぁと、--bwlimit=10240 にしてみたら、インターネットに繋がらなくなってしまいました。(前回のように全く応答なしではないのですが)
数値を変えて、 --bwlimit=3072 くらいだったら、やや遅いくらいでなんとか?
ちゃんと動くことを確認して、深夜にrsyncが走るようにcronで設定して、終了。
翌日、確認してみたら、ちゃんとバックアップされておりました\(^o^)/
コメント