凌晨两点,手机在枕头边上震。
我眯着眼摸过来,屏幕上跳出一个名字——陈长荣。离职三个月,这人一个消息没给我发过。现在这个点打过来,用脚趾头想都知道没好事。
接起来,他声音哑得像砂纸磨过铁皮:“梓琪,数据库崩了。”
我坐起来,按开床头灯:“陈总,我现在是自由身。什么预算?”
电话那头安静了。一秒,两秒。
然后他开口,语气淡得像在说天气不错:“老交情,帮帮忙。”
01
我没接话。
直接把电话挂了。躺回床上,盯着天花板,心跳咚咚的。
手机又震了三下,来电显示老刘。我犹豫了五秒,还是接了。
老刘压低声音,语速很快:“梓琪,数据库被勒索病毒锁了,所有客户数据全崩了。你经手那六个上市客户的年度审计数据也在里面。如果处理不好……”
他顿了一下。
“你知道后果。”
我当然知道。那些客户的审计数据我都签过技术责任书。丢了,追究起来,我这辈子的从业资质都要搭进去。
“陈长荣什么时候找的你?”我问。
“他先给你打电话你没接,才让我打的。他说你是唯一能修的人。”
我冷笑了一声。唯一能修的人——当初我走的时候,他可不是这么说的。
三个月前递辞职信那会儿,我坐在陈长荣对面,手里攥着写好的信。他看了一眼,没当回事,低头继续刷手机:“想好了?”
我说想好了。
他说:“梓琪,你这个技术在外面不好找工作,你自己想清楚。”
我当时愣住了。在公司干了八年,每年绩效考核都是优秀,公司有一半的核心业务系统是我搭建的。他跟我说“不好找工作”?
后来我才从人事那里听说,我提辞职那天下午,陈长荣在会议上说:“梓琪走就走吧,人嘛,总觉得自己出去能更好,撞了南墙就知道了。”
他没挽留,连句客套话都没说。
我坐在床上,披了件外套,回想过去八年。
从26岁到34岁,最好的年纪全搭在那个破烂机房了。
加班加点是常事,节假日系统出问题一个电话就得赶过去。
陈长荣从来没说一句“辛苦了”,倒是在年终总结会上说过:“梓琪这个岗位替代性不强,但也不是非她不可。”
那时候我就应该懂了。可我没懂。人有时候就是这样,非得等最后一根稻草掉下来,才知道自己撑了太久。
最后那根稻草是年终涨薪评选。
公司只有一个名额。我榜上有名,结果出来后,名额给了新来的徐嘉欣。理由是“梓琪你稳定,不在乎这些”。
我稳定?我八年没涨过几次工资,五险一金按最低基数交,每年年终奖比市场价低了将近一半。这叫稳定?这叫我好欺负。
那天下班后我在机房坐了很久,盯着满屏的代码发呆。
机柜嗡嗡响,空调有点冷。
我忽然意识到一件事:在这个公司,你越能干就越不值钱。
因为他们觉得你离不了,觉得你走了就没出路。
第二天我递交了辞职信。
手机又震了一下,是老刘发来的微信:“梓琪,我知道你不想来。但公司现在真乱套了,你来看看就知道了。数据库是凌晨一点崩的,所有人都没下班。”
我看着屏幕,手指悬在键盘上面。
最后还是发了两个字:“等着。”
我起身换衣服。
走到门口的时候看了一眼镜子。镜子里的人眼睛有点肿,头发乱糟糟的。我今年三十四了,眼角已经开始有点细纹。这八年,把自己熬得不像样子。
拉开门走出去之前,我拿起手机,找出陈长荣的号码,发了条消息:“我到公司楼下告诉你。”
然后我把手机揣进兜里,锁上门。
凌晨两点半的街道很安静,路灯昏黄,连个人影都没有。风有点凉,我裹紧了外套。
等了五分钟,才打到一辆车。
上车后司机从后视镜看了我一眼:“这么晚加班啊?”
我说:“算是吧。”
他说:“不容易啊。”
看着窗外一闪而过的路灯,心里说不上是什么滋味。
有愤怒,有委屈,但更多的是一种说不清的复杂。
我告诉自己:今晚去,不是为了陈长荣,不是为了那点老交情。
是为了我自己不能出事。
02
公司大楼一层大厅的灯还亮着。
我刷了门禁卡,滴的一声,大门打开。楼梯口的感应灯亮了一排。我往二楼走,东走廊的尽头就是数据机房,透过玻璃门能看到里面人影晃动。
推门进去的一瞬间,没一个人注意到我。
办公区不像我待那会儿的样子了。
原来我的工位现在堆满了杂物,显示器旁边还贴着卡通贴纸,大概是徐嘉欣贴的。
茶水间地上散落着一次性纸杯和外卖盒子。
几个同事看到我,表情复杂。
“梓琪来了。”有人低声说了一句。
我点了点头,直接往机房走。
机房的门半开着,里面传来一个女人的哭声,断断续续的,像是哭得很累又停不下来。
我推开机房门,看到徐嘉欣坐在地上,笔记本电脑摊在面前,屏幕上全是红色报错信息。她眼睛红肿,妆也花了,整个人像是瘫了一样。
看到我,她愣住了,然后像是找到了救命稻草:“梓琪姐……”
我没理她,直接走到机柜前面。我的脸出现在显示器上,屏幕反光里能看到自己的样子。
“别碰那些东西。”我说。
“啊?”
“我说别碰那些配置。你已经搞砸一次了。”
她被我说得脸色一白,嘴唇哆嗦了一下,没敢再说话。
我把U盘插进服务器,调出系统日志。
屏幕上的代码快速滚动,我一行一行地看,越看心越沉。
数据库被勒索病毒加密了,看加密算法已经是现在市面上最凶的那几种。
我迅速浏览了一下日志时间线,发现病毒是从公司内部系统传进去的。
“数据库最后备份是什么时候?”我头也不回地问。
没人回答。
我转过身,看着徐嘉欣:“我问你最后一次全量备份是什么时候?”
她低着头,声音像蚊子哼:“我……我不知道。”
“不知道?”
“我接手的时候就乱得很,备份策略我不会配,就……就没动。”
我重新转回去,继续看系统日志。一边看,一边压着火气。
“你不会配?交接文档里备份策略的步骤写得清清楚楚,一步不差你照着做就行。”
“那个文档我看了,但是看不懂。那些指令太老了,不是现在的主流工具。而且……”她顿了一下,“而且陈总说我刚来,可以先熟悉业务,备份系统以后再说。”
以后再说。
我盯着屏幕上那行报错代码,忽然觉得累。
“你出去叫陈长荣过来。”我说。
“陈总在办公室里……”
“那就让他出来。”
徐嘉欣爬起来,拍了拍裤子上的灰,低着头走出去了。
我一个人站在机房里。
服务器风扇呼呼响,空调冷风直吹后背,我拉了个凳子坐下,继续翻系统日志。
一边翻,一边努力回忆三个月前做的最后一次备份在哪里。
大概过了十分钟,陈长荣才过来。
西装外套没穿,白衬衫袖子卷到胳膊肘,脸上挂着那副熟悉的假笑。
开门第一句话就是:“梓琪,辛苦你这样跑一趟。”
我没抬头:“坐吧。”
他愣了一下,拉了个椅子坐下了。
“陈总,数据库现在什么状态你清楚。”我盯着屏幕,“这东西短时间内弄不出来。而且需要专用工具和离线备份环境。你这边的环境不行。”
“那你有什么办法?”
“有。但做之前需要谈清楚费用。”
陈长荣脸上的笑收了一下,但很快就恢复了:“梓琪,咱们这么多年关系了,小事情不用搞得那么正式吧。”
“小事情?”我转过身看着他,“陈总,你公司几个上市客户的审计数据全都在这套数据库里锁着。”我看着他,“如果修复不了,不仅你公司赔偿客户,我自己也跑不掉连带责任。所以我今晚来,不是为了帮你,是为了我自己。”
陈长荣脸沉下去:“那你什么意思?”
“意思就是,系统修复可以,但需要按市场价出方案报价。”
“报多少?”
“正常市场价十万。”
“十万?”他一下子站起来,“梓琪,咱们不至于吧?”
“我给你算一笔账。”我把手机银行的转账记录调出来给他看,“三个月前我离职那天,财务发给我最后一个月工资,还差一千二百块钱,你让财务扣了我。理由是我上个月请了一天半的事假。陈总,你有印象吗?”
他张了张嘴,没说话。
“我连一千二百块钱的假你都不肯放过。现在跟我说不要搞得太正式?”
屋子里安静了。
陈长荣低着头,手指在腿上敲了几下。过了一会儿,他抬头说:“梓琪,你说的对,之前是我不对。”
“但是,现在这是公司的命脉。你救救我。”
“十万,签合同。”
“可以。”
他掏出手机,拨了个电话:“把合同模板拿过来。”
我看着他打完电话,心里忽然很平静。我终于能跟这个人好好谈一次钱,不用再听他画饼,不用再忍气吞声。
合同送过来了。我拿起笔,写下自己的名字,然后把合同推到他面前:“签字。”
陈长荣拿起笔,签了字。
我拿起合同,核实了一下,然后站起身:“好了,准备开工。你在外面等,任何人不要进来。”
“好。”
他站起来往外走,拉到门把手的时候忽然停下,回头看了我一眼:“梓琪,你真的不一样了。”
我没回头看他。只说了一句:“陈总,是你让我变成这样的。”
03
机房的门关上之后,我一个人站着。
顶灯开得很亮,白光打在深灰色瓷砖上,映出我自己的影子。服务器运转的嗡嗡声在耳朵里响着,像心跳一样。
我拉过键盘,手指放上去,调出系统管理后台。页面刷出来的瞬间,我愣住了。
整个系统架构跟我走之前完全不一样了。
数据分区被重新划分过,日志存储路径改了,连核心数据库的字符编码都被改动过。最要命的是,几个关键容灾节点被彻底关闭了。
我盯着屏幕,脑子里嗡嗡响。这三个月,徐嘉欣到底做了什么?
我在系统日志里翻了一遍,找到了改动记录。
改动日期是徐嘉欣入职第一天到第三周之间,连续做了二十几次配置变更。
没有一次备份,没有一次通知,没有一次回滚计划。
我握紧拳头,指甲嵌进掌心,深吸一口气,才压住那股想砸东西的冲动。
我拿手机拍了三张屏幕截图,发给自己。然后我调出修复工具,开始逐步拆解被加密的文件结构。
大概过了半个多小时,外边传来敲门声,很低,敲了三下。
“梓琪?”
老刘的声音。
我从椅子上站起来,走过去打开门。老刘站在门口,手里攥着个黑色U盘。
“给你看个东西。”他说。
“什么东西?”
“你最好自己看看。”
他把U盘插在我旁边那台备用电脑上。屏幕亮了,弹出来一个加密文件夹。
“你从哪里弄到的?”
“我接管了加密日志。今晚系统崩了之后,我查了内网通讯记录。”他压低声音,“你自己看。数据库不是被外网攻击的,是从内网发起的,而且是今天刚部署的代码。”
我盯着屏幕,脸都白了。
老刘说:“梓琪,事情可能没你想的那么简单。”
我点开文件夹,里面是一个日志文件,记录着数据库近三个月内的所有指令流水。我拖动进度条往下翻,大概拉到第三页的时候,我停住了。
一条清晰的记录:三个月前我离职后的第三天,有人在系统里执行了一次全量删除操作。删除的内容,是我过去三年里所有历史备份记录。
删除人账号:徐嘉欣。
但那个操作流的登录IP地址,是陈长荣的总裁办公室。
“这个日志我还不敢外传。”老刘说,“但你要知道,你不是无缘无故被叫回来救场的。现在的烂摊子,是他们自己弄出来的。”
我关掉文件夹,拔出U盘,攥在手心里,好一会儿没说话。
“老刘,你帮我个忙。这件事我自己来处理。”
“你说。”
“这个U盘里的东西,先不要跟任何人说。包括陈长荣。”
“你打算怎么做?”
“我还没想好。但我要让他们自己把账算清楚。”
老刘犹豫了一下:“梓琪,你别干傻事。”
“不会的。”
老刘走了之后,我重新坐回机柜前面。手心里却一直是那枚U盘的触感——凉的、硬的,像是握着一把能砸烂这块天花板的石头。
我打开数据库控制台,开始执行修复脚本。一行行代码在屏幕上滚动。我脑子转得飞快,把最近几个月发生的事情全部串联起来。
徐嘉欣删我的备份记录,陈长荣知道。
陈长荣默认删我的备份,是为了让我在这个公司彻底没有存在感。
他们以为删掉我的备份,公司就可以完全摆脱我。
但偏偏系统出事的时候,只有我能救。
我嗤笑了一声。真讽刺。
修复脚本运行到一半,界面突然跳出一个提示框:“数据库日志文件占用异常,是否启动压缩清理?”
我犹豫了两秒,点开日志管理器看了一眼。翻到最后一页的时候,我愣住了。
日志末尾附加了一个隐藏的恢复节点的快照。快照生成时间是我离职当天。
也就是说,在我正式离职之前,这个备份就已经存在了,但我自己的离职交接文档里没有记录过它。没有人知道这个节点。
我盯着屏幕,心跳越来越快。
这很可能是我唯一一次悄悄“查账”的机会。
如果启动这个节点,我不仅能把数据救回来,还能查看过去三年里公司服务器上的全部操作记录。
包括陈长荣做的那些见不得光的小动作。
我的手悬在键盘上方。
脑子里的最后一丝犹豫正在消失。
04
我启动了那个隐藏节点。
屏幕上闪过一串代码。看着进度条一点点往前推进,我脑子里却在反复盘算另一件事:等数据修复好之后,要怎么办?
一个很现实的问题摆在面前:合同签了,五万块能拿到手。但我还想让陈长荣和徐嘉欣为自己的行为买单,尤其是徐嘉欣删除备份记录这件事。
备份记录被删,按行业规范讲是严重违规。如果是系统内部处理,最多通报批评。但如果曝光给客户,那陈长荣整个公司都要吃官司。
这个念头在脑子里一闪而过,很快又被压了下去。
不行,不能用这种方式报复。
那些人里还有老刘,还有其他普通同事,不能为了报复陈长荣,把所有人的工作都搭进去。
但也不能就这么算了。
我决定等修复完成之后,当着所有人的面把备份记录的事捅出去。
让陈长荣在全公司面前交代清楚,然后老老实实付钱。
至于徐嘉欣,她不配让我认真考虑如何对付她。
这个人根本不重要。
我靠在椅背上,长长吐出一口气。揉了揉发酸的眼睛,看到机房门上那个小窗户外面,站着一个人影。
徐嘉欣。
她站在走廊里端着杯水看着我。对上我的目光,她赶紧低下头,转身走了。
我没理她,继续盯着进度条,心里越来越清冷平静,像是在看着自己的过去在屏幕上一行行消失。
此刻在办公室里的陈长荣坐在办公椅上。
他给财务打了个电话,让她把之前扣宋梓琪那一千二百块钱的工资单找出来,补上。
财务在电话里有些惊讶:“陈总,这都三个月了,而且离职员工补工资需要流程。”他暴躁打断:“按我说的做,明天上班前处理好。”
挂了电话,他烦躁地转着笔。
他一开始还以为,叫宋梓琪回来,给点钱就能打发了。
但现在他发现,坐在机房里那个女人,已经不是他当年认识的那个小姑娘了。
她的底气、她的语气、她看他的眼神,全都不一样了。她不再心虚,不再讨好。
陈长荣把笔拍在桌上,有些后悔当初的处理方式。但他很快安慰自己,只要宋梓琪把数据修好,以后就不会再有交集了。
机房里面,隐藏节点的修复进度已经走到百分之八十三。
屏幕上的代码开始变得更加复杂。
我敲击键盘的速度越来越快,从刚开始的从容不迫,慢慢变得紧张起来。
因为我发现,被加密的勒索病毒代码里,有一些非常隐蔽的陷阱。
如果恢复流程不小心触发了这些陷阱,不仅修复完的数据会再次出问题,还会反过来把整个服务器瘫痪。
我额头冒出了细细的汗珠。
我按了三下F5强制刷新控制台,然后输入一行新的指令。暂停现在走的通道,换另一路径。
进度条重新开始走动,慢慢走到了百分之百。
——叮。
修复完成。系统弹出提示框:“数据完整性校验通过,是否重启数据库服务?”
我点了“是”。
屏幕上闪过几个刷新窗口,然后显示数据库服务已成功启动。
我盯着那个界面,大口喘气。
成功了,数据在。我拿起手机拍下修复完成的界面,截图放好。
现在,该轮到他们了。
我推开机房门走出去。办公区所有人齐刷刷转过头看着我。陈长荣从办公室快步走过来,脸上带着明显松了一口气的表情:“修好了?”
我没直接回答,而是把手搭在机房门框上,抬起下巴,扫了一圈在场的人。
“修好了。”
大家都松了一口气的样子,甚至有人拍了拍手。陈长荣脸上露出真正轻松的笑容,伸出手想拍我肩膀:“梓琪,真有你的。”
我往后退了一步,他的手停在了半空中。
“陈总,数据修复完了。但是——”我环视了一圈会议室,最后视线落在徐嘉欣脸上,“有件事需要当着所有人的面说清楚。”
所有人都安静了。
徐嘉欣的笑容僵在脸上。
“你跟我说说,
热门跟贴