跳转至

第三十三章 · 退休

下午一点五十分,赵岩的消息进来的时候,陈稳在改推广方案的目录。

「九月十七号的门禁记录拉出来了。有一件事,你先坐下再听。当晚进机房用的那张卡,持卡人是孙宇。」

陈稳回了电话过去。

「这不对。」他说,「孙宇的卡,离职的时候就该收回了。」

「系统里这张卡的状态写的就是『已回收』。」赵岩说,「九月十七号二十一点四十五分,员工门,刷开。二十一点五十一分,消防通道门,刷开。二十二点零六分、二十二点零九分,两次出。四条记录,全是这张卡。」

「回收了的卡,怎么还能刷开门。」

「这就是问题。」赵岩把声音压低了,「它走了一次临时授权。门禁系统里有这个功能,离线应急用的,授权一次,有效期二十四小时。授权人那一栏——」他停了一下,「是空的。」

「空的?」

「能填这一栏的人,至少是运维部主管级。他填了自己,日志里就有他的名字。他让它空着,日志里就什么都没有。」赵岩说,「陈稳,会这么干的人,知道这套系统哪儿留痕、哪儿不留。」

陈稳握着手机,茶水间的出水阀在滴水,一滴,一滴。

「授权这一条,能倒查吗。」

「操作日志在门禁系统里,查询权限在部门负责人。我一个人批不了,得走审批。」赵岩说,「还有一件事你得知道。八月一号那天,机房区域四条刷卡,全是张毅的工卡。张毅的卡是正常的卡。九月十七号用的是孙宇的卡。两张卡,走廊里是同一个穿卫衣的人。」

「你早说这个,我就不用猜了。」

「八月一号的走廊录像没了,我说过。九月十七号的门禁是今天才批下来的。」赵岩说,「周五了,审批最快下周一。先过个周末吧。」

电话挂了。陈稳把手机拿在手里,屏幕上还停在那句「授权人那一栏是空的」。他在记事本上写:

九月十七日:孙宇的卡,状态「已回收」,临时授权进入,授权人空白。 八月一日:张毅的工卡。张毅在黄山。 一张已经回收的卡 + 一次不留名的授权。做这件事的人,熟悉门禁系统。 门禁操作日志审批,下周一。查授权是谁授的。

写完最后一句,他把「是谁」两个字描了一遍。

两点半,他在部门群里看到那封邮件的附件。五楼会议室,四点,顾源欢送会,布置组准备茶点。名单四个人:纪衡,他,资深工程师,张毅。

张毅。技术支持中心的张毅。八月一日凌晨,这个人的工卡在机房刷了三次;这个人在黄山。名单是顾源点的。

陈稳把邮件关掉,又点开,把那四个名字再看了一遍。然后他给张磊发消息:六条业务线的结算流水和异常口径,下周三之前能不能给底数。张磊回:「数据平台有三条。剩下三条在业务自己的报表里,我找人。」

「什么时候。」

「下周三之前。」

十二月十号。他把这个日期写在推广方案目录的最上面。

三点五十,他提前上了五楼。

会议室里已经有两个人。纪衡在窗边打电话,资深工程师在摆茶点的盘子。张毅坐在最里面那张椅子,面前一杯茶,满的,没动。

陈稳进门,张毅先开的口。

「陈稳吧。」他站起来,伸出手,「久仰。老梁走的时候提过你,说你那个拦截器写得比文档还好读。」

「你好。」

两个人握了手。张毅的手心是干的,很稳。

「你是技术支持中心的。」陈稳说。

「对,接了老梁的摊子。」张毅给他倒了一杯茶,「说起来,你们那张 settle_reconciliation,八月出过一次索引的事吧。老梁在群里提过一嘴,说查出来是 root 从本机删的,没有 Git 记录。后来有结论吗。」

陈稳把茶杯拿起来,喝了一口。温的。

「还在查。」

「这种事最难办。」张毅摇头,「root 操作不走应用层,不留 Git。等哪天机器一回收,IP 一释放,人就沉底了。」他顿了一下,「听说查到过一个 IP?营销技术部那个 DHCP 池?」

「你怎么知道。」

「老梁说的。」张毅笑,「他说你们查到 10.14.1.88,问过我那个池子的记录好不好查。我说不好查,分配记录没有用途字段,查到最后只能查到一张卡。」他喝了口茶,「后来呢?」

「后来卡那张表,你没说错。」陈稳说,「只能查到一张卡。」

「是吧。」张毅把茶杯放下,「我离开运维的时候就跟人说过,这套 DHCP 的日志设计,就是给人背锅用的。查到最后,查到的永远是持卡人,不是操作的人。」

陈稳看着自己杯子里的茶。这个人知道记录长什么样,知道查询会停在哪一步。他八月一号在黄山,可是他知道那条查询路径的每一步。

「你对这套系统很熟。」陈稳说。

「我干了四年运维。」张毅说,「熟是应该的。」

纪衡挂了电话,走过来。「人齐了。顾总从家里过来,还有十分钟。」

四点整,顾源进门。

他比上次见的时候瘦了一点,灰色夹克,拉链拉到一半。进门先看了一圈茶点,然后看人。看到陈稳的时候停了半秒,没有说什么。

纪衡讲了几句开场的话,不长,然后让顾源讲。

顾源把自己面前的椅子往里推了推。

「我说三件事。」

「第一件。settle_reconciliation 这张表,七月二十八号建的,建表的人用的是默认引擎,没设分区键。上个月有人问我要不要提,我说不用。现在你们的对账跑 T+0,每天写进去的量是当初的四倍,再过半年,分区的成本是现在的三倍。我退休前说的话有人记,退休后就没人记了。所以我现在说。」

没有人接话。陈稳想起自己八月三号凌晨加的那个联合索引,想起那笔一万一千八百小时的账。这张表半年后的问题,账上还没有那一栏。

「第二件。你们监控大盘的指标是够的,但没有一页是给『人』看的。出了事,大盘上什么都有,就是不知道该打谁的电话。我走之前把值班联系人矩阵画了一份,放在共享盘『架构组交接』目录,谁接谁用。」

他端起水杯喝了一口。

「第三件。我在这儿十一年,提过的方案一大半没有被采纳。后来有几个人回来问我,当时那个方案还能不能用。我说能用,但是组已经不是那个组了。技术是往前的,人是往回看的。你们往前走的时候,偶尔回头看一眼,看看把什么东西留在原地了。」

纪衡带头鼓掌。掌声不长,散得很快。

茶点动起来之后,人群分成两堆。张毅被两个架构组的同事围着讲分布式锁,讲得比平时开会的人都细。陈稳端着纸杯站在桌子这头,想起蒋辉周四说的那句「你替我跟他碰一杯」。

他走到顾源旁边的时候,顾源正拿了一块绿豆糕。

「先替一个人敬你。」陈稳举起纸杯,「蒋辉。他说他不在名单上,让我跟你碰一杯。」

顾源举了举手里的水杯,碰了一下。

「他倒是有自知之明。」顾源咬了一口绿豆糕,「你的双缓冲呢。」

「删了。按你说的,改启动加载,误报清零。」

「我知道。共享盘上你们的周报我每期都看。」

陈稳把纸杯在手里转了半圈。他原来以为那四天是自己一个人查的。

「名单上四个人,」他说,「为什么有我。」

「七月十六号,食堂。我在餐盘边上给你画跨天时间窗,画到一半笔没水了,你把你的笔递给我,笔尖朝自己。」顾源说,「第二天,你那个 TODO 注释就修了,commit 最后一行写的是我的名字。」

陈稳不记得递笔这件事。他记得那个纸角的油印。

「技术里面还记得别人名字的人,不多了。」顾源从夹克内袋里拿出一张折起来的纸,用手掌推到他面前,「还有一件事。九月十七号晚上,二十三点二十分零六秒,我收到一封邮件。发件人,孙宇。」

陈稳的手停在纸杯上。

「附件一份 PDF,二十六页,是三年前结算系统和规则引擎接口改造的方案,归档库里找不到的版本。正文一句话:『这份东西的纸,机房里有。』」

「你回了吗。」

「回了。我说,你发错人了。」

「然后呢。」

「然后他回了一个句号。」顾源说,「就一个句号。第二天,那个发件箱注销了。」

「邮件呢。」

「删了。删之前打印了一份。」顾源把那张纸又往前推了推,「就是这张。时间、附件名、正文,都在上面。九月十七号二十二点零六分,那个人从机房拿走一袋纸。二十三点二十分,我收到这封邮件。他当天晚上就把纸变成了扫描件,发给了唯一一个可能认出它的人。」

「为什么是你。」

「因为那份方案是我签的字。」顾源把最后一口绿豆糕吃完,拍了拍手上的糖粉,「他不是在发资料。他在问——问我记不记得这张纸是从哪儿来的。」

「你答的是什么。」

「我说你发错人了。」顾源说,「我不接。」

「为什么现在告诉我。」

「因为你查了三个月了。纪衡跟我说了你的工单。」顾源端起水杯,「我退休了。有些话别人替我说不合适,我自己说,合适。」

他把水喝完,把杯子放在桌上。

「那张纸看完收好。别放在公司。」

五点二十,人散得差不多。张毅走得最早,走之前跟顾源握手,说「顾总保重」,顾源点了一下头。纪衡在门口和顾源说了几句话,两个人都没有笑。

顾源夹着空纸杯往电梯走,按了下行键,转过身,隔着半条走廊对陈稳说了最后一句话:

「周报继续写。写长一点也没关系。」

电梯门合上,楼层的数字从五往下跳。

会议室里最后剩下纪衡一个人,在收拾桌上的茶点盒子。他看到陈稳还在门口,指了指对面的椅子。

「坐。两分钟。」

陈稳坐下。纪衡把最后一个盒子扣好,推到桌子中间。

「张毅跟你说什么了。」

「问我负责哪个模块。还有老梁的事。」

「还有呢。」

陈稳把纸杯放进桌角的垃圾桶里。「问了结算系统八月的索引事故。」

纪衡收拾东西的手停了。

「他怎么知道的。」

「老梁在技术支持中心的群里提过。他说 root 操作不留 Git 记录,机器一回收,人就沉底。」陈稳停了一下,「他还问我,DHCP 那个池子的记录好不好查。」

「你怎么答的。」

「我说不好查。」

纪衡把盒子摞起来,站直了。

「名单是顾源上周报给我的,我签了字。」他说,「张毅在上面。我看了两遍,签了。」

他没有解释为什么签。陈稳也没有问。窗外天已经黑透了,五楼的窗户能看到园区门口,保安亭的灯亮着,一个人刷卡走进去,门禁的提示音隔着玻璃听不见。

「下周一,赵岩那边有个审批。」陈稳说,「门禁系统的操作日志。授权那一栏是空的那种操作,倒查授权人。」

「审批走什么流程。」

「运维部负责人审批。」

「抄送我。」纪衡说,「批准之前,这件事你跟谁都不要再提。包括赵岩之外的任何人。」

「包括蒋辉吗。」

纪衡把茶点盒子拎起来,站在门口回头。

「你以为我没注意到吗。」他说,「每次出问题的时候,问问题的人里都有他。这不是结论,这是一张表。你的表上现在有几行,自己知道就行。」

「顾源名单上为什么有张毅。」陈稳说,「您签的时候,没有想过这个吗。」

「想过。」纪衡说,「想不明白的事,我一般不拦,我看着。你也一样。」

他拎着盒子出去了。走廊的声控灯亮了一格,灭了一格。

晚上八点,家里。何晚在改月考卷子,红笔帽上有一排牙印。陈稳把背包放在椅子上,从最里面的夹层抽出那张纸,折痕对齐原来的印子,还没打开,先放在桌上。

「欢送会怎么样。」何晚头也没抬。

「他讲了三件事。」

「哪件你听进去了。」

「第三件。」

何晚批完手里那张卷子,把红笔放下,拿起那张纸打开。她看得很慢,看完第一页,翻到第二页,又翻回第一页。

「二十三点二十分。」她说,「他下班了吗,顾源。」

「不知道。」

「一个快退休的人,晚上十一点半还在收别人的邮件。」何晚把纸折回去,折痕对齐,「这个人守了三个月,守到最后一周才给你。你知道为什么是最后一周吗。」

陈稳把纸接过来。纸很轻,边缘磨毛了。

「因为下周开始,」何晚说,「你问不了他了。」

她把红笔重新拿起来,批下一张卷子。批了两行,又停下。

「陈稳。你今天从进门到现在,说了四十多句了。」

「有吗。」

「你平时一天跟我说不了十句。」何晚看着卷子,没有看他,「以前你回家,先把包放下,先开电脑。今天你先跟我说话。」

她说完又低下头去批卷子,红笔沙沙地响。陈稳站在桌边,把那张纸重新折好,放进背包夹层,拉链拉上。

九点四十,记事本。

十一月十三日。 九月十七日门禁:孙宇的卡(状态「已回收」),21:45 进,22:09 出。临时授权,授权人空白。授权日志审批下周一。 八月一日:张毅的工卡,四条。张毅在黄山。两张卡,一个人。 顾源:九月十七日 23:20:06,收到发件人「孙宇」的邮件,附件为三年前接口改造方案(26 页,归档库无此版本),正文「这份东西的纸,机房里有」。 他回了「你发错人了」。对方回了一个句号。发件箱次日注销。 打印件在我这里,不在公司。

他停下来,往上翻,翻到十月那句「他来过不止一次——或者,从来不止一个人」,在后面补了半行:

——拿纸的人和发邮件的人,现在可以确定是同一个。他删了索引,触发了脚本,拿走了纸,然后把它寄给唯一认得它的人。他在销毁,还是在留底?

这一行他看了两遍,没有删,也没有往下写。

张磊的消息进来:「六条线里另外三条有眉目了。汇金那条,数据不在系统里,在业务自己的线下台账,手抄的。」

陈稳回:「手抄的也行。我要原样的。」

他发出消息,把手机屏幕朝下扣在桌上。对面那栋楼亮着零星几扇窗,他看的那一扇,还是黑的。十一个月零二十四天。

背包立在椅子上,最里面的夹层鼓着很小的一块。周一审批批下来之前,那张纸会一直待在那里。他把客厅的灯关了,走廊的声控灯随着脚步亮起来,在身后一格一格灭下去。


← 第三十二章 1200万 · 目录 · 第三十四章 婚期 →