Nén và sao lưu các file 1 Sao l ưu các file (lệ nh tar)

Một phần của tài liệu Hệ thống file (Trang 46 - 48)

3 file:ELF 2-bit LSB executable, Intel 8086,version 1, 4 dynamically linked, not stripped

3.5Nén và sao lưu các file 1 Sao l ưu các file (lệ nh tar)

Dữ liệu rất có giá trị, sẽ mất nhiều thời gian và công sức nếu phải tạo lại, thậm chí có lúc cũng không thể nào tạo lại được. Vì vậy, Linux đưa ra các cách thức để người dùng bảo vệ dữ liệu của mình.

Có bốn nguyên nhân cơ bản khiến dữ liệu có thể bị mất: lỗi phần cứng, lỗi phần mềm, lỗi do con người hoặc do thiên tai.

Sao lưu là cách để bảo vệ dữ liệu một cách kinh tế nhất. Bằng cách sao lưu dữ liệu, sẽ không có vấn đề gì xảy ra nếu dữ liệu trên hệ thống bị mất.

Một vấn đề rất quan trọng trong việc sao lưu đó là lựa chọn phương tiện sao lưu. cần phải quan tâm đến giá cả, độ tin cậy, tốc độ, ích lợi cũng như tính khả dụng của các phương tiện sao lưu.

Có rất nhiều các công cụ có thể được sử dụng để sao lưu. Các công cụ truyền thống là

tar, cpio và dump (công cụ trong tài liệu này là tar). Ngoài ra còn rất nhiều các công cụ

khác có thể lựa chọn tùy theo phương tiện sao lưu có trong hệ thống.

Có hai kiểu sao lưu là sao lưu theo kiểu toàn bộ (full backup) và sao lưu theo kiểu tăng dần (incremental backup). Sao lưu toàn bộ thực hiện việc sao mọi thứ trên hệ thống file, bao gồm tất cả các file. Sao lưu tăng dần chỉ sao lưu những file được thay đổi hoặc được tạo ra kể từ đợt sao lưu cuối cùng.

Việc sao lưu toàn bộ có thể được thực hiện dễ dàng với lệnh tar với cú pháp:

tar [tùy-chọn] [<file>, ...] [<thư-mục>, ...]

Lệnh (chương trình) tar được thiết kế để tạo lập một file lưu trữ duy nhất. Với tar, có thể kết hợp nhiều file thành một file duy nhất có kích thước lớn hơn, điều này sẽ giúp cho việc di chuyển file hoặc sao lưu băng từ trở nên dễ dàng hơn nhiều.

Lệnh tar có các lựa chọn: -c, --create : tạo file lưu trữ mới.

-d, --diff, --compare : tìm ra sự khác nhau giữa file lưu trữ và file hệ thống được lưu trữ.

--delete : xóa từ file lưu trữ (không sử dụng cho băng từ).

-r, --append : chèn thêm file vào cuối file lưu trữ.

-t, --list : liệt kê nội dung của một file lưu trữ.

-u, --update : chỉ thêm vào file lưu trữ các file mới hơn các file đã có.

-x, --extract, --get : tách các file ra khỏi file lưu trữ.

-C, --directory tên-thư-mc : thay đổi đến thư mục có tên là tên-thư-mc.

--checkpoint : đưa ra tên thư mục khi đọc file lưu trữ.

-f, --file [HOSTNAME:]file : tùy chọn này xác định tên file lưu trữ hoặc thiết bị lưu trữ là file

(nếu không có tùy chọn này, mặc định nơi lưu trữ là /dev/rmt0).

-h, --dereference : không hiện các file liên kết mà hiện các file mà chúng trỏ tới.

-k, --keep-old-files : giữ nguyên các file lưu trữ đang tồn tại mà không ghi đè file lưu trữ mới

lên chúng.

-K, --starting-file file : bắt đầu tại file trong file lưu trữ. -l, --one-file-system : tạo file lưu trữ trên hệ thống file cục bộ.

-M, --multi-volume : tùy chọn này được sử dụng khi dung lượng của file cần sao lưu là lớn và

không chứa hết trong một đơn vị lưu trữ vật lý.

-N, --after-date DATE, --newer DATE : chỉ lưu trữ các file mới hơn các file được lưu trữ trong ngày DATE.

--remove-files : xóa file gốc sau khi đã sao lưu chúng vào trong file lưu trữ.

--totals : đưa ra tổng số byte được tạo bởi tùy chọn --create. (adsbygoogle = window.adsbygoogle || []).push({});

-v, --verbose : hiển thị danh sách các file đã được xử lý.

Ví dụ:

# tar --create --file /dev/ftape /usr/src

tar: Removing leading / from absolute path names in the archive

#

Lệnh trên tạo một file sao lưu của thư mục /usr/src trong thư mục /dev/ftape, (dòng thông báo ở trên cho biết rằng tar sẽ chuyển cả dấu / vào trong file sao lưu).

Nếu việc sao lưu không thể thực hiện gọn vào trong một băng từ, lúc đó hãy sử dụng tùy chọn -M:

# tar -cMf /dev/fd0H1440 /usr/src

tar: Removing leading / from absolute path names in the archive

8 6

Prepare volume #2 for /dev/fd0H1440 and hit return: #

Chú ý rằng phải định dạng đĩa mềm trước khi thực hiện việc sao lưu, có thể sử dụng một thiết bị đầu cuối khác để thực hiện việc định dạng đĩa khi tar yêu cầu một đĩa mềm mới.

Sau khi thực hiện việc sao lưu, có thể kiểm tra kết quả của công việc bằng tùy chọn --

compare:

# tar --compare --verbose -f /dev/ftape

usr/src/ usr/src/Linux

usr/src/Linux-1.2.10-includes/ ...

#

Để sử dụng kiểu sao lưu tăng dần, hãy sử dụng tùy chọn -N:

# tar --create --newer '8 Sep 1995' --file /dev/ftape /usr/src --verbose

tar: Removing leading / from absolute path names in the archive usr/src/ usr/src/Linux-1.2.10-includes/ usr/src/Linux-1.2.10-includes/include/ usr/src/Linux-1.2.10-includes/include/Linux/ usr/src/Linux-1.2.10-includes/include/Linux/modules/ usr/src/Linux-1.2.10-includes/include/asm-generic/ usr/src/Linux-1.2.10-includes/include/asm-i386/ usr/src/Linux-1.2.10-includes/include/asm-mips/ usr/src/Linux-1.2.10-includes/include/asm-alpha/ usr/src/Linux-1.2.10-includes/include/asm-m68k/ usr/src/Linux-1.2.10-includes/include/asm-sparc/ usr/src/patch-1.2.11.gz #

Lưu ý rằng, tar không thể thông báo được khi các thông tin trong inode của một file bị thay đổi, ví dụ như thay đổi quyền truy nhập của file, hay thay đổi tên file chẳng hạn. Để biết được những thông tin thay đổi sẽ cần dùng đến lệnh find và so sánh với trạng thái hiện thời của file hệ thống với danh sách các file được sao lưu từ trước.

Một phần của tài liệu Hệ thống file (Trang 46 - 48)