推荐]升级160GB以上大硬盘者必读
<{cQM$# t\,PB{P:J osAd1<EIC 如果你要升级160GB以上的大硬盘,如果你想避免大硬盘在使用中出现古怪问题,请仔
~Ea} /Au 细阅读下文。
& l&:`nsJ 硬盘技术的发展除了速度越来越快以外,在容量上也过了几道门槛,每一道门槛都给
1};Stai'
9}<ile7^ 升级造成了一定困难。在以往,只是主板支持的问题,现在连操作系统都出现了由于硬盘
g|yvF-+ mSF(q78? 容量过大的兼容性问题。如何顺利地升级使用160GB以上的大硬盘,是很有讲究的,万一处
,/F~Y&1I '9J/T57]e 理不当,就有丢失大量数据的危险。
NP3y+s Be2DN5) 一、问题的由来
:q%M_ f+,qNvBY/ 因为簇和柱面早期定义的问题,很多操作系统和BIOS都有137GB的容量限制,在以往3
<)c)%'v K=h9Ce 2GB、80GB门槛的时候,可以利用不调用BIOS的DM等软件,直接对硬盘分区,使用也没什么
|&) dh<
YkKi|k 问题。不过超过了137GB的容量以后,需要48位寻址的支持, 如果此时主板有137GB限制的
u?(d gJ dOH
& 话,DM也不让你分超过137GB后面的容量(可能显示容量正确,但真进行分区操作时候会弹
|FZ/[9* 7WS p($ 出红色提示窗口:HDD I/O ERROR)。或者即使你用PQMAGIC等软件分出来了,也有许多的
giw &&l=_ ag[wdoj 兼容性问题。
H=vUYz
YfKdR"i+. 现在最突出的问题,就是操作系统中存在数据溢出的BUG,如果处理不当,很容易突然
C1n>
M}b ~-Qw.EdC 出现不认分区格式、丢分区或是目录变乱码的故障。这种故障带有随机性,笔者在几个大
j-}O0~Jz mL{6L? 的BBS已经见到有不少这样的帖子,所以不要以为目前使用正常,就漫不经心,万一“中
O;jrCB aSQ#k;T[ 奖”了,那可是上百GB的数据损失啊!
$Sip$\+* Vv=. -&' 二、支持大硬盘的关键
|3"KK +lcbi 1.支持48位寻址的BIOS
21l;\W :J&oX
<nF^ 这个是顺利使用160GB大硬盘的第一关键——有人沿用以前的方式,挂作从盘,在BIO
.|fHy AH7}/Rc S里把硬盘设为NONE,然后靠DM分区或让Windows自己识别硬盘。这种方式也不能说完全不
Fq<A rw JIx|( 可用,但通常会让硬盘只能运行在PIO的传输模式下,无法使用UD MA传输,新硬盘性能发
SZ'R59Ee< flbd0NB 挥就大打折扣了;而且没BIOS的支持,操作系统在48位寻址模式方面兼容性也容易出问题
;$wVu|& !?h;wR 。
^k">A:E2 :OT0yA=U 如果不清楚自己的主板BIOS是否支持48位寻址,可以下载Intel出的一个小工具来检验
d^
8ZeC# N<VJ(20y 一下。这个工具名为Intel 48-bit LBA Test Program(注意,在使用该软件时,需要挂接
y?? XIsF -C]5>& W 一容量超过137GB的硬盘),在DOS下运行“48lbachk.exe”之后它会搜索系统中所挂接的
jm/`iXnMf `1fY)d^ZS ATA/ATAPI设备并给出相应提示,如当前接硬盘的容量等。针对不同的硬件系统,检测结果
e6$W Qd`O <`r>h 会出现以下三种:
\Uq(Zga4) Ai3*QX “PASSED”表示BIOS支持48-bit LBA;
{cVEmvE8 c`w}|d]mC “FAILED”表示BIOS不支持48-bit LBA;
Q
/0Tj]D S_UIO.K “UNDETERMINED”则表示测试程序不能确定被测BIOS是否具有48-bit LBA能力。遇到
Lk}J8 V^2 ;iL#7NG-R 这种情况,还是上厂家主页查查资料再确认,笔者用的升技KGB7 RAID检验结果也是不能确
3;]H1
1 8'io$6d= 定的,但在升技的主页找到的BIOS说明可以支持137GB以上的硬盘,刷新后顺利升级了。最
+VOK%8,p @`- 4G2IU} 好的办法还是升级BIOS,不然宁可买小一点的硬盘,不要冒数据丢失的危险。
JP[K;/ 1\2no{Vh 工具下载地址:
ftp://download.intel.com/support/ch...aa/48lbachk.exe {B*s{{[
/' tl^9WG 2.分区软件也讲究
}Oq5tC@$G E{P|)`,V 接下来就是分区软件是否支持大便盘的问题了。就目前笔者接触过的软件,第三方的
g(CI;f}y -X2Buz8 分区软件不是支持不充分,就是兼容性问题比较多——像DM最新的版本只到2001年的9.56
9EibIOD^/ }N6.Uu5zI ,实在太落伍了。有些文章介绍利用DM来改容量变相支持大硬盘,这种方式是有危 险的,
`7V]y- cU!vsdR3 只适用于很老的主板上。通常的后果是造成被改的160GB或者250GB硬盘只能当成137GB使用
e=m42vIB- RQ"
,3.R== ,再也改不回来,成为“残疾”。
?J~_R1Z ^o&. fQ* DISKGEN我也专门试验过,结果是能识别160GB的硬盘,也能正常分区,但不能在软件
S9FE /!XVHkX[ 里顺利格式化,只有FAT12(不是FAT32)的格式可选,显然是支持不充分了。现在只有用
$}<e|3_ Si;H0uP O WinMe上自带的FDISK和Win2000/XP启动光盘,或是进入了Windows后用它的“磁盘管理器”
MeZf*'
J F0Yd@Lk$_ 来分区及格式化大硬盘比较保险,PQ分区大师的兼容性问题太多了,也不可靠。
*#+An<iT ;
z[qDkL 还有个现象就是用DOS里的Format格式化大于64GB的分区时,在开始报告格式化的大小
3{sVVq5Y T'Dv.h 是不正确的,但到最后会正确显示数值。原因是Format命令会在内部使用一些16位值来计
a~y'RyA 1f=gYzuO) 算大小,当硬盘大小等于或大于64GB时,这些变量中有一些会溢出 。例如,如果分区或硬
":QZy8f9% TJXT-\Vk 盘的大小为70.3GB(75,484,122,112字节),Format命令最初报告的硬盘大小就是 63 G
}9}h*RWm A;?|&`f B(6,764,579,840 字节),这只是显示方面的问题,记住加上“/Q”参数,格式化就能
)oPBa
UH"%N)
[ 很快完成了。可参考微软知识库的文章:
http://support.microsoft.com/default.aspx? z9Rp`z&`E oE]QF.n# scid=kb;en-us;Q263045
AFE~
v\Gz d<P\&!R( 三、操作系统相关的要点
NyNXP_8 >(t6.= 不支持48位寻址的操作系统,在访问大于137GB的数据时有可能出现溢出的Bug,造成
L$M9w j*r{2f4Rt 破坏,这是目前种种问题的根源。最常见的情况就是能够正确分区并安装好系统,但写入
!'*-$e nUOz\y 大量数据(120GB以上)后就丢失分区,或者是拷贝数据过程中失去响应。重新 启动以后
}b.%Im<3R v"Es*-{B 该分区的文件夹变成了乱码,甚至不能访问,报告该分区没有经过格式化……现在每个人
n,WqyNt* -m~#Bq 用的操作系统各有不同,微软的补丁也很多,相当多的人不知道自己系统里存在这种危险
PALc;"]O
oe-\ozJ0 性。其实微软的在线知识库里有相关的说明文章,地址是
http://support.microsoft.com
0oIe>r Qh\60f>0 /default.aspx?scid=kb;en-us;303013 ,不过是英文的页面,所以没引起大家的重视。笔
H6/$d T1=fNF 者查阅了相关的资料,综合自己的使用经验,总结出几条要点:
Z4
=GMXj 1o{Mck
1.尽量用微软自家的分区软件
1#+S+g@# YS"=yye3e 这点在上面分析过了,主要是为了保证分区表的稳定。注意不是Win98的FDISK,要Wi
P71Lqy)5}A -PR N:'T nMe自带的FDISK才能显示正确容量。如果你嫌FDISK分区速度太慢,可以先划出一个5GB左
v mk2{f,g
r3UUlR/Do 右的分区,安装Win2000或WinXP等操作系统,后面 的容量到Windows中的“控制面板→管
1/J=uH 9~[Y-cpoi 理工具→磁盘管理”里再划分,如图2。格式化时注意选好格式,勾上快速格式化。另外W
I9ep`X6Y &gx%b*;`L0 in2000和WinXP的安装光盘引导后,都具有磁盘管理的功能,还是中文界面,推荐使用。
o0KL5]. nb%6X82Q V1M.JU %._.~V 2.适当的补丁及打开48位寻址功能
H"WprHe c9h6C 如果磁盘分区中安装了不支持48位LBA寻址的旧版本Windows,例如没打补丁的Win200
&^Q/,H~S c\AfaK^KF 0或更旧版本,而该分区以前是由支持48位的系统在超出当前137GB的可寻址限制创建的,
JZyAXm% $*fMR,~t& 访问这些分区就可能出现破坏数据的情况。如果在注册表中启用了 48位ATAPI支持,并且
l!u_"I8j5 g]0_5?i 具有容量超过137GB的硬盘,但是没有48位LBA兼容BIOS,则只有硬盘的前137GB是可寻址的
3)ywX&4"L ^k9I(f^c-_ ,不能使用硬盘的其余部分。
{3aua:q c5GuM|*7 Win2000的用户,请打上SP4补丁。微软的资料上说,安装了 WinXP Home Edition 或
:"/d|i`T )\$|X}uny& WinXP Professional 的 Service Pack 1 (SP1) 之后才会启用48位LBA支持。事实上是,
97!;.f- +52{-a,> 即使打过SP1的补丁也要检查 Atapi.sys 的版本,因为只有5.1.2600.1135版本才能完全支
$qj2w"' I
b5rqU\ 持48 位 LBA,(WinXP 64-Bit Edition需要5.1.2600.1152版本)而5.1.2600.1135版本是在
brUF6rQ Xc&9Glf SP1后推出的,这个文件是在331958这个补丁里。如果你对诸多补丁感到混乱,或下载有困
/mzlH Qt<&WB
fn 难,可以手工编辑注册表,操作如下:
'^UI,"T
i Mb*?5R6; 在“开始→运行”中键入regedit,在HKEY_LOCAL_MACHINESYSTEMCurrentControlSet
I-l_TpM) &Au@S$ij ServicesAtapiParameters下,建立一个DWORD值,名为EnableBigLba,数值填1,如 图3。
NK
H@+,+V "3Y0`&:D 这是专业版的修改方法,Home版和Server版我没用过,但在注册表内搜索ATAPI的键值,相
\qJXF|z<K 4BpZJ~(p 应作修改应该也不算难事。听朋友说,他用的Win2003也能正常识别137GB后面的容量。
"fOV^B @f3E`8 %d9uTm; 3.分区及格式处理的建议
eTcd"Kd/ O?#7N[7 ①尽量把NTFS分区放最后
4{|"7/PE1 '!B&:X) Win98实在是太古老了,对NTFS格式和48位寻址都不支持,微软也停止了对它升级支持
5\VWC I c@L< Z` u 。虽然在预先分好区的160GB硬盘上,Win98也能访问各个FAT32分区,但难保不会出什么B
U| R_OLWAg DkDmE ug。鉴于某些老的软件必须在Win98里运行,建议大家使 用Win98+Win2000/XP的双系统,
+9sQZB# ( Yrq~5)% 而且把100GB以后的容量格式化为NTFS分区,放在最后。这样,Win98运行的时候,不会访
O5BYD=7 g
w<q.XL 问到超过137GB以后的数据,就大大减少了破坏数据的危险。
Tpa5N'O \1M4Dl5! ②可以把最后30GB单独分成一个区
0?|<I{z2 NL+N%2XG7 如果你的机器里有工程图纸、3D素材这样重要的数据,建议把最后的30GB专门分出一
Z6MO^_m2 *MW\^PR? 个区。再把无关重要的东西放到里面,试着把分区装满,进行多次读写的试验。如果最后
>
uEzw4w &s>Jb?_5Mx 的分区一直读写正常,那说明系统对48位寻址兼容性良好;万一不正常,也不会措手不 及
S)"Jf? )MT}+ai ,造成巨大的损失。
tw)mep
wB ^E>3|du]O ③及时备份分区表
Q\sK"~@3 W=+ Y|R! 无论你用的是不是超过137GB的硬盘,及时备份分区表都是很重要的。万一遇到突发故
m+z&
Q "qy,*{~ 障,有分区表备份,恢复数据把握就大多了。
q{x8_E!L o}p n0KO, 另外,建议不要把分区填得太满,保持1GB左右的空间比较保险。笔者试过在一个磁盘
.O<obq~;C zX i'kB 阵列上一不小心解压临时文件把C盘填满了,结果Windows提示故障并停止了响应,按RESE
TIg3`Fon h'nY3GrU T重新启动后,竟然提示阵列不能识别了。只有重新进行设置并分区,损失了 部分数据,
XW92gI<O 0jWVp-y 可谓血的教训。
Bk{]g=DO vtJJ#8a]
四、小结
DzRFMYBR {?7Uj 1.注意,这里说的137GB容量限制,是指单个硬盘而言。不是说你买了两三个硬盘,合
w_V P
J
Zx>=tx} 起来容量会限制在137GB。例如买了两个120GB的硬盘,如果没组成阵列,分别使用,加起
\a3+rNdj j.=
1rwPt 来的200多GB的总容量是不受影响的。
t"I77aZ$A 1X1dG#: 2.BIOS不支持137GB以上硬盘容量的主板,尽量升级BIOS,否则还是买120GB的硬盘好
wVtwx0|1 }c:M^Ff 了。主要是考虑到数据溢出的Bug,遇到厂家BIOS停止升级又不愿意花钱买新主板的,还是
z` b,h\
<(! :$ 不要冒险了。
'dc#F3 |;{6&S 3.如果分区是Win2000/XP创建的,万一系统崩溃,务必记住:重新安装后,在未安装
7_[L o4_ >=w)x,0yX 相应补丁前,千万不要访问硬盘100GB后面的分区,否则可能导致数据丢失!