rsync เป็นเพียงการแขวนสร้างรายชื่อไฟล์


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

ฉันนั่งประมาณหนึ่งชั่วโมง ... มันมีรูปภาพและโฟลเดอร์ 135GB

/storage เป็นไดรฟ์ ext3 scsi ที่เมาท์

เป็นเรื่องปกติหรือไม่ที่ rsync จะต้องใช้เวลานานในการคำนวณไฟล์ / ไดเรกทอรี?


มีไฟล์กี่ไฟล์? ด้วยไฟล์จำนวนมากมันจะใช้เวลาสักครู่
Helvick

อาจจะหลายพัน ... ภาพของการอัปโหลดไดเรกทอรีผู้ใช้ ...
แอนดรูแฟชั่น

ฉันได้เห็น rsync ในส่วนนี้ใช้เวลานานกว่าหนึ่งชั่วโมงเมื่อมีไฟล์หลายพันไฟล์ หากคุณเรียกใช้ 'ด้านบน' คุณเห็น I / O รอ?
troyengel

เพียงเพราะฉันอยากรู้อยากเห็นคุณสามารถเรียกใช้df -iและบอกให้เราทราบสิ่งที่คุณมีสำหรับIUsed/ ที่เก็บ? มันจะทำให้เรามีความคิดคร่าวๆของจำนวนไฟล์ + โฟลเดอร์ที่คุณมี
Zoredache

1383641 นั่นคือปริมาณของไฟล์?
Andrew Fashion

คำตอบ:


24

rsync 2.x สร้างรายชื่อไฟล์แบบเต็มหน้า

เพิ่ม-Pตัวเลือกแล้วคุณจะเห็นตัวบ่งชี้ความคืบหน้า

หากคุณคิดว่ามันกำลังแขวนอยู่จริงๆในเทอร์มินัลอื่นจะหา pid ของ rsync แล้ว

  1. เรียกใช้strace -p PIDและดูสิ่งที่กำลังทำ (กด ^ C เพื่อหยุด)

  2. เรียกใช้ps -o wchan PIDเพื่อดูว่ามันอยู่ในเคอร์เนล


ว้าวstraceเจ๋งมาก! คุณอาจพบว่ามีบางอย่างเกิดขึ้นแบบวนเวียนอยู่: เหมือนลิงก์ที่อ้างถึงหนึ่งในไดเรกทอรีบรรพบุรุษ ในกรณีของฉันฉันใช้ระบบแฟ้มเสมือนที่ไม่มีขีด จำกัด ในเชิงลึกนั่นคือมันมี "อนันต์" หลายไดเรกทอรีย่อยtagfs/books/+/books/+/books/+/ ...
Zaz

@Zaz ฉันมีไดเรกทอรีย่อยจำนวนมากในเชิงลึก แต่นี่คือการออกแบบระบบของฉัน มีวิธีแก้ปัญหานี้หรือไม่?
user1641443

@ user1641443: ฉันขอโทษนั่นคือฉัน
Zaz

@ user1641443: 1: ลอง rsync> 3.0 มาร์ตินกล่าวว่า 2: เรียกใช้กระบวนการ rsync หลายกระบวนการแต่ละรายการบนต้นไม้ย่อยที่เล็กกว่า 3: เปิดคำถามแยกต่างหาก
poolie

15

คุณควรอัพเกรดrsync 3.0.xที่คุณจะได้รับประโยชน์จากรายชื่อไฟล์ที่เพิ่มขึ้น, การอธิบายที่นี่ ฉันกำลังถ่ายภาพนับล้านภาพ (รวมประมาณ 200GB) และเห็นการเร่งความเร็วอย่างมหาศาลเมื่อเปลี่ยนจาก rsync 2.x เป็น 3.x

ถึงกระนั้นมันอาจจะใช้เวลานานในการอ่านข้อมูลทั้งหมด ในกรณีของฉันมันยังคงใช้เวลามากกว่าหนึ่งชั่วโมงระหว่างเซิร์ฟเวอร์ DL380 G5 ที่ทรงพลังสองตัว


นอกจากนี้โปรดทราบว่าธงบางรายการจะบังคับพฤติกรรมเดิม --delay-updatesสำหรับผมแล้วมันเป็น
Xiong Chiamiov

1
@XiongChiamiov ตัวเลือกเดียวที่ฉันใช้คือ "-a" และ "--progress" และรุ่น 3.1.x ยังคงสร้างรายชื่อไฟล์เพิ่มเติม ทำไม?
ไมเคิล

3

คุณสังเกตเห็นก่อนหน้านี้ว่าduถูกแขวนเช่นกัน มีบางอย่างเกิดขึ้นกับระบบไฟล์นี้และrsyncกำลังเกิดอะไรduขึ้น

สิ่งหนึ่งที่รวดเร็วที่คุณสามารถตรวจสอบได้คือข้อความแสดงข้อผิดพลาดเคอร์เนลที่ระบุถึงปัญหาดิสก์ พิมพ์dmesgและดูสิ่งที่อยู่ด้านล่าง


1

การแฮงค์หลังจากข้อความ "การสร้างรายการไฟล์ ... " อาจเกิดจาก MTU ไม่ตรงกันเช่นหากคุณตั้งค่าอินเทอร์เฟซเครือข่ายด้วย MTU 9000 แต่ไม่สลับระหว่างแพ็คเก็ตขนาดเล็ก (เช่นการเชื่อมต่อกับเซิร์ฟเวอร์ rsync) จะผ่าน แต่ไม่ใหญ่กว่า (เช่นส่งรายการไฟล์)


หลังจากค้นหามากฉันเจอสิ่งนี้และแจ้งให้ฉันไปและตรวจสอบ - กำลังเรียกใช้ rsync ผ่าน VPN ด้วยมาตรฐาน 1450 mtu แต่ฉันไม่ได้อยู่ในการควบคุมอุปกรณ์ในระหว่างไซต์ - เปลี่ยน vpn mtu เป็น 1430 และ v iola rsync ใช้งานได้ 100% (และในทันใดเครือข่ายอื่นก็หายไปด้วย!) ขอบคุณ!
l0ft13

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.