rsync chỉ treo, xây dựng danh sách tập tin


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

Tôi đã ngồi được khoảng một giờ ... đó là 135GB hình ảnh và thư mục

/storage là một ổ đĩa ext3 scsi gắn kết.

Có phải bình thường khi rsync ngồi lâu này để tính toán các tập tin / thư mục?


Có bao nhiêu tập tin? Với số lượng tệp rất lớn, nó sẽ mất một lúc.
Helvick

có lẽ hàng ngàn ... thư mục hình ảnh của người dùng tải lên ...
Andrew Fashion

Tôi đã thấy phần rsync này mất hơn một giờ khi có hàng ngàn và hàng ngàn tệp. Nếu bạn chạy 'top', bạn có thấy I / O chờ không?
troyengel

Chỉ vì tôi tò mò, bạn có thể chạy df -ivà cho chúng tôi biết bạn có gì IUsedtrên / lưu trữ không? Nó sẽ cho chúng tôi một ý tưởng sơ bộ về số lượng tệp + thư mục bạn có.
Zoredache

1383641, đó có phải là số lượng tập tin?
Thời trang Andrew

Câu trả lời:


24

rsync 2.x không xây dựng một danh sách tập tin đầy đủ lên phía trước.

Thêm -Ptùy chọn và bạn sẽ thấy một chỉ báo tiến độ.

Nếu bạn nghĩ rằng nó thực sự bị treo, trong một thiết bị đầu cuối khác, hãy tìm pid của rsync và sau đó

  1. Chạy strace -p PIDvà xem những gì nó đang làm. (Nhấn ^ C để dừng lại.)

  2. Chạy ps -o wchan PIDđể xem nó ở đâu trong kernel.


Wow stracethật tuyệt! Bạn có thể sẽ thấy rằng một cái gì đó hình tròn đang diễn ra: Giống như một liên kết đề cập đến một trong những thư mục tổ tiên của nó. Trong trường hợp của tôi, tôi đã sử dụng một hệ thống tệp ảo không có giới hạn về độ sâu của nó, tức là nó có "vô số" nhiều thư mục contagfs/books/+/books/+/books/+/ ...
Zaz

@Zaz Tôi cũng có một số lượng lớn các thư mục con, chuyên sâu. Nhưng đây là trong thiết kế hệ thống của tôi. Có cách nào để giải quyết này?
dùng1641443

@ user1641443: Tôi xin lỗi, điều đó vượt quá tôi.
Zaz

@ user1641443: 1: Hãy thử rsync> 3.0 như Martin nói . 2: Chạy nhiều quy trình rsync mỗi quy trình trên một cây con nhỏ hơn. 3: Mở câu hỏi riêng của bạn.
poolie

15

Bạn nên nâng cấp lên rsync 3.0.x nơi bạn sẽ nhận được lợi ích của danh sách tệp gia tăng, được giải thích tại đây . Tôi đang kết nối hàng triệu hình ảnh (tổng cộng ~ 200 GB) và thấy tốc độ tăng nhanh khi chuyển từ rsync 2.x sang 3.x.

Mặc dù vậy, có lẽ sẽ mất nhiều thời gian để đi qua tất cả dữ liệu đó. Trong trường hợp của tôi, nó vẫn mất hơn một giờ giữa hai máy chủ DL380 G5 khá mạnh mẽ.


Cũng lưu ý rằng một số cờ nhất định sẽ buộc các hành vi cũ; đối với tôi, đó là --delay-updates.
Xiong Chiamiov

1
@XiongChiamiov Các tùy chọn duy nhất tôi đang sử dụng là "-a" và "--propro" và phiên bản 3.1.x vẫn đang xây dựng một danh sách tệp gia tăng. Tại sao?
Michael

3

Bạn lưu ý trước đó duđã được treo là tốt. Một cái gì đó là lên với hệ thống tập tin này, và rsyncđang đánh bất cứ điều gì duđã được.

Một điều nhanh chóng bạn có thể kiểm tra là thông báo lỗi kernel cho biết có vấn đề về đĩa. Nhập dmesgvà xem những gì ở dưới cùng.


1

Việc treo sau thông báo "danh sách tệp xây dựng ..." có thể do MTU không khớp, ví dụ: nếu bạn đã thiết lập giao diện mạng với MTU 9000 nhưng không chuyển đổi giữa, các gói nhỏ (như kết nối với máy chủ rsync) sẽ đi qua nhưng không phải là lớn hơn (như gửi danh sách tập tin).


Sau nhiều lần tìm kiếm, tôi đã tìm thấy nó và nó nhắc tôi đi kiểm tra - đang chạy rsync trên một vpn với 1450 mtu tiêu chuẩn nhưng tôi không kiểm soát được thiết bị ở giữa các trang web - đã thay đổi vpn mtu thành 1430 và viola rsync hoạt động 100% (và đột nhiên các mạng lạ khác cũng biến mất!) cảm ơn!
l0ft13

0

Dựa trên điều này và câu hỏi khác của bạn về du /storagetreo khiến tôi nghĩ rằng không phải duhoặc rsynclà vấn đề mà là có một số vấn đề với /storage.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.