Soru Uzak makinede güzel rsync


Uzak bir makineye erişmek için rsync + ssh kullanılırken, uzak makinedeki rsync işlemini (önceliğini azaltmak için) "güzel" bir yol var mı?

Sorunu açıklığa kavuşturmak için:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
backups  16651 86.2  0.1   3576  1636 ?        Rs   11:06   0:06 rsync --ser...

(rsync satır snipped)

Bu normalde 4 am çalışan bir yedekleme cron iş, ama uyanık olduğunda (ve aynı makinede barındırılan Bugzilla kullanarak), sunucu performansını öldürür, bu yüzden denemek ve düzeltmek için hızlı bir "kesmek" istedim biraz.


23
2017-08-18 14:20


Menşei




Cevaplar:


Kullanabilirsiniz --rsync-path seçenek, örn.

rsync --rsync-path="nice rsync" foo remotebox:/tmp/

34
2017-08-18 14:52



Kullanmayı düşünebilirsiniz ionice ayrıca, ör. --rsync-path="ionice -c 3 nice rsync"Ancak, modern Linux'lar hoş süreçler için IO önceliğini otomatik olarak azaltsa da (bağlandığım sayfalara bakın). - Jo Liss
Bunu zaten denedim ama sshd hala çalışıyor nice 0 - Felipe Alvarez
FreeBSD'de olmayan sistemlerde ionice, ayarlamak --bwlimit seçeneği güzel bir rsync için iyidir. - deed02392
Bu seçenekte bir fark yaratmama konusunda da bir problemim vardı. Bağlandığım sunucunun, yalnızca belirli bir rsync komutunu kabul etmek üzere, yetkili_ anahtarlarla yapılandırılmış olduğu ortaya çıktı. --rsync-path belirttiğim seçenek. - Andy Beverley


  • Alarak --rsyncpath seçeneği var rsync --rsync-path="ionice -c 3 nice -n 12 rsync" localDirectory remoteHost:/tmp/
  • Alarak yapılandırma dosyası seçeneği dosyada değişiklik veya uncomment yapabilirsiniz /etc/default/rsync  RSYNC_NICE='17' değer ve RSYNC_IONICE='-c3' değer

Her ikisi için ionice sabit disk önceliği için değer

  • 1 -> Gerçek zamanlı
  • 2 -> En iyi çaba
  • 3 -> Ildle (başka herhangi bir işlem HD kullanılmadığında)

için Güzel işlemci önceliği için değer

  • -20 (sürece en uygun)
  • -n belirtilmemişse (varsayılan 10)
  • 19 (sürece en az olumlu)

7
2017-10-08 10:03



Kim sorumludur /etc/default/rsync? Rsync bu dosyayı okuyor mu, yoksa linux-flavor / dağılımı mı yapıyor? - guettli
... sanırım çözümü buldum /etc/default/rsync rsync daemon modu için varsayılan dosyadır. Sadece rsync-protokolüne rsync-protokolü ile bağlanırsanız geçerlidir. Sanırım ssh ile çağırırsanız geçerli olmaz. - guettli


Hızlı ve kirli çözüm, gerçek rsync binary'den önce $ PATH'ı gölgeleyen 'rsync' adlı küçük bir sarmalayıcı komut dosyası oluşturmak olacaktır:

#!/bin/sh
nice -10 /path/to/proper/rsync $*

Veya authorized_keys dosyasını ayarlayarak, rsync'nin nizamını gerçekleştirir. (Ssh tuşlarını kullandığınızı varsayarsak).

örnek:

command=”/home/user/bin/nice-rsync.sh" ssh-dss asdf....

Şimdi /home/user/bin/nice-rsync.sh adresinde

#!/bin/sh
case $SSH_ORIGINAL_COMMAND in
  rsync\ --server*)
    nice -10 $SSH_ORIGINAL_COMMAND
    ;;
  *)
    $SSH_ORIGINAL_COMMAND
    ;;
esac

HTH


2
2017-08-18 14:43





Ağda sıkıştırmayı devre dışı bırakarak -z argüman, bu her iki tarafta biraz işlemci zaman kazandırabilir. Veya rsync'in sağlama toplamlarını nasıl kullandığını değiştirin. --checksum


2
2017-08-18 15:26



Hasturkun'un cevabını kabul ettim (bu soruya cevap verdiğinden beri), ama iyi bir noktaya geldin: Sıkıştırma olmadan sıkıştırma ile kıyaslandı ve sadece işe 2 dakika ekledim. Az önce -z'i kullanmayı hiç düşünmediğim bayraklarım olarak -avz kullanıyorum. - mwalling
Benim alışkanlığım -aPh kullanmaktır, nadiren -z kullanıyorum - Rory


Rsync çok fazla CPU kullanmamalıdır. Belli bir güzelliği diğer uçtan zorlayabileceğinden şüpheliyim, ancak yapabildiğiniz şey, rsync'in bir güvenlik duvarı ile kullandığı bant genişliğini sınırlamaktır; bu, X zamanında ne kadar iş yapabileceğini eninde sonunda azaltacaktır.


0
2017-08-18 14:27



CPU'ya ne kadar ilerlediğini göstermek için 'ps aux'den bazı çıktılar eklendi. Ben yavaş bir bağlantı üzerinden gidiyorum, bu yüzden -compress seçeneği açık, ama aynı zamanda güzel (istenmeyen yan etkisi) kullanarak yıkmak umuduyla iyi bir disk erişimi, neden oluyor - mwalling
İyi bir değer oluşturmak genellikle, genellikle birinin istediği I / O hoşluğunu da etkiler. - Bram Schoenmakers


Sanmıyorum, bunun için özel bir çözüme ihtiyacın var .. ftp kullan


-7
2017-08-18 14:41



Biliyorsun, bu iyi bir fikir. Rsync'in tüm özelliklerine, uzaktaki makinede çalışan bir sunucuya (ve ssh'in içsel şifrelemesine) ihtiyaç duyan ssh ile çalışabilme, sıkıştırmayı aktarma, indirme işlemlerini sürdürme, yalnızca farklılıkları aktarma gibi özelliklere ihtiyacı var. kabartmak. Şu an evime gideceğim ve PS / 2 Sistemim 60'ı bir miktar anime için FTP'ye kullanacağım! - mwalling
Lütfen soruyu cevaplayamadığı için bu cevabı silin ve sorudaki örneklemden önemli ölçüde daha kötü bir alternatif sunuyor. - user1133275