Làm cách nào tôi có thể sử dụng rsync với hệ thống tệp FAT?


27

Tôi muốn viết một tập lệnh sao lưu đơn giản giúp lưu một số dữ liệu vào ổ đĩa FAT. Tôi có nên định dạng lại ổ đĩa và sử dụng hệ thống tệp tốt hơn hay có thể sử dụng rsync với FAT không? Nếu vậy, tôi có thể gặp vấn đề gì? Hiệu suất sẽ tồi tệ hơn nhiều?

EDIT: Đây là trên linux, thậm chí còn không biết có một rsync cho windows. Các nguồn là các hệ thống tệp khác nhau (đó là một mớ hỗn độn) và đích đến hiện đang được định dạng bằng FAT32.

Cảm ơn câu trả lời của bạn, có lẽ tôi sẽ đi định dạng lại, vì tôi không hoàn toàn chắc chắn về kích thước tệp chúng tôi sẽ có.

Câu trả lời:


10

Tôi sẽ khuyên bạn nên định dạng lại cho một fs linux nếu bạn có thể. Như đã đề cập, FAT có giới hạn kích thước tệp tương đối thấp và có thể không xử lý quyền và quyền sở hữu hoàn toàn đúng. Quan trọng hơn, FAT không theo dõi thời gian sửa đổi trên các tệp chính xác như là ext3 (FAT chỉ chính xác trong vòng 2 giây). Điều này dẫn đến hành vi đặc biệt khó chịu với rsync vì đôi khi nó sẽ quyết định rằng các tệp gốc mới hơn hoặc cũ hơn tệp sao lưu đủ để nó cần sao chép lại dữ liệu hoặc ít nhất là kiểm tra lại các giá trị băm. Nói chung, nó làm cho hiệu suất rất kém trên các bản sao lưu. Nếu bạn phải gắn bó với FAT, hãy xem các cờ - chỉ kích thước và --modify-window của rsync như cách giải quyết.


36

Tôi sử dụng rsync để sao lưu ảnh tôi lưu trữ và xử lý trên máy tính xách tay chạy Linux (Ubuntu 10.4). Tôi sao lưu chúng vào một NAS rất cơ bản với ổ cứng 1TB được định dạng là FAT32. Vỏ và phần sụn NAS rất cơ bản, vì vậy nó không cho phép định dạng lại ổ đĩa.

Lệnh tôi sử dụng là:

$ rsync --progress --modify-window=1 --update --recursive --times \
  /home/mloskot/Pictures /mnt/nas/Pictures

Để cho phép so sánh thời gian chính xác - tùy chọn -modify-window = 1 được sử dụng, bởi vì FAT32 ghi lại dấu thời gian của tệp với độ phân giải 2 giây, khác với (các) hệ thống tệp được sử dụng trên Linux. --Update để tránh sao chép không cần thiết các tệp hiện có - nó hoạt động như sao lưu gia tăng.

Để thực hiện so sánh dựa trên kích thước, bạn có thể chỉ định tùy chọn - chỉ kích thước.


Cảm ơn bạn đã chia sẻ, tôi sẽ kiểm tra tổ hợp cờ của bạn :-) Hướng dẫn rsync hơi cồng kềnh ...
DutchUncle

3
--modify-window = 1 tạo ra sự khác biệt lớn. Nó đã giải quyết - tôi hiện đã hoàn thành trong một phần nghìn giây thay vì vài phút.
Wolfgang Fahl

4
Đối với một số lý do tôi cần phải sử dụng --modify-window=2. Khi sử dụng 1nó vẫn sao chép tất cả các tập tin. Sao chép từ NTFS sang FAT32.
Luc

Đôi khi, ngay cả với --modify-window, rsync vẫn khăng khăng sao chép tất cả các tệp của tôi. Tôi đang sử dụng --size-onlytùy chọn này và nó hoạt động tốt. Đó là từ Mac OS Extended (Phân biệt chữ hoa chữ thường, Nhật ký) đến FAT32.
diachedelic

Có lẽ là một ý tưởng tốt để thêm '--ignore-error --max-size = 4GB' để tránh sự cố trên các tệp không phù hợp với FAT32.
Maksym

2

Đây là rsync trên linux đến / từ đĩa FAT (phiên bản nào của FAT?) Hay bạn đang sử dụng phiên bản Windows cwRsync?

Dù bằng cách nào, FAT16 và 32 đều hoạt động với cả hai phiên bản (bản thân tôi chưa thử dùng FAT12). Nếu bạn đang sử dụng hệ thống linux, tôi sẽ cho rằng hiệu năng từ hệ thống tệp FAT kém hơn một chút so với sử dụng hệ thống tệp định dạng linux vì nói chung chúng chậm hơn một chút (rất vui khi ai đó đặt tôi ngay trên hệ thống này nếu tôi sai rồi).


1

Có định dạng lại! Bạn phải luôn luôn sử dụng một hệ thống tệp tốt hơn so với FAT trừ khi bạn phải vì lý do tương thích!

Tôi khuyên bạn nên định dạng ổ đĩa bằng cùng một hệ thống tệp mà bạn đang kết nối từ nếu không bạn sẽ có khả năng mất quyền và thuộc tính được đặt trên các tệp và thư mục của bạn.

FAT (có lẽ là FAT32) có thể có vấn đề do kích thước tệp tối đa (4GB), kích thước âm lượng tối đa (2Tb - dù sao cũng chỉ một ngày!), Phân mảnh, v.v.

Tuy nhiên nếu không có vấn đề nào trong số này và bạn chỉ muốn một hệ thống tệp tương thích đơn giản, nhanh và tối đa thì FAT sẽ ổn. Tốc độ khôn ngoan, do không có nhật ký, quyền, v.v., FAT có thể thực hiện các giải pháp thay thế - NTFS / Ext3 / HFS ...


1

Có một lý do bạn đang sử dụng ổ đĩa FAT? Rsync nên hoạt động để lưu dữ liệu, nhưng bạn sẽ mất thông tin meta về các tệp ... quyền sở hữu, quyền, v.v ... và bạn có nguy cơ gặp sự cố nếu bạn bao giờ rsync các tệp lớn vì FAT có giới hạn kích thước tệp là 2 gig.

Hiệu suất tôi không thể nhận xét, tôi chưa bao giờ chạy điểm chuẩn so với những người khác. Tôi tưởng tượng nó cũng có liên quan nhiều đến thông số kỹ thuật cũng như hệ thống tập tin của ổ đĩa liên quan đến điều đó.

Nếu bạn có thể , tôi sẽ định dạng lại định dạng gốc mà bạn dự định sử dụng với máy tính (OS X? Linux?), Nếu không có gì khác hơn là giữ siêu dữ liệu và mất cái tát trán trong vài tháng khi tôi kết thúc đồng bộ hóa một cái gì đó có lỗi do giới hạn hệ thống tập tin. việc chia sẻ thường xuyên với các hệ thống khác có thể được thực hiện thông qua việc chia sẻ xuất hoặc nếu bạn sử dụng NTFS, bạn có thể giữ một số siêu dữ liệu nhưng vẫn có được khả năng tương thích đa hệ thống nhất vì Mac, NT và Linux đều hỗ trợ khả năng R / W NTFS.

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.