Làm cách nào để sử dụng tar để sao lưu và khôi phục hoàn toàn với hệ thống trên SSD và home trên ổ cứng?


14

Làm cách nào để sử dụng tar để sao lưu và khôi phục hoàn toàn với hệ thống trên SSD và home trên ổ cứng?

Các câu trả lời sao lưu và khôi phục hiện có dường như không bao gồm trường hợp root và home nằm trên các thiết bị riêng biệt


Chào mừng đến với AU! Bạn đang tìm kiếm một điều một lần hoặc một giải pháp liên tục / định kỳ? Là đích sao lưu cục bộ hoặc từ xa? tarkhông thực sự quan tâm đến các thiết bị và điểm gắn kết. Vui lòng chỉnh sửa bài viết của bạn để bao gồm các thông tin bổ sung.
David Foerster

"Các câu trả lời sao lưu và khôi phục hiện có dường như không bao gồm trường hợp root và home nằm trên các thiết bị riêng biệt" lý do: đó là một ý tưởng tồi và làm cho 2 tệp sao lưu không chỉ thông minh hơn mà còn hiệu quả hơn.
Rinzwind

Câu trả lời:


17

Nó được khuyến khích để thực hiện sao lưu HAI. 1 cho / và 1 cho / nhà nếu chúng ở trên phân vùng khác nhau. Nếu bạn muốn một lệnh, bạn sẽ phải thêm rất nhiều ngoại lệ cho lệnh đó. Thí dụ:

sudo su
cd /
tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --one-file-system / 
tar -cvpzf backuphome.tar.gz --one-file-system /home/

sẽ sao lưu root của bạn và loại trừ TẤT CẢ các phân vùng được gắn, như / media (bạn không muốn sao lưu các thiết bị bên ngoài (bạn thực sự không)) và bạn hoàn toàn KHÔNG muốn sao lưu một cái gì đó như / dev hoặc / Proc. Và / nhà đi đến một bản sao lưu khác.

Trong phương pháp trên, bản sao lưu được lưu trữ trong /. Nó sẽ được bảo đảm hơn để lưu trữ nó trên một phương tiện truyền thông bên ngoài; sau đó bạn có thể đặt một thư mục ở phía trước backup.tar.gz và thả --exclude=...từ lệnh 1.

  • backup.tar.gz là bản sao lưu.
  • Các --excludesẽ ngăn chặn việc sao lưu thực tế để được backupped.
  • cvpzf: tạo, dài dòng, giữ quyền, nén, sử dụng tệp.

  • --one-file-system - Không bao gồm các tệp trên một hệ thống tệp khác. Nếu bạn muốn các hệ thống tập tin khác, chẳng hạn như phân vùng / nhà hoặc phương tiện bên ngoài được gắn vào / phương tiện được sao lưu, bạn cần sao lưu riêng chúng hoặc bỏ qua cờ này. Nếu bạn bỏ qua cờ này, bạn sẽ cần thêm một số đối số --exclude = để tránh các hệ thống tệp bạn không muốn. Đây sẽ là các thư mục / Proc, / sys, / mnt, / media, / run và / dev trong root./ Proc và / sys là các hệ thống tệp ảo cung cấp các cửa sổ thành các biến của kernel đang chạy, vì vậy bạn không muốn thử và sao lưu hoặc khôi phục chúng. / dev là một tmpfs có nội dung được tạo và xóa động bởi udev, vì vậy bạn cũng không muốn sao lưu hoặc khôi phục nó. Tương tự, / run là một tmpfs chứa các biến về hệ thống đang chạy không cần sao lưu ( Nguồn ).


Vì vậy, nếu bạn thực sự vẫn muốn có một "lớp lót" thì nó có thể trông như thế này:

cd /
tar -cvpzf backup.tar.gz --exclude=/backup.tar.gz --exclude=/proc 
--exclude=/tmp --exclude=/mnt --exclude=/dev --exclude=/sys / 

(Tôi hy vọng tôi có tất cả những gì cần loại trừ)


Khôi phục sẽ là

sudo su
cd /
tar xvzf backup.tar.gz

Tôi đã không sử dụng sudotrước lệnh tar vì bạn sẽ nhận được thông báo lỗi liên quan đến quyền (vì các tệp thuộc sở hữu của root).


Đề xuất hai dòng của bạn hoạt động rất tốt ngoại trừ khi sao lưu hệ thống tôi nhận được một tin nhắn. "/lib64/ld-linux86-64.so2 tar: /: tệp đã thay đổi khi chúng tôi đọc nó." Đây có phải là bình thường trong một bản sao lưu?
Buildit

Đúng. tar sẽ thông báo cho bạn về những thay đổi trong tệp trong hành động sao lưu của chính tệp đó (nó kiểm tra trạng thái của tệp trước và sau khi sao lưu tệp). Nói chung những tin nhắn này là vô hại. Nếu bạn có phần mềm / dữ liệu của riêng bạn và lấy nó trên một trong những tệp đó, tôi sẽ tự tạo lại bản sao lưu.
Rinzwind

Tar tiêu chuẩn không nén, nó chỉ tham gia mọi thứ vào một tệp (TAR = Tape ARchive). Thay vào đó hãy thử gtar.
Alan Campbell

1
Nếu lệnh không sao lưu một số thư mục nhất định, tôi có cần tạo lại chúng khi khôi phục hệ thống không? Ngoài ra những lợi thế nào phương pháp này có chỉ đơn giản là sử dụng Deja-Dup?
user4493605
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.