Giới thiệu
Bây giờ bạn đã có một máy chủ Linux được cấu hình hoàn hảo trên Vultr, bạn cần chọn một giải pháp sao lưu cho nó. GNU tar
là một lựa chọn rất tốt - nó đáng tin cậy và giúp bạn dễ dàng sao lưu và khôi phục máy chủ.
Cú pháp cơ bản
Tar sử dụng cú pháp sau.
sudo /usr/bin/tar -czpvf /home/john/backup/linux_backup.tar.gz /
-c
: Lưu trữ.
-z
: Sử dụng định dạng GZip để sao lưu. GZip nhanh nhưng nó tạo ra kích thước tệp lớn hơn các công cụ nén khác.
-p
: Giữ nguyên quyền để khi bạn khôi phục bản sao lưu, bạn sẽ không gặp phải vấn đề về quyền.
-v
: Hiển thị chi tiết trong quá trình sao lưu. Bỏ qua -v
nếu bạn không muốn xem đầu ra dài dòng.
-f
: Chỉ định nơi lưu trữ các tệp tar. Ở đây chúng tôi lưu tệp sao lưu vào backup
thư mục trong thư mục chính của người dùng John và đặt tên cho nó linux_backup.tar.gz
.
/
: Hệ thống tập tin gốc Linux. Điều này có nghĩa là sao lưu toàn bộ đĩa bao gồm tất cả các ổ đĩa được gắn, vì vậy hãy cẩn thận, đảm bảo loại trừ các thư mục hoặc tệp mà bạn không muốn sao lưu excluded.txt
(giải thích bên dưới).
Cải tiến
Loại trừ các tệp mà bạn sẽ không muốn (hoặc cần) để sao lưu.
sudo /usr/bin/tar --exclude-from=/home/john/exclude.txt -czpvf /home/john/backup/linux_backup.tar.gz /
Sử dụng --exclude-from=/home/john/exclude.txt
để chỉ định loại trừ trong một tập tin. Một exclude.txt
mẫu được dán bên dưới.
/home/john/backup/*
/tmp/*
/proc/*
/dev/*
/sys/*
/run/*
/var/tmp/*
/var/run/*
/var/lock/*
/usr/portage/*
/usr/src/*
Trong ví dụ này, tôi loại trừ /home/john/backup/*
, nếu không thì bản sao lưu đầu tiên sẽ được đưa vào bản sao lưu thứ hai, v.v.
Trên mọi hệ thống Linux, các /tmp/*
, /proc/*
, /dev/*
, /sys/*
, và /run/*
được tự động tạo ra, do đó bạn không cần phải bao gồm họ trong bản sao lưu, nhưng bạn cần phải giữ cho cấu trúc thư mục. Do đó, bạn cần phải sử dụng /proc/*
trong excluded.txt
, trái ngược với /proc
.
Bạn có thể thêm các tệp và thư mục khác mà bạn không muốn sao lưu. Trong ví dụ trên, tôi đã bao gồm /usr/portage/*
và /usr/src/*
. Đây là những đặc trưng của Gentoo Linux. Cái đầu tiên chứa các ebuild và gói Gentoo. Cái thứ hai chứa các nguồn kernel Gentoo Linux. Chúng rất lớn và cả hai có thể được tải xuống lại sau khi khôi phục hệ thống. Hãy chỉnh sửa excluded.txt
cho phù hợp với nhu cầu của bạn.
Thêm ngày hiện tại vào tên của bản sao lưu
sudo /usr/bin/tar --exclude-from=/home/john/exclude.txt -czpvf /home/john/backup/linux_backup-$(date +%F-%H-%M).tar.gz /
Với $(date +%F-%H-%M)
, ngày, giờ và phút hiện tại sẽ được thêm vào tên tệp sao lưu. Ví dụ , linux_backup-2015-07-02-15-22.tar.gz
.
Sử dụng chương trình nén tốt hơn ngoài GZip
sudo /usr/bin/tar --exclude-from=/home/john/exclude.txt -cJpvf /home/john/backup/linux_backup-$(date +%F-%H-%M).tar.xz /
Công -J
tắc có thể thay thế -z
để sử dụng Xz để nén. Nó cũng thay đổi phần mở rộng thành tar.xz
. Xz chậm hơn GZip, nhưng nó có tỷ lệ nén tốt hơn nhiều, dẫn đến một tệp sao lưu nhỏ hơn.
Đặt mọi thứ trong một kịch bản shell
Tạo một kịch bản.
vim /home/john/bin/linux_backup.sh
Bao gồm các mã sau đây trong kịch bản.
#!bin/sh
_tarfile=/home/john/backup/linux_backup-$(date +%F-%H-%M).tar.xz
sudo /usr/bin/tar --exclude-from=/home/john/exclude.txt -cJpvf $ /
Cấp quyền thực thi tập lệnh.
sudo chmod +x /home/john/bin/linux_backup.sh
Thực hiện sao lưu.
/home/john/bin/linux_backup.sh