高博:硬盘分区经验谈

2007年12月20日

转载自高博的博客

高博:硬盘分区经验谈

让我们一开始就把讨论的范围缩小至——当你用微软产品操作系统家族,亦即Windows下分区相关的一些最佳实践和教训。如果你使用的是*nix系的操作系统,你应该很清楚分区的逻辑意义和物理意义(除非你是Mac OS的用户),只要适当的时候挂载一下分区或设备就可以了,连分不分区都是无所谓的。而Windows的用户则绝对是包罗万象的,所以整理出一些共通的规则很不容易。但在我的5000多次装机实践中,我还是有幸有所发现。

  • 最多分两个区,绝对不要分三个或三个以上的区。现在绝大多数的电脑城里的业余装机手默认分的区就是把硬盘容量平均分成三份,分成盘符为C、D和E的三个区。且不说这些人传播盗版的滔天罪行,这种分区的方式从任何一个角度来说都不合理。为什么是三个分区?操作系统装在C盘是没有什么异议的了,那末D和E分别做什么用处?这个问题对于任何人来说都是头疼而没有答案的,而分成多于三个以上分区的行为则是不可理喻的。正确的做法是最多分成两个区:C和D,或者干脆就整个硬盘做一个C盘最省事。分成两个分区的好理由是:在D盘上可以做一个干净的、运行无误的(驱动全上,补丁全打,个性化的应用全装的)C盘系统的镜像(Symantec Ghost 2003就是这样一个好工具,PowerQuest Drive Image也不错,它们背后的技术是同源的)。而镜像文件操作是非自反的,所以这就客观上需要两个分区。而只分一个区的好理由是:Windows对此有强烈的假设。它把所有的系统文件和文件夹都放在C盘上,这个是无可厚非的,可以理解的。但是它把“我的文档”也放在了C盘,这个文件夹是无数应用程序的默认存储文件夹。这个文件夹如果在你分成两个区的情况下,无论如何都是应该重定向到D盘的。还有一系列同样的数据和个性化设置的文件夹,应该统统重定向。这样,在你用D盘的镜像文件把C盘的系统恢复到一个舒服的状态时,不会同时把数据和个性化设置也覆盖掉。一句话:做系统分区镜像文件的话可以加大你的系统的保险系数,并最大程度上减少你重装的次数,但这样的话需要你分两个区,并把系统分区的数据和个性化设置的文件夹到非系统分区去;如果你懒,或自认为是系统操作高手以及安全专家,系统本来就很少会重装,那可以径用一整个硬盘来做唯一分区,什么都不用操心了。但分三个或三个以上的区,是缺乏站得住脚的理由的——我还是替你想到了一个好理由,那就是你的机器里有三块或三块以上的物理硬盘,那样的话我也就只能提议你每块硬盘都独立地分一个区吧。
  • NTFS还不够,要压缩的NTFS。你绝对不应该再在现在的操作系统里使用FAT32这种过时的文件系统作为任何一个分区的文件系统,这种分区有诸多的限制,理论上FAT32的最大支持容量达到8T,但是实践上却没有办法让它支持大于32G的分区。保留FAT32的理由——兼容Windows 98或更早的操作系统——已经消失了。NTFS却完美地解决了FAT32缺点中的任何一个,并能够总是将磁盘的空间利用率保持在90%以上,一起免费赠送的还有可控卷容量权限分配和高安全性等大礼包。说到NTFS压缩,这倒是算是我个人的一点偏好。使用NTFS压缩的分区显示成蓝色,它究竟能在多大程度上省出硬盘空间来不得而知,但是可以确定的是它确实在性能损耗并没有达到可以感觉到的程度的同时节省了空间,那又何乐而不为呢?尽管微软的一篇谨慎的文献里指出,使用NTFS压缩要付出代价,并且不推荐写操作频繁的机器使用压缩的NTFS。但实际上这种机器又有多少呢?特别是对家用计算机来说,使用压缩的NTFS根本不会造成文中所述的性能问题,至少我的经验如此。
  • 把系统分区指定为主分区,把非系统分区指定为扩展分区中的(唯一)逻辑分区。前面说了分区数量的问题了,这里我不解释概念。怕麻烦,解释了也没用。我只想说的是这样的做法就是现有的主流分区软件(FDISK或Disk Manager)的做法。如果把非系统分区指定为另一个主分区,那末在进入系统以后,会造成性能的严重损耗(或看起来很奇怪,或引起各种古怪的问题),别问我为什么,我就告诉你我试过这样不行。
  • 先分区再安装操作系统,安装好操作系统以后不要再调整分区。分区既可以先用FDISK或第三方工具搞定,再安装操作系统,也可以在安装操作系统的过程中分区,这两种情况的结果是一样的(你不要和我说你现在还在用Windows 2000以前的系统,如果你还在用,你应该有能力搞定所有的事)——不要看好像在安装操作系统的过程中分区有一个8MB的空间被保留了,那个空间是做动态磁盘用的,并不是浪费掉了。但是,安装好操作系统以后,不到万不得已就不要再去动分区信息了。当然再挂一块硬盘的话,替它分区和格式化是应该的,但是不要再去动系统分区了。这样做的理由是:分区情况对某些应用程序来说属于安装时就记录下来的信息,这些程序以后再也不会去维护这个信息了(它们假定分区情况不会变更,这个假定是小概率下才会被打破的,你不能说完全不合理),但你改变了它的话,你就要受这些程序的惩罚——这些程序中我敢担保有微软自己的应用程序在,甚至有关键的内核程序在。林子大了什么鸟都有,这是个不糙的真理,微软现在的研发团队决定了质量不可能一码像外界想像的那样全是天才,颇有些是混入的。与其相信管理,不如相信自己。安装好操作系统发现分区不合理或出了错怎么办?正确做法是先备份数据,重新分区后再重装操作系统,最后把数据拷回去。分区引起的错误都是致命的,与其那个时候再捶胸顿足,不如接受一点麻烦未雨绸缪。
  • 千万,千万,千万不要把Program Files放到非系统分区。这样做的人全部是对计算机一窍不通之辈,程序安装不是一个简单的文件拷贝的过程。一来有可能向注册表写入信息,二来可能会进行库注册。这两个过程中的任何一个发生了, Program Files里的所有程序在系统重新安装过之后都会不能再使用。即使有一些程序幸运地仍然可以运作,但“有些能够继续用,有些不能”的这个事实如果使你做出的决策是“按它们全都能继续用来安排程序安装的位置”,这至少说明你是一个非常不谨慎的人。当然,这个话题并不是直接和分区操作有联系的话题而只是“相关话题”,这足以说明我也不是一个那么谨慎的人……我们扯平了。

我希望我的这篇博客能给千千万万浏览它的人——如果有这么多的话——带来安装时间的节省、系统使用的愉悦和专业水准的提升。

“高博:硬盘分区经验谈” 已有 3 条评论

  1. Qiqi 在

    两个区怎么够…我一般c:system d:software e:data f:album g:tv/movie h:misc

  2. Robbie Mosaic 在

    奇琦,要想多些盘符还不容易:用 subst 命令就可以了!

  3. 军勇 在

    一个硬盘一个区
    然后通过目录来分别

留下您的评论