Định dạng lưu trữ mạnh mẽ nhất là gì?


25

Tôi muốn sao lưu một số thư mục cũ với các tài liệu mà tôi rất hiếm khi cần truy cập. Vì thế, tôi muốn đặt tất cả chúng vào một kho lưu trữ. Vì đây sẽ là một bản sao lưu, định dạng phải phù hợp với mục đích đó. Vì vậy, dòng dưới cùng:

Cái nào là định dạng lưu trữ đáng tin cậy / mạnh mẽ nhất trong Ubuntu?

Câu trả lời:


20

Nó phụ thuộc. Hai tùy chọn phổ biến nhất là tarball và tệp zip, nhưng cả hai đều thiếu:

  • .tar băng lưu trữ là một lựa chọn rất phổ biến đối với hầu hết người dùng Linux. Nó bảo vệ các quyền của tệp UNIX (rất quan trọng đối với bản sao lưu) và các liên kết cứng. Nó được hỗ trợ ngoài hộp trên mọi bản phân phối Linux mà tôi đã thử nghiệm, cũng như một số chương trình Windows như 7-zip . Tuy nhiên, tar có một số hạn chế và nhược điểm đối với trường hợp sử dụng sao lưu, như được giải thích bởi các nhà phát triển trùng lặp . Nó có thể rất chậm: thậm chí để có được một danh sách tên tệp được lưu trữ trong kho lưu trữ, toàn bộ kho lưu trữ phải được đọc. Nó cũng không xử lý dữ liệu meta chi tiết mà một số hệ thống tập tin mới hơn có.
  • .zip tệp zip hoạt động như một tệp lưu trữ và định dạng nén. Đối với tốc độ, bạn có thể vô hiệu hóa nén hoàn toàn. Các tệp zip tốt hơn so với lưu trữ băng ở chỗ chúng lưu trữ một loại mục lục, cho phép các chương trình nhanh chóng chuyển đến tệp cụ thể mà chúng cần trích xuất. Nó cũng lưu trữ tổng kiểm tra nội dung của từng tệp để cho phép phát hiện tham nhũng tệp dễ dàng. Thật không may, các tệp zip cực kỳ phổ biến, thật không may, chúng không phù hợp để sao lưu Linux vì chúng không lưu trữ các quyền đơn giản của tệp.

Đây là hai lựa chọn khác, đáng buồn thay, cũng thiếu:

  • .7z Lưu trữ nén 7z có một số tính năng tuyệt vời như mã hóa và hỗ trợ cho các tệp rất lớn. Thật không may, nó không lưu trữ các quyền của tệp UNIX, vì vậy nó không phù hợp với các bản sao lưu của Linux.
  • .ar tài liệu lưu trữ UNIX cổ điển là tiền thân của tài liệu lưu trữ tar và chịu những hạn chế tương tự như tài liệu lưu trữ tar.

Theo tôi, không có định dạng lưu trữ sao lưu hoàn toàn mạnh mẽ cho các bản sao lưu Linux, không có định dạng nào đủ nổi tiếng để đảm bảo sự tin tưởng của tôi, bằng mọi cách.

Một cách để khắc phục những hạn chế của từng định dạng này là kết hợp chúng: ví dụ: lưu trữ từng tệp riêng lẻ trong kho lưu trữ tar và sau đó lưu trữ tất cả các tarball này trong một tệp zip.

Nếu bạn muốn sao lưu thực sự mạnh mẽ, có lẽ bạn nên xem xét các giải pháp này thay thế:

  • sao lưu trực tiếp vào một đĩa cứng ngoài, với cùng một hệ thống tệp trên cả nguồn và đích. Điều này đảm bảo rằng bạn sẽ lưu trữ các quyền và siêu dữ liệu của từng tệp chính xác như dự định. (Bên cạnh đó, chủ sở hữu và chủ sở hữu nhóm của các tệp được lưu trữ bằng cách sử dụng số userid và groupid, chứ không phải tên của họ.)

  • Sử dụng phần mềm sao chép và sao chép toàn bộ đĩa, như CloneZilla . Bạn không thể truy xuất một tệp từ một trong những bản sao lưu này, nhưng bạn có thể hoàn toàn chắc chắn rằng bạn đã lưu mọi thứ bạn có thể.

Và hãy nhớ, luôn luôn nhớ: bạn chỉ có thể tự tin về các bản sao lưu của mình nếu bạn đã cố gắng khôi phục chúng. Nếu điều tồi tệ nhất đến tồi tệ nhất và ổ cứng nguồn của bạn đã bị phá hủy hoàn toàn, bạn có thể khôi phục mọi thứ bạn cần để khôi phục lại ổ cứng mới không? Nó sẽ làm việc như bạn mong đợi? Hãy thử khôi phục bản sao lưu của bạn vào một đĩa cứng mới và thử chạy từ đĩa cứng đó trong một vài ngày. Nếu bạn nhận thấy bất cứ điều gì còn thiếu, bạn biết rằng bản sao lưu của bạn không đủ kỹ lưỡng.

Cũng nghĩ về nơi bạn đang giữ bản sao lưu của bạn. Bạn cần ít nhất một số bản sao lưu không nằm trong cùng tòa nhà với các đĩa nguồn để bảo vệ bạn khỏi bị mất cắp hoặc hỏa hoạn. Một số tùy chọn cho việc này là đám mây hoặc nhà của một người bạn.


Cảm ơn vì lời giải thích tốt về ưu và nhược điểm của TAR / ZIP! Rất hữu dụng.
Pisu

9

Một tarball ( .tartập tin) sẽ là cách để đi. Sử dụng gzipđịnh dạng nén để nén ít hơn, nhưng tốc độ tốt. bzip2chậm hơn nhiều nhưng cung cấp tỷ lệ nén tốt hơn. Đối với dữ liệu nhị phân, mặc dù không có sự khác biệt lớn.

Lệnh nén thư mục bằng cách sử dụng nén gzip:

tar czf /path/to/save/backup.tar.gz directory-to-backup

Để giải nén một tarball được nén bằng gzip trong khi vẫn giữ quyền truy cập tệp:

tar xzpf /path/to/save/backup.tar.gz

Thay thế zbằng cách jnén bzip2 và thêm vtrước v (ví dụ czvfxzpvf) để in tên tệp khi chúng được lưu trữ / giải nén .


4
Đối với độ tin cậy, bạn muốn không nén. Bất kỳ thiệt hại nào đối với kho lưu trữ nén sẽ khiến mọi thứ theo điểm thiệt hại bị mất.
psusi

5
@psusi Điều đó không đúng với bzip2, nó nén trong khối ~ 1MB. Có một cái nhìn tại bzip2recover.
phihag

@phihag, gọn gàng, sau ngần ấy năm tôi không nhận thấy điều đó! +1. Một lý do rất tốt cho bzip2 qua gzip.
psusi

7

Tôi chọn 7zip ( sudo apt-get install p7zip-full). Nó trông giống như một máy lưu trữ nén lý tưởng theo quan điểm của tôi.

Tôi không thích tarball cổ điển vì sự vụng về của họ vì toàn bộ tệp tar sẽ được giải nén (có thể xảy ra sau hậu trường, nhưng vẫn xảy ra) chỉ để xem mục lục của kho lưu trữ.


4

Mặc dù gần như không được biết đến hoặc sử dụng rộng rãi, tôi vẫn có xu hướng sử dụng afio do cách nó nén các tệp riêng lẻ do đó có thể phục hồi trong trường hợp tham nhũng. Cài đặt thông qua năng khiếu hoặc tương tự.


1

Tarball được nén (.tar.gz, .tgz), tiêu chuẩn lưu trữ Linux. Bạn không thể sai với điều đó.

Chưa bao giờ trong đời tôi có một kho lưu trữ .tar.gz bị hỏng hoặc thậm chí rắc rối. Tại FlatmateRooms, chúng tôi sử dụng điều này để lưu trữ hàng trăm ngàn hình ảnh trên máy chủ và tất cả các bản sao lưu.


0

Trong một số trường hợp, điều này là hữu ích cho tôi.

tar -cJvf paquete.tar.lzma folder-to-backup/
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.