如何使用工具badtrk檢查磁盤壞道?
device 是Unix分區的設備名。比如,系統上的第一塊硬盤設備名是/dev/rhd0a,第二塊硬盤的設備名是/dev/rhdla。系統默認的設備名是/dev/rhd0a。
-f 這個選項的作用是打開Unix分區設備,並讀出它的壞道表。
badtrk -f/dev/rhd0a
屏幕顯示菜單選項
顯示當前磁道表
掃描硬盤(可以選擇只讀方式,也可選破壞方式)
按柱面/磁頭數在當前壞道表中增加一些記錄項
按扇區數在當前壞道表中增加一些記錄
從當前壞道表中刪除單個記錄項
從壞道表中刪除全部記錄項
-e 這個選項在硬盤安裝過程中使用。它可以用來修改壞道表的大小。當在已經安裝好的系統中使用它時,要特別當心。因為壞道表的大小發生變化時,則要對硬盤的空間重新劃分,將破壞硬盤上的內容。
例如:
badtrk -e
屏幕顯示:This device contains a valid division table.Additional
(non-root)filesystems can be preserve across this reinstallation.
If you wish to be able to preserve these file systems lager,
Your must not change the current limit of the bad track table
Which is n bad track.Do you wish to leave it unchanged?(y/n):
如果回答n,將會改變壞道表的大小。那麼隨之而來的divvy表等都會遭到破壞,甚至需要重裝系統。非根文件系統的數據,可以用後備形式加以保存。
-m max max是一個十進制數值,這個選項的作用是設置最大壞道數。在Unix系統安裝過程中,壞道表中的壞道數是允許設置的。一數默認為15條磁道。-m選項通常與-e一起使用,例如:
badtrk -e -m 15
-s qtdn 選項s表示要進行硬盤掃描,找出壞磁道,並將它放在壞道表中。
Qtdn分別是四個子選項:
Q 快速掃描
t 完全掃描
d 破壞性掃描(硬盤原有數據破壞)
n 非破壞性掃描(保持硬盤原有數據)
-v 它與-e選項一起使用,作用是在硬盤掃描過程中,屏幕顯示信息,提示硬盤已經掃描了多少。
最後應該說明:badtrk命令必須在單用戶方式下使用。這個命令只適用於標准硬盤控制器,它不能在裝有SCSI或IDA控制器的系統上使用。如果破損的位置出現在引導塊中,或Unix開始的位置上,硬盤和系統就需要重新安裝。
系統在正常運行時,屏幕突然顯示如下錯誤信息,並不斷重復顯示:
Warrning:wd0:Error fixed disk dev
1/42,block=5160,cmd=0x00000020
status=0x00005940,sector=122340,
cylinder/heah=477/0
---- 分析處理:這種現象一般是硬盤中出現壞塊而引起系統報警。在超級用戶下執行badtrk命令,選擇“2、scan disk”選項,再選擇“1、Scanentire unix partition”選項中的“1、quickscan”選項,非破壞性掃描整個unix 分區,找出硬盤中壞塊的位置。掃描結束後,記下硬盤壞塊的位置(Cylinder/Head),選擇“3、Add entries to current bad track table by Cylinder/Head number”選項,按照系統提示的格式輸入硬盤壞塊所在的位置(Cylinder/Head number)。所有壞塊都輸入完後按Q退出;屏幕顯示:
---- Do you want to update this device with the new table(Y/N)?
---- 選擇Y;屏幕顯示:
---- Do you want to salvage any valid data on the bad tracks(Y/N)?
---- 選擇Y;結束後,系統返回到UNIX超級用戶下,屏幕上將不再顯示硬盤的報警信息。