墨菲定律发威的一周

作者:周思博(Joel Spolsky)
译:Paul May 梅普华
属于Joel on Software, http://www.joelonsoftware.com

2003年一月廿五的消息

第一章: 存放我们CVS储存库(我们所有的程式)的Linux伺服器挂了。没啥大不了的,我们有自动的远端映对备份(用_rdist_ )。花了几小时压缩远端资料再传回来。结果发现我们忘记用让_rdist_ 移除已删除档案的选项,所以备份并不完美:所有已删除的档案都还包含在内,只能手动删除。

把这事解决之后,我决定把整个程式目录树重新取出,与我原本在用的目录树相比较,戠当作最后的确认。可是我的笔记型电脑磁碟机空间不足,该是升级的时候了。我订了一台60 GB的笔记型电脑用硬碟,还有一个PCMCIA/硬碟连接器好把旧硬碟备份到新硬碟。这个动作做了约六个小时,在完成50%时失败了,还要我「执行磁碟扫描」。花了几小时扫描硬碟后重来一次。六个多小时后到50%时又失败了。这次 原来的 硬碟带着我的一生挂了。我花了几个小时东试西试,把硬碟接到不同电脑,试尽各种方法,结论是它真的挂了。

好法,这也没什么了不起,我们每天都会备份(NetBackup Pro)。我把新的60 GB硬碟装进笔记型电脑,格式化后装好Windows XP Pro。然后要NetBackup Pro把机器回复到挂掉之前的状态。我损失了一天工作时间,不过反正我这一天也做不了什么事。那天的电子邮件也没了,所以如果你这星期有寄电邮来而我没反应,重寄一次吧。

NetBackup Pro跑了几个小时,我就回家让它在晚上继续做。结果早上整个系统都挂了而且连开机都不行。我猜原因一定是我把XP Pro系统回复到Win2K映像档。于是我就再做一次,这次先安装Win 2K (硬碟格式化:一小时;安装Win 2K:一小时;再安装NetBackup Pro Client),接下来再开始回复。五个小时后才做了一半,所以我就回家了。

第二天系统开不太起来,会出现蓝色当机画面,不过用安全模式试了半小时后终于能动了。看起来所有东西都回来了,不过有几个我要Windows加密(用EFS)的档案不能用而且原因不明,应该是公用金钥和认证的缘故。我猜加密过的档案回复后就会读不出来。我还不知道要怎么解决。如果你知道要怎么解决我会永远感激你的。[1/26:我想尽办法弄了几个小时终于解决了。]

教训: 硬碟挂掉后衍生一串问题然后浪费好几个工作日,这已经不是第一次发生了。注意我有个很不错的备份策略,所有东西每天都会备份到别处。事实上我相信这已经是第三次因硬碟坏掉引发一串事故而浪费好几天了。结论:备份还不够好,现在起我要用RAID映对备份。以后硬碟再挂掉,我要能用15分钟换台新硬碟进去,回到出事前的状态继续作业。新方针:Fog Creek所有非笔电的电脑都要有RAID映对备份。

第二章。 你注意到之前我们的web伺服器当了吗?星期五大约中午本地的Verizon交换器失火,我们的电话和Internet连线全断了。Verizon花了几个小时回复电话线,不过T1比较麻烦。我们的T1是跟SAVVIS买的,他们则是找MCI(现在叫WorldCom)来营运地区性的回路。而Worldcom当然也不是自己实际去 营运 任何线路,他们才不会_弄脏_ 自己的手呢,他们只是向Verizon购买当地的线路。

所以由周五中午一直到周六半夜,Michael和我轮流上场,大约每小时打电话到Savvis关心一次。我们对Savvis施压,他们偶而就会去催Worldcom,而Worldcom则认定全都是某种SQL Server DDOS攻击搞的鬼,所以不太理Savvis。而Savvis也没告诉我们Worldcom不理他们。于是我们_再_ 逼Savvis,而_他们_ 又逼Worldcom,大概搞了三回Worldcom才同意打电话给Verizon,然后Verizon找了一个技师来把问题修好。说实在的,这有点像在推_弹簧_ 。就像上次Savvis让我们的T1线断了一天,技术问题其实没什么,如果不用跟这么多白痴公司打交道,几分钟就能找到问题并修好。

教训: 当你向某家公司购买服务,而该公司其实只是把服务外包,这样多了一层是很难有好的客户服务的。如果外包了两次就几乎不可能有什么服务了。我非常讨厌鼓励独占的地区电信公司,只有一件事会比直接和地区电信公司打交道更糟,就是和另一家只能和地区电信公司来往的官僚公司沟通。我们以后的办公室用的是Verizon DSL,真是谢天谢地。

顺便一提,如果Dell把我们该死的伺服器准时送到,你们其实完全不会发现这次的事件。我们应该在一个月前就换到很好的Peer1高备援安全托管设施上运行。看看我上一篇大骂。我有提到我发烧了吗?每次事情出错时我就会生病。

第三章。 已经发生上千次了,Fog Creek所在的赤褐色建筑四楼的暖气又没了。暖气是用热水流过墙壁里面产生的。在墙里怎么可能结冻呢?噢,原来上星期火炉坏掉了,因为当初装火炉的白痴(大概是无照的)装了25呎长的 水平 烟囱,不但妨碍通风还害一个房客住院,火炉也因此熄灭了几十次。最后暖气公司的人承认有可能加装一个导风管强迫烟囱通风,不过是在热水管冻住之后再施工。水管本身的隔热当然也没做好,这是另一个无能的纽约建筑业者的杰作。不过如果火炉正常燃烧是不会有影响的。

教训: 差的系统可能表现完全正常,不过等相邻的系统故障时就会出事。有过敏_和_ 背痛的人可能好几个有都没事,不过一患干草热打喷嚏就会背痛到不行。这种事在系统管理中_到处_ 都有。可以利用这种机会_把所有问题一次修好_ 。帮你 _所有的_ PC都加装RAID _并且_ 定期备份,不要使用EFS,要买很大的硬碟(这样就永远不必停下工作来升级),另外要再次确认rdist的命令列选项。安装导风管_并且_ 把水管隔热做好。把你重要的伺服器移去安全的代管设施_并且_ 在办公室改用Verizon的T1服务。

这些网页的内容为表达个人意见。
All contents Copyright © 1999-2006 by Joel Spolsky. All Rights Reserved.