Rsync'in daha az bant genişliği kullanmasını sağlayın?


46

Ağ paylaşımlarını ve bilgisayarımı yedeklemek ve senkronize etmek için rsync kullanıyorum. Bunu anladım.

Sorun, dosyaları aktarmak için rsync kullanırken, yapabileceği tüm bant genişliğini kullanmasıdır. Bağlantımı başka şeyler için kullanabilmem için hızını göstermek istiyorum.

Spesifik olarak, şu anda Last.FM'yi dinliyorum, ancak rsync yerel bağlantıyı doyurduğundan kesmeye devam ediyor.

Bu pek mümkün görünmüyor, ancak bu durumda LAN'ım internetim kadar hızlı (her ikisi için de 10 megabit, yay üniversitesi!). Her iki durumda da, rsync çalışırken fazladan bir bant genişliğim yok. Herhangi bir fikir?

Oh, btw, özellikle Ubuntu 9.04 kullanıyorum.

Yanıtlar:


67

--bwlimit=KBPS G / Ç bant genişliğini, saniyede KBbayt sınırlamak için bu seçeneği kullanın

Ayrıca man sayfasına bakınız .


Mükemmel. manSayfada ilk kez neden bunu özlediğimi bilmiyorum .
Mike Cooper

8
Ancak, bu seçeneğin ortalama bant genişliğini sınırladığını belirtmek istedim. ilk dosyaya tam yolla gönderilir ve daha sonra belirtilen bant genişliği değerine inmeye çalışmak için dosyalar kısılır. Gerçekten sınırı bant genişliği, gibi bir şey içine bakmak isteyeyimtrickle
joshtronic

1
@joshtronic supervacuo'nun cevabını fark ettiniz mi? Şimdi bunu test ettim ve en küçük dosyalar haricinde "ilk dosya tam patlamaya gönderildi" diye doğrulanamayacağına dair kefil olabilirim.

20

(Bu ideal, joshtronic'in yorumuna cevap olacaktır )

--bwlimit=XXaslında tam tersi bir problemi var; Rsync Temelleri yardımsever olarak - transferi bir hareketli ortalama gerçekten de açıklar :

Rsync transferlerinin niteliği nedeniyle, veri blokları gönderilir, ardından rsync transferin çok hızlı olduğunu tespit ederse, bir sonraki veri bloğunu göndermeden önce bekleyecektir. Sonuç, belirtilen limite eşit bir ortalama transfer hızıdır.

Ortalamanın dosyalar arasında alınıp alınmadığı açık değildir, ancak her durumda bu doğru değildir.

ilk dosya tamamen gönderilir ve daha sonra belirtilen bant genişliği değerine inmeye çalışmak için azaltılır

Aslında, ilk dosya ortalama atmaya yetecek kadar büyük olduğu sürece (bu en küçük dosyalar hariç hepsi anlamına gelir) boğulacaktır.

Bu kandırmanın daha iyi bir çözüm olacağı konusunda haklısın , ama açıklayıcı makaleden anladığım kadarıyla (" Trickle: Unix benzeri sistemler için bir Kullanıcı Bant Genişliği Şekillendirici "), aynı trickle zamanda hareketli bir transfer ortalamasına dayanarak G / Ç'yi geciktirerek çalışır. . Sanırım bunu önerme umudu, ortalamayı uygulamak için daha yüksek frekanslı bir ölçüm kullanmasıdır. Durumun böyle olduğunu doğrulayan çevrimiçi bir veri bulamadım (yukarıdaki yazının rsynckodunu "basit" olarak nitelendirmesine rağmen , yazarların tricklekendilerinin daha iyi bir iş yaptığını düşündüklerini iddia etmelerine rağmen ).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.