永不消逝的存储

永不消逝的存储

没有永远,唯有转瞬即逝。而这道理却永远成立,正如死神永生。时间生出一切,又亲手毁灭一切。万物在一段时间内出场,又不容稍迟地退场。但只是万物,“万事”则不然。“事”,或曰“数据”,乃抽象之物,“象”一抽去,“事”则不灭——数据无论保存到什么时候,读取时都和写入时一模一样,须臾无改。但“事”不可凭空存在,必有借“物”而存。此“示事之物”,是所谓“存储”者也。

因存储硬件毁坏或误操作而丢数据,在历史上发生过数次,用痛心疾首也不足以形容这样的事件发生时的体验。当意识到发生了什么以后,大脑会“嗡”地一声,然后痛苦像火山熔岩一点点地溢出来,所及之处将思考之物灼成空洞。数据的背后,都是巨大的时间和精力投入所形成的积累,所以数据的损失决不等于存储的损失,或者不如说存储的损失简直可以忽略不计。随着数据的消逝,一段岁月也化为泡影。说数据人命关天,此言非虚。

数据恢复技术的出现,多少让这个问题得以缓解。然而不用说,也只能是缓解而已。存储硬件的物理损坏部分所涉及的数据,是无法恢复的——不然也就称不上是“物理”损坏了,而像误删除或是误格式化这样的操作,一般而言也是无法恢复全部数据的,因为很难做到在误操作以后一个字节的数据都不写入,而一旦写入,往往就会覆盖掉原先的数据区域——这些区域在删除或格式化后已经被标为可用区域。到底在历史上丢过多少数据而不能恢复呢?想来应该是不少的,就在最近一两年都发生过硬盘损坏而无法做数据恢复这样的事情。那是一块Seagate品牌的7毫米2TB笔记本硬盘,买来700元左右,但恢复费用竟然要2000元。跟流氓没有什么好说的,默默拉黑就可以了。

很多年以来,都想以比较一劳永逸的方法解决存储的可靠性问题。技术的话是早已有之也早已知之,就是所谓独立磁盘冗余阵列(Redundant Array of Independent Disks,RAID)。冗余,这个词本来是多少有些贬义的,然而作为数据术语来说,这个词却像是救星。在数据领域,它有一个更好听也很常用的别名,叫做备份(backup)。实际上,任何提到数据保护(data protection)相关的专业技术,无一不是从这个概念出发的。任何数据,如果不存在两份以上的冗余(或称一份以上的备份、副本,直观地说,就是原始数据的精确镜像,当然也有一些高级的数据保护技术可以不采用精确镜像,而是利用压缩后的副本或校验位等。但是无论采用何种技术,都必须能够可逆地从冗余信息中精确地恢复出原始数据的精确镜像),当然在它毁损之后就不能再恢复——说简单也简单。所不同的,只是冗余的具体数量、冗余更新的频率、冗余存储的位置,以及生成冗余信息并从其出发可逆地恢复的方式这些细节罢了。

但做起来也不是像说起来那么容易的,主要的原因在于成本。RAID硬件一度非常昂贵,其实到今天也绝不便宜,只是现在实现RAID已经不完全是靠硬件了而已。还有,本来大容量外部存储的价格也一直居高不下。要从可靠性的角度做RAID,当然不可能做RAID0(RAID0不知道是谁发明出来的,它并没有采用任何的冗余,却空挂一个名头,没有提高性能又把出错的概率提高了n倍——n是组成RAID0阵列的磁盘个数,可能唯一的用途就是用于RAID10吧),肯定要做RAID1或RAID10。但是做RAID1或RAID10,也就意味着要将存储空间降为组成阵列的磁盘个数(或组数)的n分之一(这样才能保证一份数据有n份冗余)。换言之,就是花n份钱,买1份数据的n倍保障。从实际效果来看,其实2块磁盘组成的阵列就已经能够提供足够强大的保障力度了,因为毕竟2块磁盘同时坏掉的可能性相对还是偏低的,只要在1块磁盘坏掉的时候,及时地更换上1块新的磁盘即可。而另1块磁盘再坏掉时,再把它换掉。这样的过程中,数据是没有损失的。

有些人可能感觉云存储也是一个选项,其实从成本的角度来看,几乎没有性价比。目前,10TB的普通硬盘价格约在每块2000元,使用寿命大约在5年左右。而对象存储10TB的容量加上月均10GB的流量,单月成本也很接近2000元了。当然,如果不使用对象存储,而使用像网盘这样的存储服务,价格要稍低一些,但1TB存储一年也要1000元左右,而10TB的价格呢?

世间居然有QNAP TS-212P这样性价比无敌的NAS产品,淘宝价居然不到700元,真是买不到吃亏、买不到上当。忽略掉网上对它“读写速度一般”的负面评价吧!实测下来,满足家用甚至小微企业应用是丝毫不成问题的。

我们处于一个幸福的时代,可以用不到5000元的成本,换来10TB几乎永不消逝的数据。而且,这些数据可以提供像对象存储一样的便捷访问能力。大概再过一些年,我们可以用类似的成本,来把具备类似容量的存储硬件替换成SSD,以获得快得多的访问速度、高得多的可靠性和长得多的寿命(后两者暂时还没有太多科学依据)。科技的进展是可期的,然而我们却没有必要因为有理想而不肯从理想退让一步。其实即使是理想,也有它的最低形式,从存储的角度来看,我想最低的理想,是已经实现了吧。

千兆网络升级记

千兆网络升级记

其实在中国大陆,千兆网络的用处没有看上去那么大。很多情况下,网络的可访问性并不取决于物理的带宽,而是取决于人心的带宽。千兆带宽能够发挥优势的地方,主要在于能够比较快速地进行双方或多方通信,或进行大体积文件(主要是视频文件)的下载,然而这两者却恰恰是网络应用受到限制最多的领域。不过,纯粹从商业角度来看,似乎将基础设施升级到千兆级别还是多少有一定必要的,因为百兆设备已经逐渐地不能再支持逐渐普及的、超过百兆的家用宽带网络。也没有理由在ISP提供了200Mbps带宽、自己也交着200Mbps带宽的费用前提下,却要因软硬件限制用着缩水一半的服务。于是乎,着手做了一番千兆网络设备的升级。

一“着手”就会发现,想像中需要升级的部分,和实际上需要升级的部分,有着不小的区别。仅以硬件为例:

千兆网络中端到端地每一个环节都需要支持千兆网络,只要有一个不支持,那么从这个环节之后就只有百兆网络可用了。这里面没有任何神秘的地方,就是木桶原理而已。但是看上去简单的原理,应用到实践中就到处都是问题了。最基本的硬件,就是网线,由于需要升级太多根,也花了相当可观的一笔钱。所以,千万不能根据理论来做预算

升级千兆网络涉及的硬件:想像和实际的对比

想像中需要升级的设备实际需要升级的设备
路由器路由器
总交换机总交换机
桌面交换机桌面交换机
下层路由
无线AP
连接ISP路由路与下层路由器WAN口的网线(1根)
连接下层路由器和总交换机及弱电箱内设备的网线(3根)
连接总交换机和无线AP、桌面交换机及各种网络设备(计算机、网络存储、电视盒等)的网线(15根)

主要遇到的问题有二:

  1. 由于连接的层数有三、四层(理论上是从路由器到交换机,然后就到设备了。可是并非如此,首先,从弱电箱的总交换机到各个房间的桌面交换机,就多出一层来。但是由于众所周知的原因,神奇土地上ISP给的路由设备怎么可能可以直接桥接呢?受了Chiphell上的一篇文章的启发,并买了一台EdgeRouter以后,终于实现了此前想了很久的效果,但是这样做的结果无疑又增加了一层连接,变成了ISP路由⇔EdgeRouter⇔弱电箱内的总交换机⇔各房间的桌面交换机以及无线AP⇔设备这样的四层连接),只要出现结果为百兆以下速率的结果,就需要一层一层向上排查。
  2. 网络连接不仅取决于硬件,还和软件配置有关。硬件就已经有点头疼了,具体举个例子,无线AP也需要升级虽然说是想到了的,但是没想到无线AP也有一个进线口是否支持千兆的问题。但这远远不是结束,只要是进线口支持千兆的无线AP,价格就先不说了,配置都复杂得非常夸张——典型的叫做“花钱买罪受”!如果你不相信,想挑战挑战,我就请你试试看在H3C的WAP712C无线AP上配置一下802.1x,并使用局域网内的一台设备做Radius验证(且只是在Fat模式下)。如果你可以在2小时内完成,那么我可以付你人民币500元(甚至不需要加这个时间限制也可以)帮我搞下。百兆的世界,确实是岁月静好的、小白都可以轻松搞定的世界——golden old days,但是千兆网络已经开始接触到专家模式的入门级了。正是在这次千兆网络升级的过程中,我第一次认真地接触到了软路由和软AP的配置,当然还不能说深入地了解了很多,因为毕竟还只是家用的网络而已,很多情况下我是止步于问题的解决和一般原理的理解,而不是把相关的东西都统统彻底弄明白。如果是后面那样的话,恐怕我就要转行了!

不可能没有坑,这次升级的坑算少的。基本上,只有一个,是一块已经坑过我一次的网卡。当然,由于被坑过一次,这次排除故障的速度也就稍快了那么一点。

好吧,不过我是真的得再次称赞一下Dell的台式电脑。确实太耐用了,而且是全天候把普通的、非工作站式的台式电脑当远程桌面服务器来用的,就这样五六年下来还是在顶着。最近打算为它换一块SSD硬盘,感觉完全可以“缝缝补补又三年”。相对于硬件的开销,和硬件损坏带来的烦恼而言,软件故障只是相对比较难以定位,毕竟是可以相对容易解决且成本低廉的啊!而且上面说的这个问题甚至严格来说都并不能算是故障,只能说是“配置不符合需求”而已。

无论如何,经过了历时长达一个多月的折腾和测试,总算现在可以享受到至少在局域网内,以及从外部网络访问内网时较满意的网速了。人这玩意儿毕竟还是要靠这里那里有一点改进的小满足感,才有勇气去面对每天排山倒海般的压力的嘛。

域名验证型(Domain Validation)SSL证书选购指南

域名验证型(Domain Validation)SSL证书选购指南

最近兄弟我穷。穷不是少花钱的理由,不穷也不应该乱花钱。但是穷会有一个好处,就是催人开始考虑在维持供应水准的前提下,寻找开支比较低的替代方案。我的消费习惯是:先花正常的钱,看看正常的供应是什么样的。然后再根据钱包的情况,决定是提高预算来享受更高级的供应,还是降低预算来寻找同等级的供应或是虽然降低了等级或水准但是仍然可以接受的供应。为什么要先看正常的供应是什么样的呢?因为这样一方面可以知道,多花钱买到的是什么,从而不会花冤枉钱;另一方面也可以知道,少花钱要失去什么,这些失去的部分是否是你真的不需要的,而不是从一开始就以省钱为唯一的指标,从而造成根本不知道还有一些你本来可能需要的部分。为了寻找高性价比的供应而购买的正常供应,称为参考供应消费,这部分开支如非非常必要,是不应该节省的,我把这个消费称为学费。任何消费都不应该仅仅是消费,而应该从中学到一些什么。至少应该学到下次如果再购买同样的商品时,如何进行在性价比方面更称心如意的选择。人应该在消费中更好地认识自己、认识世界。换言之,应该做消费的主人,而不应该为了消费而成日忙碌而不反思,做了消费的奴隶。

了解SSL证书的分类和自己的需求

所以,谈到SSL证书的选购时,我们就需要知道自己的需求到底有哪些。从验证类型上说,SSL证书分成三类:域名验证型(Domain Validation,简称DV)、组织验证型(Organization Validation,简称OV)和扩展验证型(Extended Validation,简称EV)。DV证书需要验证的项目只是证书申请人拥有所签发证书的域名的所有权即可,不需要验证证书申请人的身份。而OV和EV证书则还要验证证书申请人的身份,这个身份还不能是个人,必须是企业或经过政府认定的合法组织等实体。相应地,DV证书只会显示证书和域名是否一致,而不会显示也无法显示证书申请人的身份。而OV和EV证书则还会显示证书申请实体信息,尤其是EV证书,会直接在浏览器的地址栏上以绿色显示出证书申请实体信息。总结一下,DV/OV/EV的区别如下:

DVOVEV
验证项目
  1. 对证书所对应域名的所有权

  1. 对证书所对应域名的所有权

  2. 证书申请实体证明材料

  1. 对证书所对应域名的所有权

  2. 证书申请实体证明材料

接受的申请者类型个人、企业或组织企业或组织企业或组织
申请过程可否自动化可以不可以不可以
签发时长若干分钟一周左右两周到数个月
是否显示证书申请实体信息不显示显示显示
证书申请实体信息显示方式不显示查看证书详情时显示直接在地址栏以绿色显示

从上面的信息可以看出来,DV证书要求验证的项目最少,并且对于域名所有权的验证过程可以自动化。同时,DV证书是唯一一种个人可以申请的证书。但是,从SSL证书起到的加密效果来说,所有的证书都是一样的。OV和EV证书无非是由于提供了额外的身份信息,从而从社会学角度,或者说从人类可理解的角度增强了可信度而已。当然,这一点对于某些项目的安全性要求来说,可能是必要的。但是,校验这些额外的身份信息肯定需要花费额外的人力物力,无法自动化。

如果以一个证书能够对应多少个域名来划分的话,SSL证书又可以划分为四种类型:单域名、泛域名、不支持泛域名的多域名、支持泛域名的多域名。单域名,就是说证书只对应于一个域名,比如:example.com。有些单域名证书还同时支持带www和不带www的两种形式,比如同时支持www.example.com和example.com,甚至有的单域名证书还支持子域名也有带www和不带www的两种形式,比如www.sub.example.com和sub.example.com。但是,有的单域名证书就不提供任何这样的支持,或不对子域名提供这样的支持。泛域名,就是证书对应于一个域名,和它的任意下一级子域名。比如:example.com和*.example.com,或sub.example.com和*.sub.example.com。请注意,泛域名都支持域名本身,都只支持下一级子域名,而大于一级的子域名则都不支持。比如,如果你购买了针对example.com的泛域名证书的话,则证书中是不包括level2sub.sub.example.com这样的二级子域名的,当然针对sub.example.com的泛域名证书也不包括level3sub.level2sub.sub.example.com这样的三级子域名,反过来它也不包括example.com和othersub.example.com这样的同级其他域名或上一级域名。

多域名证书的情况有一点复杂,但概念上也是简单的。多域名,就是指包括大于一个单域名和泛域名的组合。比如,一个多域名可能包括这样一些单域名或泛域名:example1.com、*.example2.com、*.sub.example3.com。对于上面这样一个多域名证书,是不是包括example2.com呢?包括的,因为泛域名证书是支持域名本身的。但是不是包括www.example1.com呢?那就不一定,这要看证书是不是同时支持带www和不带www的两种形式。如果支持就包括,否则就不包括。顾名思义,不支持泛域名的多域名就不允许包括泛域名,支持泛域名的多域名就允许包括泛域名。当然,包括的域名,不管是单域名还是泛域名,必须大于一个。如果一个证书里包括了域名example.com和www.example.com,那末它既可能是单域名证书,也可能是多域名证书,想想这是为什么?

EV证书是不支持任何形式的泛域名的,EV证书的设计意图在于证书中包括的每一个域名都必须明确经过人工审核,不允许存在“免检放行”的情况。这样,即使EV证书被盗也是没有太大用处的,除非把顶级的DNS服务都劫持了。但如果能做到后者,那还要盗取CA证书做什么呢?自签证书就够用了。所以,EV证书具有极高的安全性和彰显身份的浏览器的绿色信息,价格也非常贵。

如果把DV/OV/EV和单域名/泛域名/不支持泛域名的多域名/支持泛域名的多域名加以组合,就得到了下表:

DVOVEV
单域名支持支持支持
泛域名支持支持不支持
不支持泛域名的多域名支持支持支持
支持泛域名的多域名支持支持不支持

写到这里,其实只要问自己几个问题,就可以明确地得出你必须选择的证书类型,或排除掉你不能选择的证书类型了。

  • 你的身份是个人吗?你必须选择DV证书。
  • 你不想走人工审核流程而是想立刻获取系统自动化生成的证书吗?你必须选择DV证书。
  • 你想使用泛域名或想在多域名中包括泛域名吗?你不能选择EV证书。

好,以上的讨论其实已经超出本文标题的范围,变成《(任意)SSL证书选购指南》了。但为什么要写这些呢?主要还是因为很多人都对SSL证书没有起码的概念,所以必须得把什么是DV证书交代明白。我想,基本上看到这里,所有人都应该明白什么是DV证书,以及DV证书相对于其他类型的证书有什么特点了。总结起来,DV证书是适用申请人类型最广、签发速度最快且能够自动化签发的SSL证书,并且支持所有四种单域名、泛域名、不支持泛域名的多域名、支持泛域名的多域名类型,唯一的不足就是它不能够显示出证书申请人的身份信息,这对于一般的应用并不存在什么问题(除了一些知名企业或需要防止钓鱼的网站等),尤其对于个人用户而言完全不是什么限制,更何况也是他们的唯一可选的选项。

那么,技术层面的讨论基本告一段落,接下来到谈钱的时候了。证书是分品牌的,一般来说,同一品牌、同一商家的前提下,价格从低到高的排序一定是DV、OV、EV。在同一验证类型之下,价格从低到高的排序一般是单域名、不支持泛域名的多域名、泛域名、支持泛域名的多域名。这里的讨论中,同一品牌、同一商家这个前提非常重要,因为一个高端品牌的单域名证书的价格完全可能是一个亲民品牌的泛域名证书的数倍,甚至不在一个数量级上。而一模一样的证书,在不同的商家那里可以卖出上千倍的差价,一点不夸张。前者的价格差异,主要源于保险金额和售后服务水平的差异。而后者,基本上就是信息不对称带来的了。换句话说,品牌差异造成的价格差异决定的是“成本价格”的差异,这个是难以降低和控制的,除非有促销活动等事件发生;而商家差异造成的价格差异就需要非常仔细地考虑好这个商家到底凭什么加价,如果网站信息齐全、购买体验好、售后服务和支持好,加点价当然也情有可原。但是无论如何,信息不对称造成的差价,是一个成熟的买家绝对应该想办法降低和避免的。

开始吧。

不花钱的方案

免费永远是最好的,因为免费意味着可以获取任意数量,这基于一个简单的数学事实:零乘以任何有限量,其结果仍为零。《新概念英语》上就有一篇文章写道:免费是营销上的魔咒,这是很少会出错的。

并非所有的证书都要单独收费,但是真正完全免费的证书目前只有一种:Let’s Encrypt。此前倒还是有一家免费证书供应商叫做StartCom的,可惜由于被一家叫做沃通的中国证书供应商摆了一刀,现在也已经属于半死不活的状态——Chrome内核版本号57以上已经彻底拒绝信任了StartCom和沃通的证书(除了极少数由它们签发的EV证书以外——比如它们的官网)。这种情况要持续多久,甚至是否还有改变的可能,都是未知数。所以,如果想无条件地使用免费证书,那么至少目前唯一的选择就是Let’s Encrypt。

但是,要使用Let’s Encrypt的证书,需要一定的技术能力。和绝大多数证书供应商不同,Let’s Encrypt的证书签发过程并不是通过在官网上填写一系列信息,然后把生成证书下载链接或是把证书发送到指定邮箱里这样来完成,而通常是通过一种称为Certbot的软件(实际上是个Python脚本),根据不同的Web服务器软件和操作系统组合使用特定的命令来完成自动化的在线验证和证书签发。但是Certbot却并不支持Microsoft的Web服务器软件——IIS和Windows操作系统,如果不了解UNIX或Linux,确实就会比较头疼。当然,先在UNIX或Linux服务器上生成好证书然后再下载下来给IIS/Windows使用也是可以的,折腾一点罢了。具体的技术参考,初学者可以看下这篇文档,高级用户可以看下这篇文档。不过这两篇文档都有点小过时了,现在按照Certbot官方文档来操作,简单到无法再简化的程序,从零开始一共3条命令解决问题(还有2条是安装Certbot的命令),就是要懂点英文。

Let’s Encrypt的好处在于,它获得了广泛的浏览器支持,包括一些老旧的和最新的浏览器及客户端,并且它可以签发不支持泛域名的多域名证书——可以在同一张证书里包含不超过100个域名之多。可是它不可以签发泛域名证书,当然也不可以签发支持泛域名的多域名证书。 更新:2018年3月13日起,Let’s Encrypt已经支持签发泛域名证书

更新:2018年3月13日起,Let’s Encrypt已经支持签发泛域名证书,且支持签发包括泛域名证书的多域名证书。

Let’s Encrypt的不足之处在于要使用它,需要一定的技术能力。换句话说就是如果没有这样的技术能力,就没有办法使用它来签发证书。而别的证书供应商则提供了一些途径,使得没有技术能力的用户也能完成证书签发。另外,就是Let’s Encrypt的证书有效期只有90天,而一般别的证书供应商签发的证书有效期都是一年起。所以,这就意味着只要使用Let’s Encrypt的证书,一年内就至少需要对证书做四次续期操作(证书续期不可太频繁,一周内限制为最多5次)。一般来说,凡是使用了Let’s Encrypt证书的用户,都会在服务器上部署一个定期执行脚本来自动完成证书续期操作,而这反过来就需要更多的技术能力。总之,Let’s Encrypt的证书并不是给真正的小白用户用的。但要用它,也并不需要特别高的技术能力,对于UNIX/Linux有一两年经验的用户就能轻松完成签发和续期的工作。

更新:现在可以使用SSL For Free网站来通过网页操作签发基于 Let’s Encrypt技术的SSL证书,但用这样的方法,只能使用手动更新域名TXT记录的方式来进行签发和更新,且必须每三个月进行一次,而无法通过定期执行的脚本来享受自动化签发和更新的方便。所以,这只能说是个实在不懂技术或实在受到技术限制前提下的无奈补充手段,不宜作为主要方法。

如果不使用Let’s Encrypt的证书,又不想花钱,那么余下来的路径就是找那些作为附送证书的域名注册商或是云服务商了。比如著名的域名注册商Gandi就为新购的域名附送一年的SSL证书。传统上主要是主机商提供SSL证书,但现在一些新兴的云服务商也会提供附送的SSL证书,比如七牛。不过当然,和Let’s Encrypt的证书相比,这些服务商提供的免费证书都不会是无限期的,也是随时都可能取消的福利。

有些品牌的证书会提供一定期限的免费证书,比如Comodo就提供了有效期为90天的、免费的、测试用的证书。GeoTrust也有类似的证书提供。当然,和Let’s Encrypt这种真正免费的证书不同,这样的测试证书只支持单域名证书。

花钱但以省钱为目的的方案

再强调一遍,DV证书的基础效用是一样的,免费的也好,收费的也好,便宜的也好,贵的也好,使用起来在安全保护这个基础用途上没任何区别。就好比选购装纳旅行用品的容器时,一个LV的拉杆箱和一个普通的蛇皮口袋在装东西这个基础用途上没任何区别。但是,当然花了成本价以外的更多钱向证书供应商购买证书的话,可以得到两种额外的东西:一个是保险金额,即在部署了证书的前提下仍然在加密线路上被窃取了资料时,可以获得的赔偿金数额;一个是售后服务,也就是在如果你遇到技术问题时,供应商能够给你提供的支持到什么水平。这两者,当然也不是说不重要了,但是前者我个人认为真的不用考虑太多。若是真的遇到了高手,居然把加密算法都攻破了,那基本上也就只能认栽了。而且在这样的前提下去索赔,说实在的,能赔多少,理赔的手续都是大麻烦。所以,主要还是依据自己的技术水平来选择需要怎么样水平的售后服务比较实际。

那么,“成本价”在哪里呢?简而言之,如果你要购买的是单域名证书或多域名证书,答案就在GoGetSSL网站。在这里,你能够选购很多品牌的DV证书,而基本上在全网你已经不太可能找到更便宜的价格了。其中,最便宜的GoGetSSL的运营公司,总部位于拉脱维亚首都里加的EnVers Group SIA推出的定牌产品——GGSSL品牌证书,单域名证书仅售4美元左右一年,不支持泛域名的多域名证书仅售不到20美元(买满两年以上甚至年均价格可以降至16美元不到,而向证书里每增加一个域名仅须加8美元)。如果想买支持泛域名的多域名证书,那这个价格一下子就上去了。GGSSL品牌不提供这样的证书,最便宜的也是Comodo的子品牌——PositiveSSL品牌的支持泛域名的多域名证书,即使一次买三年以上,年均价格也要160美元,而且在配额以外每加一个域名(无论是否泛域名)都要再增加每年60美元。

在GoGetSSL网站上我们还可以申请免费试用版的Comodo和RapidSSL品牌的证书,而且号称可以“一直免费续期”。我自己是没有试过啦,但如果真的可以,倒是可以作为Let’s Encrypt的单域名证书的“无技术门槛替代物”。

从GoGetSSL网站我们可以看到几乎所有主流的证书品牌,也可以大致看到主流证书品牌之间的价格排序情况。当然,GoGetSSL的品牌是不够全的,如果把大的品牌都列出来,基本上是下面这样排序。这里要指出的是,位于排序的同一梯队的证书品牌(包括一些常见的子品牌,但下表并全品牌大全,更不是产品大全),很有可能相差并不大,甚至在某些网站会出现顺序不一致的情况,但很少会出现跨梯队价格反序的情形。当然,价格比较也需要是同一类型的产品,拿一个品牌的多域名证书和别一个品牌的单域名证书比价格,就好比拿Louis Vuitton的皮夹子和Coach的拉杆箱比价格然后说Louis Vuitton更便宜,是没有意义的。

廉价(年均20美元以内,支持泛域名的多域名证书除外)GGSSL < PositiveSSL(Comodo子品牌) < RapidSSL(GeoTrust子品牌) < EssentialSSL(Comodo子品牌) < InstantSSL(Comodo子品牌) < AlphaSSL(GlobalSign子品牌)
中间价格(年均200美元左右)Comodo < TrustAsia(Symantec子品牌) < thawte(Symantec子品牌) < GeoTrust < DigiCert < GlobalSign
高价(年均200美元以上,可能远超200美元)Symantec

如果说以上的是属于比较常规的购买渠道,那么在现在这个时代,任何电子商务渠道都不能不和淘宝作个比较。事实上,这也是为什么我一直没有在上面的讨论中列出泛域名证书这个选项的原因。因为,在淘宝上购买泛域名证书实在是太便宜了。可以找到一年只需要25元人民币的泛域名证书——和GGSSL的单域名证书相当,简直不可思议(一般都是AlphaSSL品牌)。那么有人可能要问了,是不是在淘宝上买单域名和多域名证书也更便宜呢?答案是不一定。在淘宝上可以的确时不时地可以看到1元人民币的证书,但是供应并不稳定,并且经常会有打着低价的幌子使用StartCom和沃通的证书来蒙人的商家——再说一遍,这两家的证书已经被使用Chrome内核的浏览器彻底封杀,而使用Chrome内核的浏览器市场占有率已经过半,所以这种证书绝对不可以购买!当然,如果你技术水平过关,完全知道如何分辨证书品牌,那逛一逛淘宝还是有可能淘到一些便宜的单域名或多域名证书的。但作为一个一般性的建议,必须照顾到小白用户,所以这里并不作为优选来推荐,毕竟GGSSL的证书已经足够便宜了。

小结一下,如果是打算花钱买证书但预算紧张,那么请选择GGSSL证书品牌,或在GoGetSSL网站来购买其他品牌的证书,作为单域名和多域名类型的证书的首选。淘宝上使用“通配符SSL证书”作为关键字搜索就可以搜到价格为一年25元人民币左右的(运气好的话甚至可以找到价格为一年5元人民币的)、AlphaSSL品牌的泛域名证书。作为一般性的建议,第一,既然DV证书用起来都一样,那末上面的建议已经完整了;第二,千万别犯傻去买那种一年几百上千,甚至近万元的DV证书,目前真的很多证书网站还在以这样的价格出售DV证书,本博客的读者应该不再会上那样的当。有钱干点什么不好?

一些小众的证书品牌

本来写到上面这一段结果,就可以结束了。但是我感觉任何时候都需要满足一个小众的需求,就是花钱买个与众不同的感觉这种需求——不差钱的主儿,往往有这种需求。

先说几个其实还是不算十分稀有的品牌,但是比起Comodo、GeoTrust、DigiCert、GlobalSign和Symantec这些大路品牌及其子品牌来说,已经算得是小众了。

一是Starfield Technologies,它提供了单域名、不支持泛域名的多域名和泛域名三种DV证书。单域名证书一年的费用也才不到8美元,想特立独行又预算不多者可考虑。这个域名可不简单,因为亚马逊的企业品牌证书就是以它为根的。

亚马逊这个证书很有意思,它虽然是继承于其他品牌的根证书,但也要给自己弄一层“根”(Amazon Root CA 1),儿皇帝也是皇帝嘛……

二是IdenTrust,这个证书说起来也是背景深厚的,正是它的根证书——Digital Signature Trust组织签发的这个证书衍生了著名的Let’s Encrypt免费证书。但是说来好笑,Let’s Encrypt并不提供OV/EV证书,但它又觉得自己的官网用个DV证书来加密又丢份儿,所以Let’s Encrypt的官网反倒用的是IdenTrust的OV证书。哎,自己的产品自己不用,这样真的好吗?

Let’s Encrypt证书可能是唯一一种没有泛域名证书也没有OV/EV证书的、完全为个人的免费证书而存在的证书品牌

三是一个Comodo的子品牌,喜欢日本文化者应该会倾向于选择它,这就是以篠咲える为代言形象的ShinoSaki品牌证书(也就是本文的特色图片里的那个可爱女生)。当然作为平民品牌Comodo的子品牌,这个证书也比较便宜,而且也是提供了单域名、不支持泛域名的多域名和泛域名三种DV证书(好像提供支持泛域名的多域名的DV证书选择不多,可能是人们都觉得这种证书的费用个人很难承担得起,并且也不愿意把这种域名范围比较容易扩张得很广泛的风险交给个人管理吧)。使用了这种证书的用户,其实就是在证书的“使用者”一项中多加了一行而已。

这种“一般人看不见而只有懂行的人看见了会心一笑”的东西,也是一种小确幸

文末,请大家了解一个事实:SSL证书虽然不是一种像女装那样有着数以十万计品牌的商品,但是品牌的数量也还是远远不止文中提到的这几个的。甚至连一些较为知名的品牌如GoDaddy都没有提,主要原因还是因为这些证书购买渠道比较狭窄,价格也没有什么竞争力。有一些证书品牌根本不提供DV证书品类(或者像Trustwave品牌的证书那样,在官网上不提供但通过代理商提供),也有一些证书品牌只提供给特别的国家和地区的个人和组织,在申请时需要提供身份证明,比如香港邮政所为香港市民提供的SSL证书。当然,像微软、谷歌和亚马逊这样的位于IT产业顶端的公司还是最不一般,它们都有自己的仅次于根证书的二级证书作为企业根证书,可以给自己的网站和应用几乎任意地颁发包含数量任意的、而且连泛域名数量也不限的证书,当然这些证书都不是DV证书,这里也只是在讨论证书品牌时讨论到这个话题。前面说过,亚马逊企业证书的根证书是Starfield Technologies的,而谷歌企业证书的根证书是GeoTrust的,微软企业证书的根证书是DigiCert的(但是是巴尔的摩区域的根证书)。

谷歌企业证书是用于它的一切服务的(包括最近推出的服务AutoDraw),目前来看它没有使用任何别的证书,相当自负
微软企业证书很有意思,它的根是个地方性的证书,这应该是个有历史痕迹的表现

当然,拥有自己的企业根证书的企业也不总是在首页使用这些证书。除谷歌以外,微软和亚马逊在官网首页仍然使用了Symantec品牌的证书,可见它在SSL证书界的江湖地位。

一个相对完整的根证书品牌列表,长度多少会令之前了解SSL证书概念却没有做过研究者吃上一惊。但无论如何,真相总比人们自以为了解的真相更复杂。这里要再次强调的是几点:并不是所有的证书品牌都提供DV证书的选项,上表中只列了主品牌没有列出子品牌(企业根证书也可以看作是一种不对外出售的子品牌)也没有列出区域品牌。很多内容都是作为一般的SSL证书知识提供的,但本文的核心在于让读者了解如何选购DV证书,如果时间有限的读者可以有空再慢慢看所有内容。

要点速记

  1. SSL证书可以分为三类:DV/OV/EV,其中DV证书仅需要验证域名所有权而无须验证企业身份信息,因而可以在线自动签发和续期,也因而是个人可以使用的唯一一种SSL证书。
  2. SSL证书按照包含的域名数量可以分为三类:单域名证书(有些单域名证书可以同时包含带www和不带www两个域名)/多域名证书/泛域名证书(泛域名证书只能验证一个级别的域名,而不能“向前”或“向后”伸缩,如*.example.com和*.test.example.com属于不同级别的证书,*.example.com不能验证形如level2subdomain.level1subdomain.example.com的域名)。多域名证书可能可以包含泛域名,也可能不可以包含泛域名。DV证书包括所有这些类型的证书。
  3. 真正免费的DV证书目前只有一种:Let’s Encrypt证书,但是使用起来需要一定的技术要求。如果完全没有技术能力,就不太能顺利地使用这种证书。之前在市场上还有两种免费DV证书:StartCom和沃通(WoSign)证书,但这两种证书目前已经被Chrome内核的浏览器彻底封杀,未来恢复信任也没有时间表,而且可能会有更多的浏览器将其封杀,请勿使用。
  4. 有些域名商或云服务商也会提供有条件的、有效时限较短的、作为服务附赠的或用作测试的免费或近乎免费的DV证书,但不像Let’s Encrypt,这种免费的DV证书一般地只提供单域名证书,而Let’s Encrypt则提供的是最多支持100个域名的多域名证书(但这100个域名中不可包括泛域名),免费的DV证书不会提供泛域名选项。
  5. 所有的DV证书的基础使用效果都是一样的,但不同品牌的DV证书的价格不同,不要以为花了更多钱买了不同品牌的DV证书,就有什么附加的效果——没有的。
  6. GoGetSSL网站提供了多个品牌的DV证书的全网最低价格(淘宝上可能偶而能找到更低的价格,但没有稳定供应),其中它自己的定牌产品——GGSSL品牌的DV证书价格最低,但该品牌没有支持泛域名的多域名选项。GoGetSSL网站提供了支持泛域名的多域名证书,是Comodo品牌,每年的价格是150美元左右,这也已经是全网的最低价格。
  7. DV泛域名证书应该去淘宝上买,可能可以找到低至每年5元人民币的AlphaSSL品牌的证书,但是每年30元到50元人民币是基本上肯定能找到的,这个价格仍然是非淘宝渠道的1/5左右。
  8. 综合3~7条,若以尽可能压低预算为目的,且不考虑偶发事件(如Symantec突然搞1元年费促销之类)来选择证书,则:
    • 如果有技术能力且不需要支持泛域名的多域名证书,应该选用Let’s Encrypt证书(年费为0);
    • 如果无技术能力且只需要单域名证书或不支持泛域名的多域名证书,应该从GoGetSSL网站选用GGSSL品牌的证书(单域名为年费5美元以内,不支持泛域名的多域名证书基础年费20美元以内且每加一个域名加8美元);
    • 如果需要泛域名证书,应该从淘宝购买(年费5到50元人民币);
    • 如果需要支持泛域名的多域名证书,应该从GoGetSSL网站选用Comodo品牌的、年费为150美元左右的证书;
    • 如果证书费用超出以上范围,唯一值得付更多钱的理由就是网站提供更好的服务,但是再好的服务也不值得让年费超过200元人民币(除了支持泛域名的多域名证书),那些把DV证书的年费标成1000元以上的供应商都在耍流氓,直接无视就可以了。
  9. SSL证书的品牌众多,如果想花点小钱买个与众不同,也未尝不可。文中也举了几个花钱怡情的例子,以及几个需要身份才能申请的证书品牌。但即使是“不求最好、但求最贵”的土豪,也要从GoGetSSL网站看一下到底这些证书值多少钱,即使花大钱最好也买个值这么多的东西。实在钱花不掉还有专门花钱移民取得身份去申请需要身份的证书的任性选项,以及专门花钱注册个企业或非盈利组织去申请OV/EV证书的升级选项,甚至可以花1000万美元以上自己成立一个CA这样的神级选项。千万不要担心在证书方面钱花不到位,多少钱都能给你花掉。当然,如果范围仅限于DV证书,那可能还真是只有移民花个百万级是最贵的。即使是Symantec品牌的DV证书,年费也不过是区区数千美元而已,这一点可能要让土豪失望了。
善事利器

善事利器

对于工作来说,一台合用的笔记本电脑,重要性无以复加。对于业余生活来说,一台合用的相机,重要性无以复加。这个话不需要太多的解释,但是“合用”二字,却是天底下最难的。科技的进步有目共睹,可进步并不都是好的,从令人眼花瞭乱的进步中挑出为我所用的那部分,并且要坚决拒绝不为我所用甚至妨害我所用的那部分,这才是至关重要的。而这其中,能找出一些规律,就更难得。比如,设备的便携性,与其功能完备性和客制能力(customizability)几乎是矛盾的,这就是一条规律。你到底是要便携性,还是要功能完备性或是客制能力,一定要想得很清楚才行。

拿笔记本电脑而言,MacBook Air我已经用了五年,使用体验当然是非常棒的。在用惯了传统的笔记本电脑以后,突然上手MacBook Air,相信任何人都会感觉到由衷的舒适——极其便携和超长的续航时间(至少是在前几百个电池循环周期内)居然可以在一台笔记本电脑里共存!当然,现在的MacBook产品线已经实现了对MacBook Air的全面超越,无论是在便携性还是续航设计方面皆如此。这么一来,基本上可以理解为苹果公司打算收缩笔记本电脑战线,将MacBook Air淘汰了。这当然也诚属正常,每家有每家的产品更迭策略,对此我一点意见都没有。但有两个苹果公司的MacBook/MacBook Air产品线存在着的比较大的问题,到目前为止没有解决,我得说说:

  1. 完全不具备客制能力,不能自主增加内存或硬盘容量;
  2. 仅有的几种官方配置中,最高的内存容量为8GB、最高的硬盘容量为512GB。这个容量对于相当一部分将笔记本电脑用于长期生产环境的用户来说,是不够的。

其中这第二个问题主要在于,macOS虽然在很多场景下是个近乎完美的操作系统,但毋庸讳言,有些场景它也不能完成工作任务。因此,安装并使用虚拟机可能是几乎无法避免的。这么一来,内存和硬盘容量就会成为比较明显的瓶颈了。以当下来看,如果MacBook/MacBook Air产品线由于技术原因,客制能力短期内不能实现的话,那末推出内存容量为16GB或32GB、硬盘容量为1TB以上的配置,将是莫大的功德。

MacBook Pro呢?客制能力仍然没有,好在有16GB内存和1TB硬盘选项,但性价比又成问题了。选了内存和硬盘的顶配,CPU好意思不选顶配?可是这样一选,起价就是19688元。再想要15英寸Retina屏幕的话,价格就超过了2万元。2万多元买台电脑,还只有16GB内存,疯了吧。

其实还不够疯,同样是16GB内存和1TB硬盘,微软的Surface Book顶配版要将近2.5万元。就说笔记本电脑还不能算FMCG吧,但是它真正的生命周期又能有多久呢?三年?五年?十年?十年是不可能的,就算用八年,那也相当于每年花三千多元在这台笔记本上。而用了八年的笔记本是什么概念?差不多相当于在2016年还在用苹果出品的、使用PowerPC处理器的iBook!这意味着后面的五年时间几乎是在煎熬中度过的,但由于费用是在时间上均摊的,所以一毛钱也不会少花。所以,理想情况应该是花费至多1万元在笔记本电脑上,这样在同样的每年花三千多元的条件下,用三年就够本儿了。但是当然要求不能降低:至少16GB内存和1TB硬盘,当然可能这样的预算下就无法要求DDR4内存和PCIe硬盘接口了。

小米Air是个考虑过的选项,毕竟小米的产品还是以性价比见长的。但最终还是因为内存和硬盘容量不够的关系放弃了——这里我要批评一下小米公司:好的不学,把苹果无客制能力的特性学会了!可是如果对笔记本电脑的要求没那么高的话,小米Air还是很值得考虑入手的,毕竟人家确实在高配上用的是DDR4内存和PCIe硬盘接口。

最后花了四千块钱解决了问题,开玩笑一样吧。ThinkPad x230t,九新二手货,内存16GB,512GB mini盘(SSD),IPS屏幕(支持Yoga转屏体验),配手写笔。可贵的是,还留有一个7mm的硬盘空位,价格是3250元。然后,在京东上又花699元买了一块2TB的机械硬盘塞进去,工作用的笔记本就这样搞定了。

硬件有了,接下来就是系统和软件。操作系统没有什么好多说的,Windows 10专业版。而最新版本内嵌了Ubuntu Linux子系统,可以用原生的bash了。这个特性非常棒,可以说macOS最吸引我的也就是它自带一个终端,但这个终端和Ubuntu的bash相比我反而是更喜欢后者的,因为比较习惯了。

这次使用了Windows的两个之前没有使用过的特性:Azure活动目录,还有Hyper-V

Azure活动目录来自于Office 365订阅,这是一个非常好的系统特性。我对于目录服务是比较熟悉的,对于目录集成也有相关经验,所以使用这项服务很得心应手。之前自己在自家搭建的服务器就配置过活动目录,而且连Exchange Server都安装和配置成功了。但是现在一切都不必自己动手,只需要配置域名,就可以使用微软官方提供的云服务了。还有就是使用Azure活动目录的用户名登录的话,很多Windows和Office产品和功能都自动用它来登录好了,十分方便。

Hyper-V其实已经推出了相当长的时间,但没有使用过的缘故还是因为体验比较差。这一次使用,主要还是因为VMware Workstation在笔记本电脑上和硬件有些不兼容,而又不想乱改设置导致更多的问题。所以,破天荒地使用了Hyper-V作为主要的虚拟化服务软件。可是不得不说,Hyper-V的用户体验并没有很大的改进,对于Windows Vista及更早的操作系统支持力度之差更是远不及第三方。比较过分的是,官方文档明明说Windows Vista属于“受支持的操作系统”,但是它不提供集成服务安装盘而是“通过Windows Update分发集成服务”。地形胜于地图,最终还是从网上下载了vmguest.iso才成功地在客户操作系统上启用了集成服务——顺便说一句,和多年前的偏好来了个180度的大回转,现在我却非常喜欢Windows Vista,它已经成为我的标配虚拟机操作系统了。不过,如果说Hyper-V的用户体验完全没有改进,也不甚公平,至少我感觉网络配置方面还是有一定的改进。起码,配置桥接网络可以说是很容易了。但是,配置NAT网络,仍然比较困难,看官方文档也配置不出来,因为讲得实在是比较抽象。最后,还是从一个瑞士人的博客里找到了一个手把手的参考,照着它用Windows PowerShell配置成功了。这因循了我的一个使用习惯,那就是,我在宿主操作系统上不做非常多的操作,而大多数的日常任务是通过远程桌面到一个虚拟桌面来完成的。这样带来的好处是,虚拟机如果出现比较严重的系统问题,可以把数据备份一下,然后恢复到某个快照就可以又从一个健康环境开始工作了。这么一来,可以节约大量潜在的重装系统所花费的时间。但这一次,我仍然使用远程桌面软件,但是并没有连接到一个位于“远程”的虚拟桌面,而是连接到一个位于本地的(在后台运行的)虚拟桌面了。我仍然保持着一些虚拟机服务器,并在上面运行一些虚拟桌面以备不时之需,但是这也是我第一次有了在本地运行的,从而也是保证开机并可访问的虚拟桌面可以用于日常办公的体验。目前来看,体验还是相当不错的。由于使用了NAT,只要宿主操作系统连上了互联网,则客户操作系统就也可以连上互连网了。

工作方面要说的告一段落,生活方面就特别简单了:一台索尼DSC-RX100M4,加一台理光GRⅡ,日常的摄影摄像需求99%都可以满足了。为了余下的那1%的需求买徕卡或哈苏,这应该也是迟早的事情,不用那么急切了。

智能的,太智能的

智能的,太智能的

2014年10月的一天,我写下了这样的话:

最近这半年的时间,换了若干部手机。

如同任何其他事一样,连续几次的手机更换,起源于一次手机失窃。我刚买了不到一个月的高配移动版小米3,在一次陪同外宾参观在康定路上的Spin陶艺馆时,意外地发现找不到了。手机丢了,总是要买的。但是这个时候又出现一个新的状况:新推出了一款电信套餐,每个月家人可以共享2GB之多的流量,这对于总是忘记关闭数据通信或切换数据通信到WiFi的我来说,无疑是个很不错的选项,更不用说这款套餐里还有不少时间的本地、长途、漫游一体的免费通话时间了。但是,为此让我换号,则是我不情愿的。我很喜欢现在的移动号码,而只想利用电信提供的可观流量上网而已。所以,满足此等需求的手机,无疑就是所谓的双模双待,即可以同时支持CDMA2000的3G上网,又可以再使用一张GSM网络手机卡的智能手机了。同时,移动号码可以仅用来打电话,而直接把数据通信关闭了。

完全没有想到,找一部靠谱的双模双待手机会这样的难!

而近两年以后的今天,双模双待的手机在市场上已经几乎成了国产手机的标配。尽管我仍然认为,小米3是小米公司在历史上达到巅峰时期的产品。后面小米又陆续出品过许多手机,但无论是做工还是最关键的电池续航,都再也没有达到甚至接近过小米3的水平。究其主要原因,当然是所谓的成本控制惹的祸,可是操作系统和应用程序越来越智能化导致的耗电也难逃其咎。我现在在使用的是华为Mate 8,应该并不能说是很差的一部手机了,然而在刚买的时候续航时间可达近两天,可是半年多以后竟然需要一天三充甚至四充才能勉强支持,以至于大容量充电器竟然成为必须随身携带的物品了。

人类为智能化付出的代价是非常高昂的,有时候是生命。现在有很多场景,人们会感觉自己不想或不愿意做决定,转而把做决定的权力交给了算法。更有甚者,人们有时候并不知道会大大影响他们命运的一些决定,是由算法做出的。算法有很多很多好处,但是它对善恶没有概念,这一点不能够简单地说是一种好处。计算是宇宙万物存在的基本方式,因此,计算能力增强肯定是一件好事,但是我们永远需要保留最终决定权,保留“手动模式”或曰“越权决定模式”(overidden mode)。在已经被人工计算完全淹没了的时代,这不是一件容易的事。所以,还是有必要留出一定的时间和空间与所有的人工计算设备和人工计算行为隔绝。

征服Windows 10

征服Windows 10

Windows 10在微软操作系统的历史上按照发布规律来说,应该会是一个不错的版本。正如Windows Vista在UAC体验上的激进实验遭遇了滑铁卢以后,Windows 7成功地扳回战局一般,Windows 8/8.1其实是微软再次在做用户界面,尤其是所谓现代界面的激进实验。而Windows 10就可以看作是这次实验的一次成果总结,从激进退回到一个较为平衡、中庸的结果,同时修复大量前一版本中存在的缺陷。这在微软的操作系统历史上已经是第三次做这样的事情了,参见下表:

序号激进实验对象实验用Windows版本或代号实验后平衡Windows版本或代号
1统一使用Windows NT内核2000XP
2UAC、内存预读Vista7
3现代界面8/8.110

表中第三列的操作系统版本往往销售业绩不佳,但是一般会针对第二列的激进实验对象进行宣传轰炸,并在第四列的操作系统中收回全部营销成果。这也难怪,因为第二列中列出的所有激进实验对象都的确是好东西,只是有两个问题:第一,这些都是非常复杂的系统特性,不可能一开始就作出这样的改变而不引入大量的缺陷;第二,这些系统特性的可伸缩性都非常强,不可能一下子就知道用户能接受到什么程度。所以,通过一个版本世代来使用激进的方式来测试,并通过用户的行为数据收集和分析来决定下一个版本世代的设计应该如何取舍,同时把大多数缺陷修复,这也是没有办法的办法。从这里又可以看出两点:第一点,没有银弹,强大如微软也造不出空中楼阁,任何成功的工程结果都是科学实验的结果;第二点,我们今天看上去还颇有一点新鲜的“大数据”,微软早已在互联网还方兴未艾的年代就已经玩得溜熟了。

可是Windows 10又不完全符合刚才说的那个发布模型,因为微软做出了一个石破天惊的决定:对大量的存量用户开放了限时免费升级到Windows 10,而这个决定最令人拍案的部分是它涵盖了盗版Windows用户。从经济上说,这当然是一件大好事,但是显然,事物都有两面性。不知道是不是由于免费策略带来了一定的研发经费问题,Windows 10有两个极大的缺陷,第一个缺陷是致命的:它对于驱动程序的适配性比较差,这个问题对于升级用户来说简直太严重了,因为操作系统升级的过程中,驱动程序这部分就是继承原有操作系统的。由于适配性差,大量的设备都会在升级到Windows 10以后出现经常蓝屏、崩溃等问题。而很多用户就会错误地认为,自己的设备和Windows 10不兼容。但其实这个认识是不正确的,因为它只能说明Windows 10和该设备原先操作系统上安装的驱动程序不兼容,甚至只是和这些驱动程序的某些配置不兼容。而想要升级到Windows 10又想不要花钱,正确的做法是:

  1. 先升级(升级完成一定要联网激活);
  2. 使用同一个产品密钥重新安装Windows 10,这个安装就是所谓的干净安装,把系统盘格式化掉,从头安装。由于设备的唯一性ID已经在升级的联网激活过程中被注册了,所以微软会保证这次干净安装也能够成功激活;
  3. 执行Windows Update,使用从Windows Update网站下载并安装的驱动程序,对于Windows Update网站不能识别,或不能提供驱动程序的硬件,请从设备官网下载对应于Windows 10版本的驱动程序(一定要注意32位和64位的区别,如果安装的是Windows 10的64位版本,而官网又有64位版本的驱动程序,一定不要下错装错成32版本)。如果找不到这样的驱动程序,宁愿更换硬件甚至不要驱动了,也不要使用低版本操作系统对应的驱动程序,否则很可能因为这个驱动程序而造成整个系统的不稳定。

安装完操作系统以后,平时遇到一些即插即用的设备,比如键盘鼠标、外部存储之类的,也一定不要自作聪明地为它们安装驱动,除非系统提示要你安装(比如微软出品的键盘鼠标)。在绝大多数情况下,系统默认的通用驱动都已经完全够用,不要给自己找额外的麻烦。

驱动问题对于Windows 10的用户来说是一个巨大的麻烦来源,可是,即使按我上面的列举的步骤做了,有一部分用户会几乎立刻遇到下一个虽然不那么致命,然而也决不是可以轻松绕过的大麻烦。刚才我列举的步骤中,最后一步涉及到一个动作,就是Windows Update,这一步比乍看起来要险恶得多。为什么?因为Windows 10的Windows Update有可能会把整个系统更新到下一个大版本(正式名称叫做Threshold版本,或曰累积更新版本),比如说构建号为10586的版本。与普通的更新补丁不同,这样的一个版本更新相当于把整个操作系统重新安装一遍,这样的更新动作比起早期版本的所谓Service Pack补丁包更加地暴烈,但道理是一样的:更新完毕以后的操作系统虽然表面上看还是同一世代版本的操作系统,但实际上已经和更新前并不可等同视之了。正好比Windows XP Service Pack 2和不带Service Pack的Windows XP简直可以看作是两代操作系统一般,Windows 10在安装了Threshold 2以后,也已经不再是刚出厂时的那个Windows 10了。

但是这么一来会带来一个什么问题呢?存储问题。安装大版本更新包和升级安装,从文件系统的观点来看,其实区别并没有那么大,只是前者引起驱动程序兼容性问题的可能性小了很多而已。系统在做的操作都是首先把当前的系统整体做一个备份,然后用整套的新系统文件替换当前在运行的系统文件,最后重启数次系统完成更新。别的都没有问题,可是为什么要把当前的系统整体做一个备份呢?理由当然冠冕堂皇:为了让用户未来可以恢复到升级前的系统,但这个理由并不成立,因为这个更新是强制推送的,即使用户做了恢复操作,或早或晚还是会被更新和升级的。这个“给用户以选择”的表面姿态必要性实在不大,然而为做这件姿态,付出的代价可是实实在在的:一般会占用用户16GB以上的硬盘存储空间。你可能觉得16GB不算什么,但是如果对于那些中低端平板电脑的用户来说,这可是活活要命的负担,因为他们可能一共只有64GB的SSD硬盘。即使用户使用了外置的存储卡或移动硬盘,这笔帐也是绝对会算到系统盘上的,外置存储再大也无益。

当然这个问题也是有解决方案的,只不过一般用户并不知道,或者想不到而已。方法就是,使用Windows自带的磁盘清理工具。具体操作如下:

  1. 运行文件资源管理器,在系统盘所在的驱动器(一般来说是C盘)上点击鼠标右键并选择“属性”;
  2. 在“常规”选项卡上点击“磁盘清理”按钮;
  3. 经过一番扫描以后,会弹出“磁盘清理”窗口。在此窗口上点击“清理系统文件”按钮,这一步是最关键的,因为只有把系统文件包含进去,才会把“以前的Windows安装”这个类目的文件也纳入清理范畴;
  4. 又经过一番扫描以后,“磁盘清理”窗口会再次弹出。如果是刚做完大版本升级,就会发现“以前的Windows安装”和“临时Windows安装文件”这两个类目的待清理文件会占用18GB甚至20GB以上的空间!此时,选中所有类目,并点击“确定”按钮,然后在确认对话框中再次点击“删除文件”以确认执行清理,就大功告成了。

如果感觉以上的说明比较抽象,可以看一下网上的一篇带有示意图的文章

写到这里基本上可以结束了,我们已经完成了对Windows 10的征服:避免了驱动程序兼容性问题,并解决了升级更新以后的存储清理问题,但是我还想多说两句。固然这两个问题是有着明确的解决方案的,把特定场景下的实践上升为普遍的指导原则,或曰最佳实践,还是有一些必要性的。

  1. 有任何可能,不要升级操作系统,而要使用集成了尽可能晚近的补丁包的最新发行版本的操作系统来进行全新安装。这样,可以避免驱动程序继承早旧版本,也可以避免世代版本或大版本升级带来的巨量存储消耗,也就是说,本文说的两个问题从一开始就可以不用遇到了。尤其是在碰到操作系统发布了新世代的场景,一定不要用升级的方式,即使为了使用免费政策而升级,也要在注册了硬件ID以后再换用全新安装的方式。在同一世代操作系统的大版本更新场景下,可以不用全新安装,但是也要用文中的方式避免存储消耗的问题。不要怕麻烦,因为数据备份、重装系统和数据恢复的过程,最多也就花费数小时而已,它带来的系统稳定性和平时运行的流畅体验可以至少维持数年之久;
  2. 驱动程序尽可能使用系统更新指定的版本,或是设备提供商在官方网站上提供的对应操作系统版本的最新驱动程序版本,因为这两种版本肯定是经过严格测试的。对于一般的外置设备,尽可能使用默认驱动程序,这样能够保证系统的稳定性;
  3. 在虚拟环境或资源有限的环境(主要是指内存为3GB以下的环境)安装操作系统时,尽可能选用32位操作系统,因为64位操作系统更容易发生驱动程序甚至应用程序的兼容性问题。

2015年年终感言

有很多事情,不记一笔就会很快地过去了。身处现在的信息时代,时间的流逝似乎是越来越快,一年前发生的事情,回想起来都有恍若隔世的感觉。这可能是2015年我最值得检讨的一个地方,写作其实并没有停止,思考更没有停止,但是无疑地,2015年是在写作方面陷入低谷的一年。

比较重要的一个原因当然是进入了创业的阶段,但这其实并不是一个很好的理由。创业固然是忙,但我从6岁开始,哪有不忙的阶段呢?只是每年在忙不同的事情而已。

所以不能遇到问题就给自己开脱,2016年,我可能需要在以下的两个方面做出非常切实的改进。

  • 时间管理。现在已经可以预料,2016年会是不确定性非常大的一年,2015年的规划不能离开2016年的执行。我需要更好地适应将把更多的、更核心的事情委托给可靠的团队成员的工作模式,避免自己成为瓶颈。
  • 顺从直觉。理性思维的培养是一贯的,对我来说几乎是本能的,尤其是生意上的事情我太习惯于求稳妥、求更多备案,但是事业的发展要求我必须在信息不足的前提下做出最符合第一感觉的判断,通过试错和迭代来向最优目标靠拢。很重要的一点是,我要找回灵感,找到战场,然后完成决定性的差异化行动。

但是无论如何2016年都要读更多的书,都要投入更多的精力在写作上,而不仅仅是翻译。可能这件事情只能从第二季度开始了,那也总比拖着不开始的要好。

2014年12月前必须完成的工作任务

中秋节前一天,去北京参加好友范德成杨爽的婚礼,并担任他们的证婚人。他们非常幸福,而我则被这种幸福所感染。因为一般而言,能够看到自己的两个非常要好的朋友结为夫妇的机会,其实对任何人来说概率都是非常小的,试证明如下……(好吧,我是希尔伯特附体了。)然后,在他们的婚礼结束以后,我乘车来到市区,非常奢侈地几乎整整一天没有工作而且没有思考关于工作的事。我先去中关村图书大厦兜了一个小时,买了几本数学科普书(很重要的是把《什么是数学》升级到了采用彩印的第3版)。晚饭一口气吃了四个美味得难以置信的正宗河间驴肉火烧,尔后去三里屯太古里逛了一圈,最后又把南锣鼓巷从南口走到了北口。

2014年,工作上历年积欠的任务及其利息开始以狰狞的方式显现出来了。本来应该是相当应付自如的许多任务,由于前一两年承接了太多,开始出现非常不可思议的延时。在工作任务之间切换,代价高得难以想像,而收获则是一如既往地会在最后的环节出现各种各样的意外,或是要付出额外的收帐税。一言以蔽之,客观世界是以绝对无情的方式保持着运转的,而任何人自己的资源如果耗尽,那也是自寻死路,因为这个世界永远都有精力和资源旺盛的替补在。收获的环节是一定要低估的,而付出的环节是一定要高估的,即使两个方面都以平估的方式进行,那也迟早会犯下不可饶恕的大错来,这就是所谓的对自己要有一个清醒的认识。

所以是时候要拿出决断力来,把手里的事情一件件地清空,并且在此阶段不再承接任何额外的事情。除非能够得到预支的补偿把所有的损失一次性地彻底付清,而这是几乎不可能的事。一年的时间一到中秋,所余也就无几了。但是有几项工作是必须在12月1日前就做完的。为什么要预留一个月呢?这就是在应用付出环节高估的原则。

这些工作包括:

  1. 完成雅思考试和一切相关信息表格的填写和提交。
  2. 完成上海交通大学工程硕士论文的撰写工作,进入准备答辩环节。
  3. 完成Windows Internals下册(第6版)的翻译工作。

任何其他的工作与以上的三件事情冲突,必须停下来让出精力和时间的资源。这当然不包括全职工作,全职工作的优先级肯定是最高的,但是在全职工作保质保量地完成前提下,其他的工作就只能是次要的和从属的了。在以上的这些工作完成之前,取消一切旅行和娱乐活动的计划。并且,按周复审这些工作的进度情况。一项已经接受并且不打算取消的工作任务是本月底对Bjarne Stroustrup进行采访和完成后续的报道,为这项工作配置的资源计划已经列清,属于可以接受的范围,但是无论如何不会再在以上几项工作完成前接受任何其他的写作和翻译任务了。

我想在这里表达一下我对北京的感恩之情,这个城市在这两天用极其妩媚的天气,还有可爱的美食和街景接纳了我这么一个太需要休息和放松可是却长时间地陷在苦斗的经历和抑郁的心情中的人。我已经太久太久没有办法从每天这世界自以为是地为我安排的生活中汲取任何一点让我快意的养料,太多次地我几乎已经竭尽全力地呐喊出我所想、我所要的,然而环顾四周却没有任何办法得到本来以为是触手可及的东西。而北京却以那样慷慨而又那样自然的方式,轻轻地把我梦寐以求的东西像拔出困兽掌中的玫瑰刺一样给了我,简直让我满足得想大哭一场。我知道,没有这短短两天的获得,我也许需要再花两年才能下定这付出的决心。

Windows Vista:写在Windows XP退出历史之时

美好的事物大抵都有一个尽头,比如Windows XP,比如LogMeIn免费帐号。Windows XP实际上代表了微软公司的上一代开发思想,这种思想影响下的产品,比如Windows Server 2003及其衍生版本,都是非常稳定、易用而且节省资源的。微软公司的习惯大抵是对于过期产品下手非常狠,出了新一代产品以后,就马上开始打击旧产品,恨不得弄得旧产品如同没有存在过一样。不知道是不是大家的感受和我一样,对于微软旧产品的支持,特别是一些比较具体的操作问题,微软官网可能做的是最差的。大多数的技术资料,都仅仅在TechNet上放了一些链接,指向一些官样文章和根本莫名其妙的补丁下载,并且还经常失效。反而是一些第三方网站替微软承担了旧产品的支持工作,替人找软件、找驱动什么的。要我说的话,就算微软不再对某种产品提供新的支持了,最起码应该提供某种方便的渠道,把它所有出过的补丁列齐了,甚至应该提供一个大的补丁包,让人们下载完只要运行一下就更新到最终的补丁状态这才合理嘛。甚至如果说真正地要搞文化建设的话,就弄个微软博物馆(Microsoft Meusem),然后陈列出它所有做过的产品,岂不是很拉风?不过,这件事估计不会做了,因为这背后也有法律原因的。微软由于在早期产品中集成过一些与Java有关的东西,然后不得不同意永远都不在通过任何渠道分发这些产品了,这包括曾经红极一时的Windows 2000Office XP等等。这些软件现在就算在最高等级的MSDN订阅中,也是下载不到的了。

可能不这样做也不行吧,微软出品过的好东西太多了,如果不逼着用户升级,用户真的是可以一直用下去的。这个情况和电灯差不多,其实电灯早就可以一直点亮超过100年了,但是这么一来照明企业就不要生存了,所以只能强制推行标准将其寿命规定为很短的一两年。这就是资本主义存活所必须要求的强制报废原则,逼着消费者不断地重复购买或更新换代。就比如说Windows XP在我的电脑上运行得好好的,我为什么要升级呢?因为你不升级,很多更新版本的应用就不能使用了,首当其冲的就是微软自己生产的应用:Office、Internet Explorer等等,不给你用新版本了。然后以微软的影响力,再通过推行软件标准或各种经济手段,软硬兼施地让成千上万家生产在Windows上运行的软件的企业在推出新版本软件时,不再支持Windows XP。那么你说,不要紧,我不用新版本的软件还不行吗?Office 2003、Internet Explorer 8我也够用了。那么接下来,更严重的问题就会出现。比如,新的硬件不出针对Windows XP的驱动了,你买了一台新的打印机,结果用不了,这要不要命?还有,你的电脑也是有强制报废设计的,过了几年,肯定要这里那里零件坏掉,坏掉你就没办法,只能或者换零件或者整台电脑都换掉。新的电脑可能连最基础的硬件,比如CPU和内存,都不支持Windows XP了,这么一来你还能坚持得下去吗?打印机你咬咬牙说我不用也罢,内存你不用的话连开机都开不了。所以实际上要逼用户升级操作系统是不难的,从上游的应用和下游的硬件一起发力,根本不愁用户不就范。苹果公司不也一样吗?买了一个四代的iPod Touch,结果不给你升级iOS 7。而不升级iOS 7,就有一部分应用装不了,你想用这部分应用吗?再花钱升级iPod Touch吧。所以明眼人都能看出来,整个IT界的产业链是联系得非常紧密的,从底层的硬件,到驱动,再到操作系统,再到应用程序,环环相扣,哪一层都不能出问题。哪一层想要推行强制报废了,只要其他层级一配合给压力,就肯定能达到目的。

所以,Windows XP是死定了。但是我得说,如果说最惨的微软操作系统的话,那还轮不到它。有什么比死还惨?当然就是生不如死。我是说Windows Vista啦,现在无论是大大小小的论坛,还是微软官方的说法,说到Windows XP即将停止支持这件事,都会异口同声给出升级建议:Windows 7,或是Windows 8,或是Windows 8.1(以7和8.1为多)。同志们哪,你们这么说话的时候,考虑过Windows Vista的感受吗?好歹Windows Vista Service Pack 2还在支持周期内呀!尽管我当年黑Vista的文章犹在,并且在Windows 7发布之前很久就已经在《电脑报》上撰文给出过我对于Vista和7的命运预测,可是也不用这么给我面子吧。既然这么无视它,为什么不干脆厚道一点,和Office 2003一样,也顺手杀掉算了?

说句公道话,过了这么多年,回头来看看Windows Vista,会发现其实它也并不是完全没有可圈可点之处的。

首先,Windows Vista是提供了系统自带的邮件收发桌面软件的末代Windows产品。不知道大家注意到没有,虽然说Windows 7的使用体验还是不错的,但是它偷偷地把本来一直和Internet Explorer联合发布的邮件收发桌面软件给去掉了,连一声招呼也没打。这个邮件收发桌面程序一直到Windows XP,都还叫做Outlook Express,到了Windows Vista里面,被改名成了Windows Mail并且不再允许下载Outlook Express了,而到了Windows 7以后还是可以下载和使用Windows Mail的,但已经成了不推荐的选项(推荐安装的是一个名字暧昧的所谓Windows Live Mail客户端软件),并且默认是不安装的了。到了Windows 8和Windows 8.1里面,倒是又有了一个系统自带的邮件收发软件,但已经不是桌面软件了,这个软件名字就叫做邮件,但是质量和体验都非常不敢恭维:好像只能用于收发微软帐户绑定的那个邮箱里的邮件,并且经常出各种奇怪问题。总之,从“开箱即具自定义邮件功能”的意义上说,Windows Vista可能是末代Windows了。

其次,Windows Vista的工具栏上默认带有快速启动(Quick Launch),这表明它带有Windows XP时代的遗风。在Windows 7中,如果真想找回快速启动也不是不可能,但是实在比较折腾。

再次,Windows Vista令人讨厌的UAC用户体验现在回想一下也未必就真的那么差劲。说白了,这也是一种选择,就是每次遇到问题总是提示用户作出决定的选择。Windows 7及以后的版本中那种自以为是地替用户作了许多决定的选择,真的就是更好的吗?或者说,仅仅通过配置也可以达到同样效果的Windows Vista,为什么就应该受到那么严重的诟病呢?

就把我称为保守派吧,但是每一代Windows操作系统其实都有它的存在理由,在产品支持周期还未完结之时,所有的Windows Vista用户理应受到更多的支持,至少是关心,而不是受到商业偏好的喜爱就厚此薄彼才对嘛。Windows Vista居然和Windows XP支持的最高版本的Office和Visual Studio版本一样,都是2010版本,这其中的歧视含意也太明显了吧。我实际上远不是传统的保守派呢,在微软的新产品推出时我总是比较早期尝试的用户之一,包括Surface Pro这种性价比简直令人无语的产品。我觉得微软公司应该更公正地对待其推出的产品,特别是操作系统产品。因为应用程序毕竟选择余地大,能够研发的企业也多,但是操作系统却是每天都要用的,价格并不便宜而且选择很少。

无论如何,随着Windows XP支持的终止,Web版本的Microsoft Update也要进入老年期了,现在唯一还在使用它的是Windows Server 2003产品线的服务器操作系统,显然对它的维护也已经处在非常漫不经心的状态了,很多匪夷所思的缺陷是之前几乎不可能出现的。还有Security Essentials,明天之后也不会再针对Windows XP用户发布更新了。这其实是蛮过分的事情,不发软件更新也罢了,连病毒定义也不更新这就有点儿过了。现在市面上的反病毒软件说实在话,我就没有很放心的。凡是打着警察旗号进驻电脑的,都几乎可以肯定是流氓无疑,更何况还只是打着保镖旗号的呢。其实安全解决方案是最应该由操作系统厂商自家出品的了,而且是最应该由操作系统厂商负责到底的。在这一点上,我觉得我不能对微软公司的做法表示完全苟同。但事已至此,我只能说,尽可能选择国外收费软件吧,有很多还是提供了非常好的中文版本的,其实我知道我说了也没啥用。

无论如何,Windows XP所代表的“Golden old days”就要过去了,感伤也好兴奋也罢,它即将发生。所以,发烧友们可以趁着最后几个小时做一个虚拟机镜像并打好所有的补丁吧,以后可是连Windows XP Mode也没了哟。在相当长的时间里,Windows XP应该还是可以使用并能够得到大多数的软硬件支持的,毕竟Windows XP太成功、太成功了。最后对所有坚持到今天还在使用Windows Vista的用户们说一句:升级容易,研发不易,且用且珍惜!

成就与期望

与大多数真正取得了可观成就的人士相比,我的2013年基本上可以看作简直是平淡到大致认为是什么事都没发生过的一年。然而因此就真的什么事都当它没有发生,却也无益。我是不相信所谓每个人各有本分,只须守好这本分就一切就会美好起来,而是主张所有人都应该尽可能地争取对于发生在周遭一切的所以然的知情,并运用自己哪怕再有限的心智和资源去影响之、或因导之,或观鉴之的。因为成就之取得,取决于人自身努力的部分本来就小之又小。而这小小的一隅中,又相当地取决于人的期望。期望的力量之大,有时甚至给人以其发挥着决定命运之作用的错觉——倒也并不全错,因为人们的期望相当程度地驱动着人们的细节行动,而面对某项行动的结果时,人们又会自觉或不自觉地根据是否趋向或偏离了期望这一点出发,来决定下一项行动。如此久而久之,在人们身上的反作用必然积累起难以逆转的效应,而命运走向也会因而有别了。

仅从期望的达成这一点看,2013年算得上是比较难得的有话可说的一年。主要有几个方面:

  1. 家庭期望:结婚成家的大事,总算告一段落。婚礼当天,承天公作美,暨亲朋好友捧场,一切顺利得像童话故事一样。婚后不久,携妻赴毛里求斯度了蜜月,放松了一周时间的心情,感觉不错。
  2. 学业期望:在张尧弼教授梁阿磊教授的帮助下,毕业论文的写作工作总算开始启动。不过今年的事情太多,只能指望明年完成这项工作了。
  3. 事业期望:几经周折,在EMC安顿下来。大家现在都说外企这个那个不行了,换言之,现在就是外企员工的机遇期。只要大家说什么好,就要赶紧逃;只要大家说什么不行了,就要赶紧上。这个规律试了多年,从来没有错过。
  4. 技术期望:终于基本习惯了Linux工作环境,和Windows相比,的确是非常不同。这种不同是位于深层次的,是不同的工具文化导致的日常使用习惯差异,最终造成的思维模式和反应模式的根本区别。Linux文化的核心是直截了当,采用工具使用者习惯或喜爱的方式达到目的,对于他人规定的种种工作方式,大体上不会无理由地接受。
  5. 自我提升期望:译作《设计原本》(修订版)《信息简史》今年上市,并都入围“2013年最受读者喜爱的引进类IT图书”评选提名(当然我本人也被提名为“2013年最受读者喜爱的IT图书译者”)。另外两本译作,也分别进入了最终审校,和排印上市的阶段。也许大多数人都不清楚,在有一份全职工作和要筹备婚礼的同时,要一年完成四本译作(当然,只有《信息简史》是独立完成的,其他的都是与别人合作)意味着什么。但是只有亲自经历了那样的过程,才会多少建立起对于体力和精神承受力的信心。其实翻译这种事,说不上是多么了不起的工作,但是作为兴趣爱好来说,其中还是有不少只有亲自践行才能体会到的痛苦和乐趣,也正是这样的经验,才让人欲罢不能。在出版方面,除了图书之外,我为《程序员》杂志做了两期外刊速递栏目,并写了一个技术管理的系列文章《技术团队新官上任》,分为基层篇中层篇高层篇。另外,参加了由博文视点CSDN联合主办的Stanley B. Lippman中国行活动,并承担了北京的现场口译和会后专访,承范德成兄花费了大量业余时间听译并整理出了专访文字稿,并连载在《程序员》杂志的2013年第12期和2014年第1期上。

2013年当然不止发生了以上提及的这一些事,并且这一些事没有一件是能够以一己之力做完的。要感谢的人太多,仅有一小部分我能通过从毛里求斯发送明信片和呈递结婚喜糖等方式聊表寸心,但是当然远远不够。我这个人也没有太大的野心,不习惯一直调高自己的期望。说到底,我希望通过自己的努力能让自己和身边的亲人和朋友感受到更大的快乐,获取更多的资源和自由。不知不觉,已经过了而立之年,别的不敢多言,至少在自知这个方面还是有点长进。自知不是一件坏事,更不是说由于自知所以畏缩,这个词在我的词典里是没有的。明年我几乎肯定还会想方设法地投入更多的时间和精力来学习,并利用已有的任何资源来为值得的人提供服务。我个人固然是渺小的,但是绝不会因此就把想象力也局限在一个狭小的空间内了。总结和反省的意义不在于追溯那已经无可追溯的过去,乃是要从过去这第一手的、属于自己的历史资料中发掘中达成期望的出路——我认为出路是一定在的。

那么,就这样别过了罢,2013年!这旧年的日光渐渐地淡去,新年的空气也要一点点渗入进来了。在我的期望里,新年能够呼吸到新鲜而自由的空气,可能是最大的一份。当然,为此也是要付出痛苦的代价,不过,一如既往,这当然会是值得的。至少这期望已经在了,成就会在哪里、是什么样,不应该是我过早关心的。就让日复一日的努力,带领我去到那里,去到那充满希望的乐园。