Thứ Ba, 26 tháng 8, 2014

Phục hồi dữ liệu (Data Recovery) là gì và người ta thực hiện nó như thế nào?

Phuc_hoi_du_lieu.

Trong số những anh em đang đọc bài này thì chắc hẳn nhiều người đã từng bị mất dữ liệu, có thể là do ổ cứng hư, file bị hỏng hoặc lỡ xóa nhầm một số tập tin quan trọng. Vậy đã bao giờ bạn thắc mắc rằng làm thế nào người ta có thể khôi phục lại những dữ liệu bị mất đó, và việc này hiệu quả đến mức nào? Hãy cùng xem qua bài này nhé.

Mất và khôi phục dữ liệu

Như đã nói ở trên, việc mất dữ liệu có thể có nhiều dạng khác nhau: xóa nhầm file, ổ cứng hỏng, lỗi phần mềm, hỏng file (data corruption), bị người khác hack mất, và thậm chí chuyện đơn giản như máy tính đang chạy nhưng bị mất nguồn thì cũng có thể làm mất dữ liệu. Tất nhiên cũng có những trường hợp nghe "rùng rợn" hơn, chẳng hạn như một ổ lưu trữ trên một chiếc máy bay bị rơi đã được khôi phục lại gần như đầy đủ dữ liệu dù cho thiết bị đó gần như đã bị phá hủy hoàn toàn.

Việc mất dữ liệu có thể diễn ra với bất kì phương tiện lưu trữ nào trong thế giới công nghệ hiện nay. Từ HDD, SSD, bút nhớ USB, thẻ nhớ SD, thẻ nhớ microSD, thậm chí là các hệ thống lưu trữ RAID bao gồm nhiều ổ cũng vẫn có khả năng bị mất dữ liệu cơ mà.

hard-drive-head-crash-data-recovery-1680x840.

Nói đến quá trình khôi phục dữ liệu, hiểu đơn giản thì đây là công đoạn tìm kiếm lại những dữ liệu đã bị mất, sau đó nếu cần thì sửa chữa lại những dữ liệu này để chúng có thể được đọc bởi các phần mềm tương ứng.

Tất nhiên, không phải lúc này việc khôi phục dữ liệu cũng có thể được tiến hành thành công. Đôi lúc hệ thống bị hỏng quá nặng, hoặc dữ liệu bị mất quá nhiều thì chúng ta cũng không làm gì được. Bạn có thể đi thuê một công ty chuyên về data recovery làm việc đó giúp bạn, và một lần nữa, đôi khi họ vẫn phải bó tay mà thôi.

Mặc dù vậy, các công nghệ khôi phục dữ liệu hiện nay đã rất tiến bộ. Ví dụ, công ty Kroll Ontrack ở Úc trước đây đã khôi phục được 99% lượng dữ liệu lấy từ ổ lưu trữ của tàu con thoi Challenger vốn bị phát nổ trong quá trình bay về Trái Đất.

Vậy người ta khôi phục dữ liệu như thế nào?

Có rất nhiều phương pháp để khôi phục lại dữ liệu, tuy nhiên thường người ta sẽ chọn phương pháp phù hợp tùy theo nguyên nhân mà dữ liệu bị mất. Chúng ta hãy xem qua một vài nguyên nhân phổ biến như sau:

Hư hỏng logic

Tập tin bị xóa

Có một điều thú vị mà không phải ai cũng biết, đó là các tập tin sau khi bị chúng ta nhấn nút Delete thì thường chúng vẫn còn tồn tại trên ổ lưu trữ của bạn, dù đó là SSD hay HDD. Nói một cách kĩ thuật hơn thì OS chỉ xóa tên và các dữ liệu có liên quan đến tập tin ra khỏi bộ nhớ, còn nội dung chính của file thì vẫn còn tồn tại trong ổ. Những tập tin này chỉ thật sự biến mất khi chúng bị ghi đè bởi một tập tin khác, còn nếu không thì nó vẫn còn nguyên vẹn ở đó, có điều hệ điều hành không hiển thị lên cho bạn xem mà thôi.

delete-key.

Trong trường hợp này, việc đầu tiên mà người dùng cần làm đó ngừng mọi việc lưu, ghi, sao chép, cắt dán tập tin, để cho máy hoạt động ở mức tối thiểu. Sau đó, bạn có thể xài các phần mềm khôi phục dữ liệu được cung cấp miễn phí hoặc có phí trên Internet để khôi phục lại dữ liệu của mình. Thao tác khôi phục các tập tin bị xóa nhầm khá đơn giản, và các ứng dụng hiện nay đã có giao diện đủ đơn giản để một người phổ thông có thể tự mình làm được chứ không cần mang ra tiệm.

Ví dụ với phần mềm TestDisk (chạy được cho cả Windows, OS X lẫn Linux), ứng dụng này được tích hợp một số thuật toán phức tạp có khả năng biết được những tập tin được lưu ở vị trí vật lý nào trên ổ đĩa. Nếu TeskDisk đoán đúng, bạn sẽ lấy lại được file của mình, nếu không thì xin chia buồn. Một số phần mềm khác sẽ có những cách khác để tìm kiếm lại tập tin bị xóa, chẳng hạn như tìm kiếm điểm bắt đầu và kết thúc của tập tin, quét toàn bộ ổ rồi loại suy...

data-rescue-1.

Việc bạn định dạng file system cho ổ của mình như thế nào cũng có ảnh hưởng đến sự thành công của quá trình khôi phục dữ liệu. Ví dụ, định dạng NTFS đang dùng phổ biến trong các máy tính Windows sẽ giữ lại mô tả của các tập tin sau khi chúng bị xóa, điều đó giúp các phần mềm khôi phục hoạt động dễ dàng hơn và tìm lại cũng dễ hơn. Một số định dạng như UTF hay FAT thì xóa rất nhiều dữ liệu liên quan đến tập tin, thế nên các thuật toán sẽ phải vất vả hơn để định vị và khôi phục tập tin.

Tập tin bị hỏng

Tập tin bị hỏng là khi nó không còn đủ những byte quan trọng, khiến việc mở hoặc xem tập tin không khả thi. Với những bạn nào từng bị xước hay hỏng HDD thì đây là một chuyện không quá xa lạ. Tuy nhiên, vẫn có khả năng khôi phục lại những tập tin này đấy. Trong tình huống khả quan nhất, bạn cắm ổ đĩa của mình sang một cái máy tính khác và phát hiện ra chỉ có hệ điều hành bị hỏng thôi, còn dữ liệu vẫn còn đủ. Lúc này, người ta chỉ việc copy dữ liệu sang một ổ khác là xong.

corrupted-image-file.

Một lý do thường gặp nữa với người dùng PC đó là partition table bị hỏng. Partition table có thể được xem như một tấm bản đồ phân chia phân vùng trong ổ đĩa, phân vùng nào là phân vùng chính, kích thước là bao nhiêu và địa chỉ bắt đầu của phân vùng là chỗ nào. Nếu bảng này bị hỏng, một số phần mềm có thể được dùng để khôi phục nó, từ đó lấy lại các tập tin của người dùng.

Ổ bị format

Tương tự như việc xóa tập tin, việc format (xóa trắng) một phân vùng hoặc một ổ đĩa nào đó sẽ xóa đi thông tin về những tập tin trước đây cũng như cấu trúc của chúng, tuy nhiên dữ liệu vẫn còn tồn tại ít nhiều trên ổ tùy theo cách thức format của định dạng file system.

Ví dụ, khi bạn yêu cầu máy tính format một ổ đĩa nào đó đang ở định dạng FAT, máy sẽ xóa đi một lượng rất lớn dữ liệu rồi ghi đè lên nó bằng các bit có giá 0, từ đó làm giảm đáng kể khả năng khôi phục lại dữ liệu. Trong khi đó, định dạng NTFS thì giúp dữ liệu dễ bị khôi phục hơn ngay cả sau khi bị format do cơ chế hoạt động đặc thù của mình. Và để xử lý tình huống nói trên, người ta cũng thường sử dụng các phần mềm khôi phục, nhưng lượng dữ liệu lấy lại được sẽ không nhiều như khi khôi phục các file bị xóa nhầm.

Hư hỏng vật lý

Ở trên là các tổn hại về mặt logic, tức là những thứ đó diễn ra ở trên máy tính mà thôi. Thường thì các hư hại logic sẽ dễ phục hồi hơn, còn các hư hại vật lý như ổ bị gãy, bị hư, đĩa từ bị trầy xước, đầu đọc hỏng, bo mạch cháy... lại là một chuyện khác. Quá trình phục hồi từ các hư hại này phức tạp hơn nhiều và xác suất lấy lại dữ liệu cũng thấp hơn. Người ta không chỉ xài phần mềm mà có thể cần phải mở ổ đĩa ra để "xem xét" bên trong nữa. Chính vì thế, đây là những việc mà bạn không thể tự làm ở nhà mà thường phải mang ra một dịch vụ phục hồi chuyên nghiệp.

Nói về việc mở ổ đĩa ra, đây là công việc cực kì khó bởi các chuyên gia phải tiến hành thao tác trong một căn phòng sạch (clean room). Môi trường trong đó được kiểm soát cực kì nghiêm ngặt và gần như không chứa bất kì chất bẩn nào trong không khí. Lý do? Chỉ một hạt bụi thật nhỏ thôi cũng có thể bám lên đĩa từ, lúc đầu đọc đĩa chạy ngang qua thì nó kéo lê hạt bụi và làm trầy phiến đĩa, điều đó càng khiến việc phục hồi dữ liệu trở nên khó khăn hơn. Tĩnh điện cũng có thể làm hỏng đĩa, do đó căn phòng, những thiết bị dùng trong đó, bộ quần áo mà các chuyên gia mặc lên người... đều được thiết kế đặc biệt để giảm tối thiểu lượng tĩnh điện.

clean-room-tech.

Cách khắc phục cho những tổn hại vật lý cũng rất đa dạng. Trong trường hợp một ổ đĩa có quá nhiều thành phần bị hỏng, người ta sẽ thay thế chúng và hi vọng rằng dữ liệu chứa trên các phiến đĩa có thể được đọc trở lại. Tuy nhiên, quy trình này chỉ mới làm cho ổ đĩa hoạt động trở lại, còn dữ liệu thì vẫn có thể đang bị hư hỏng logic. Chính vì thế, các chuyên gia sẽ thực hiện một việc gọi là "disk-imaging procedure" nhằm tạo ra một file ảnh đĩa để lưu giữ lại tất cả các bit còn đọc được từ bề mặt phiến đĩa.

Sau khi hoàn tất, file ảnh đĩa này sẽ được đánh ra một phương tiện lưu trữ khác còn tốt, ví dụ như một ổ HDD thứ hai, để các chuyên gia phân tích, tìm kiếm các hư hỏng logic rồi phục hồi dần dần từng tập tin quý giá của người dùng. Bằng cách này, trong trường hợp khả quan nhất, người ta có thể khôi phục lại gần như nguyên vẹn cấu trúc tập tin của ổ đĩa.

HDD_chay.

Có một sự hiểu lầm thường gặp khi nói đến sửa chữa bo mạch của ổ đĩa lưu trữ. Người ta nghĩ rằng nếu bo mạch (PCB) này hư thì cứ lấy PCB từ một ổ đĩa khác cùng dòng sản phẩm thay vào là được. Tuy nhiên, điều này chỉ áp dụng cho một số trường hợp của vài ổ đĩa sản xuất từ năm 2003 trở về trước. Đối với những ổ đĩa mới sau này thì, mỗi ổ có một thứ gọi là "Khu vực hệ thống" (System Area). Khu vực này sẽ không được truy xuất bởi người dùng bình thường, nó dùng để chứa những dữ liệu đặc biệt để giúp ổ hoạt động được. Một trong số những tính năng của System Area đó là ghi nhận những sector nào bị lỗi trong ổ, khi đó ổ sẽ không ghi dữ liệu vào các sector đó nữa. Danh sách các sector cũng được lưu trữ trên một con chip hàn trên PCB và chúng là độc nhất cho từng ổ đĩa. Nếu đem con chip (hay PCB) này sang một ổ khác thì dữ liệu sẽ không được cân chỉnh phù hợp, và đầu đọc cũng không hoạt động đúng.

Vậy chi phí cho việc mang ổ đĩa ra ngoài có đắt không? Thường là có, từ vài trăm cho đến cả nghìn hoặc chục nghìn đô la tùy vào tình trạng của ổ và những thao tác mà kĩ thuật viên phải làm để khôi phục dữ liệu. Tất nhiên là chi phí này sẽ khác nhau với từng công ty bởi họ cũng còn phải cạnh tranh nhau. Tại Việt Nam chúng ta cũng có những dịch vụ dạng này.

Clean-Room-Work2.

Phục hồi dữ liệu từ ổ SSD

Với ổ SSD, một số kĩ thuật khôi phục dữ liệu của HDD mà mình liệt kê ở trên vẫn có thể dùng được. Tuy nhiên, nhìn chung thì việc phục hồi data cho SSD là khó hơn bởi vì công nghệ này vẫn còn tương đối mới mẻ trên thị trường. Lỗi logic thì còn đỡ, còn lỗi vật lý sẽ căng thẳng hơn vì chi phí để khôi phục lại dữ liệu từ các con chip trên SSD thường cao hơn rất nhiều, có thể lên mức là vài nghìn đô la. Một nghiên cứu được trang Entertainment Storage trích dẫn lại nói rằng mức 3000-3500$ là giá trung bình để khôi phục dữ liệu cho SSD trong trường hợp chuyên gia không nhận được cấu hình và các công cụ đặc biệt từ nhà sản xuất ổ Còn nếu họ có nhận được đầy đủ tài liệu và sự hỗ trợ thì chi phí có thể giảm còn khoảng 700$.

SSD.

Cách an toàn cho bạn: thường xuyên sao lưu

Trước đây trong nhiều bài viết trước mình đã nói 999 lần, và đây là lần thứ 1000 mình nhắc lại điều này: thường xuyên sao lưu dữ liệu của bạn. ĐỪNG LƯỜI, BỞI VÌ LỠ MỘT NGÀY BẠN MẤT DỮ LIỆU THÌ SỐ TIỀN BẠN BỎ RA SẼ RẤT LỚN, CÒN XUI HƠN NỮA LÀ MẤT DỮ LIỆU HOÀN TOÀN. Bạn có thể sao lưu tập tin lên các dịch vụ đám mây, ra ổ cứng ngoài,... đó là do bạn chọn, nhưng hãy cố gắng thực hiện việc đó thường xuyên nhất có thể, nên là một tuần một đến hai lần.

Tham khảo: MakeUseOf