PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 電腦硬體討論群組 > 儲存媒體討論區
帳戶
密碼
 

  回應
 
主題工具
simonevil
Basic Member
 

加入日期: Sep 2004
文章: 18
之前有聽說一些160G硬碟會無緣無故檔案消失的事件, 想預防的來看看吧

如果你要昇級160GB的大硬碟,如果你想避免大硬碟在使用****現古怪問題,請仔細閱讀下文。

  硬碟技術的發展除了速度越來越快以外,在容量上也過了幾道門檻,每一道門檻都給昇級造成了一定困難。在以往,只是主機板支持的問題,現在連作業系統都出現了由於硬碟容量過大的兼容性問題。如何順利地昇級使用160GB以上的大硬碟,是很有講究的,萬一處理不當,就有丟失大量數據的危險。

  一、問題的由來

  因為簇和柱面早期定義的問題,很多作業系統和BIOS都有137GB的容量限制,在以往32GB、80GB門檻的時候,可以利用不調用BIOS的DM等軟件,直接對硬碟分區,使用也沒什麼問題。不過超過了137GB的容量以後,需要48位尋址的支持,如果此時主機板有137GB限制的話,DM也不讓你分超過137GB後面的容量(可能顯示容量正確,但真進行分區操作時候會彈出紅色提示窗口:HDD I/O ERROR)。或者即使你用PQMAGIC等軟件分出來了,也有許多的兼容性問題。

  現在最突出的問題,就是作業系統中存在數據溢出的BUG,如果處理不當,很容易突然出現不認分區格式、丟分區或是目錄變亂碼的故障。這種故障帶有隨機性,筆者在幾個大的BBS已經見到有不少這樣的帖子,所以不要以為目前使用正常,就漫不經心,萬一『中獎』了,那可是上百GB的數據損失啊!

  二、支持大硬碟的關鍵

  1.支持48位尋址的BIOS

  這個是順利使用160GB大硬碟的第一關鍵——有人沿用以前的方式,在BIOS裡把硬碟設為NONE,然後靠DM分區或讓Windows自己識別硬碟。這種方式也不能說完全不可用,但通常會讓硬碟只能運行在PIO的傳輸模式下,無法使用UDMA傳輸,新硬碟性能發揮就大打折扣了;而且沒BIOS的支持,操作系統在48位尋址模式方面兼容性也容易出問題。

  如果不清楚自己的主機板BIOS是否支持48位尋址,可以下載Intel出的一個小工具來檢驗一下。這個工具名為Intel 48-bit LBA Test Program(注意,在使用該軟體時,需要掛接一容量超過137GB的硬碟)

  它會搜索系統中所掛接的ATA/ATAPI設備並給出相應提示,如當前接硬碟的容量等。針對不同的硬體系統,檢測結果會出現以下三種:

  『PASSED』表示BIOS支持48-bit LBA;

  『FAILED』表示BIOS不支持48-bit LBA;

  『UNDETERMINED』則表示測試程序不能確定被測BIOS是否具有48-bit LBA能力。遇到這種情況,還是上廠商主頁查查資料再確認,筆者用的陞技KGB7 RAID檢驗結果也是不能確定的,但在陞技的主頁找到的BIOS說明可以支持137GB以上的硬碟,刷新後順利昇級了。最好的辦法還是昇級BIOS,不然寧可買小一點的硬碟,不要冒數據丟失的危險。

  工具下載地址:ftp://download.intel.com/support/chipsets/iaa/48lbachk.exe

  2.分區軟體也講究

  接下來就是分區軟體是否支持大硬碟的問題了。就目前筆者接觸過的軟體,第三方的分區軟體不是支持不充分,就是相容性問題比較多——像DM最新的版本只到2001年的9.56,實在太落伍了。有些文章介紹利用DM來改容量變相支持大硬碟,這種方式是有危險的,只適用於很舊的主機板上。通常的後果是造成被改的160GB或者250GB硬碟只能當成137GB使用,再也改不回來,殘念。

  DISKGEN我也專門試驗過,結果是能識別160GB的硬碟,也能正常分區,但不能在軟體裡順利格式化,只有FAT12(不是FAT32)的格式可選,顯然是支持不充分了。現在只有用WinMe上內附的FDISK和Win2000/XP啟動光碟,或是進入了Windows後用它的『磁碟管理』來分區及格式化大硬碟比較保險,PQ分區大師的兼容性問題太多了,也不可靠。

  還有個現象就是用DOS裡的Format格式化大於64GB的分區時,在開始報告格式化的大小是不正確的,但到最後會正確顯示數值。原因是Format命令會在內部使用一些16位值來計算大小,當硬碟大小等於或大於64GB時,這些變量中有一些會溢出。例如,如果分區或硬碟的大小為70.3GB(75,484,122,112字節),Format命令最初報告的硬碟大小就是63 GB(6,764,579,840字節),這只是顯示方面的問題,記住加上『/Q』參數,格式化就能很快完成了。可參考微軟知識庫的文章:http://support.microsoft.com/default.aspx?scid=kb;en-us;Q263045

  三、作業系統相關的要點

  不支持48位尋址的作業系統,在大於137GB的數據時有可能出現溢出的Bug,造成破壞,這是目前種種問題的根源。最常見的情況就是能夠正確分區並安裝好系統,但寫入大量數據(120GB以上)後就丟失分區,或者是拷貝數據過程中失去回應。重新啟動以後該分區的文件夾變成了亂碼,甚至不能讀取,報告該分區沒有經過格式化……現在每個人用的作業系統各有不同,微軟的補丁也很多,相當多的人不知道自己系統裡存在這種危險性。其實微軟的線上知識庫裡有相關的說明文章,網址是http://support.microsoft.com/default.aspx?scid=kb;en-us;303013,不過是英文的頁面,所以沒引起大家的重視。筆者查閱了相關的資料,綜合自己的使用經驗,總結出幾條要點:

  1.盡量用微軟自家的分區軟體

  這點在上面分析過了,主要是為了保證分區表的穩定。注意不是Win98的FDISK,要WinMe內附的FDISK纔能顯示正確容量。如果你嫌FDISK分區速度太慢,可以先劃出一個5GB左右的分區,安裝Win2000或WinXP等操作系統,後面的容量到Windows中的『控制面板→管理工具→磁碟管理』裡再劃分。格式化時注意選好格式,勾上快速格式化。另外Win2000和WinXP的安裝光碟引導後,都具有磁碟管理的功能,還是中文界面,推薦使用。

  2.適當的補丁及打開48位尋址功能

  如果硬碟分區中安裝了不支持48位LBA尋址的舊版本Windows,例如沒打補丁的Win2000或更舊版本,而該分區以前是由支持48位的系統在超出當前137GB的可尋址限制創建的,使用這些分區就可能出現破壞數據的情況。如果在注冊表中啟用了48位ATAPI支持,並且具有容量超過137GB的硬碟,但是沒有48位LBA兼容BIOS,則只有硬疊的前137GB是可尋址的,不能使用硬碟的其餘部分。

  Win2000的用戶,請打上SP4。微軟的資料上說,安裝了WinXP Home Edition或WinXP Professional的Service Pack 1 (SP1)之後纔會啟用48位LBA支持。事實上是,即使打過SP1的補丁也要檢查Atapi.sys的版本,因為只有5.1.2600.1135版本纔能完全支持48位LBA,(WinXP 64-Bit Edition需要5.1.2600.1152版本)而5.1.2600.1135版本是在SP1後推出的,這個文件是在331958這個補丁裡。如果你對諸多補丁感到混亂,或下載有困難,可以手工編輯注冊表,操作如下:

  在『開始→執行』中鍵入regedit,在HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesAtapiParameters下,建立一個DWORD值,名為EnableBigLba,數值填1。這是專業版的修改方法,Home版和Server版我沒用過,但在注冊表內搜索ATAPI的鍵值,相應作修改應該也不算難事。聽朋友說,他用的Win2003也能正常識別137GB後面的容量。


  3.分區及格式處理的建議

①盡量把NTFS分區放最後

  Win98實在是太老舊了,對NTFS格式和48位尋址都不支持,微軟也停止了對它昇級支持。雖然在預先分好區的160GB硬碟上,Win98也能使用各個FAT32分區,但難保不會出什麼Bug。鑒於某些老的軟件必須在Win98裡運行,建議大家使用Win98+Win2000/XP的雙系統,而且把100GB以後的容量格式化為NTFS分區,放在最後。這樣,Win98運行的時候,不會使用到超過137GB以後的數據,就大大減少了破壞數據的危險。

  可以把最後30GB單獨分成一個區

  如果你的機器裡有工程圖、3D素材這樣重要的數據,建議把最後的30GB專門分出一個區。再把無關重要的東西放到裡面,試著把分區裝滿,進行多次讀寫的試驗。如果最後的分區一直讀寫正常,那說明系統對48位尋址兼容性良好;萬一不正常,也不會措手不及,造成巨大的損失。

③及時備份分區表

  無論你用的是不是超過137GB的硬碟,及時備份分區表都是很重要的。萬一遇到突發故障,有分區表備份,恢復數據把握就大多了。

  另外,建議不要把分區填得太滿,保持1GB左右的空間比較保險。筆者試過在一個磁碟陣列上一不小心解壓臨時文件把C槽填滿了,結果Windows提示故障並停止了回應,按RESET重新啟動後,竟然提示陣列不能識別了。只有重新進行設置並分區,損失了部分數據,可謂血的教訓。

  四、小結

  1.注意,這裡說的137GB容量限制,是指單個硬碟而言。不是說你買了兩三個硬碟,合起來容量會限制在137GB。例如買了兩個120GB的硬碟,如果沒組成陣列,分別使用,加起來的200多GB的總容量是不受影響的。

  2.BIOS不支持137GB以上硬碟容量的主機板,盡量昇級BIOS,否則還是買120GB的硬碟好了。主要是考慮到數據溢出的Bug,遇到廠商BIOS停止昇級又不願意花錢買新板的,還是不要冒險了。

  3.如果分區是Win2000/XP創建的,萬一系統崩潰,務必記住:重新安裝後,在未安裝相應補丁前,千萬不要使用硬碟100GB後面的分區,否則可能導致數據丟失!
     
      
舊 2004-10-14, 06:11 PM #1
回應時引用此文章
simonevil離線中  
ososos
Regular Member
 

加入日期: Jul 2002
您的住址: 台中
文章: 71
好文章…幫您推推…
明天就要去買硬碟,看來還是先用120的好了
 
舊 2004-10-14, 06:49 PM #2
回應時引用此文章
ososos離線中  
scarly
Major Member
 

加入日期: Sep 2003
文章: 179
感謝樓主花這麼多時間和篇幅解釋,好文章,推∼∼∼
舊 2004-10-14, 06:50 PM #3
回應時引用此文章
scarly離線中  
z.Azure
Senior Member
 
z.Azure的大頭照
 

加入日期: Jan 2002
文章: 1,268
該文語法與用詞比較像大陸文章
如果是轉載的
最好註明出處比較好
舊 2004-10-14, 09:06 PM #4
回應時引用此文章
z.Azure離線中  
alant1000
Amateur Member
 

加入日期: Jan 2004
文章: 33
大大好文,推推推,早看到您的大作,小弟就不會買200G在賣人了~><~
舊 2004-10-14, 11:14 PM #5
回應時引用此文章
alant1000離線中  
芝風
Master Member
 
芝風的大頭照
 

加入日期: Jul 2004
您的住址: 巴西,有可能來嗎?
文章: 1,946
真是篇好文章,推推推推∼∼∼
__________________
怎麼努力,也比不上外國人…
舊 2004-10-14, 11:54 PM #6
回應時引用此文章
芝風離線中  
han0911
Major Member
 

加入日期: Jun 2002
文章: 155
我執行那個程式都會產生ntvd.m.exe程式錯誤
有人會這樣嗎
舊 2004-10-15, 01:01 PM #7
回應時引用此文章
han0911離線中  
CardCaptor
Amateur Member
 

加入日期: Aug 2001
文章: 37
舊 2004-10-15, 01:21 PM #8
回應時引用此文章
CardCaptor離線中  
foxtom
Major Member
 
foxtom的大頭照
 

加入日期: Sep 2003
您的住址: 台南
文章: 268
好文章 幫您推上去,感謝樓主
__________________
新的生活,重新的開始。繳房貸的日子到了
舊 2004-10-15, 11:11 PM #9
回應時引用此文章
foxtom離線中  
mi2
Power Member
 
mi2的大頭照
 

加入日期: Jun 2000
您的住址: 夢想國
文章: 668
引用:
作者han0911
我執行那個程式都會產生ntvd.m.exe程式錯誤
有人會這樣嗎



48-bit LBA Test Program for Windows* Me/98 SE/98



An MS-DOS*-based 48-bit LBA test program is available below for use on systems running Windows* Millennium Edition (Me), Windows 98 SE, or Windows 98. This program provides an easy way to determine if your BIOS is capable of supporting hard drives larger than 137GB (48-bit LBA). This program can also determine if your BIOS may need to be updated in relation to 48-bit LBA.

PASSED - BIOS is currently 48-bit LBA capable. No additional steps are needed.
FAILED - BIOS is currently not 48-bit LBA capable. BIOS update needed.
UNDETERMINED - Test program is not able to determine if BIOS is 48-bit LBA capable.
The 48-bit LBA test program was designed to run in a true MS-DOS environment - not an MS-DOS prompt window. (Instructions for running the program in true MS-DOS can be found at the bottom of this page). Running this test program from an MS-DOS prompt from within Windows Me, Windows 98 SE, and Windows 98 may still work but you may see some irregularities and formatting issues.
Download the Intel 48-bit LBA Test Program
Note: Due to the current BIOS architecture, you will need to have a hard drive larger than 137GB installed on your system before running this test program. Otherwise, the following error message will appear: "We cannot determine whether your BIOS is 48-bit LBA capable, because you currently do not have a 48-bit LBA hard drive installed."

Caution: Running this test program on systems using non-supported operating systems such as Windows XP, Windows 2000, and Windows NT* 4.0 will produce a 'NTVDM.EXE' error.



該軟體只支援for Windows* Me/98 SE/98

也說了Running this test program on systems using non-supported operating systems such as Windows XP, Windows 2000, and Windows NT* 4.0 will produce a 'NTVDM.EXE' error.

舊 2004-10-16, 04:04 PM #10
回應時引用此文章
mi2離線中  


    回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是10:37 AM.


vBulletin Version 3.0.1
powered_by_vbulletin 2024。