9/29/09

Chăm sóc ổ cứng trong Linux

1- Xem thông tin ổ cứng:
Dùng quyền root chạy lệnh lshw trong terminal cho thông tin đầy đủ nhất: trong máy có bao nhiêu ổ, thông số từng cái, mỗi ổ có bao nhiêu patition (trong lệnh này, các partition được gọi là volume), ... Tuy nhiên, giao diện dòng lệnh hơi khó xem.
Trong Mandriva Control Center có phần Hardware, nhưng thông tin về ổ cứng không chi tiết đến mức từng partition như lệnh lshw. Phải vào mục Local disk mới có thông tin chi tiết về các partition dưới dạng đồ họa, trực quan.
Trong Ubuntu có thể cài gparted ( chạy từ Administration → Partition Manager) để xem thông tin về các partition.(và làm các việc khác nữa xem phần dưới)

Ký hiệu hay dùng nhất của các partition thường là /dev/sda1, /dev/sda2, …. Nếu có một ổ cứng thứ hai thì các partition trên đó là /dev/sdb1, ….
2- Tạo mới, xóa, sửa dung lượng, di chuyển, format các partition:
Trong Mandriva có sẵn công cụ để làm các việc trên (Mandriva Control Center -> Local disk). Tuy nhiên, công cụ đầy đủ và mạnh nhất để làm các việc trên là gparted (cài được cả trong GNOME và KDE). Có những việc (format, move partition, …) Mandriva Control Center không làm được nhưng gparted làm được. Linux Mint có cài sẵn gparted, Ubuntu hình như là không, phải tự cài.
Trong Linux cũng có các lệnh fdisksfdisk như của DOS nhưng không thật thành thạo thì không nên dùng.
3- Mount và umount các partition:
Mandriva Control Center -> Local disk cho phép xem các partion đã mount vào thư mục nào, thay đổi thư mục mount, mount tạm thời để xem nội dung (không ghi vào file fstab), mount tự động khi khởi động máy tính (ghi thành lệnh vào file /etc/fstab). Tóm lại là đầy đủ cho việc mount, umount các partition.
Ubuntu không có công cụ tương tự. Gparted có thể umount nhưng không mount được. Tuy nhiên có thể cài phần mềm pysdm (có trong kho phần mềm) để quản lý việc mount và umount (ghi được vào file fstab) tuy không trực quan bằng Mandriva. Sau khi cài, phần mềm này xuất hiện trong nhóm menu Administration với tên là Storage Device Manager.
CHÚ Ý: các partition Windows (ntfs, fat?) khi chạy trong Windows không shutdown mềm (mất điện bất thình lình, tắt máy cưỡng bức bằng cách giữ nút Power) sẽ bị đánh dấu là “dirty”, Linux sẽ không mount các partition dirty đó. Vì vậy:

  • Nếu chạy chung Windows và Linux trên một máy, khi thấy hiện tượng Linux không mount được các partition Windows thì phải khởi động lại Windows, rồi shutdown mềm (bằng lệnh shutdown trong menu). Sau đó khởi động vào Linux mới mount được.

  • Nếu dùng ổ cứng ngoài format NTFS nối vào Windows cũng phải shutdown mềm rồi mới tháo ổ. Nếu không, cắm ổ đó sang Linux sẽ không mount được.


4- Kiểm tra và theo dõi sức khỏe ổ bằng SMART.
Công nghệ S.M.A.R.T (Self-Monitoring, Analysis, and Reporting Technology - tự theo dõi, phân tích và báo cáo) là công nghệ theo dõi khoảng vài chục chỉ số để dự đoán trước các hư hỏng vật lý có thể có của ổ cứng. Các ổ cứng hiện nay đều hỗ trợ công nghệ này và để sử dụng trước hết nó phải được kích hoạt từ BIOS Setup.
Phần mềm Linux hỗ trợ công nghệ này là GsmartControl cài từ kho phần mềm hoặc tải về từ đây. Trước đó cần cài các gói phần mềm smartmontools có trong kho phần mềm. Vì smartmontools gửi các cảnh báo đi bằng email nên khi cài, nó yêu cầu cài thêm một số phần mềm gửi email như mailx, postfix (chỉ một cũng đủ không hiểu sao lại yêu cầu cài cả ba).

smartcontrol


GsmartControl cho phép kích hoạt SMART, test ổ cứng theo hai chế độ: Short self-test và Extended self-test, đưa ra báo cáo chi tiết.
Muốn chạy trình thường trú (daemon) để theo dõi ổ xem ở đây.

5- Kiểm tra, sửa lỗi “phần mềm” của ổ cứng.

SMART nói ở trên theo dõi các lỗi vật lý của ổ cứng. Các lỗi thuộc về phần mềm (boot sector, master boot record, bảng partition, …) dùng các công cụ khác để kiểm tra và khắc phục.
Kiểm tra tính tương thích của hệ thống file:
Trong Windows có các lệnh scandiskchkdsk để kiểm tra lỗi không tương thích của hệ thống file trên ổ cứng. Lệnh tương tự trong Linux là fsck (file system check).
fsck được đặt lịch tự động chạy kiểm tra các partition sau 25-30 lần mount (thường là bằng với số lần khởi động máy tính). Vì vậy thỉnh thoảng ta thấy Linux khởi động lâu hơn thường lệ là do fsck đang làm việc.
Khi Linux khởi động, nếu nó nghi ngờ partition nào có vấn đề, fsck cũng được tự động chạy để kiểm tra.
Người dùng có thể chạy fsck để kiểm tra như sau:

  • Khởi động máy tính bằng một đĩa cài Linux có chế độ Live CD (bản Linux nào cũng được, không nhất thiết phải cùng với bản đang cài trên ổ cứng).

  • Trong chế độ chạy Linux Live CD, mở terminal rồi chạy lệnh
    fsck -y -p -c /dev/sda3
    trong đó /dev/sda3 là partition cần kiểm tra (hoặc sda2, sda5, … tùy theo tình hình cụ thể của ổ cứng), -y là đồng ý với mọi câu hỏi mà lệnh có thể hỏi, -p: tự động sửa lỗi, -c: kiểm tra và đánh dấu các bad blocks. Còn nhiều option khác, gõ lệnh man fsck để xem.


Cập nhật: cũng có thể kiểm tra bằng trình gparted. Mở gparted, nhấn phím phải chuột vào partition cần kiểm tra (nếu partition đang mount thì umount trước) rồi chọn Check. Nếu cần kiểm tra partition cài Linux (đã mount vào /) thì boot máy bằng đĩa Linux có gparted, chạy gparted rồi kiểm tra.

Chú ý: không được kiểm tra các partition đang mount, hỏng dữ liệu.

Kiểm tra, sửa chữa các thứ khác:

  • Chữa bảng partitions bị hỏng, khôi phục các partitions bị mất.

  • Khôi phục lại boot sector của FAT32/NTFS từ bản backup.

  • Tạo lại (rebuild) boot sector FAT12/FAT16/FAT32/NTFS.

  • Chữa bảng FAT bị hỏng.

  • Chữa Master File Table (MFT) từ bản mirror.

  • Tìm các SuperBlock backup của ext2/ext3.

  • Khôi phục các file bị xoá ở các partitions FAT, NTFS và ext2.

  • Copy file từ các partitions FAT, NTFS, ext2/ext3 đã bị xoá.


dùng công cụ teskdisk như đã giới thiệu ở đây.

Undelete file đã xóa trong ext3

Có người thì khẳng định là hệ thống file ext3 không undelete được, người thì lại nói được.

Có một dự án đang xây dựng một công cụ undelete cho hệ thống file ext3 là ext3grep nhưng cách làm khá phức tạp, xem chi tiết tại đây.

Một công cụ khác (R-Linux) để undelete các file ext2/ext3/ext4 nhưng chạy trên Windows xem tại đây.  là một phần mềm khác chạy trên Windows cũng khôi phục được các file ext2/ext3/ext4 bị xóa.

Các công cụ này tôi cũng chưa dùng bao giờ.

Khôi phục boot menu bị mất (ví dụ sau khi cài lại Windows) theo cách đã nêu ở đây.

2 comments:

lamthanhphong said...

Sao em k cài được GsmartControl trên Ubuntu :( vào trang download thì nó treo luôn, k vô được :(

zxc232 said...

Site đó đang bị liệt, chờ nó chút. zxc232