rsync sadece asılı, dosya listesi oluşturma


20
[root@centos /]# rsync -av --exclude thumbs /storage root@xx.27.1.xx:/storage
root@xx.27.1.xx's password: 
building file list ... 

Yaklaşık bir saattir oturuyorum ... 135GB görüntü ve klasör

/storage takılı bir ext3 scsi sürücüsüdür.

Rsync'in dosyaları / dizinleri hesaplamak için bu kadar uzun süre oturması normal midir?


Kaç dosya? Çok sayıda dosyayla biraz zaman alacak.
Helvick

muhtemelen binlerce ... resim yüklemeleri kullanıcı dizini ...
Andrew Fashion

Rsync'in bu bölümünün binlerce, binlerce ve binlerce dosya olduğunda bir saatten fazla sürdüğünü gördüm. 'Top' çalıştırırsanız G / Ç beklemesi görüyor musunuz?
troyengel

Merak ettiğim için koşup df -ibize IUseddepolamada ne olduğunu söyleyebilir misin ? Bize kaç dosya + klasörünüz olduğu hakkında kabaca bir fikir verecektir.
Zoredache

1383641, dosya miktarı bu mu?
Andrew Fashion

Yanıtlar:


24

rsync 2.x ön tarafta tam bir dosya listesi oluşturur.

Ekle -Pseçeneğini ve bir ilerleme göstergesi görürsünüz.

Gerçekten asılı olduğunu düşünüyorsanız, başka bir terminalde rsync pidini bulun ve sonra

  1. Koş strace -p PIDve ne yaptığını gör. (Durdurmak için ^ C tuşuna basın.)

  2. ps -o wchan PIDÇekirdeğin neresinde olduğunu görmek için koş .


Vay canına strace! Muhtemelen dairesel bir şeyin devam ettiğini göreceksiniz: Atalarının dizinlerinden birine atıfta bulunan bir bağlantı gibi. Benim durumumda derinliği üzerinde bir sınırı olmayan bir sanal dosya sistemi kullanıyordum, yani "sonsuz" birçok alt dizini vardıtagfs/books/+/books/+/books/+/ ...
Zaz

@Zaz Ayrıca derinlemesine çok sayıda alt dizinim var. Ama bu benim sistem tasarımımda. Bunu çözmenin bir yolu var mı?
user1641443

@ user1641443: Üzgünüm, bu beni aşıyor.
Zaz

@ user1641443: 1: Martin'in dediği gibi rsync> 3.0'ı deneyin . 2: Her biri daha küçük bir alt ağaçta birden çok rsync işlemi çalıştırın. 3: Kendi ayrı sorunuzu açın.
poolie

15

Burada açıklanan artımlı dosya listelerinden yararlanabileceğiniz rsync 3.0.x sürümüne geçmelisiniz . Milyonlarca görüntüyü rsyncing ediyorum (toplam ~ 200GB) ve rsync 2.x'ten 3.x'e giderken muazzam bir hız gördüm.

Yine de, tüm bu verileri incelemek muhtemelen uzun zaman alacaktır. Benim durumumda, iki oldukça güçlü DL380 G5 sunucusu arasında hala bir saatten fazla sürüyor.


Ayrıca bazı bayrakların eski davranışı zorlayacağını unutmayın; benim için öyleydi --delay-updates.
Xiong Chiamiov

1
@XiongChiamiov Kullandığım tek seçenek "-a" ve "--progress" ve sürüm 3.1.x hala artımlı bir dosya listesi oluşturuyor. Neden?
Michael

3

Daha önce bunun duasılı olduğunu da fark ettiniz . Bu dosya sisteminde bir şey var ve rsyncher ne olursa olsun vuruyor du.

Kontrol edebileceğiniz hızlı bir şey, disk sorununu gösteren çekirdek hata mesajlarıdır. Aşağıdakileri yazın dmesgve bakın.


1

"Bina dosya listesi ..." mesajından sonraki askıya alma, MTU uyumsuzluğundan kaynaklanabilir, örneğin MTU 9000 ile ağ arabirimlerini kurduysanız, ancak aralarında geçiş yapmadıysanız, küçük paketler (rsync sunucusuna bağlanmak gibi) geçecek, ancak daha büyük olmayanlar (dosya listesini göndermek gibi).


çok arama sonra bu rastladım ve o gitmek ve kontrol etmek istedi - rsync standart 1450 mtu ile bir vpn üzerinde çalışıyordu ama siteler arasında ekipman kontrol etmiyorum - vpn mtu 1430 aşağı değiştirdi ve ihlal rsync% 100 çalışıyor (ve aniden diğer ağ garipliği de kayboldu!) teşekkürler!
l0ft13 10:18

0

Buna ve diğer du /storageaskıya alma soruna dayanarak , sorunun ne olduğunu duya rsyncda olmadığını düşünmemi sağlıyor , ancak bazı sorunlar var /storage.

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.