Chúng có thể chứa đựng tất cả các tủ hóa
đơn, giấy tờ, chứng từ quan trọng của các doanh nghiệp, các xấp ảnh,
các chồng đĩa phim ảnh giải trí riêng tư và ngay cả các cơ sở dữ liệu
lớn cần sự truy cập không có giờ phút ngừng nghỉ của các máy chủ…Tuy
nhiên, bất kể hệ thống mà chúng ta đang sử dụng là máy chủ, máy tính cá
nhân hay máy tính xách tay với những loại ổ đĩa cứng tốt nhất được lắp
bên trong, có lúc, chúng ta vẫn phải đối mặt với những sự cố hư hỏng.
Các biểu hiện của những sự cố đó rất da dạng nhưng chúng ta thường gặp
là: máy tính khởi động và kết thúc với màn hình xanh kèm theo thông báo
lỗi “Physical memory dump…”, việc copy một file nhỏ nào đó diễn ra rất
chậm rồi không thành công, việc cài đặt hệ điều hành không thực hiện
được…Có rất nhiều nguyên nhân có thể dẫn đến tình trạng này và một
trong số đó là BAD SECTOR.
Trong bài viết này, chúng ta hãy cùng nhau khám phá nguồn gốc của lỗi,
cách phòng tránh và phương án xử lý. Vấn đề được đề cập trong bài viết
này sẽ liên quan tới nhiều thuật ngữ và khái niệm khác nhau của phần
cứng máy vi tính tuy nhiên, chúng ta sẽ bỏ qua hoặc xem xét một cách sơ
lược mọi thứ để đi sâu vào vấn đề chính: BAD SECTOR.
1. Dẫn nhập:
Trước hết, chúng ta hãy cùng xem xét vấn đề nguồn gốc của sector. Cấu
trúc vật lý của ổ đĩa cứng thông thường sẽ gồm 03 thành phần:
· Platter(đĩa hình tròn): nơi lưu trữ firmware-phần điều khiển cấp thấp của HDD và dữ liệu.
· Bộ đọc/ghi(Actuator): bộ phận truyền tải thông tin.
· Bảng mạch điều khiển điện tử(PrintedCircuitBoard=PCB): thành phần
chứa đựng các cổng giao tiếp và phần điều khiển cấp cao của HDD.
Mỗi platter của ổ cứng thường có 03 lớp: lớp nền tảng thường được chế
tạo bằng hợp kim nhôm hoặc thủy tinh và có 02 bề mặt; lớp từ tính được
phủ trên cả 02 bề mặt của lớp nền tảng và được cấu tạo từ các phần tử
có thể nhiễm từ tính; lớp bảo vệ được phủ bên ngoài cùng cả 02 bề mặt.
Tuân theo quy chuẩn chung về sản xuất HDD nên mỗi sản phẩm xuất xưởng,
trên bề mặt platter đều có khuôn dạng lưu trữ là các vòng tròn đồng tâm
mà chúng ta thường biết đến với tên gọi track hay cylinder. Các
cylinders được chia cắt bởi các đường thẳng chạy từ tâm ra biên, chúng
tạo nên các vùng lưu trữ data mà chúng ta vẫn quen nghe tên: sector.
Để đọc/ghi dữ liệu lên platter, HDD sử dụng bộ đọc/ghi (Actuator). Cấu
tạo chung của Actuator gồm có: bộ chuyển động, bộ khung đầu đọc, mạch
điều khiển đọc ghi chung và đầu đọc từ tính(magnetic head). Trong quá
trình đọc/ghi, đầu đọc treo lơ lửng phía trên, cách bề mặt platter vài
microns. Áp lực không khí sinh ra trong khi platter quay với tốc độ cao
đã góp phần tạo ra khoảng cách an toàn này, giúp bảo vệ an toàn head và
bề mặt platter.
Để đọc dữ liệu nào đó trên HDD, computer ra lệnh yêu cầu đọc data từ
một sector cụ thể nằm trên ổ đĩa cứng với tham số chỉ định là một số
nguyên dương. Bảng mạch điều khiển của ổ đĩa cứng khi tiếp nhận lệnh từ
computer sẽ giải mã thông tin, định nghĩa bề mặt của platter có chứa
đựng sector cần đọc, định nghĩa head của bề mặt đó, dịch chuyển head
đến đúng vị trí của cylinder có chứa sector cần đọc và đọc dữ liệu từ
tính tại đó. Tiếp theo, dữ liệu đó sẽ được chuyển về mạch đọc/ghi của
bộ đọc ghi rồi dịch dữ liệu đó sang dạng bits và gửi các dữ liệu dạng
bits đó về computer. Tiến trình ghi dữ liệu lên HDD cũng tương tự như
tiến trình đọc ngoại trừ chút ít khác biệt: computer gửi lệnh ghi kèm
theo 512 bytes dữ liệu cần ghi và HDD sẽ gửi trả lại kết quả của việc
ghi dữ liệu. Đây là tính siêu đơn giản của phương án này, computer
không cần biết bất cứ điều gì liên quan đến HDD ngoại trừ thông số về
tổng số sector chứa đựng trong nó. Đây cũng chính là nguyên nhân dẫn
đến hiện tượng lỗi mà đôi khi chúng ta gặp phải: ổ đĩa cứng có dectect
trong BIOS, trong DOS nhưng sau đó hệ thống treo cứng, không khởi động
được; hệ thống nhận diện được tên nhưng dung lượng báo sai hoặc sai
tên; khi ra lệnh đọc ghi một file nào đó, hệ thống báo lỗi hoặc treo
máy…
2. Nguyên nhân:
Đến đây, chắc hẳn mọi người chúng ta đều có cùng một câu hỏi: “Nguyên
nhân nào đã gây ra bad sector của ổ đĩa cứng?”. Câu trả lời chính xác
là có 7 nguyên nhân đã gây ra lỗi bad sector. Ba nguyên nhân đầu là do
lỗi trong quá trình sản xuất, hai nguyên nhân tiếp theo là do người sử
dụng và hai nguyên nhân cuối cùng là do lỗi logical. Duy nhất chỉ có
hai nguyên nhân cuối là có thể khắc phục. Các nguyên nhân gây lỗi bad
sector:
· 1 hole (hố) tạo ra do lỗi trong quá trình phủ lớp từ tính lên bề mặt platter.
· Sự liên kết yếu kém giữa lớp từ tính và lớp nền platter tại một vị trí tạo ra 1 hole.
· 1 hole được tạo ra trên bề mặt nền tảng của platter gây ra bởi thời gian.
· Lỗi gây ra bởi chuyển động cơ học của Actuator hoặc do người dùng gây va đập dẫn đến head bị va vào bề mặt platter.
· Theo nghiên cứu của HDDLABVN.COM, chất bôi trơn bên trong motor, do
nhiệt độ cao của môi trường đã bốc hơi thoát ra ngoài, gặp nhiệt độ
thấp hơn nên đông cứng thành hạt vật chất, va đập và phá hoại bề mặt
platter.
· Nhiệt độ cao của môi trường sử dụng computer gây nên sự thoái hoá công năng của bề mặt từ tính.
· Lỗi về điện và/hoặc reset xảy ra trong tiến trình đọc/ghi data.
Trong quá trình sử dụng computer, chúng ta thường hay gặp thông báo lỗi
dạng: “Can not copy file(s) or folder(s), ECC failure when reading
sector xxxxxx”…ECC (“error correction [or correcting] code" or "error
checking and correcting”) được sử dụng để kiểm tra và sửa lỗi trong quá
trình đọc và truyền dữ liệu. ECC được sử dụng với các phương tiện lưu
trữ (media storage) như RAM, HDD…Vậy ECC hoạt động như thế nào? Chúng
ta đều biết, mỗi đơn vị data (or word) được lưu trữ dù là tạm thời
trong RAM hay lâu dài trên HDD, chúng đều phải được “đính” kèm các
thông tin quan trọng. Gần giống như một “thẻ kho”, mỗi thông tin này sẽ
cho biết độ dài liên tục của bits dữ liệu có trong mỗi đơn vị data. Cứ
mỗi 64 bits của một đơn vị data sẽ gắn kèm 7 bits mở rộng để lưu trữ
ECC. Khi có một lệnh yêu cầu đọc data tại một vị trí lưu trữ 64 bits
đó, code đã lưu trữ trong 7 bits mở rộng sẽ được đọc và đưa vào vế trái
của lệnh so sánh. Vế phải sẽ là kết quả của một tiến trình: thông tin
về độ dài của 64 bits sẽ được tính toán và trả về kết quả theo cùng một
phương pháp như đã tạo ra code đã lưu trữ, tiếp đó sẽ ghi kết quả vào
vị trí so sánh. Nếu kết quả so sánh khớp nhau, tiến trình kiểm tra lỗi
kết thúc, data sẽ được truyền đi theo yêu cầu của lệnh. Nếu kết quả so
sánh không khớp nhau, một hay nhiều bits bị thiếu hay lỗi sẽ được sửa
hoặc thêm vào cho đến khi mọi thông tin đều khớp và tiến trình ECC kết
thúc, data sẽ được truyền đi theo lệnh đọc. Chúng ta thấy ở đây có một
vấn đề: một việc “sửa” đã được tạo ra, vậy thì nó có gây sai lệch các
thông tin nguyên bản đã lưu trữ? Liệu các thông tin về tài chính, các
tài liệu sống còn của doanh nghiệp chúng ta có bị mất đi hay sai lệch
sau việc sửa chữa này? Câu trả lời sau đây sẽ khiến chúng ta an tâm:
không có sự thay đổi gì với 64 bits của mỗi đơn vị data đã lưu trữ, tất
cả dữ liệu của chúng ta vẫn nằm trên vùng từ tính đã lưu trữ nó. Việc
sửa chữa chỉ xảy ra với 07 bits mở rộng có chứa code, ECC chỉ cố gắng
giúp cho tiến trình thực hiện lệnh đọc được thực thi mà thôi. Các dữ
liệu thuộc về 64 bits của đơn vị dữ liệu vẫn còn trên phương tiện lưu
trữ chỉ có điều, nếu không có chuyên môn và thiết bị chuyên dụng, chúng
ta không thể nào lấy chúng ra được. Đây chính là một trong những lý do
mà HDDLABVN.COM được thành lập và tồn tại: giúp mọi người, mọi doanh
nghiệp lấy lại dữ liệu, cứu lại các thương vụ. Có vài nguyên nhân gây
ra lỗi với ECC và bad sector là một trong số đó.
Lỗi bad sector, xét về mặt vật lý là không thể sửa chữa (can not
repaired). Đôi khi, chúng ta gặp một số quảng cáo như: “tẩy, cắt,
sửa…bad sector”, đó là sự quảng cáo sai sự thật, thiếu chuyên môn. Thật
vậy, chúng ta không thể có cách nào lấp đầy các “hố”(hole) được tạo ra
bởi quá trình sản xuất hay do sự va đập trong sử dụng; chúng ta cũng
không thể nào khôi phục được khả năng từ tính tại một điểm nào đó trên
bề mặt platter đã bị suy yếu sau một thời gian sử dụng…Tuy nhiên, chúng
ta có thể khắc phục lỗi bad sector bằng cách ra lệnh cho hệ thống không
sử dụng chúng. HDDLABVN.COM đã nhận được nhiều thư của các bạn hỏi về
vấn đề có hay không cái gọi là “sector dự trữ trong HDD?”. Câu trả lời
là: về mặt kỹ thuật, không hề có khái niệm đó, các sector trên các
phương tiện lưu trữ như HDD không hề giống như các bài viết thiếu
chuyên môn trên mạng cũng như báo, tạp chí về vấn đề “thay thế” bad
sector bằng một “sector dự trữ”. Với trí tưởng tượng của mình, những
người viết các thông tin sai lệch đó đã cho rằng các sector sẽ “giống
như” những ngăn kéo của một cái tủ và bằng một cách nào đó, họ sẽ “rút”
cái hỏng ra và thay thế bằng cái “tốt” đã được “dự trữ ở đâu đó” trong
miền lưu trữ của thiết bị. Về mặt kỹ thuật, chúng ta có thể cùng xem
xét một tiến trình chung cho việc khắc phục lỗi bad sector như sau: Khi
một sector bị đánh dấu là bad, hệ thống sẽ không sử dụng nó cho mục
đích đọc/ghi dữ liệu nữa và tổng dung lượng của ổ đĩa cứng sẽ bị giảm
đi một lượng bằng với lượng mà một sector chiếm dụng trên không gian
nhớ của thiết bị lưu trữ. Khi gặp hiện tượng bad sector, chúng ta nên
sao lưu các dữ liệu quan trọng bởi chúng có thể sẽ nằm ngoài khả năng
sử dụng của chúng ta. Nếu các bad sector hiện ra quá đột ngột mà ta
không thể kịp sao lưu thì tốt hơn hết nên gửi phương tiện lưu trữ của
mình đến những nơi chuyên nghiệp như HDDLABVN.COM, tránh tự làm vì có
thể mất đi cơ hội lấy lại các dữ liệu quan trọng. Còn nếu các dữ liệu
không quan trọng, hoặc giả dụ như bạn muốn tự làm để có thể tiếp tục sử
dụng một HDD đã bị lỗi bad sector thì sao? Các biện pháp được mô tả
dưới đây sẽ phần nào giúp chúng ta đạt được mục đích của mình.
3. Các biện pháp phòng tránh và khắc phục lỗi BAD SECTOR:
· Các biện pháp phòng tránh bad sector: Để hạn chế tối đa bad sector
chúng ta nên lưu ý về vấn đề tản nhiệt cho các thiết bị lưu trữ như
HDD. Đất nước chúng ta nằm trong một miền địa lý với khí hậu nóng ẩm và
đó là một trong những nguyên nhân gây ra bad sector. Vấn đề điện nguồn
cũng nên được lưu ý vì điện lưới sinh hoạt của chúng ta thường xuyên
tăng-giảm hay mất đột ngột cộng với việc các thiết bị cung cấp điện
nguồn cho computer như ổ cắm điện, phíc cắm điện…thiếu an toàn cũng sẽ
rất dễ gây lỗi. Nên sử dụng các thiết bị lưu trữ của chính hãng và dùng
kèm theo computer một bộ cung cấp nguồn ổn định, ví dụ như dùng UPS
online. Tránh sử dụng các thiết bị ổn áp cơ học, chỉ có giá trị về mặt
lý thuyết hoặc giá trị rất nhỏ cho việc sử dụng computer.
Theo 911.com.vn
"Các kiến thức đầy đủ nhất về khai thác, thiết kế, lập trình và quản trị Web" www.thegioiweb.vn