Bạn vừa xóa một tệp dữ liệu, vừa format một phân vùng, hay ổ cứng của bạn bị lỗi, cái bạn quan tâm đầu tiên là dữ liệu có thể khôi phục được không, và làm thế nào đây?. Câu trả lời là có, còn làm thế nào thì sẽ được trình bày ở dưới :,. Dữ liệu của bạn không mất đi cho đến khi bạn ghi đè một dữ liệu khác lên vùng không gian chứa nó. Bạn hoàn toàn có thể tìm lại dữ liệu của mình bằng cách sử dụng các phần mềm miễn phí cung cấp trong kho phần mềm của Ubuntu. Hướng dẫn này áp dụng cho phiên bản Ubuntu 7.04, 7.10, 8.04.
Chú ý
- Bạn không nên ghi vào thiết bị bị lỗi, nó có thể làm phần cứng ngày càng bị lỗi nghiêm trọng hơn, và ghi đè lên những dữ liệu đã mất.
- Tắt máy bị lỗi sớm nhất có thể, và khởi động lại nó từ một đĩa Live CD. Chắc chắn rằng đĩa Live CD không tự động gắn kết bất kỳ phân vùng hoặc không gian hoán trang nào.
Nguyên tắc
Những phần mềm được nói đến dưới đây sẽ thụ động khôi phục nhưng dữ liệu từ phần cứng bị hỏng hay bị lỗi. Nếu dữ liệu của bạn không thể thay thế và những phần mềm đó không thể khôi phục được dữ liệu của bạn, thay vì cố gắng ghi vào thiết bị lỗi nên tìm một lời khuyên từ các chuyên gia.
Nếu khôi phục dữ liệu từ một thiết bị lỗi, bạn sẽ cần một thiết bị khác có sức chứa bằng hoặc lớn hơn để lưu dữ liệu của bạn. Ví dụ: bạn muốn khôi phục dữ liệu từ một phân vùng 10Gb thì phải cần một phân vùng trống >=10Gb để sử dụng.
Những thư mục quan trọng để sao lưu và phục hồi là:
etc[/home
Bạn có thể sử dụng live CD của Ubuntu. Nếu bạn không có nhiều RAM hoặc máy tính bị lỗi không kết nối Internet, bạn có thể sử dụng [Chỉ có thành viên mới thấy links này. ], một đĩa live cd có chứa các công cụ phục hồi. Nó chứa tất cả những phần mềm được nhắc đến dưới đây.
Trường hợp Mất phân vùng (partition)
[tab]10[/tab]Bạn đang phân vùng để cài đặt Ubuntu, hay để làm gì đó thì mất điện, ổ cứng lỗi, máy khởi động lại hàng trăm thứ có thể xảy ra. Sau đó bạn xem trong bảng phân vùng thì không thấy mấy cái phân vùng cũ đâu -> dữ liệu đâu rồi . Thay vì ngồi khóc :'( thì có lẽ ta nên thử một vài cách sau, nếu may mắn, toàn bộ phân vùng cũ sẽ được tìm lại =-o .
Parted
[tab]10[/tab]Chạy parted từ dòng lệnh để khôi phục phân vùng của bạn.
Khi thay đổi bảng phân vùng của đĩa cứng, bạn phải chắc chắn rằng không có phân vùng nào trong đĩa được gắn kết, bao gồm cả vùng trao đổi (swap). Cách dễ dàng nhất để làm như vậy là chạy đĩa live cd. Parted được cài đặt sẵn trong đĩa live của Ubuntu. Tại bàn làm việc, mở một cửa sổ terminal và chạy
Code:
sudo swapoff -a
Tiếp theo chạy parted và chỉ đến thiết bị cần khôi phục. Ví dụ, nếu ổ đĩa /dev/sda là thiết bị bạn muốn khôi phục phân vùng, chạy
Code:
sudo parted /dev/sda
Sau đó, sử dụng chức năng cứu hộ:
Code:
recuse START END
Ở đây, START là vùng đĩa mà bạn cho rằng phân vùng bắt đầu và END là chỗ nó kết thúc. Nếu parted tìm thấy một dấu vết của phân vùng, nó sẽ hỏi bạn nếu bạn muốn thêm nó vào bảng phân vùng.
Tốt nhất trước khi phân vùng làm gì bạn nên chép lại vị trí của các phân vùng. Trong ubuntu có thể dùng lệnh
Code:
sudo fdisk -l
Testdisk
[tab]10[/tab]Một lựa chọn khác, ứng dụng testdisk có thể khôi phục phân vùng của bạn.
Cài đặt:
Code:
sudo apt-get install testdisk
Chạy testdisk và nó sẽ quét máy tính của bạn để tìm phương tiện lưu trữ và đưa ra một danh sách lựa chọn các cách để khôi phục phân vùng:
Code:
sudo testdisk
Gpart
[tab]10[/tab]Một chương trình khác có thể quét ổ đĩa và tạo tạo lại bảng phân vùng dựa vào sự “ước chừng” là Gpart.
Cài đặt:
Code:
sudo apt-get install gpart
Để quét đĩa cứng đầu tiên sử dụng kiểu thiết đặt mặc định
Code:
sudo gpart /dev/sda
hoặc
Code:
sudo gpart /dev/hda
Trường hợp Mất dữ liệu ở một phân vùng nào đó
Khôi phục các tệp đã xóa bằng Foremost
Bạn lỡ tay xóa một số tệp quan trọng. Nếu muốn tìm lại được những tệp đó một cách nguyên vẹn, tốt nhất là thoát máy và làm theo các bước sau:
- Khởi động máy và boot bằng đĩa LiveCD.
- Cài đặt và sử dụng foremost:
Phải mở universe repository ở: System (Hệ thống)->Administration (Quản lý)->Software Sources
Sau khi tải lại danh sách phần mềm, cài foremost bằng Terminal (Applications (Ứng dụng) -> Accessories (Bổ trợ) -> Terminal (Thiết bị cuối)):
Code:
sudo apt-get install foremost
Xem các tệp mình vừa xóa nằm ở phân vùng nào: Dùng lệnh fdisk:
Code:
sudo fdisk -l
Giả sử các tệp cần xóa có đuôi jpg và nằm ở phân vùng sda1:
Tạo chỗ chứa các tệp khôi phục:
Code:
sudo mkdir /recovery
Dùng lệnh sau để khôi phục:
Code:
sudo foremost -t jpg -i /dev/sda1 -o /recovery
Tham số -t để chỉ định dạng tệp muốn khôi phục, tham số -i chỉ thiết bị cần quét, tham số -o chỉ chỗ để lưu các tệp khôi phục. Chi tiết xem manpage:
Code:
man foremost
Các tệp vừa được khôi phục sẽ nằm trong thư mục /recovery, bạn có thể copy chúng vào USB hoặc phân vùng khác.
Foremost cũng không thật sự tốt lắm vì nó sẽ khôi phục mọi tệp mà nó gặp, hơn nữa cũng không hỗ trợ nhiều định dạng file. Tuy nhiên chương trình này rất tốt nếu bạn xóa nhầm tệp ảnh hoặc tài liệu.
Một số định dạng file hỗ trợ:
jpg
gif
png
bmp
avi
exe
mpg
wav
riff
mat
wmv
pdf
ole PowerPoint, Word, Excel, Access
doc
Bỏ qua tất cả tệp ole
zip
rar
htm
cpp
all Tìm tất cả các định dạng. [Mặc định nếu không sử dụng tham số -t
Khôi phục ảnh bằng photorec
photorec là phần mềm cho phép khôi phục những tệp ảnh bị xóa trong thẻ nhớ của máy ảnh kĩ thuật số hoặc trong đĩa cứng. Hỗ trợ hơn 80 định dạng ảnh.
Cài đặt: Phần mềm này nằm trong testdisk. Mở terminal và gõ lệnh:
Code:
sudo apt-get install testdisk
Chạy photorec:
Code:
sudo photorec
Chương trình sẽ tìm các thiết bị lưu trữ và hỏi xem bạn quét ở thiết bị nào.
Nếu chương trình đưa ra dòng: PhotoRec need 25 lines to work. Please enlage the terminal. Thì bạn chỉ việc kéo cho cửa sổ terminal dài thêm rồi chạy lại PhotoRec.
Các tệp khôi phục sẽ được lưu vào thư mục recup_dir.