Làm cho rsync sử dụng ít băng thông hơn?


46

Tôi sử dụng rsync để sao lưu và đồng bộ hóa chia sẻ mạng và máy tính của mình. Tôi đã tìm ra điều này.

Vấn đề là, khi sử dụng rsync để truyền tệp, nó sử dụng tất cả băng thông có thể. Tôi muốn giới hạn tốc độ của nó, để tôi có thể sử dụng kết nối của mình cho những thứ khác.

Cụ thể, ngay bây giờ tôi đang nghe Last.FM, nhưng nó vẫn bị cắt, vì rsync đang bão hòa kết nối cục bộ.

Nghe có vẻ không ổn, nhưng trong trường hợp này mạng LAN của tôi thực sự nhanh như internet của tôi (10 megabit cho cả hai, đại học yay!). Dù bằng cách nào, tôi không có thêm băng thông trong khi rsync đang chạy. Có ý kiến ​​gì không?

Ồ, btw, cụ thể là tôi đang chạy Ubuntu 9.04.

Câu trả lời:


67

Sử dụng --bwlimit=KBPS tùy chọn để giới hạn băng thông I / O, KBytes mỗi giây

Cũng tham khảo trang người đàn ông .


Hoàn hảo. Tôi không biết tại sao tôi lại bỏ lỡ điều đó trong mantrang lần đầu tiên.
Mike Cooper

8
sau thực tế, nhưng muốn chỉ ra rằng tùy chọn này giới hạn băng thông trung bình. tệp đầu tiên được gửi đầy đủ và các tệp tiếp theo được điều chỉnh để cố gắng giảm xuống giá trị băng thông được chỉ định. để thực sự giới hạn băng thông, bạn sẽ muốn xem xét một cái gì đó nhưtrickle
joshtronic

1
@joshtronic Tôi tự hỏi nếu bạn nhận thấy câu trả lời của giám sát viên? Bây giờ tôi đã kiểm tra điều này và có thể chứng minh rằng thực tế là "tệp đầu tiên được gửi đầy đủ" là không đúng ngoại trừ các tệp nhỏ nhất.

20

(Điều này lý tưởng sẽ là một trả lời cho nhận xét của joshtronic )

--bwlimit=XXtrong thực tế có vấn đề ngược lại; việc chuyển tiền thực sự là một trung bình di động - vì những điều cơ bản của Rupync giải thích một cách hữu ích :

Do tính chất của truyền rsync, các khối dữ liệu được gửi, sau đó nếu rsync xác định việc truyền quá nhanh, nó sẽ đợi trước khi gửi khối dữ liệu tiếp theo. Kết quả là tốc độ truyền trung bình bằng giới hạn quy định.

Không rõ liệu trung bình có được thực hiện trên các tệp hay không, nhưng trong mọi trường hợp, điều đó không đúng

tệp đầu tiên được gửi đầy đủ và các tệp tiếp theo được điều chỉnh để cố gắng giảm xuống giá trị băng thông được chỉ định

Trong thực tế, tệp đầu tiên sẽ được điều chỉnh miễn là nó đủ lớn để tính trung bình để khởi động (có nghĩa là tất cả trừ các tệp nhỏ nhất).

Bạn nói đúng rằng trò lừa bịp sẽ là một giải pháp tốt hơn, nhưng những gì tôi hiểu được từ bài giải thích (" Trickle: Trình tạo băng thông người dùng cho các hệ thống giống Unix ") trickle cũng hoạt động bằng cách trì hoãn I / O dựa trên mức trung bình chuyển . Tôi đoán hy vọng trong việc khuyến nghị rằng nó sử dụng phép đo tần số cao hơn để áp dụng mức trung bình. Tôi chưa thể tìm thấy bất kỳ dữ liệu trực tuyến nào xác nhận đây là trường hợp (mặc dù bài báo ở trên có đề cập đến rsyncmã là "đơn giản", cho thấy các tác giả tricklenghĩ rằng họ làm việc tốt hơn).

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.