Khi tiến hành backup, ta cần xác định:
1. Cần phải backup những gì
2. Backup như thế nào
3. Chọn loại backup nào
4. Backup vào đâu (nơi lưu backup)
Các công cụ backup
mt
mt là công cụ dùng để điều khiển tape. Nó cung cấp các câu lệnh cho phép tua lại tape, xóa tape và một số lệnh điều khiển khác
mt rewind # rewind /dev/tape
mt -f /dev/ht0 eject # eject /dev/ht0
mt erase # erase the tape
tar
tar là viết tắt của tape acchiver. Nó được dùng rộng rãi như một công cụ giúp cho việc lưu trữ. Các tùy chọn của chức năng chính của nó gồm có:
* -c hoặc –create # tạo lưu trữ mới
* -x hoặc –extract # bung lưu trữ
* -l hoặc –list # xem nội dung trong file lưu trữ
Các tùy chọn chức năng trên được dùng kèm với các tùy chọn sau:
* -f hoặc –file dùng file thay vì stdin hoặc stdout
* -v hoặc –verbose hiển thị thông tin chi tiết
* -z hoặc –gzip dùng phương pháp nén/giải nén gzip
* -j hoặc –bzip2 dùng phương pháp nén/giải nén bzip2
Ví dụ, để giải nén một file nén dùng gzip, ta có thể dùng câu lệnh sau:
$ tar zxvf somefile.tar.gz /target/dir
Khi backup với tar, ta có thể dùng các tùy chọn sau:
* -M hoặc –multi-volume cho phép backup với nhiều đĩa, tape
* -L –tape-length=N xác định chiều dài của tape
* -F, –info-script=F, –new-volume-script=F xác định script được chạy khi đổi tape
* -W, –verify kiểm tra lại bản backup sau khi hoàn tất
* -r, –append cho phép bổ sung tiếp vào một bản backup sẵn có
* -u, –update cập nhật một backup sẵn có, các file trùng tên sẽ bị ghi đè
* -g, –listed-incremental=F liệt kê các file được backup lần trước và nhãn thời gian của chúng
tarfix
tarfix gói công cụ được dùng để thao tác với các file tar bị hỏng, nó gồm hai tiện ích:
* tarl dùng để liệt kê nội dung các file bị hỏng
* targ dùng để thử bung các file cụ thể trong một file tar bị lỗi
cpio
cpio có chức năng giống như tar, nhưng nó có thể làm việc với nhiều định dạng file hơn. nó khác với tar ở các điểm sau:
* Danh sách các file được truyền vào cpio thông qua stdin
* cpio có thể làm việc với nhiều định dạng file hơn
* cpio không loại bỏ dấu “/” ở đầu mỗi tên file giống như tar
* cpio không hỗ trợ việc đổi tape và incremental backup
* ĐỊnh dạng cpio chứa các thông tin về hệ thống file, ví dụ như inode number
cpio -o tạo một bản lưu trữ trên đầu ra chuẩn (standard out) của danh sách các file được truyền vào. Ví dụ:
find /etc | cpio -o -H crc > backup.cpio
find /etc | cpio -o -H ustar > backup.tar
cpio -i đọc thông tin cần lưu trữ từ đầu vào chuẩn và tạo file lưu trữ
cpio -i < backup.cpio
dd
dd thực hiện việc dump dữ liệu một cách trực tiếp, nó đọc dữ liệu từ một thiết bị và ghi trực tiếp dữ liệu đó lên một thiết bị khác. Cú pháp của dd như sau:
dd if=input-file of=output-file bs=block-size count=how-many-blocks
input-file mặc định là đầu vào chuẩn, output-file mặc định là đầu ra chuẩn, block-size mặc định là 512. Theo mặc định, dd sẽ dump tất cả các dữ liệu tồn tại trên đầu vào
Để tạo một bản sao của đĩa mềm, ta có thể dùng lệnh:
dd if=/dev/fd0 of=floopydiskimage bs=18k
dd < /dev/fd > floopydisk
Trong trường hợp cần phải cứu dữ liệu trên một hệ thống bị hỏng, ta có thể dùng dd để nhân bản dữ liệu từ một đĩa cứng bị lỗi, giả định rằng đích và nguồn có cùng kích thước:
dd if=/dev/hda1 of=/dev/hdc1 bs=4096k conv=noerror
dump
dump là một công cụ backup với đầy đủ chức năng với mục đích chính là dành cho việc backup hệ thống file e2fs. Nó hoạt động ở các mức độ từ 0 tới 9, trong đó 0 là mức độ backup cơ sở. Các mức độ lớn hơn 0 là các incremental backup, trong đó các file được backup là các file có thay đổi kể từ lần backup với mức độ thấp hơn gần đây nhất. Mức độ backup mặc định của dump là 9. dump lưu trữ các nhãn thời gian và mức độ backup vào file /etc/dumpdate. Nó cũng kiểm tra trường thứ 5 trong file /etc/fstab để xem những phân vùng nào được bao gồm trong quá trình backup
Câu lệnh dump phổ biến là
dump -0uf /dev/st0 /home
Lệnh này thực hiện việc backup cơ sở của thư mục /home lên SCSI tape đầu tiên.
Một vài tùy chọn quan trọng của dump gồm có:
* -B Số lượng các khối 1k của nơi lưu backup
* -F script được thực hiện khi đổi tape
restore
restore được dùng để bung dữ liệu từ dump backup
restore -xf /dev/st0 /home/student
Câu lệnh trên sẽ bung dữ liệu được dump vào /dev/st0 vào thư mục nhà tương ứng. Khi phục hồi từ một backup toàn bộ lên một hệ thống mới, tả có thể dùng tùy chọn -r (xây dựng lại hệ thống file)
Các giải pháp backup
Ngoài taper (taper -T file -f backupfile.tar), còn có một số gói phần mềm cung cấp các giải pháp backup. Ví dụ như
* Amanda (Advannced Marryland Automatic Network Disk Archiver)
* Arkeia là giải pháp thương mại của Knoppix
* mkcdrec chép dữ liệu của hệ thống lên đĩa CD. Công cụ này rất hữu dụng nếu hệ thống có thể được chứa vừa trên một đĩa CD bởi vì đĩa này có thể khởi động được và có thể dùng để cài lại một hệ thống giống như hệ thống được backup
Các công cụ giúp hồi phục phân vùng và hệ thống file
badblocks
badblocks tìm các block bị hỏng trên một phân vùng cụ thể. Câu lệnh thường dùng của nó như sau:
badblocks /dev/sda3 > badblocklist
File badblocklist thu được sẽ được xử lý bằng một công cụ làm việc với hệ thống file (ví dụ mkfs). Nhưng thông thường badblocks không được chạy trực tiếp mà được gọi thông qua tùy chọn -c của fsck
fsck – file system check
fsck kiểm tra tính toàn vẹn của hệ thống file và có khả năng sửa các lỗi tìm được. Tại thời điểm khởi động hệ thống, fsck được chạy trên tất cả các hệ thống file mà trong file /etc/fstab có giá trị tại trường thứ 6 khác 0. Nếu hệ thống file không được unmount một cách hợp lệ hoặc thời gian giữa lần chạy fsck gần nhất vượt quá một giới hạn xác định, fsck sẽ kiểm tra hệ thống file một cách thấu đáo. Nếu nó phát hiện lỗi, hệ thống file sẽ được mount dưới dạng chỉ đọc, và người dùng buộc phải login vào account root để chạy fsck thủ công.
fsck thường được dùng như sau:
fsck /dev/hda1
Các tùy chọn hữu ích:
* -a kiểm tra hệ thống file và tự động sửa các lỗi phát hiện được. Tùy chọn này được dùng lúc chạy fsck tại thời điểm khởi động máy
* -A dùng /etc/fstab để xác định các phân vùng cần kiểm tra.
* -s Kiểm tra một cách tuần tự, được dùng khi bạn muốn chạy fsck thủ công với một vài hệ thống file khác nhau
dumpe2fs
dumpe2fs hiển thị các thông tin hữu ích về cấu trúc của hệ thống file e2fs. Thông tin này rất hữu ích nếu superblock bị hỏng hay bị ghi đè:
dumpe2fs /dev/hda3 | head
dumpe2fs 1.27 (8-Mar-2002)
Filesystem volume name: HOME
Last mounted on:
Filesystem UUID: ad6b0e85-3d19-4162-a078-8e40856e4e5a
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal filetype needs_recovery
sparse_super
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 515072
sfdisk
sfdisk tương tự như fdisk nhưng thực hiện các công việc tự động. Nó cho phép việc lưu lại hoặc phục hồi các thông tin về partition table. Ví dụ, các câu lệnh sau dùng để ghi và đọc partition table từ một file trên đĩa mềm:
sfdisk -d /dev/hda > /media/floppy/hda.out
sfdisk /dev/hda < /media/floppy/hda.out
gpart
gpart là công cụ dùng để thử phục hồi partition table bị hỏng. Ví dụ khi partition table bị ghi đè bởi sfdisk, ta có thể dùng gpart để phục hồi lại partition table ban đầu:
gpart /dev/hda
Nguyễn Thăng Long (Kenhgiaiphap.vn)
|