Jika Anda menggunakan utilitas rsync untuk menyimpan cadangan Anda disinkronkan antara server Anda atau dengan mesin lokal, Anda mungkin ingin mencegah skrip menggunakan terlalu banyak bandwidth. Namun, rsync membuat banyak jaringan I/O. Tujuan membatasi bandwidth adalah untuk memastikan skrip cadangan Anda tidak menyumbat koneksi jaringan.
Secara alami, membatasi jumlah bandwidth yang digunakan cadangan Anda akan membuatnya terjadi lebih lambat, tetapi jika Anda dapat mengatasinya, inilah caranya.
Berikut adalah perintah rsync normal:
$ rsync –avz -e 'ssh' /path/to/source user@remotehost:/path/to/dest/
Yang ingin Anda lakukan adalah menggunakan –bwlimit parameter dengan KB/detik nilai, seperti ini:
$ rsync –bwlimit=[kb/second] –avz -e 'ssh' /path/to/source user@remotehost:/path/to/dest/
Jadi jika Anda ingin membatasi transfer menjadi sekitar 10000KB/dtk (9,7MB/dtk), masukkan:
$ rsync –bwlimit=10000 –avz -e 'ssh' /path/to/source user@remotehost:/path/to/dest/
Berikut adalah contoh dunia nyata:
rsync –bwlimit=10000 –avz -e 'ssh' /backup/ [email protected]:/backup/
Di sini, rsync akan dibatasi hingga bandwidth 10000kb/detik atau sekitar 9,7MB/s.
Menggunakan tetesan
Ada alternatif untuk opsi -bwlimit. Anda juga dapat menggunakan perintah "trickle" untuk membatasi bandwidth aplikasi apa pun yang Anda jalankan. Sintaks perintah trickle adalah:
$ trickle -u|-d [uploadLimit|downloadLimit] [app]
Di sini,
-u uploadLimit -> membatasi bandwidth unggahan
-d downloadLimit -> membatasi bandwidth unduhan
aplikasi -> adalah aplikasi yang ingin Anda batasi bandwidthnya, mis. rsync.
Jadi dalam kasus kami, kami akan membatasi penggunaan bandwidth perintah rsync menjadi 0000kb/detik menggunakan perintah di bawah ini:
$ trickle -s -u 10000 -d 10000 rsync –avz -e 'ssh' /backup/ [email protected]:/backup/