宿 命

“许幼走了,你听说了吗?” 屏幕亮起时,我猛然踩下刹车,刚刚启动的车又被重重拉扯在原地。 “怎么了?”我呼吸急促,手指颤抖着打下这三个字。 “听说婚姻不幸,跳楼了。” 发动机还在低鸣,我把车熄了火,愣愣地盯着中央后视镜上挂着的照片。那时她依然扎着马尾,冲着镜头微笑。 许幼。 “许幼,你报了哪个学校?”我终于鼓起勇气拍拍她的肩,胆怯地问出这句话。 她转过身,头发掠过我的肩膀,脸上绽放出明媚的笑容:“西大的计算机系,你呢,羊?” “你怎么报了计算机系?”我几乎是脱口而出。 她歪头看我,睫毛在阳光下显得更加好看,那双眼睛太清澈,像盛着我整个青春的阳光。她说:“听说你打算报西大的计算机呀。” 迎着她的目光,我突然慌了,心脏快速捶打着我的胸腔。一刹那,有无数的念头闪过我的脑海,我静默着把她这句话的意思演算了千万遍,如此明显,却又不敢承认,她——是想和我在一起吗? “你怎么看起来还是呆呆的!你呢,也是西大吗?” 听了我的回答,她一整个暑假都没有理我。高考结束的第二天,经过自己估分,我明白自己与西大已经无缘了。当我收到一所二本学校寄来的通知书时,那种强烈的失落感就越来越沉重,笼罩着我,压迫着我。虽然我们彼此之间并没有真正表白,但那句话依然像一把重锤一样时时敲打着我,告诫我,我高中时代暗恋了三年的许幼,最终要和我错过,而我再也没有机会去弥补这个遗憾。 军训结束那天是中秋,我在宿舍睡到九点,手机震了震。许幼的消息跳出来:“中秋节快乐!” 手指悬在屏幕上,我甚至想过这是不是群发。但心跳愈发厉害,我买好票就冲向车站。傍晚的西大教学楼前,桂花落了一地,我捧着花站在桂花树下,她跑过来时,风里都是甜的。 她扑进我怀里,那捧向日葵被挤得簌簌掉瓣,我扔下花,也紧紧抱住了她。 “喂!你怎么比高中更黑了?” “你是不是军训都在偷懒?” 我捏了捏她的脸,她的皮肤还是像高中时一样,白里透红。 “才没有!我有防晒(霜)好不好!”她放下筷子,擦擦嘴,双手撑着下巴盯着我,两个浅浅的酒窝经久不消,我突然有一种恍如隔世的错觉。 “喂,那你今天怎么回去?” 我心里咯噔一下,慌乱地丢下筷子。还好抢到了晚上的票,只是到站后肯定不能回宿舍了。可是那又怎样呢? 吃完饭,我们牵着手往高铁站慢慢走去,二十分钟的路,走了一个多小时。那是我第一次和许幼约会,浅浅的晚风吹拂着橘黄路灯下的我们,时不时有车疾驰而过,我侧头看着她,只想和她这样慢慢地走下去,走一辈子。 但是一年的时间,我们的感情就出现了裂痕。我举着手机冲她大吼:“你以为只有你一个人觉得异地恋辛苦吗,我不辛苦?过不下去就不过了!” 电话那头传来她的哭声,混合着她小声的道歉,我却把手机丢在一旁,心烦意乱地点开了游戏。 从那以后,我们再也没有联系。 再听到她的消息,是毕业两年后。听高中同学说,许幼要结婚了,男方很优秀。我把手机丢在一旁,盯着车上挂着的她的照片,突然又开始懊悔那晚匆忙的诀别。 我重新将车启动,车载收音机里传来一则讯息:“今日凌晨五时许,寻柳佳园一女子从32楼跃下,急救中心接报赶到现场时,该名女子已无生命体征。据警方透露,死者疑似因家庭矛盾导致压力过大……” 2025 年 10 月 02 日。双节的高速路上车水马龙,我却觉得整个世界都空了。许幼,我的许幼,我曾经没有好好珍惜的许幼,就这样离开了。 晚上,电脑桌面一封邮件弹了出来,发件人未知,标题是“你也和我一样遗憾吗”,正文只有一行: 时间是有迹可循的。以你此刻为原点 A (0,0),总能找到来时的路。 附件是个代码包,编译运行后,终端让我输入想要回去的时间,我想了想,在键盘上写下:2020 年 10 月 02 日。 程序报错:only Unix timestamp accepted。 我把时间转换成时间戳,在终端输入1601568000,按下回车,瞬间眼前一黑。 再睁眼时,手机显示 2020 年 10 月 02 日 00:03。微信里,争吵的记录停留在昨天,我最后发的 “晚安” 无人问津,她没回。离那场毁灭一切的电话,还有 20 个小时。来得及! “宝宝,你怎么瘦了!” 我抱着花出现在她面前,她看到我之后转身就走。我冲上去抱住她,把头埋在她带有花香的头发里,一直跟她道歉。她挣脱,转过身给了我一拳:“讨厌你!”说罢又用力抱住了我。 …… 2025 年 10 月 02 日,我的车停在高速服务区,广播里又传来那段播报:“今日凌晨五时许,寻柳佳园一女子从32楼跃下,急救中心接报赶到现场时,该名女子已无生命体征。据警方透露,死者疑似因家庭矛盾导致压力过大……” 我凝视着车上挂着的我俩的合照,副驾驶座椅上还放着两张离婚协议和一本鲜红的结婚证: 持证人:羊 ,登记日期:2023年9月15日,旁边贴着我们在民政局拍的合照。

2025/10/3
articleCard.readMore

疲惫的国庆假期

因为这个国庆假期还有一些跟工作有关的事情要忙,所以没有出行的计划。作为拖延症晚期患者,我给自己预留了开头两天完全放松休息,第三天开始工作。可是没想到头两天还是给我整疲惫了。 扫地机器人坏了 五月份的时候我买了一台 Mova P50 甄选版扫地机器人,当时还觉得性价比超高,没想到不到半年,它就坏了! 30号下午我让它拖地,拖完提醒我清理污水箱,我却发现污水箱一点水都没有,查看清水箱,发现水根本没少!尝试让它清洗拖布,2分钟就提示完成,开始烘干。可是污水箱依然没水,原来此前它拖地也是纯靠微量的清洁液拖的,难怪有个别地方的污渍并没有打理干净。 在 APP 上联系客服,对方简单确认了故障后,让我寄回去返修,3-5个工作日维修好,他们安排了上门取件的售后单。 晚上我偶然看到京东的售后中有个“180天只换不修”,于是找京东客服,对方说这个政策是针对 PLUS 用户的,我说我买的时候是 PLUS 身份,现在觉得没性价比不想续费了。对方确认后,我联系 Mova 官方 APP 的客服取消了售后单。 1号中午京东上门来取件了。本以为“由供应商负责售后”是京东快递寄到厂家售后,然后给我寄新的机器,没想到今天下午看见新的扫地机器人正在出库,预计明天送达!看了下售后详情,京东逆向仓库收到货后一个小时就安排了新的扫地机器人出库,这波吹爆京东的售后! 剪头发 在如今男士剪头动辄三四十的社会,我非常偏爱那种平价理发店。本以为搬家后再难去一校门口的十元理发店剪头发了,没想到就在我们小区,隔壁楼一层,有一位大姐开了个理发店,除了过年期间象征性涨到十五元,平时都是十块钱。 30号那天下午我去剪头发,不巧的是有个女生在那烫头,大姐跟我说要等很久,于是我决定次日再去。1号中午京东上门取件后,我便预约了下午三点到途虎去做保养,这期间去剪个头发怎么都来得及。 正剪头发的时候,途虎那边来电,说排队比较多,让我晚点去,于是剪完头发我又回家休息了一会。 做保养 我三点半到了途虎,工作人员说前面还有五六个车排队,问我忙不忙,后来在店里等了两个半小时我才后悔当时没有回她“很忙”。 我的车目前三年零二个月,才跑了一万六千多公里。上一锅霍尼韦尔 H9 的体验一般,就是换挡响应慢,油耗有点高。这次花稍微贵点的价格买了沙特阿美奢金,美孚尊尚版我终究是有点高攀不起。 检查时,我给师傅说了我的电子手刹有尖锐的吱呀声,他试了两次,跟我说要么将就用,要么换电机,此时我又很后悔五月份出现这个问题时没有趁着质保期内去解决了。 换完机油机滤,洗车的下班了,玻璃水都没给我加。途虎的师傅说我的制动液含水量有点高,该换了。我一看价格都是200往上,于是跟他说太晚了,下次再来吧。 今天差点就冲动下单制动液了,压力机换油+2L博世刹车油180块钱,比狗东养车便宜,因此我真的很心动。但是我去打开前盖看了一下刹车油,亮黄色的,油量也在标准线内,所以忍住了这个冲动。想起头一天我前面那几个车都换了刹车油,加上有群友说检测笔可以调,又开始怀疑途虎是不是为了推销,毕竟换油的人工费比刹车油本身贵多了。 打电话挪车 做完保养已经六点多,天快黑了。我开着车跑了一圈,主观感觉油门更轻,换挡响应更快了——这可能是刚换机油都有的体验,所以打算再开一段时间看看效果如何。 回到车库,发现我右边那辆奔驰压着线停,而我左边的柱子有消防栓凸出来的管道,即便如此,每次我都宁愿多打两把方向尽量靠左侧柱子停,方便中间的车开门——我真是个好人啊。但是我还是给对方车主打了电话,我说我技术不好,怕把她的车刮蹭了。事实上并非停不进去,只是停进去即便我挨着柱子,她也很难打开车门。 等了十来分钟,对方下来挪车了,我说“不好意思”,对方冷冷地说了句“没事”。回到家已经晚上七点了,莫名感觉到一阵疲惫,可能是下午做保养等了很久,感觉自己又浪费了宝贵的假期时间。 电梯门卡住 今天去检查制动液回来,电梯在16楼时,门打开了一点点,就卡住不动了。那对夫妻带着小孩,那位女士一直按紧急通话按钮,物业的人让她把门扒开,这种看起来确实不专业的处理方式让那位女士很生气,对着物业一阵输出。 本以为会被困在电梯里等待物业来处理,没想到几分钟后电梯上17楼自己就亮了,电梯关上门,又开始正常运行。在17楼,男方打算下去,被女方拦住,然后按了16楼。等我下了电梯,我在楼道观察,本以为在16楼会再次出现故障,没想到一切正常。 回到家后发现这一天又快过去了,我给自己预留的两天休息时间,实际上除了睡到九点,根本就没有好好休息。

2025/10/2
articleCard.readMore

群晖SMB——本地设备名已在使用中

发现问题 今天我打开某网站,选择上传文件后当前网页和浏览器就无法点击了,用ctrl+w测试了好几次都如此。打开电脑的资源管理器,瞥见我通过 smb 添加的 nas 连接已经断开,点击则提示“本地设备名已在使用中 此连接尚未还原”。 于是我猜测可能是昨天上传文件选择的是 nas 中的一个目录,现在无法访问 nas,导致网页和浏览器假死。删除该映射后,再尝试添加,搜索不到局域网共享的设备了。 排查问题 在必应一搜,有各种不同的解决办法。Windows 的共享服务开着,启用网络发现正常,重启LanmanWorkstation不行,重启电脑也不行,于是我打开了 deepseek。 ”本地设备名已在使用当中”通常意味着: Windows尝试用一个你已经用过的名称(比如\\NAS)去建立连接,但之前的连接会话因为某种原因没有完全释放,导致冲突。 Windows的网络发现功能暂时失灵,无法正确找到网络上的设备。 “搜索不到NAS了”则说明问题可能更偏向于网络发现层面。 PING 在 AI 的建议下,我尝试ping 我的 nas。 结论:直接ping nas 的局域网 IP 没有丢包,并且在 Windows 资源管理器中通过 IP 地址添加映射可以正常连接到 nas。 ping nas 的“局域网名称即 mynas 或 mynas.lan”(mDNS)则显示: C:\Users\LonelyGod>ping lonelygodnas.lan 正在 Ping mynas.lan [240e:330:96f6:****::26d] 具有 32 字节的数据: 无法访问目标主机。 无法访问目标主机。 无法访问目标主机。 无法访问目标主机。 240e:330:96f6:****::26d 的 Ping 统计信息: 数据包: 已发送 = 4,已接收 = 0,丢失 = 4 (100% 丢失) 这就很令人迷惑了,为什么使用ping和nslookup默认解析的是 IPv6 地址呢? MTU? 我使用 ipv6 测试网站进行测试,发现有一个前所未有的报错,但手机测试没有该报错: 于是我以为真的是电脑上的 MTU 问题,AI 也给出了可能的原因,比如代理软件或游戏加速器可能会修改 TCP/IP 参数,包括 MTU。 为了确认电脑上是否存在 MTU 有无问题,我尝试 ping -6 -l 1500 test6.ustc.edu.cn,即强制使用 IPv6,发送 1500 字节的数据包并且不分段去 ping一个纯 IPv6 的链接,结果丢包率为 20%。将数据包改成宽带 IPv4 默认的 1492 后,丢包率为 0。 mDNS缓存? 正当我以为就是 MTU 配置的问题时,我又查看了一下ping我的 nas 时并非是连接超时,而是无法访问目标主机啊! 于是我登陆 nas 查看网卡的 IPv6 地址,发现和电脑上解析的地址并不一致。 我使用ipconfig /flushdns清除缓存,没用,因为这玩意只是清除传统的 DNS 缓存。但对mDNS(.local、.lan域名的解析)缓存无效。 根据 AI 的建议,使用net stop "DNS Client"无效,提示:这项服务无法接受请求的“暂停”、“继续”或“停止”操作。 使用nbtstat -R无效,显示 NBT 远程缓存名称表的成功清除和预加载。但电脑解析到的 IPv6 地址依然没变。 使用netsh interface ipv6 reset无效。 IPv6 的有状态和无状态 我查看路由器上给设备分配的 DHCPv6 租约,确实就是240e:330:96fc:****::26d/128呀,说明电脑获取到的 IPv6 并非缓存。nas 中只有一个 SLAAC 无状态地址,路由器作为上级 DNS 给电脑的却是 DHCPv6 有状态地址——但是 nas 没有使用这个有状态地址。 这真是一个令人头大的问题,以前折腾家里的 H3C 路由器时就为有状态和无状态、路由通告等折磨得不行。 AI 给出的解决办法之一便是禁用 DHCPv6,仅使用 SLAAC。考虑到此前我在路由器上绑定了群晖 DDNS 解析的域名劫持为本地的 IPv4 地址,虽然发现无法正常连接 nas 的 smb 后,我又删除了该劫持,但是没有重启路由器。 重启路由器之后,路由器端显示了给 nas 的 DHCPv6 租约,nas 里也有了这个无状态地址,Windows 资源管理器中也能找到 nas 的映射服务了。 结语 看来确实是我不该添加域名劫持?不!我不服气!添加劫持的是一个公网域名,而不是 mDNS 提供的私网域名(nas.lan),凭什么影响到私网呢? 为此,我又一次添加了该劫持,在浏览器控制台里看到劫持没有生效,重启路由器后,在控制台可以看到,在局域网访问该公网域名确实会解析到内网 IP 地址了。 点开 Windows 资源管理,尝试添加 nas 的共享网络文件夹,没问题!说明确实不是域名劫持的问题。 但是!即便 nas 的网卡里有路由器分配的有状态地址,局域网内通过浏览器访问该地址也是超时,而ping和 SMB 映射却没有任何问题。 所以这次故障仅仅只是路由器固件的一个 bug 吗?

2025/9/27
articleCard.readMore

终章:分手

其实很久以前就写过两次分手日记,但是一直没有发,因为我能哄好她。有时候即使很艰难,她最终也会给我台阶。 上一次分手是八月下旬,那是她第一次删掉了我的联系方式。最后的聊天记录里,她说:“还好你今天对我好了,不然我会很生气。”她还说:“可是我讨厌你,是你不要我了,你觉得我是累赘。” 本以为一切都结束了,可是不一会她发来短信:“你娶我嘛,我说嫁就嫁。” 这是两年以来她第二次服软,第二次主动挽留。两年的时间,我们俩的性格和方式已经磨合得很趋同了,基本上不会再为生活中的小事闹得不愉快。看着她的短信,她做出的让步,我于心不忍,虽然知道根本问题并没有被解决,还是忍不住和她和好了。 从那以后,我明显能感受到她对我越来越在意,越来越爱。可是这段感情就像饮鸩止渴,短暂的平静下,可能早已不复当初。 九月以后,我们俩都越来越忙,不再像以前一样每天聊许多,甚至睡觉前还要打视频电话。她没有双休,我上班的时候也是早七晚十,所以即使她上班的地方离我家只有500米,我们也只是周末才能好好见面。 联系少了短期来看并不是什么问题,我也不愿把我们之间或者我们家庭之间存在的隐患拿出来说。昨天晚上我提出送她回家,我说:“我想好好看看你。” 夜里十一点多,我送她回家。在门口,她家的三花走过来,远没有以前那么热情。她说,三花最近不太吃猫粮了,买的其它食物也很少吃,比以前更瘦了。 三花没吃我们给的食物。我站在门口,看着她,又总不知道从哪里说起。过了好一会,眼眶突然湿润,我说:“我觉得你太累了。” 她嘴硬,说她不累。可是我知道,她每天也是早出晚归,即便工作没有特别辛苦,这样长的时间也会让人身心俱疲。 后来我们聊了很多很多,靠着门框,蹲在门口,或者席地而坐,反正不知道时间过了多久,也不记得她哭了多少次,我眼红和哽咽了多少次。虽然没有说“分手”两个字,但是她已经明白了我的意思。后来她关上门冲出去,我也追了上去,外面的风刮得树叶哗哗啦啦的响,整个小区一片漆黑。 不记得又过了多久,也不记得又说了哪些话,但最终把她劝回去了。她关上门,我在门口站着,担心她出来做傻事,过了一会确实没有动静以后才回家。 今天下午,还是我主动发了消息,但话题依旧是昨晚那般。后来她来我家找我了,她说想聊聊。期间她同意分手,坐在玄关想平复心情再走出去的时候,她改变了主意。 晚上大概是稍微闲下来了,我们依旧围绕这个话题聊了几句。我猜想她下班后会来找我,十一点多的时候果然如此。她装作一副很轻松的样子,靠在卧室的门口说想好好看看我,因为明天就看不到了。本以为她能坦然面对这个局面了,可是她说:“我想好了,我不同意分手。” 而此时我跟昨晚一样,觉得这样真的不利索。她做出了很多让步,只希望我改变态度。可是我的理性告诉我,如果像上次一样和好,下一次会更加痛苦。 大风刮了一整天,没有完全密封的窗户呜呜作响。我说:“你跟他分手的时候,他说不同意有用吗?”后来回想起当时说的这句话,真残忍。 然后就是沉默,抽泣,叹息,最终下定了决心一样,她转身就走,也不同意我送她回去。 过了四十来分钟,或者五十分钟,她终于回复我到家了,大概又是走回去的。她说我让她觉得自己很丢脸。我没有觉得,反而又开始心疼起她了。事实上她改变了很多,我们两个人的问题我们应该是可以解决的。但是她委曲求全的样子,让我越来越自责。杨林说,看起来是关心对方,实则是在感情中占据了高位,是一种居高临下的剥削。 我也在想,如果以后她都是这个样子,甚至越来越迁就我,那我们在这段感情里也并不会快乐。这种不健康不平等的关系,迟早会生出更多的麻烦。 归根结底,即便分手了,即便她最后的不舍让我觉得为难,我还是打心底里认为她是一位很好的姑娘,这两年也成长了许多。我说:“很感谢你喜欢过我,真的。在你出现以前我从来不会觉得自己能被接受和喜欢。”说罢就开始痛哭流涕,纸巾擦了一张又一张,鼻涕流出来真的特别狼狈。两年,性格磨合得越来越合适,她也越来越真诚,没有理由放弃这样的伴侣。 可是爱情和婚姻终究是不同的东西。结婚伴随而来的会有更多的问题,我没有信心去处理好。 她说:“以前你说我遇到问题想到的不是去解决,而是逃避。可是现在你也这样了。” 我说:“我只是希望我们两个都可以轻松一点。” 她回复:“借口多死了你。” 她说:“是你教我的,不要看人家说什么,要看他说这句话的目的。虽然说想轻松一点,怎么你说不出分手两个字?” 她说:“都是借口,我太了解你了。” (2024年9月29日 凌晨1:15) 分手马上一周年了,想起去年的这个时候我无比难过,第二天上班的时候总是抑制不住糟糕的情绪,眼泪簌簌往下掉。遇到她以前我就在家里写着“永远不要回头看”,事实上当我如今依然频频回首时,才发现这一年经历了很多很多事,但我依然没有什么长进。她一定过得很幸福了,我也真诚地祝福她。

2025/9/25
articleCard.readMore

不速之客

咚咚咚! 急促而有力的敲门声猛然撞入耳膜,将我游离在被雨水泡得沉郁的夜色中的目光硬生生拽回。我下意识地屏住呼吸,目光投向那扇门。 咚咚咚! 又是三声,清脆,急促,带着坚决的力度。我脑中飞速检索——今天没有外卖,没有快递。晚上七点半,谁会在这个时间点,以这种方式来访? 我踢开拖鞋,赤脚踩过微凉的地板,悄悄小跑到门边。凑近猫眼,外面只有白灯照亮的方寸,无法看到转角处的情况。紧接着,“嘭”的一声闷响从楼道深处传来,大概是安全通道的门被重重关上。看来,不速之客已从电井旁的楼梯离开了。 这情形让我想起八月。那时我也独居,早已习惯了这份持久的孤独,在家时常不修边幅。即便是点外卖,我也会在骑手取餐后特意留言:“放门口即可,无需敲门。” 然而某个下午,一阵同样急促的敲门声毫无预兆地响起。我下意识地站直,紧贴在猫眼视野之外的墙角,连呼吸都不自然,凝神细听门外的动静。 会是谁? 前任?必不可能!她跟我一样是倔脾气,已经一年没再有她的音讯,不可能来找我,更何况毫无征兆。朋友?在这座陌生的城市,我的朋友屈指可数,他们都了解我习性,来访或相约必定会提前告知。 敲门声持续了几下后便戛然而止。我蹑手蹑脚地沿着墙壁摸到门边,再次透过猫眼向外窥探,依旧空无一人。大概是物业或者燃气公司上门检查吧——我试图用这个最合理的解释安抚自己骤然紧绷的神经。 今天周五,对于我这样早出晚归的“牛马”而言,是难得的喘息之机。下午一场酣畅淋漓的大雨,暂时压下了重庆持续肆虐的高温,空气里透着一丝难得的凉意。我先前正趴在窗台上,呆呆地望着楼下一排排橘黄色的路灯。路面的积水倒映着灯光,粼粼闪烁。这一幕似曾相识,三年前九月的某个夜晚,我也见过类似的光景,或许也是刚下过雨的缘故,连夜空中漂浮的云都微微发亮。 伫立在门前,我侧耳倾听外面的动静。电梯似乎在我这一层停靠,“叮”的一声轻响后,轿厢门打开,有脚步声传来,由远及近,我的心跳也随之越擂越快。那一刻,好奇竟压过了恐惧,我迫切地想知道,门外那个神秘的敲门人究竟是谁。如果是恶作剧的孩子,总不至于只敲我一家的门吧? 然而,声响突然就停止了。屏息等待了好几分钟,门外再无异动,我轻轻将门拉开一条细缝,探出半个身子向外张望——走廊里空空如也,没有任何异常。退回屋内,我点燃一支烟,定了定神,拨通了物业值班室的电话。 向物业值班人员说明情况,对方询问了事件发生的具体时间,随后将监控画面切到七幢的两个电梯,从晚上 19:20 开始回放。我坐在一旁的椅子上,聚精会神地盯着屏幕,感觉自己就像侦探,正等待着真相水落石出。 前后十分钟的电梯监控回放完毕,我却感到一阵失望。电梯最高只停到了我楼下那一层,并未发现任何形迹可疑的人。正当我准备起身离开时,另一位女士走进了中控室,向物业申请查看五幢的监控。我心念一动,又坐了回去。 女子说,她一个人在家,听见敲门声,从猫眼往外看时,楼道空无一人,时间大概是19:50。她跟我来时一样,笃定自己可以从监控中找到这个不速之客。 我暗自粗算了一下时间:二十分钟,从七幢的26楼到五幢的26楼,不乘坐电梯,全靠楼梯步行,时间相当紧迫。更何况——为什么要如此目标明确地奔走?而且偏偏绕开了六幢? 同样毫无所获。从中控室出来,我们各自撑开伞,走入昏暗湿漉的夜里。在岔路口,她向我道别,还特意说了一句:“我们还会再见的。” 走进电梯,我下意识地抬头看了一眼顶角的监控探头,一股无力感再次袭来。走出电梯,回到熟悉的楼层,一阵急促而沉重的脚步声忽然从背面楼梯间传来,紧接着又是“嘭”的一声巨响!我猛地攥紧手中的伞柄,几步快跑到电井门口,一把拉开门向内张望——楼梯间迂回盘旋,昏暗寂静,依旧不见半个人影。 带着满心的失落和疑虑,我转身走向自家的房门。正当我准备解锁时,目光却被地上一小片白色吸引,那是一张被匆忙撕下的纸条,随意地丢在地上。我捡起它,上面的墨迹还未干透,像是刚写上去。盯着纸上的文字,我脑海里几乎能听到笔尖划过纸面的沙沙声。纸条上只有四个字,看起来就像得意的挑衅: 找不到我。

2025/9/12
articleCard.readMore

入门天文望远镜探索科学 80EQ3

更新 9月7日夜,下班回来看到很圆很圆的月亮,随即更有了些想要熬夜拍血月的冲动。 前言 我有一个在我周围貌似很小众的爱好,曾经多次想尝试拍下空中皓月,但效果往往不如人意。买过一个星特朗的手持双筒望远镜,外加一个不知名的迷你单筒望远镜,前者成像效果不错,但是没有支架和手机夹,后者有手机夹但是成像效果不咋地。于是今年8月下旬,我咬咬牙买了一台入门级天文望远镜。 抉择 网上几百块的天文望远镜比比皆是,但许多都被称之为“玩具”,预算 700 左右的情况下,AI 给出了一个基本的参考。 配置高优先级(必选)可妥协项 口径≥80mm(深空观测底线)外观颜值/包装 焦距行星观测>800mm,深空>400mm变焦功能(定焦更可靠) 支架金属赤道仪+加重三脚架云台精细度(入门级够用) 镀膜多层镀膜(FMC)镜筒颜色(黑色消光更佳) 配件含2个以上目镜(如20mm+10mm)品牌溢价(选专业大牌平价款) 70mm和80mm看似只差10mm,但实际观测效果差异显著,尤其在深空天体(如星云、星系)和行星细节上: 观测目标70mm口径实际效果80mm口径实际效果 月球环形山✅ 轮廓清晰,月海可见✅ 环形山阴影细节锐利 木星云带⚠️ 隐约可见2条条纹(需极佳视宁度)✅ 2-3条条纹分明,大红斑可辨 土星环❌ 呈“米粒状”无分离✅ 环体分离可见(150倍+稳定跟踪) 仙女座星系M31❌ 不可见⚠️ 雾状光斑(需无光害环境) 昴宿星团✅ 可见6-7颗星点✅ 星点更密集,背景星增多 关键结论: 70mm是行星观测的底线:勉强看木星条纹,但土星环无法分离; 80mm是深空入门门槛:可捕捉M31雾状轮廓,土星环分离需配合赤道仪稳定性。 星特朗的 80EQ 被许多人称赞为新手入门最具性价比的产品,凭着它的大名我就要入手时,deepseek 跟我谈到了另外一个品牌——探索科学,在我的预算中,貌似探索科学的 80EQ3 确实更胜一筹。 参数探索科学80EQ3星特朗80EQ 赤道仪EQ3级(承重更强)基础EQ1(稳定性稍弱) 镀膜FMC多层宽带镀膜(透光率更高)标准镀膜 目镜PL目镜(边缘像质更好)Kellner目镜(基础款) 用户操作调焦手感偏紧(精度高)调焦顺滑(新手友好) 深空能力M31可见雾状轮廓同等口径下表现接近 基于上述比对,我在8月18日以 679 的价格入手了探索科学 80EQ3。 组装 望远镜很快到货,因为算中等件,所以拜托京东小哥送上了门。 一个长方体纸箱,打开后可以看到里面将配件分别存放。卖家发了安装视频,边看边组装,没有什么难度。 组装好之后,按照卖家的视频调整红点寻星仪,一切大功告成。 体验 组装完成后我便用它观察了对面远处的发电风车,但效果让我有点失望。 手持望远镜可以看到完整的风车和一部分周边环境,但 80EQ3 即便使用 20mm(只配备了20mm 和 4mm)的目镜,也只能看到风车的一部分,看起来是风车不够远导致的。根据公式,望远镜焦距为 900mm 的情况下,使用 20mm 目镜的放大倍率是45倍,使用 4mm 目镜的放大倍率是225倍。相同条件下,目镜越小,视场也越小。 当晚我便很期待月亮升起,但是很遗憾,在此后的十来天,我都没有在天空中看到月亮,天文通 app 显示的“无月黑夜”也几乎覆盖整个夜晚。 看月亮不行,看星星怎么样?无月黑夜正是看星空的时候!同样很遗憾,在光污染等级 5 级的地方,使用这款望远镜,肉眼可见的星星在目镜中也只是一个小小的光点(它们通常比月亮距离地球更远)。 直到9月2号,我才在 80EQ3 到手之后首次使用它看月亮。使用更高倍的天文望远镜和低倍手持望远镜看月亮各有优缺点 高倍天文望远镜: 优点:细节更丰富,更清晰;缺点:只能刚好看到完整的月亮,且因地球自转,需要调整赤道仪 低倍手持望远镜: 优点:可以有更广的视野;缺点:手持晃动但想对灵活,没有支架很难拍摄 当天是盈凸月,由于手机镜头很难完全对准目镜,加上拍摄时需要手动降低曝光,拍摄的效果也不如人意。好在我灵机一动,调整好手机的对焦和曝光之后,选择了录像模式,最终拍出了丑丑但是想对比较清晰的月亮。 后面的几天,有时间和机会我都会看看月亮,但到目前为止仍然都是单张直出,没有多图堆栈,没有调色。 当然,以上基本都是截图。没有电跟的话,即便对准了月亮,但月亮也会慢慢跑出视线,下次拍照得提前用蓝牙或者延迟拍照,录像的截图总感觉差点意思。 但是录像本身却有点意思,因为赤道仪不会自己转,手动微调也会导致画面剧烈抖动,因此短时间内拍摄月亮入镜到出镜的过程也有点意思。

2025/9/6
articleCard.readMore

暗房时刻

“我叫羊,偶尔写点东西,混口饭吃。” “作家?” “也不算吧,给三流杂志写点庸俗的笑话。” “抽根烟?”警官递过去一支烟,给羊点上。 “杰死了,你知道吗?”他又坐下来,拿起笔准备写笔录。 羊的思绪回到了前一天。他坐在鼠的办公室,静给他倒上茶,说了句:“鼠在见客户,一会就过来。”羊拉着她的手:“那你是不是可以再陪我一会?” “滚蛋!外面还有人呢!”静佯怒,一把推开他。 约莫一刻钟,鼠推门而入,羊站起身喊了一声“老板”。鼠笑着快步走过来,双手搭在羊的肩上,轻轻往下按,示意他坐在沙发上。 “跟了我这么久,说句良心话,我待你怎么样?” “自然不必说,我一直把您当大哥!” “可是……”鼠靠在转椅上,双脚搭上办公桌,从兜里掏出打火机,点燃烟后,‘咔嗒’一声合上打火机盖,鼠继续说,“可是,有人的胃口越来越大,开始背着我跟香港那边订额外的货,赚的钱全进了自己腰包。” 羊的脸上浮现出不安的神色,他想起那晚在深圳湾,蚂蚁们搬着货离开后,飞艇佬从船上搬下两箱缠着防水膜的东西。杰用眼神示意,羊走上前搬起货,杰拍拍飞艇佬的大腿,递过去几张票子。 “这是?”把货放在后备箱,羊忍不住发问。 杰递给他一支烟,自己靠在车上,一手夹烟,一手插兜,望着羊:“赚点酒钱,别让大哥知道,利润分你两成!” 此后的半年,每一次接大飞都有这样的操作,两人心照不宣。 “我不追究你。”鼠打断了羊的思绪,“但是杰,不应该这样。” “我应该做什么?”羊知道鼠不可能平白无故放过他,毕竟他才入行大半年,而杰已经跟了鼠三年有余。 “你现在去杰家里帮我探探口风,他要是愿意改过自新,我既往不咎。”说完,鼠两手一摊,盯着羊。 等羊出门后,鼠拨通了内部座机。 杰的房门没有锁,留着细微的缝。羊推门而入,却见杰满头是血倒在床上,他的心一下紧绷起来,推了推杰,发现他身体有余热但没有了呼吸。他有些不知所措,颤抖着点燃一支烟,无意瞥见了床下有一把羊角锤,上面还有一些血迹。他丢掉烟头,捡起锤子,然后用塑料袋包起来揣在怀里,轻手轻脚地关上了房门。 他把羊角锤放在鼠的办公桌上时,鼠一下子跳起来,揪住他的衣领:“你疯了?我只叫你去问,没让你做这种事!“ “不是我。” 鼠坐下来,思考了片刻:“放这吧,我来处理。” 当晚,听见敲门声,羊起身去开门。静推门而入,神色冷淡。羊一把抱住她,却被静轻轻推开。 “鼠知道我俩的事了。”静转过身。 羊懊恼地瘫坐在椅子上,抓起桌上的空烟盒扔在墙角:“等等,杰不是已经死了吗?” “鼠一直都知道。” “什么意思?” “我个人对你没有什么意见。”静靠在门上,“对杰也是。但是他的胃口越来越大,鼠看不下去了。你猜为什么那天我俩私会的时候,杰那么巧就来找你?” “鼠安排的?”羊一手按着她的肩膀,另一只手狠狠地砸在门上,“为什么?为什么!” “鼠说过,知道太多秘密的人不能留。”她递给羊一张照片,“你是个聪明人,应该用不着我多说。” 说完,静打开门离开。羊犹如感到晴天霹雳,照片清晰地拍到了他从杰的房子里走出来时谨慎的张望,双手交叉,薄薄的夹克由于装着羊角锤,显得鼓鼓囊囊。 “然后呢?”警官的声音再次打断羊的思绪。 “然后就是你们把我带到这儿来,但是我要说明,杰的死跟我没有关系!” 警官摆摆手:“那么另一个受害者呢?” 羊愣住了,片刻之后问:“还有一个?” 警官从档案袋里拿出一张照片,静和杰一样的方式死在了自己的屋内,拍摄日期是1986年2月10日,7点35分。 “警官!我真不知道!”羊激动地想要站起来,“昨天晚上十点多她来找过我,不到十分钟就走了!” “看,这是你的日记对吧?”面前的警官不慌不忙地从档案袋里掏出更多东西,“这张照片拍的是你?” 羊点点头。 “让我来还原一下案件的经过吧!1985年6月,你开始跟着鼠做生意——我们都知道其实是走私。今年一月底,你和死者静有了私交,开始频繁往来。2月7号,杰撞见了你跟静的私会,但是选择替你保密,因为你们俩瞒着鼠挣外快,虽然静是鼠的情人。” 羊点头。 “但是你生性多疑,你还是担心杰会把你的秘密抖出去,于是昨天——9号,你拿着这个……”警官从旁边拿出被装在密封袋里的羊角锤,“用它杀害了杰。” 羊摇头:“不是的!我去的时候他就已经死了!” “先听我说。”警官拿过那张照片,“恰好这件事被静拍下来了对吧?她昨晚来找你做什么呢,勒索你?” “没有!” “我们走访了你的邻居,对方说昨晚你家里好像有争吵。同时,我们在静的床头柜看到了这张照片的底片。”警官从档案袋里掏出一卷胶片,“昨天你的日记很简单,只有两个字‘完了’。你担心静会把这件事抖出去,所以凌晨的时候,杀害了这个女人?” “不不不!”羊慌乱起来,激动地解释:“一定是鼠!他也有作案动机!” “但是,除了动机,我们还有一些不利于你的证据。”警官从档案袋里拿出一张报告和密封袋装着的烟头,“通过马蹄镜肉眼比对,羊角锤上的指纹和你的相似度极高;现场还有一个烟头,虽然我们没办法做鉴定,但是,和你刚才抽的这支烟有一样的牙齿咬痕;最后,法医现场初检,推断杰的死亡时间是昨天下午两点到四点之间。” 羊呆呆地看着警官手里拿着的照片,他从杰的房子里走出来时谨慎地张望,双手交叉,薄薄的夹克由于装着羊角锤,显得鼓鼓囊囊。右下角的水印写着: 1986.02.09 15:38:06。

2025/8/15
articleCard.readMore

我在用什么浏览器翻译插件?

前言 浏览器翻译插件对我来说一直是可以不常用但不能没有的东西。目前我用的 edge 浏览器,微软的翻译众所周知,所以侧边翻译插件不太更新后,我用上了腾讯的翻译插件,没想到后来也凉了。在碎月的推荐下,我用了一段时间的沉浸式翻译。 前几天,沉浸式翻译被爆出泄露用户信息,加上我一直不太习惯它输入翻译要跳转网页的方式,整体稍显臃肿,于是我决定换掉它。 我期望的浏览器翻译插件是简约的,有 AI 大模型加持可以翻译得更准确的,可以在输入框输入文本便捷翻译的。 Trancy trancy 是我在又一次体验众多翻译插件后的选择。它的定位应该倾向于外语学习,但是在网页翻译这方面又很符合我的需求。 核心优势 AI模型:最大亮点是免费提供GLM-4 Flash模型使用权限,这是其它许多插件需付费才能享受的高级 AI 翻译能力。除此以外,它也内置了 deepseek、GPT、Claude 和 Gemini 模型,也支持自定义添加,不过后面这些是付费功能; 字幕翻译:在YouTube等视频平台上提供双语对照字幕支持,这个功能沉浸式翻译也有,但是我没使用过(或者是没使用成功过),trancy 可以很好地支持,并且可以选择翻译的大模型; 响应迅速:我初次体验时便遇到了输入框翻译功能无效的情况,具体表现为输入中文,在其它语言中依然显示中文,输入其它语言能正常翻译成中文。当时我通过邮件的形式反馈了“快捷翻译无效”的问题,开发者很快回信,并且当天中午就通过热补修复了该问题。 多平台支持:除了 chrome 和 firefox 这两大浏览器阵营,trancy 还支持其它平台和浏览器,比如 safari。 当然,学习方面的功能因为我需求不大,所以没有深入体验,但它的功能确实比较丰富。 我认为的遗憾 因为我的需求和 trancy 的定位并不十分匹配,所以现有的遗憾主要是是对我个人而言的。 一开始,我觉得其它模型和自定义模型等需要付费是遗憾,但是整体来说 GLM 4 Flash 模型的翻译准确度还可以,所以就没太在意这点。 此外,插件的布局于我而言不太高效。我非常喜欢谷歌翻译插件那种,点击图标即可直接输入要翻译的词句,trancy 点开之后的布局如图: 看起来这个布局确实更适合学习其它语言的用户,而我常用的设置和快捷翻译则在第2和第4。 对比 当然,我也深知没有最完美的产品,只有更合适的产品,所以我也曾试图想过借助 AI 自己写一款自用的翻译插件——好多方面我都想过去重复造轮子。但即便有 AI ,完成一个完整的好用的项目依然需要花费大量时间,所以我简单评测了一些翻译插件。 基于实际体验和测试,整理主要翻译插件(不完全)关键特性对比如下: 产品/功能核心优势主要缺点翻译准确度翻译速度 有道灵动翻译图片/音频翻译无输入框,不能划词翻译★★★★☆★★★★☆ DeepL翻译较准确,有输入框免费版无网页翻译★★★★☆★★☆☆☆ 火山翻译支持PDF划词翻译翻译不够准,部分网页翻译失败★★★☆☆★★★★★ 轻氧翻译开源,简约网页翻译缺失★★☆☆☆★★★☆☆ 侧边翻译简约,有输入框API接口维护不及时★★★☆☆★★★☆☆ Trancy免费GLM-4模型,字幕翻译GLM 4.5模型暂时存在稳定性问题效★★★★☆★★★★☆ 简约翻译/配置项多,没有输入框★★★☆☆★★★★☆ 当然,除了产品对比外,我也尝试了 trancy 自带的诸多模型翻译的对比。以英文版新华网某天的一条新闻标题为例,翻译结果如下图所示: 在这些模型中,没有一个大模型能正确翻译出‘卢卓灵’这个人名,看起来都没有实时调用网络搜索,GLM 4 Flash 居然把Lu Zhuoling翻译成了鲁智玲。 在人名方面,我更认可 GPT 5 nano 的处理方式,即套用原文,而不硬要去翻译它;当然,特定的称谓翻译也有不同的表现,我们假设 A 国的领导人姓“于”,英文的新闻标题往往可能这样写:Yu says A-country will continue to promote peace talks in Ukraine crisis,一个好的模型会这样翻译:于某某表示A国将继续推动乌克兰危机的和平谈判,而有些模型可能会直接翻译成“于说……”甚至“于于说……”。 如果抛开人名翻译的问题,我个人觉得 deepseek 的翻译最符合新闻标题的特征,简洁和准确。 最后,我很讨厌必应那种自作聪明的“本土化翻译法”,比如输入youtube,它会翻译成“优酷”,我不记得是哪个模型也有莫名其妙的翻译(写本文时 bing 和 GLM 4 Flash)都没有成功复现: 写在最后 关于沉浸式翻译泄露了用户隐私信息的事我无法做专业的评价,但是我想,除了使用体验以外,用户肯定还很在意一款产品的安全性。 在翻译这方面,我期待越来越多的大厂可以做出更好的产品,尤其是在这个 AI 普惠的时代,如果依然只是依赖传统的机翻,那还能有什么竞争力呢?没错,微软,说的就是你!

2025/8/10
articleCard.readMore

再访悟惑寺

从深圳回来后,我又在家待了很长一段时间,总想出去透透气,思来想去,最终决定再去一回悟惑寺。 悟惑寺位于重庆市丰都县兴义镇的古官山麓,是一座有400多年历史的古寺。它始建于明万历年间,最初名为古官寺,后在康熙年间由妙鉴和尚迁建于现址,先后更名为永兴寺、悟惑寺。 车行至乡道小路,一路上来来往往的大车不停,导致路比去年更烂,到处都是细碎的石子。半小时后,停在寺院下面的停车场,又一辆大车驶过,卷起的灰尘让燥热的空气更闷,难以呼吸。 沿着小道往上行,下午五点的太阳依旧明晃晃地照在阶梯上,牌坊上“悟惑寺”三个大字依旧清晰可见。 踏进山门,前殿的大门没开,我走到侧边,配房的房门跟以往一样开着,室内空无一物,也没有灯光。从耳门进入前殿,寺内的陈设和去年没有不同,齐顶的木门历经几百年的风雨,依然保存完好。前殿正对门口有一尊佛像,往庭院内看去,两个大的水缸分别放在中殿正门两边,中殿里供奉了一些菩萨,可惜我对这方面没有太多研究,大多我都不认得。 绕过神像,从中殿后门出去便能看到后殿,相比较之下,后殿的供奉就少了许多。踏进禅房,一股陈木的气味传来,房间里晒不到太阳,加之光线昏暗,总感觉有点潮湿。小道通往四院背后,已看不清后面的小路和陈设,却多少有一点“禅房花木深”的意蕴。 既然叫悟惑寺,那来这里一定是期望能够悟出一些关于困惑的答案吧。 去年来这里,正是被感情的事内耗得头痛之际,恰好梁教授没有其它安排,于是和我一同前来,在寺院内还偶然见到了一对来此参观的夫妇,此外没有他人。我妄图在沉寂的寺内找到一些关于“悟惑”的蛛丝马迹,却只在中殿左侧耳房上发现一些文字(那时并未发现中殿房梁上的文字): 以外茂林修竹回头即是仙山,静听万壑松风过去极清澈时无声有声 看起来毫无对仗可言,不知道这两句会不会分别是右侧耳门的下联,因为右侧耳门已经看不清楚什么文字了。 我有什么困惑呢?暂时看来,我好像一身轻松,甚至没有什么烦恼。回想去年坐在悟惑寺的那个下午,静静等待太阳下山,晚风拂过,直到回去时也没有悟出个答案来,那些让我觉得痛苦又不舍的情绪依然左右着我。但是一个多月以后,有些事情就已经尘埃落定了。 “惑”一定有对应的答案吗,这样看来好像并非全都如此,但是“惑”一定会有一个结果。只是坐在四方小院中,我看着苍老的建筑围起来,只有一方小小的蓝天。忍不住感慨,这一年过得好快,并且发生了太多的事情,颇有一种物是人非的空洞。 不知道数百年前住在这里的僧人有没有想到过,曾经驰名川东,甚至一度与重庆华岩寺和梁平双桂堂齐名的古刹,数百年后竟然杂草丛生,空无一人。 想到这里的时候我突然意识到,所谓的“惑”,不过是苦短的人生旅途中自己给自己找的麻烦。我们在各种自认为的生活困境中苦苦挣扎,想要从某个地方找到突破口或者答案,却没想到过“烦恼即菩提”,当你能坦然去面对生活的一切苦与乐,而不是想通过某种捷径去跳过它时,答案就已经隐于其中。 所以简而言之,生活中的惑,答案也不会藏在这座寺院之中。 一个小时后,我从耳房走出中庭,来到山门外,又看到了远处的日光透过厚厚的云层,洒在江面上,范仲淹笔下的“浮光跃金”在我眼前被具象化了。这番景象在去年来时,虽有留意,却不曾见得有如此清晰。 此行没有带着特定的目的,相对轻松的时候反而能关注到更多的东西。或许正向我曾和 deepseek 讨论时它回复的那样: 真正的“悟”,往往发生在你不再苦苦追寻它的那一刻。就像那朵深山无人见的花,开不开、为谁开,它只是如实地活着。你带着一颗不再焦虑“悟”的心,重新走进古寺,在青苔上坐下,在木鱼堡前静望,你其实已经在“悟”的途中了。

2025/8/8
articleCard.readMore

暑假游·香港篇

和新加坡一样,香港也曾是我在谷歌地图上多次“云游”的地方。作为曾经的亚洲四小龙之一,以及八九十年代风靡大陆的娱乐文化,我对这座城市有了许多的期待。 打电话给我爸时我说:“你走过了我们国家大多数省份,但有一个地方你肯定没去过。”他一下就猜出来是香港。于是我和父母各自办好了通行证,我到广州后跟他们确定了最终的行程。 起初打算回深圳住,但深圳那边答复不能确保自助签注机一定能审核通过,加上父母也不太想来回折腾,于是我们决定在香港住。我27号先去探索,他们28号早晨过来。 交通和住宿 从广州南或广州北直达香港的高铁票要215元,如果坐到深圳北,半小时换乘到香港西九龙的话,总价只需要149.5,所以我们去程和返程都选择了中转方案。 去之前就了解到香港这种寸土寸金的地方,住宿贵且小;港府推行环保政策,限制一次性塑料制品,因此许多酒店宾馆不再免费提供一次性洗漱用品(如牙刷牙膏);还有就是香港基本用的是英标插座,需要转换头才行。 好在我经过对比,选择了一家价格还算实惠,提供一次性牙刷等洗漱用品,同样也配备多种接口的宾馆。 价格交通插座洗漱用品大小其它 泰兴翡翠264离佐敦站440米多规格都有11平装修还行 幸运星280离佐敦站440米多规格无牙膏牙刷8平装修还行 榆临284离佐敦站100米多规格无牙膏牙刷8平15点入住11点退房 当时对比了好几家宾馆,排除之后,在这三家里选择了综合体验更好的泰兴翡翠。老板华姐是福建人,在去哪儿上回复住客评价时,言语间也透露出对自己服务的自信。27号11点多我到之后,华姐首先给我拿了一瓶水,说香港这边矿泉水卖得贵,带上吧。 得知我父母次日要来,还贴心地打算为我们安排相邻房间,最后由另一位大姐带我父母去房间时还感叹:难怪华姐给你们安排这么大的房间。 第一天 由于还没到办入住的时间,在宾馆寄存了背包后,我就挎上小包去 citywalk 了。导航至维多利亚港,步行将近两公里,但中途转道去了九龙公园,接着又去了尖沙咀客运码头,所以到达维港的时间比预计晚了许多。 到维港时已是正午,因为是周日,所以即便烈日炎炎,但依然有许多游客打卡拍照。一层有遮阳,所以比二层露天平台的人多了不少。 当时我没有选择去旁边的星光大道,而是选择了乘坐天星小轮到中环的天星码头。由于我并没有做充足的攻略,所以根据AI推荐导航去半山扶梯时,又不知为啥拐进了香港国际金融中心大厦。在大楼里享受怡人的冷气时,逛了许多楼层,都没能找到想吃的东西。 半个多小时后,再次导航到半山扶梯(据说是亚洲最大的户外扶梯),曾经王家卫的《重庆森林》就有片段在这里取景。当我真正步行至扶梯时,发现和想象中还是有一些落差——它是一段接一段,并非是完全一体的。 上扶梯前,我买了一杯招牌抹茶拿铁,就是中杯而已,花了28人民币。虽然有了在金融大厦看到饮食消费价格的准备,但依然觉得这杯拿铁还是太贵了点。 沿着扶梯上行,一路上没有遇到特别想拍下来的景致,在扶梯上也不太方便拍照。在平台时看见了一条很眼熟的街道,玩 GTA 5 的朋友一定在洛圣都见过类似有坡道的公路。 扶梯到顶便是大馆,由旧中区警署、前中央裁判司署及域多利监狱等历史建筑群组成,现在是一个综合性的艺术馆,这里关押过最著名的人应该就是胡志明。现在依然能看到监狱的一些设施,牢房里还有大屏播放关于这里的记录和采访片。 去的那天恰好有河原温(kawara)的艺术展览,事实上我对他的艺术作品没有什么共鸣,但凉爽的空调还是让我在其中待了半个多小时。 此时已过下午三点,沿着街道步行往下,一直走到皇后大道中,准备坐地铁回宾馆办理入住。 到达佐敦站后,出站在一家面馆吃了一碗面,鸭腿味道不错,口感也很柔软,面条则是普通的清汤面,上面挤了一点酱和一个小红辣椒。 在宾馆住下后,充电的同时安排当天后续的计划:五点半坐地铁去中环天星码头,乘坐城巴 H2K 游览夜景,再坐天星小轮回维多利亚港拍夜景。 从中环地铁站出来,步行到中环的天星码头还要将近十分钟。到达城巴 H2K 上车点时已有不少人排队。我买的104人民币的当天不限次数票,可以优先上车。即便是优先登车,我也排了半个小时以上的队——不过这正好,将近七点的时候上车,一方面可以看到绝美的晚霞,另一方面,中途或返程的时候还能看到香港的夜景(点击这里去B站看落日飞车乱剪)。 坐在敞篷大巴上,前面的男生说“谁来香港不坐一次落日飞车真的是白来了”。 因为我的票是往返,所以一个小时后在中环天星码头附近下车,此时已经八点多。本想着花20港币去体验一下旁边的摩天轮,可是到现场一看,排队起码就要一个半小时,于是在周围的码头逛了逛,拍了拍。 天星小轮上看维港的夜景始终不如站在维港看来得更舒服。维多利亚港的夜景在我主观看来,已经超越了此前在吉隆坡酒店无边泳池看到吉隆坡双子塔的那种震撼。 看完夜景已是九点多钟,又热又累的我选择了坐公交去庙街找点吃的,毕竟公交就在维港旁边,非常方便。 到达庙街后才发现这里跟我想的不太一样,从另一边进去,一路上全是卖服装和各种小物件的,时不时还能看到穿着很清凉的小姐姐坐着或站在小巷子口,走到另一边才看到一些小摊卖着各种小吃和饮品。由于并没有找到想吃的东西,所以花35买了一个鸡蛋仔(摊主直接挂着微信个人收款码,人民币价格直接按港币收(相当于汇率1:1))。 香港的饮料也动辄二三十块,还好这个时候我想到了雪王!在佐敦站附近就有一家雪王,我一口气买了一杯高山四季春和一杯青提肉多多,总价22港币,买两杯是觉得自己晚上肯定会口渴,另一杯就当是买水喝了,反正矿泉水也差不多十来块钱。 第二天 第二天早上九点半我的闹钟响了,洗漱之后去西九龙站接我父母。高铁到站二十来分钟后,看到他们出来了。 由于还没到办理入住的时间,于是我带他们临时到我的房间去休息和充电,安排了一天的行程:上午去维多利亚港和星光大道,吃完午饭回来办入住,下午和我前一天的行程一致。 乘公交到维港时,因为是周一,所以人远没有头一天多。我妈拿起手机不停地拍,我父亲相对比较淡定,在吸烟处和我聊天。然后我给他们拍了合照,也不知道他们俩上一次拍合照是什么时候。我们仨拍合照的时候,自拍杆比较短,我又忘了开广角,所以三个人挤在镜头前,拍出来的合照我妈并不满意——她还抱怨我用原相机而非美颜相机给她拍照。她近年来发的抖音都开了很重很明显的美颜,虽然我觉得那些美颜特效并不好看,但可能在她看来确实会让她显得更年轻一些。 一路步行到星光大道,我妈自顾自地四处拍照,我和父亲就在栏杆上看有没有认识的明星。 中午在 K11 商场吃午饭,我说不管价格多贵,想吃什么就吃什么,预算五百以上。事实上吃的那家店确实很贵。才三份饭加两个小吃,算上百分之十的服务费,我们仨一共消费了409港币,不过都吃得挺饱。 在宾馆休息完,下午五六点我们坐地铁去了中环天星码头 H2K 上车点,我头一天买的票还有二十几分钟到期,工作人员却不让我进,说虽然写着“24小时”,但已经是昨天的票了。好在我并没有想上车,就像吃美食一样,吃多了就会觉得厌倦。我爸妈上车时我打算坐地铁去坚尼地城,但一想到来回的时间都要差不多一个小时,只能在附近闲逛等他们。 我问我爸坐敞篷巴士的体验如何,此前担心花钱的他也给了肯定的答复。夜晚的维多利亚港相比中午人更多,我妈依然拿着手机到处拍,我和我爸就在旁边有一搭没一搭地聊天。 晚饭在庙街附近的一家24小时营业饭馆,我爸妈点了饺子酸菜面,吃了两口她当即决定第二天早上还来这里吃。想着手头还有五百多的港币现金没花,所以结账时我再次选择了现金支付。吃完饭我又买了三杯蜜雪,说真的,在全世界雪王应该都是最有性价比的奶茶——包括我在吉隆坡喝一杯也才五块多。 第三天 第三天天公不作美,香港下起了暴雨。可能加上我爸妈觉得疲惫,所以他们并不想出去玩。于是我一个人去乘地铁,逛了逛一直想去看的喜帖街(正式名叫利东街)。喜帖街在20年前被收回后进行了改造重建,如今的喜帖街确实看不出往日的那种热闹。 在湾仔站外恰好碰到了叮叮车,于是上车体验了一下,坐几站之后便乘地铁去了香港会展中心,想去金紫荆广场看看。 中午汇合,吃完饭后我们就去了西九龙站准备离港。回想起来此前我妈担心一天不够玩,现在却因为疲惫或者大雨不想出去,我虽然一天暴走近三万步,也还有很多地方都没去过,权当是初步体验了香港。

2025/8/2
articleCard.readMore

暑假游·贵广州篇

因为写在一起内容较多,所以本文把作为中转的贵州和广州放在一起来写。 贵州 本来去贵州是因为有约,后来被爽约了,但我还是按照既定的计划买了高铁票。 贵阳 这是我第二次去贵阳,事实上跟上次一样都是走马观花。在我决定出行之前,就在朋友圈刷到过好几位同事在贵阳的动态。但是贵阳貌似也没有什么特别好看或者好玩的地方,我姑且把它当成了出行中转的第一站,用一个下午和晚上去逛了逛。 贵阳的酒店是最难选的,因为旺季涨价很难选到性价比酒店不说,还要留意酒店设施中有没有空调——虽然贵阳比重庆凉快,但也没到不需要空调的程度,况且我一直以为空调应该是酒店的标配。 网上有人推荐住喷水池附近,但没能选到性价比比较高的住宿,最终选择了花果园那边的一家,190+的价格,房间不大但还比较干净,窗外就是贵阳的双子大厦。 晚上出去逛了逛,贵阳人多车堵的现状给我留下了深刻的印象。而打卡热门的双子塔和“白宫”相隔不远,所以花果园那一带真的非常热闹。 酒店楼下就有比较长一条餐饮街,考虑到一个人不必吃大餐,便只买了一份蛋包洋芋饭和一份冰浆,回到房间时已将近十点。 次日乘车去安顺,打算看看黄果树瀑布。酒店到火车站4.4公里,出租车起步价十块,那个司机还绕我的路!在车站旁边吃了一碗脆哨面(也就是脆脆的油渣面),然后坐上了去安顺的绿皮火车。 安顺 到达安顺站,出站后门口就有很多出租车和私家车拉客去黄果树瀑布,要价35元,说走高速,半个小时就到。我选择了更便宜的15元大巴,后来漫长的等人和行程持续了差不多两个小时,一路上我都在懊悔为什么没去坐私家车。 值得点赞的是,贵州文旅有一系列的免门票活动,所以去黄果树景区我只花了50买摆渡车服务(必买!不对,只?老实说摆渡车要50还是有点贵的),本着能走就行,便没有买扶梯票。 虽然上坡下坡很累,但是远看大瀑布确实可能是乘坐扶梯无法体验到的视角。 走到大瀑布跟前的观景台,巨大的瀑布溅起的水雾在空中弥漫,又热又潮湿又拥挤的环境,让人很难安静的去享受自然。 回程时看到一家宫鼎茶,想起此前安顺当地人给我力推的就是这家奶茶店,我点了一杯轻乳茉莉,个人感觉没有瑞幸的鲜萃轻轻茉莉好喝,后者喝第一口时便能感受到口中的那份茉莉清香。 坐摆渡大巴回到景区门口,刚下过一场大雨,加上来时被大巴支配的恐惧,我打了一个滴滴顺风车拼单,司机让我和其他乘客分摊高速过路费倒也正常,但他居然给我的订单选择的是“未拼成”,导致我多付了11块钱,好在后面滴滴客服处理退款很爽快,也没再去细究。 晚上住在离安顺西站不远的酒店,这里远离市区,也没什么好逛。当晚尝了豆花烤鱼,确实得夸夸,豆花很嫩,烤鱼味道也不错,个人感觉比重庆这边的万州烤鱼好吃。 广东 广州 广东对于我也只是一个中转,根本没有时间去游玩。到广州的第二天,堂哥非常客气地请我和我父母吃饭,我要付奶茶钱他都不肯,抢着付了烟钱之后还被白眼了。 相比较之下,他和我父亲的堂兄弟家的那些孩子有很强的“宗族意识(或者说宗族自尊)”。即使他这两年过得很辛苦,说我这个弟弟好不容易去一次广州,无论如何也不能让我掏钱,我父母也是他的长辈,更不能让他们掏钱。他给我父亲买了一条烟,带了两箱牛奶,加上那天吃饭的开销,可能将近一千块。 我和我父母也是比较客气的人,在头一天就说过,他肯定不会让我们结账,所以我爸让我妈提前去结。可是没想到刚点完菜,我堂哥说去拿一瓶饮料,我母亲随后出去结账,就发现我堂哥趁着那个间隙已经结了。 深圳 到深圳已是从香港回来,也没有太多时间去逛,从深圳湾公园地铁口出来的一刹那就被当时的晚霞给震撼了,可惜无论如何我都拍不出那种美感。 特别建议,深圳湾其实没什么好看的,如果要去逛逛一定要先扫个共享单车之类的。我当时走了很久很久,走到正中间发现进退两难,旁边没有共享单车,观光车也要去特定的站点乘坐。 好不容易走到地铁站后,已经步行两万步了,还好有雪王!然后坐地铁去岗厦北站逛了一逛。一到岗厦北地铁站,被这“深圳之眼”的设计给吸引了。 在深圳待了没多久,就坐飞机回了重庆。离家十几天讲真是归心似箭。 下一篇再更新香港篇。

2025/8/1
articleCard.readMore

暑假游·广西篇

概要 老早我就计划去香港玩,父亲的港澳通行证预计七月下旬才能拿到,但我在家实在待得无聊,于是7月18日我开始出发,从贵州到广西,再到广东,最后到香港。为期12天的旅程也算是去见识了一部分祖国的大好河山,虽然疲惫,但也值得。因为内容太多,这篇日志单独记录一下广西篇。 以下图片均有高百分比压缩。 桂林市 从小便听过那句“桂林山水甲天下”,所以7月20日我便到了桂林。在两江四湖附近的民宿刚办理入住,外面便下起了瓢泼大雨。民宿的老板很热心,给我发了许多吃的逛的攻略,当晚我就去了老板推荐的彭记担子米粉,因为时间已近九点,阿婆跟我说米粉卖完了,我只得吃了一碗馄饨。隔壁桌的顾客问老板还有没有米粉,他想再加二两,还说比另一家做得好吃多了,这也让我坚定了次日早上再来吃粉的决心。 吃完粉雨也停了,步行到日月双塔,沿着湖边走了半圈,觉得着实没有必要买票进去。一路上有各种收费拍照的,租民族服装的,广西在旅游这块嗅到的商业契机确实很丰富。 想起上次一个人出游,手机里全是风景照,在湖边的时候鼓起勇气问能不能给一个小女孩拍照,她妈妈也爽快的答应了。可惜时间比较赶,风也大,小女孩的头发总被吹散挡住眼睛,只能勉强拍了两张,效果并不是太好。 步行到渔人码头,一路上看见两个在路边唱歌的歌手(或者有更合适的叫法?)。在其中一对的歌单里,居然很难得看见了南京市民李先生的一些歌,但没有我想听的《热河》,所以坐在那听了一会便离开了。 回去的路上看见了象鼻山的夜景,因为江面没有灯光,所以拍下来并不好看,就决定次日再来象山公园打卡。没走多远,又一阵突如其来的大雨——这就是桂林给我的第一印象,时不时会下雨(也可能是受台风的影响)。 次日早上我终于吃到了那家店的米粉,二两粉加一份锅烧肉,才九块钱,锅烧肉只有几块,吃起来脆脆的,像油渣。吃第一口时觉得确实有些惊艳,但越吃越觉得有点油腻。吃酸豆角解腻时,又意外感到酸豆角烧舌头,可能这些酸豆角并不是我们这边用菜坛泡出来的。 吃完便再次去象山公园打卡,桂林的山水在我心中留下了初步的印象——到此时并未觉得惊艳。 阳朔县 因为当时已买不到当日漓江三星游船的票,又不想等到明天。听说阳朔站离县城远,所以坐大巴——我是多想不开才去坐大巴?味道难闻,中途多次停车等人,有点农村客运的意思。又是坐了好久,下午两点左右才到阳朔的民宿。 跟民宿老板租电瓶车时,她要25我居然只还20!事后想起来都觉得自己很蠢。骑车在十里画廊漫游,一路上都是从未见过的景致,加上总有些期待,所以感觉到有些新鲜,返程反而没有那种欣喜了。 在其中一个码头碰见一位卖冷饮的阿婆,六块钱买了一杯绿豆沙,在桥上拍出了我认为是在阳朔拍到的最有意境的照片。阿婆告诉我,往龙村码头那边骑,还能看到大片的梯田,可惜到了龙村码头我也没能找到她口中的梯田。 晚上在西街一家评分还可以的店吃了啤酒鱼,62块钱,一斤,分量并不多,我都只算是吃到了八分饱,口味勉强能打及格分,肉质居然没有我想象中嫩。 次日的安排:睡到自然醒(还是调个晚点的闹钟),然后去兴坪坐竹筏,最后在兴坪车站坐专线去阳朔站附近的民宿,后天早上坐高铁去北海。 睡到了十一点钟,在桥头吃了一碗锅烧肉粉和一笼小笼包,打顺风车半个多小时无人接,遂乘班车。初,烟雨朦胧,峰顶雾气缭绕;后,暴雨如注,车窗如水泼。好在班车速度也不算慢,冒着暴雨乘车奔驰也别有一番滋味。 因为网上买票时显示需要线下兑换车票,于是我在售票厅询问,答复我可以在码头兑换。让我意外的是,140的票价仅包含门票和竹筏票,从售票厅到码头将近两公里的路需要买15元单程的观光车票——这又强化了“阳朔处处都想赚我们的钱”这个想法。 因为买的票是从朝板山码头到马山码头的往返,所以没能看到最负盛名的黄布倒影。不过两个打卡点之间,一个是20元人民币的背景图,另一个是九马画山,整体的山光水色确实怡人。 由于阳朔的景点太分散,票价整体偏高,所以我放弃了遇龙河漂流的计划。乘坐竹筏后沿着兴坪古镇往车站走,并没发现什么惊喜——可能全国的古镇都一个样。最后还是一杯冰凉的库迪咖啡给了又累又热的我一点点安慰。 北海市 北海的民宿也很让人纠结,因为网上曝光的货不对板,退房扣押金等事情太多了。看了很久之后,我订了一个虽然简约,但比较干净的民宿。加上房东微信,发现他二月份以前还在大理开民宿,有点担心。但房东不磨叽,没有收押金,于是23号晚上我又续了一晚。 到达北海的下午我便去了紫霞湾,想看看能否看到绝美的日落。由于下午开始租电瓶车也是按照一天收费很不划算,所以我第一次骑了共享小电驴。停车区离海滩还有一点距离,只能步行过去。但是当天紫霞湾没有落日,就连晚霞都很腼腆。沿着海边走到无人的地方坐下来,抽一支烟,静静地享受这份时光。 晚上在民宿附近的小吃街闲逛,没有看到特别想吃的东西,又不得不果腹,所以点了一份虾仁猪肉蛋炒饭和五个生蚝,总共才花20块钱。 北海的景区,至少海滩是免费的,目前为止没有花过一分钱的门票钱。但是海边也是各种收费如厕,收费冲洗。第二天我租了一辆电动车,30块钱一天,车很新,车况也不错,骑了一天一格电都没掉,比在阳朔租的哐当作响的车好多了。但是那天北海的紫外线很强,仅仅才半天,我的手臂被晒得黢黑。 上午逛了老街,吃到了广西人给我推荐的虾饼,李姨家的虾饼五块钱一个,味道真是不错。咬一口酥酥脆脆的,虽然有一些虾腥味,但吃起来还是很香。后来看到一个卖酸嘢的摊,想起在阳朔时就被广西人安利过,于是我选了几样水果,加了一点辣椒面,老板说刚好一斤,12块。当我满怀期待地咬了一口,那种奇怪的味道该怎么形容呢,就像是白醋加干辣椒面一样,我实在吃不习惯,没吃两口就丢了。 逛完老街去了侨港风情街,有间冰室的炒冰虽然有点小贵,但味道真还不错。但不知道是不是先吃了冰凉的炒冰的缘故,后面吃 AI 推荐的卷粉时,一度有种想吐的感觉。骑着小电驴去了侨港海滩,虽是正午,但依然有不少的人在遮阳伞虾休憩或者玩水上项目,侨港的海水是我在北海看到最清澈的。 回去休息了几个小时,五点多已经不见了太阳,阴沉沉的天气让我知道今天肯定也看不到落日了,但还是决定去一趟大名鼎鼎的银滩——难怪广西好多小电驴,真的很方便。 银滩相比前面我去的海滩人是最多的,有不少亲子游玩的,也有闺蜜或男女朋友一起拍照的。虽然人多,但是我紫霞湾一样,沿着海滩一直走,一定能到一个人少安静的地方。没过多大一会,又下起了淅淅沥沥的雨,我撑着伞,站在海边,看海水一波接着一波向我涌来,沙滩上偶尔会留下一些小东西,但很快又被下一波海水带走。 很多人都喜欢在海滩上写自己或者爱人的名字,可能这是一种比较浪漫的做法?我也想写,但是我不知道该写什么,望着大海良久,拾起一根树枝在海滩上写下了“LonelyGod”。如果让我描述一下这个词给我的感受,那就是连无所不能的神都是孤独的,看起来它真是一种强大的感觉,所有人都无法逃避。 一阵海浪涌来,沙滩上写下的字被冲掉,海滩又变得非常平整。如果说一个人的心里有一道伤痕,那么在经历海水的冲刷之后,一定会被它温柔地抚平吧? 银滩边的海鲜店是不敢去的,看了一家,老板留给我推荐大螃蟹,大龙虾之类,没有标价的菜单,鬼知道吃完得多少钱。于是我又骑车去了侨港,吃了一碗猪手粉,又买了一个虾饼,但口感和味道比上午在老街买的差远了,赶着还车的期限,十点以前到了民宿房间。

2025/7/31
articleCard.readMore

腾讯云EdgeOne,真香!

前言 腾讯云的 EdgeOne (以下简称 EO)在上半年推广免费套餐时,我并没有多大的兴致。前几天发现云盾的速度越来越慢,切换回多吉又担心什么时候再次被刷流量,所以通过发推的方式得到了官方赠送的兑换码。关于参加活动的方式我不再赘述,体验了两天就两个字——真香! 接入域名 初次接入域名时选择绑定免费套餐,在选择加速区域时可能是备案信息没有刷新,不能选择“中国大陆可用区”,导致我只能选择了第一个选项;由于我的域名全都在 dnspod,接入模式便选择了“dnspod托管接入”。比 cloudflare 好的是,如果你的域名在其它服务商,可以选择 cname 接入方式。 当然,由于域名在 dnspod,所以无需额外的验证域名归属权,方便很多。 免费版套餐支持接入一个域名,解析200个子域名,对于个人项目和小型企业来说都是完全足够的。 选择 dnspod 接入的方式还有个好处,可以在 EO 控制台很便捷地将已有的解析添加为 EO 加速域名。 开启 EO 加速时建议不选择推荐模板(网站加速、大文件下载等),如果有需要可以在规则引擎里创建缓存规则。 ssl证书 如果域名在腾讯云,可以把申请的免费证书一键部署到 EO 等项目上;如果在其它平台,可以在 cname 接入后在 EO 上申请免费证书。根据文档,在到期前半个月会自动续期。 腾讯云现在申请免费证书一般在一分钟左右就可以颁发,速度比以前快了非常多。 至此,基本上可以正常访问了。 访问体验 我接入域名之初选择的加速区域是“全球可用区(不含中国大陆)”,这也导致一开始我觉得在国内的访问速度并不是很快,加载一张300kb以内的图片都是逐渐显示出来的。 通过路由追踪,可以发现最后一跳在新加坡的一个任播 IP 上,外网的平均延迟甚至达到了 300 多毫秒。通过拨测可以看到国内的访问速度并不是多理想。 当时想着这速度至少比云盾目前的状态要好,将就这样用吧。更何况我没有额外配置缓存规则,但是一开始的缓存命中率都很高。 昨天下午四点钟左右接入,拨测了两次,可以看到缓存大多数都是命中的。 半夜我突然想到了什么,再仔细去看了一下 EO 的控制台,幸好,EO 可以切换服务区域! 在服务区域切换中仍然没有“中国大陆可用区”,刷新检查备案后,可以从我之前选择的“全球可用区(不含中国大陆)”切换到“全球可用区”。为了验证国内的解析节点和速度是否改变,我又去拨测了一次。 通过 nslookup 验证解析以及路由追踪可以看到,确实就近解析到了腾讯云 CDN 位于重庆电信的节点。 此时在无痕模式下刷新网页,图片的加载也不会一卡一卡的,非常流畅! 写在最后 之前看到论坛有人搞优选 EO 的 IP,还以为免费版不提供境内节点加速,没想到事实上比 cloudflare 大方很多,体验也好太多。 但是熟悉腾讯云的朋友都知道,嗯,我也不必多说,且用且珍惜吧。期待腾讯云的这个“长期”可以稳定地“长期”,短期内不要砍配置了。

2025/7/12
articleCard.readMore

月亮下的思念

离上次去看演出已经半年有余。 听音乐是一种很好打发时间的方式,在偶然闲下来后,如果身边没有一点响动或者期待,时间就会流逝得很慢。从去年底我就时不时问月下什么时候来重庆,他们的回复从“明年一定”到“大概六月”终于到开票,我心心念念的乐队还是来重庆了。 演出地点在坚果livehouse,位于解放碑商圈,好在不算旺季,酒店的价格并不贵。然而当我从较场口地铁站出来后,依然看到了络绎不绝的游客。以前在网上看到许多关于重庆的游客照,我也亲眼见着了一部分——其实在不知道去哪里玩的时候,我真想过去重庆主城旅游。 听起来有点搞笑,重庆人在重庆旅游。 在新加坡接受过更高物价的毒打后,面对20多块钱一碗的冰饮我毫不手软,小碗菜团购价70,我还不犹豫加了一份39块钱的剁椒猪蹄,11块钱冲兑的青提饮料也让我尝出了在大马餐车买到的6马币的青苹果汁(难喝)。 好在小碗菜很符合我的胃口,烧白和猪蹄一样入口即化,拌猪头肉香辣可口,红烧牛肉韧而不柴……饭饱以后我去酒店办入住,前台很热情,给我安排了一间有大落地窗的房间,窗外是十八梯的夜景和隐隐可见的长江,房号是1314,房间和新加坡的单人间差不多大,但价格只有十分之一。 步行几分钟到坚果,场内已有寥寥几人正在聊天,时间已是八点有余。本想着早点去抢前排,看到场内的人数以后发现根本不用担心。 暖场乐队我没听过,对他们的音乐也没有特别的感觉,四首音乐后,大幕缓缓落下,换月下尘星上场——我第一次见 livehouse 舞台还带幕布的。 开场曲我不熟悉,可能是他们尚未发布的曲目,后来乐队也说了,这次是AB歌单,会有新旧专辑乐曲轮换。第二首则是我再熟悉不过的《咽下温柔》,采样来自陈凯歌导演的电影《温柔地杀我》。这部电影是我分手后看的第一部电影,那段时间总觉得我就像那个负心的爱丽丝一样,竟能如此果决地提出散伙,虽然散伙的原因很复杂,究其根本就是我想结束这种让我痛苦的内耗(混合版视频在这里)。 后来的事实证明,这样结束内耗的方式并没能给我带来快乐,此后的很长一段时间我都沉浸在犹如丧妻之痛的孤苦之中。我开始一次次宽慰自己:走到这个局面,她也有错;事已至此,算我自作自受吧…… 期间演出的曲目有特别多我很熟悉的音乐,我很少会喜欢一个乐队的大部分音乐,甚至惘闻乐队打动我的也不过那么几首而已,所以在期待月下尘星演出的时候我总迫不及待搜他们其它的现场来看。 昨晚最后一首是《Missing under the moon》,乐队自己也译作《月亮下的思念》,这应该是月下尘星的作品中我循环次数最多的一首,封面来自网友与家人的合照。在B站看到月下在越位音乐节演出时,间奏的儿歌《一闪一闪亮晶晶》后加了一段吉他solo的《送别》,鼓手双手示意看大屏幕,字幕之后展示了很多网友和家人合影的照片(点击这里精准空降)。 那一刻我心中突然想到一个遗憾:上一次和家人合照还是二十几年前,那个时候要专门去照相馆拍,我还穿着开裆裤,手里拿着一个青涩的橙子,对这个世界一无所知。后来伯父家的大哥带回来一台胶卷相机,计划拍合照的那个下午,顾不得天气炎热,我们都换上了过年才会穿的新衣,结果却因为相机坏了而没能拍成。 如今我父亲已年过耳顺,加上他身体不好,白发一年比一年多,可能真的没多少年硬朗的光阴了;我母亲上一次拍出她很满意的照片时,她才26岁,而今她也时不时拍抖音,过度的美颜或许真能让她看到自己年轻时候的样子,只是再也回不去年轻的时光。 听到这一首歌时,我内心有一种莫名的酸楚,生离尚可平,死别的遗憾可能要更长的时间才能抹平。我期望,今年夏天争取也带上他们出去看一看祖国的大好河山,虽然他们大半生的足迹远远超过我的阅历,但总有一些经历无法用其它的事件来填平,死别的遗憾定会像一个难以抽离的沼泽,只能陷下去。 祝愿诸君家庭幸福,身体健康。

2025/6/21
articleCard.readMore

悬命

“叮——” 老白掏出手机,解锁,黝黑的脸上瞬间晕开一阵笑意。他丢掉手中的美工刀,拇指在屏幕上飞快地跳舞,锁屏,手机揣回兜里。弯腰拾起美工刀,“唰”地一下划开纸箱上的胶带。 老白姓白,肤色却黝黑发亮,尤其在烈日炎炎的夏季。顶着一头极短的头发,像刚还俗不久,新茬才冒出头。 搭档老李,也是他的师父。两年朝夕共事,师徒俩默契得如同一个人。通常一进客户家门,无需言语便分头行动。老白手脚麻利地拆解室外机包装,老李则熟练地给室内机接驳铜管,再一圈圈缠上厚厚的保温胶带。 这边胶带刚缠妥,那边老白已稳稳提起沉重的室外机,碎步小跑到安装房间,轻轻放下,抬脚踩了上去。他抽出水平仪在墙上比划,另一只手将挂板按在墙上,然后两腿夹住水平仪,腾出手从裤兜里摸出手锤,取下咬在嘴角的钉子,“咚咚咚”几声脆响,挂板便牢牢钉在墙面上。 老李抱着室内机走来。老白抓起铜管的另一端,瞄准墙上预留的孔洞,用力往里推送。窗外大风呼啸,呜咽作响,孔洞里被风卷起的灰尘扑面而来,老白下意识地偏头眯紧双眼。 师徒俩并非完全不说话。老白一边奋力塞着有些发涩的铜管,一边提高嗓门问:“师父,按你们这儿的规矩,彩礼一般得多少才像样……再往我这边靠靠。”老李扛着内机,向前挪步回应。铜管塞进去大半时,老李也扛着内机,探脚踩上室外机。老白利落地踏上飘窗,将安全绳的挂钩往栏杆一扣,一手牢牢抓住窗框,一条腿探出窗外。狂风猛地灌进来,掀起他的T恤下摆,他只得腾出手,把衣角胡乱塞进裤腰里。 他没有回头,声音被风吹得有些飘忽,朝房间里喊:“绳子不够长!差一截!”老李扛着内机,目光盯向我:“愣着干啥?把挂钩解开!” 拉扯完铜管,老李将室内机挂上墙。接着他也爬上飘窗,依次将铲刀、冲击钻、膨胀螺丝和外机支架一件件递到老白手中。 一切准备就绪。老李深吸一口气,搬起沉重的室外机,稳稳当当地搁在窗架上,一手死死扶住,等着老白接过去。师徒俩四只黝黑的手臂同时发力,肌肉虬结,青筋毕露,孔武有力。设备稳稳当当固定好,老李打开真空泵,把抽气管递给老白。随后,他从沾满灰尘的工作服口袋里,摸出一包皱巴巴的“软朝”,抽出一根递向窗外。“啪嗒”一声,又一声,两人隔着一堵冰冷的墙,闲聊起来。 “听你这意思,终于打算把婚事定下来了?”老李吐出一口烟,问道。 “唉,再等等吧,手头还得再攒攒……”不知是风声太大,还是心里发虚,老白的声音越说越小,渐渐被风声盖过。 “要我说啊,你娃儿也该成家了!”老李把烟灰抖落到窗外,烟灰在风中被撕碎,他像是教训自己儿子一样,“你都30岁了哟!” “没个像样的窝,咋成家?人家爹妈不就为这个一直不点头嘛!师父你也晓得,我去年被一帮孙子骗了……” 老李似乎有些急了,嗓门也提高了些:“那你就让人家姑娘干等着,再等四五年?到时候她都跟你现在一般大了!” 老白没再吭声,老李见状也不再言语,把烟头丢进旁边的一次性水杯里。“滋啦”一声,烟头冒出最后一缕青烟,随即像一具尸体一样浮在了水面上。 “师父,”老白的声音忽然从窗外传来,带着一种下定决心的坚定,“我想好了!现在手里有十四万,今年拼一把,加上明年夏天旺季,加把劲,凑够二十万,就去付个首付,把房子定下来,然后……就去求婚!” “当真?”老李猛地转过头,一脸惊喜,皱纹都舒展开了,连声说好。 “骗你干啥?”老白的声音也轻快起来,“你猜我为啥总抢着干这安外机的活儿?” “哼,我还不晓得你那点心思?”老李嘿嘿一笑,带着洞悉一切的慈爱,“不就是想多挣点高空作业费嘛!行!师父就等着明年喝你们的喜酒!” “好嘞!”老白爽朗地应着,片刻后,递进来一个装过膨胀螺丝的塑料包装,里面装着烟灰和踩瘪的烟头。老李接过来,顺手也丢进那个水杯,利落地收拾真空泵和其他工具,语气轻松:“下班咯~” 老白一只手紧紧抓住窗框,准备把探在外面的腿收回来。就在他重心转移时,脚下猛地一滑!那只抓着窗框的手,因为骤然失去平衡和巨大的下坠力,瞬间脱开了…… 医院走廊。老李看到婉儿匆匆跑来,灌了铅一样的脑袋怎么也抬不起来,声音嘶哑:“婉儿,对不住……” “李师傅,开玩笑的对不对?”她的声音有些艰难和无助,“半小时前我才给他发微信,告诉他我爸妈同意了我俩的婚事,他还回复说安装完这一台空调就回来……” 老李缓缓地抬起头,盯着婉儿,愣着没有说话。

2025/6/2
articleCard.readMore

不太完美但值得的扫地机器人:Mova P50

前言 在去年下旬的时候我就想买一台扫地机器人了,贺某听了我的想法后,因为他家请了阿姨做清洁,就很大方的把他买来吃灰的追觅 s10 拿给我体验,让我体验后再决定买不买。 独居的我并没有太多生活垃圾,地板上更多的是对面施工带来的灰尘。而我的工作越来越忙,周末只想躺平睡大觉,所以我这样的懒人真的很需要一台扫地机器人。贺某开玩笑跟我说,1800 把那台二手扫地机器人卖给我,考虑到这个价格可以买台全新并且升配的扫地机,我便真的开始琢磨买新机了。 对比 我预算大约1800。由于追觅 s10 可以接入米家,动动嘴就能让小爱同学派它去做清洁,于是对比之初,我很大比重上考虑来了要不要买小米的扫地机器人。但后来我不再执着追求米家生态,更何况杨傻跟我说,米家扫地机器人是追觅代工的,米家的这一代即是追觅的上一代。后来他给我推荐了追觅的子品牌 Mova,相对追觅来说性价比更高,于是我的购物车里就出现了好几款扫地机器人。 小米H40小米M30s追觅S30铂金版Mova P50甄选 最大吸力6000Pa7300Pa11000Pa19000Pa 边角清洁扭扭擦机械臂机械臂双机械臂 割毛主刷是是是是 基站自清洁无无有有 实时视频无无有有 语音助手小爱同学小爱同学自带小度和自带 国补价格1486182617002299 其它备注抖音专供版不自带割毛主刷 以上表格对比了部分不同数据,有部分是我比较看重的,比如“机械臂”,即在边角处,边刷和拖布可以伸展出去清洁,无疑比反复扭动的款式清洁更彻底。此外,另一种更高级的滚筒拖布基本用在更贵的旗舰机上,所以没考虑。 其中,小米的两款相对比较老了,追觅S30铂金版虽然之前是抖音专供,我没选择它的原因是去年双12价格只要1500。最终我选择了 Mova P50甄选,国补386.77,Plus 立减10.56,以旧换新补贴50(换的是一个不值钱的桌面加湿器),实付2191.67。5月16日下单返300元 E 卡(虽然是收货一个月后返),相当于到手1891.67。 使用体验 建图 开箱安装后,充了一半多的电我便让它去建图了。建图效率还是比较高,区域识别也比较准确,但是我的厨房和两个卫生间有对它而言比较高的坎,所以只能我手动帮助它建图。 因为主卧目前闲置,堆放了一些杂物,所以主卧建图不完整;其中一个卫生间做了干湿分离,它更爬不过那个坎,所以建图也不完整。考虑到我需要全自动化(除了接水倒水)使用它,所以我给厨房和卫生间添加了虚拟墙,以免它下去做清洁后上不来。 今天我卖掉了主卧堆放的杂物,它在主卧识别出了腾出来的区域,但地图上并未和主卧合并,也无法手动操作,更不能单独房间重新建图。而此前通过实时视频操控它去待建图区域(未在清洁时)它是会自动新增建图的。 此外,家具识别除了衣柜(要手动添加),沙发、床、茶几、床头柜和餐桌椅等家具它都能正确识别。 扫拖 到货刚好一周,我让它扫拖了全屋两次。第一次是在傍晚,它有自动照明灯,所以天黑以后基本就开着前照灯在房间里跑来跑去,第二次扫拖则是在白天。 和追觅 s10 一样,它的扫拖逻辑也是先四周,然后在中间反复来往进行清洁,但从用时来看,扫拖效率比 s10 更高一点。 然而今天我发现了一个暂时无法直接解决的问题。主卧空余出来的区域它会清洁,但离空余区域墙面大约 50 厘米的地方它则没有清洁,反复尝试了好几次,在客服的建议下临时使用“加扫”功能指定它去完成了。 加扫区域和我狭长的阳台一样,它通过反复清洁这种更加细致的方式进行。但是依然可以看到有个别遗漏的部分: 整体来说,它的清洁完成度还不错,不算虚拟墙隔开的厨房和卫生间,它清理过的地方基本不用我再去二次清洁,并且人工很难清洁的床底和沙发底也可以交给它,基本上可以省下扫地和拖地的时间了。 语音 和追觅一样,Mova 也有自带的语音,并且还有个所谓的“Mova GPT”,即宣传在千帆大模型的加持下,可以更好地理解用户所说的话。但是实测,用语音控制它进行基本的操作外,它还是很蠢的。 比如我说:我觉得你要回去洗一下拖布然后重新清理一下主卧。它的应答是:好的,工作开始啦,请确认房间门已打开。事实上它根本不会回去重洗拖布——在 APP 上可以点击让它回洗拖布。 我问:为什么主卧的边缘你不扫呢?它应答:好的,我将不会去清洁主卧。我再问一次,它又回答:好的,进入自定义模式,准备去主卧扫地一次,请确认房间门已打开。 不过,它的应答速度还是很快,并且你说话的时候,它会转向你所在的位置。 基站自清洁 此前使用追觅 s10,几乎每次清洁后都要手动去清理基站底部洗拖布后留下的脏污,并且它在回到基站时会在坡道延长垫上和旁边留下一些灰尘。但是使用 mova 清洁两次后,基站和基站边缘依然比较干净,几乎不用自己额外去清理给它善后。 其它 由于不能接入米家,所以要使用它的 app——Movahome;它的避障能力还将就,在墙边基本不会碰到墙壁,在桌角边缘会伸出机械臂清洁,也不太会发生碰撞;在 app 上添加了窗帘后,清洁临近窗帘的地方时它也不会像追觅 s10 一样保守;在清洁地毯时,我设置了不带拖布,所以它在地毯上会加大吸力进行吸尘。 对了,收货七天后可以联系客服,他们赠送6个拖布,2个尘袋,2个滤网,2个边刷,4个主刷,1额割毛滚刷。 写在最后 今天偶然看到狗东的商品页写着,晚上八点到手价 16xx,其实就是1699,而商品不是采用降价,也不是赠送优惠券的方式,所以直接点击报价并不能成功。 我联系客服,表示我要新买一台,想参与秒杀活动,客服后来应该是临时改价到 1999了,叠加国补就是 1699元,看起来不是针对主动联系的用户改价,因为杨傻的结算页面就是1999。客服告知我可以了(价格改了),我点击申请保价又返了我540左右,相当于到手 1651 (有50的以旧换新补贴),后来价格很快就恢复到 2699了。 本以为要找客服拉扯很久,没想到报价还算比较顺利。这个价格买到这款机器,我觉得还是比较划算,除了电动窗帘,我想,扫地机器人应该就是可以真实给生活带来幸福感的另一个物品了。

2025/5/24
articleCard.readMore

没能走进心里的桃花源

去年五一的记忆在今年五一的时候突然被唤醒,只不过今年没有人能与我同行,我一时间也不知道该去哪里。 本来临时打算去桂林,俗话说“桂林山水甲天下”,牛马是属于自然的。然而因为票的问题,我又觉得有些匆忙,并且把五一假期整得支离破碎,遂弃之。但按不住心中想要出去走走的念头,于是搜索了附近区县。 得知我要去酉阳桃花源,贺某打破说“不好玩”,kevin 拍过龚滩古镇但没去桃花源,跟我说桃花源可能不是它喜欢的类型。但我还是把心一横,下定决心要出去挥霍,享受生活! 今天早上九点多出发,驱车两百多公里,到达桃花源景区时已是中午十二点有余。停好车,被告知要买接运车票,遂花了十块钱坐上了大巴。没多大一会就到达了酉州古城外,怪我没做攻略,其实可以自己把车开到这里来停。 顶着骄阳,懒得等免费观光车,随着人群步行进入酉州古城。跟去年去乐山苏稽古镇一样,大概全中国所有的古城都只是另一种形式的商业街。一路上来来往往的游客中,也有一些着苗族服饰的姑娘,踏着石板路,头上的装饰叮当作响。 快速走完酉州古城,终于来到桃花源的检票处。一进入桃花源,就觉得有一股幽幽凉意袭来。青山碧水,茅草瓦屋,林尽水源,便得一山。虽然时不时能见到公告牌上引用着陶渊明的文字,但以文造景,很多地方并不相匹配。步入小口,并不像陶渊明所写“初极狭,才通人”,实际宽敞得多。路上有景点运营方安排的“免费照相”,挤过排队的人群,看见了迷你版的“良田、美池、桑竹之属”,没有平旷的土地,也没有俨然的屋舍。 我以为 AI 力推的太古洞在山口之上,登上去后才发现是石室藏书(没看到书)。原路返回,再顺着道路往前走,终于看到了各种亭、院,虽有历史文化加持,但游客们往来匆匆,志愿者低头玩手机,并未能感受到秦晋风俗,也没产生“今是何世”的感慨。 继续上行,爬过狭长的石梯,终于到了太古洞口。初进洞,一股股凉风拂面而来,午后的炎热被拂去了许多。走进洞内,五光十色,有些地方能看到成群结队的石钟乳,大多数地方则是嶙峋的“怪石”,确实给我少许的新鲜之感。但约三千米的洞内,多走一步也只是多一次见到重复的景致,若为乘凉,洞内确实为一个好去处,若想看到更多奇观,恐怕会令你失望。 实不相瞒,洞内也适合小情侣约会徒步,昏暗的灯光,狭长的走廊,凉爽的空气,两人手牵手或者肩并肩走一走也是很不错的。可这却苦了我这种想要尽快走出去的单身狗,于是只得鼓起勇气说一句“你好,借过一下”。 距离终点500米左右,又一阵凉风吹袭,却没有了最开始的那种惬意,此时只有饥饿和疲惫的感觉。两旁有一些展示酉阳风光或商业宣传的灯箱,因为我没做攻略,也不知道画中的美景位于何处。走出太古洞,发现游客集散中心和停车场都在附近,难怪工作人员说回程不用再次买票。 坐在车里的时候已是下午四点,我又开始纠结要不要退掉订好的住宿。不退吧,好像确实没什么好玩的地方;退吧,又觉得百里迢迢赶来只看了一个与我心中的桃花源相去甚远的景点不甘心。犹豫再三,或许及时止损才是更好的选择。在转盘处,我没有选择开往酉阳县城,而是转头上了高速。 一路上又觉得不甘,打算看看顺路的风景,比如去年单位团建我没去的濯水古镇。改变导航目的地,下高速进入濯水古镇时,感觉水上长廊确有一番风味。可惜车满为患,我只能一直开一直开,在309过道上飞驰了一会,才发现濯水也已离我远去,一路上成荫的绿树也不足给我以安慰——那就回去罢! 在黑溪服务区看到平常四元一碗的素小面居然能卖15元,吃着十元一碗的凉面时,我好像突然又释怀了。此行我大多数时间都在车上,飞驰在无聊的高速公路。酉阳曾经打过的广告说:世界上只有两个桃花源,一个在重庆酉阳,一个在您心中。或许我心中没有真正的理想国,所以即使到了桃花源,也不知道它在我心中应该是什么样子。 但是走这一趟,见大千世界,见芸芸众生,或许已经足够了。

2025/5/2
articleCard.readMore

自托管 Bitwarden

起因 使用浏览器保存密码,是我十年以来从使用傲游浏览器开始的习惯。得益于导出和导入的便捷,我换过很多浏览器,这些密码依然被完整的迁移到了我现在使用的 edge 浏览器上,且 edge 安卓版也支持作为密码管理器给应用填充密码,至此我都没有更换密码管理器的想法。 前阵子有博主给我推荐了 keepass,加上浏览器保存的四百多个密码中绝大多数使用的同一个密码,一旦泄露一个,被撞库的后果不堪设想,于是我有了更换密码管理器,且使用这玩意生成复杂密码的念头。 但是阴差阳错,keepass 太丑,我的服务器又可以一键部署 bitwarden,所以我最终选择了后者。 使用官方服务 一开始我并不是很愿意自己托管数据,一方面是 bitwarden 的官方服务够用,且一定程度够安全,自托管可能会面临更多的维护和容灾时间成本,所以我注册了官方的账户。 登陆后,我从 edge 导出了保存的密码——虽然需要输入系统密码,但是如柚子所言,浏览器保存的数据是很容易被导出或窃取的。导出完毕,我便删掉了浏览器保存的密码数据,决心使用 bitwarden 一条路走到黑。 起先体验还不错,但是没多久我就遇到了一个问题。在单位电脑上为某网站创建的账户使用了 bitwarden 生成的复杂密码,并且保存在了该应用中。而在家中的电脑上想自动填充时,却发现浏览器插件提示没有填充项目,即使我在本地一再点了同步密码库。 此时我意识到很可能是在单位时,该账户密码并未成功被同步到 bitwarden 的云端。 因此,我决心自部署该项目。 自部署和托管 在 1panel 中一键部署 bitwarden 是非常轻松的一件事,让我踩坑的点在于后续的配置中。 根据官方文档和碎月的建议,我决定使用域名的子目录来反向代理该服务,一定程度上减少它被恶意扫描和爆破的风险。理论上使用子目录反代很简单,只需要添加一条环境变量,在反代中添加该路径即可。 我的蠢问题 但问题来了:1.环境变量没有生效,2.反代只支持添加域名但不能包含路径。 针对问题2,我和碎月进行了较长的辩(嘴)论(硬)。我认为,一个域名都已经解析到目录 A 了,难道还能反代到目录 B 吗? 即,example.com对应网站的目录是 /opt/www/sites/,bitwarden 安装的路径是 opt/docker/bitwarden/,那么example.com/bit/是无法解析到后者的。还好碎月有耐心,让我明白了只需要在已解析域名的反向代理中添加前端请求路径和后端代理地址即可。 问题2解决了,问题1困扰了我好久。我添加的三个环境变量如下: # 指定域名和子目录 DOMAIN=https://example.com/bit # 禁用注册 SIGNUPS_ALLOWED=false # 禁用邀请 INVITATIONS_ALLOWED=false 我首先在该服务目录下的 .env 中写入环境变量,重启服务,没生效; 在 docker-compose.yml 中硬写变量再重启,也没生效,碎月也不知道何故,为此,我还去 1panel 的项目中提了一个 issue (丢脸)。1panel 官方工作人员回复了我,并确认该情况不是 bug。在我多次尝试后发现了问题所在:修改 docker-compose.yml后我没有点重建!!! 不爱使用 docker 的我,最终为自己的无知感到了羞愧。 避坑 由于在应用商店更新应用会导致非持久化目录下的文件丢失(或覆写),所以我一直在考虑把 .env 添加到持久化目录中,在 docker-compose.yml里指定路径,还是把环境变量硬写在 docker-compose.yml里,最终我选择了后者。 为此,我和 deepseek 之间也有一段小小的插曲,因为允许它说脏话,所以我被它骂了,虽然后来它服软——因为我的环境变量里并不包含重要的敏感信息。 因为升级时可以勾选自定义docker-compose.yml,所以把环境变量写在这里要方便得多。 备份 虽然服务器已经稳定运行好几年了,我时不时会添加快照,但把鸡蛋放在同一个篮子里并非明智之举,所以我通过 1panle 的定时任务每天都会把 bitwarden 的数据同步到 onedrive 中,以免哪天需要恢复。如果你也选择自托管,我强烈建议使用脚本每天备份数据! 体验 自部署的服务无论是增删还是同步都超级方便快捷,除了保存网站或应用的登陆密码之外,我终于把此前明文写在 onenote 中的银行登录密码给迁移到了 bitwarden 的“备注”功能之中。 但是体验也有不那么好的点,在安卓端或浏览器插件中无法批量管理密码(可能是出于安全),只能在服务端的网页上批量操作。此外,在安卓端的自动填充有时会有延迟,比如在浏览器中点好几次都不会及时显示自动填充,在 APP 上创建密码也不会及时弹窗询问是否保存。但大体上使用没什么问题。 写在最后 自托管 bitwarden 让我尝到了甜头,于是最近这些天我在折腾另一件让我苦恼的事,甚至今天水这一篇文也是为了后面的记录做铺垫。 最近我的 onenote 频繁闪退(其实也不算闪退,有退出动画那样时不时自动关闭)。为此,我决定找一个平替,期间尝试了包括但不限于知名的 notion、obsidian、joplin,以及 google play 上的很多如 notesnook、anytype、standard notes、appflowy、silentnotes等等几十款笔记应用,没有一个近乎完美符合我的需求。 需求如下:免费或者开源,非国产,多端同步,支持自托管或加密同步到如 onedrive 或 webdav,支持单篇笔记加密,界面好看不臃肿,支持剪藏更好。下一篇再来详细谈谈我的简单评测。

2025/4/17
articleCard.readMore

孤独的杰永远长不大

见我走进来,杰仿佛被定格了一般,右手攥着白毛巾,左手握着酒杯,愣了好一会才继续。酒杯搁在吧台的声音清脆悦耳,他冷冷地问了一句:“你怎么来了?” 我冲他强笑,没有搭话,径直在他面前坐下来。他转身取出一支啤酒,揭开盖子,摆在我面前,然后又自顾自擦起酒杯。 “半年了,杰。” 听见我开口,他又停下手里的动作,盯着我,喉结滚动,脸上晕开一阵委屈的神情。他轻轻给了我一拳,像个小女生一样:“你还知道半年了啊!” “快乐吗,最近?” 他又放下酒杯,给自己开了一瓶啤酒,坐下来,反问我:“你觉得呢?” 要不是这么多年的相处,我断然无法接受现在这种有些暧昧的气氛。曾经我有过杰终于长大的错觉,可更多时候他的反应让我怀疑,孤独的杰是不是永远也长不大。没有联系的半年,像流水一样逝去,哗哗啦啦,带走了此前漫长的梦境。这半年我开始适应新的工作环境,开始尝试一些新鲜的事情,开始有真正想要走出去看看这个世界的念头,在我的三十岁,也是杰的三十岁。可我对他这半年的煎熬一无所知。 即使他没说,鼠没说,我也知道,像他这么拧巴的人,一定过得很辛苦。 “我去过她的婚礼。”他咽下酒,讲起这半年发生的事。 去年国庆节假期,他的前任真的结婚了。得知这个消息之前,他就从一直舍不得删掉的她的微信签名里看到三个字:好好爱。她终于有新的人了,他这样想。别人宛转告诉他,她要结婚了,杰也决定开始新生活的心又开始动摇起来。后来他在酒店的门口看见了前任和新郎官的婚纱照,两个人都笑得很灿烂,简直是郎才女貌。杰很想进去看看婚礼仪式,又害怕碰到前任的父母,在门口踌躇的时候,新郎父亲胸前戴着红花走过来搭讪,他又灰溜溜地走了。没有写份子,没有喝喜酒,也没有见到她最美的那一面。 杰回家后捂着被子睡了两三天,一睡醒脑海里就是种种回忆,然后又哭,哭得喘不上气的时候,再点燃一支烟,努力让自己心情平复下来。 “人总要和过去和解的不是吗?” 他若有所思地点点头,随即可能觉得不对:“同自己和解吧?” “杰,我也非常理解你……”我低下头,脑海里挥之不去的过往又像被快放的电影一样不停闪过,“那时候我不应该那样绝情的跟你说话,我知道你很难受……我知道你也跟我一样在上班的时候忍不住会想到以前,会忍不住想哭,会对一切都失去兴趣。但是我们是大人了,总要跨过这道坎。小孩子才有人帮忙收拾烂摊子,我们没有。” 杰的眼里闪过一丝落寞,本就黯淡的瞳孔,再也找不到少年时的那种光芒。他或许有意岔开沉重的话题,又问我怎么突然来找他。 “鼠跟我谈起了你。”我没有说谎,但这并不是唯一的理由。我想,我总不能就因为这事就失去多年以来每个夏天都和我一起喝酒聊天的朋友,更何况,他那么像我。 “鼠也跟我谈起了你。”他咧嘴一笑。看着他的脸,我想起每次过人脸识别门禁的时候,我就越发觉得自己真的开始变老了,而我二十四五岁的时候,还天真的以为自己能一直保持那副模样永远不会变得沧桑。现在我们俩都像在沼泽中挣扎最终幸存下来的人一样,浑身都是泥泞和密密麻麻的伤痕。 杰会开始他的新生活吗,我不知道。或许像鼠曾经引用的加缪的那句话一样,生活无所谓新旧,无论怎样的方式,都是这一生的必经之路,只管去经历,不要再期待结果。

2025/4/6
articleCard.readMore

腾讯云原生开发自动化部署Hexo

CNB 简介 前阵子偶然在雨月空间站了解到腾讯出了一个云原生构建项目 CNB,一开始以为只是另一个国产的 gitee,但是深入体验后才发现它比半死不活的 gitee 高明得很多,非常接近 github。借用评论区的简要概括:云原生开发是 github codespace,云原生构建是 github actions,制品库是 github registry。 CNB 还是很大方地提供了免费额度,详情见云原生构建定价,实际云开发使用体验也非常不错。自从我换电信宽带后,基本无法直接向 github 推代码,既然如此,那我是不是也可以将我的博客自动化迁移到 CNB 上呢? CNB 自动化部署hexo流程 必要步骤 1.注册一个 CNB 的账号,目前只支持使用微信登陆; 2.创建一个组织,实测非常见字符可以直接创建,但是短字符或常用字符需要域名验证。因为支持 .cool 域名验证,所以我创建了组织“hin”; 3.创建仓库,和 github 一样,你可以创建公开和私有仓库,此外,github 中的私钥等环境变量在 CNB 中得通过创建秘钥仓库来实现; 4.在这里创建访问令牌,以便拉取和推送代码,场景和权限范围还是非常细致的。特别提醒:记得保存生成的令牌! 创建 hexo 仓库 如果你要推送 hexo 博客到腾讯云 cos,那么你可以使用 hexo-cos-demo 这个模板;如果你要推送到自己的服务器,则可以使用 hexo-rsync-remote这个模板。这两个模板都自带云原生开发环境,可以一键上手。 起初考虑到我的 hexo 以及主题版本都太低,至少有两年没更新了,所以我选择了创建空白仓库,复制原 github 仓库文件和代码,参考案例编写环境。 强烈建议:创建私密仓库,以免配置文件中的一些密钥泄露!!! 仓库根目录创建.ide/Dockerfile文件,参考内容如下: # 帮助文档地址: https://docs.cnb.cool/zh/vscode/quick-start.html # .ide/Dockerfile,node 版本可自定义 FROM node:18 # 设置软件源 RUN npm config set registry https://mirrors.cloud.tencent.com/npm/ # 以及按需安装其他软件 # RUN apt-get update && apt-get install -y git # 安装 code-server 和 vscode 常用插件 RUN curl -fsSL https://code-server.dev/install.sh | sh \ && code-server --install-extension redhat.vscode-yaml \ && code-server --install-extension dbaeumer.vscode-eslint \ && code-server --install-extension eamodio.gitlens \ && code-server --install-extension tencent-cloud.coding-copilot \ && echo done # 安装 ssh 服务,用于支持 VSCode 客户端通过 Remote-SSH 访问开发环境 RUN apt-get update && apt-get install -y wget unzip openssh-server # 指定字符集支持命令行输入中文(根据需要选择字符集) ENV LANG C.UTF-8 ENV LANGUAGE C.UTF-8 # 安装环境依赖,便于云原生开发可以调试 RUN npm install #安装仓库内 package.json 的依赖 RUN npm install -g hexo-server RUN npm install -g hexo-cli 推送 hexo 到仓库 拉取和推送项目的操作和使用 github 一样,不再赘述。在第一次拉取私密仓库或者推送时,需要登陆,在登陆框填写此前创建的令牌即可。 我复制了此前 hexo 文件夹下的 source、themes 等文件夹,以及 _config.yml、package.json 等文件,然后 git push到仓库。 点击右上角的橙色“云原生开发”,很快就会创建好环境,可以选择使用 WebIDE,也可以使用 VSCode 等 IDE 打开。为了方便,我就直接选择了网页版的 IDE。 打开网页版的 IDE 就可以在网页上使用 vscode 进行代码编写、拉取和推送等操作了。IDE 自带了腾讯的代码助手,但是我没使用过它。 和 github codespace 一样,你可以直接在网页版 IDE 中使用 hexo s这样的命令来在线运行和调试。 此外,建议你使用子模块的方式引入 hexo 主题,以便于后续主题的更新和修改。和在 github 一样,在当前仓库创建 .gitmodules 文件即可,内容参考: [submodule "themes/butterfly"] path = themes/butterfly url = https://github.com/yourname/hexo-theme.git branch = master 创建密钥仓库 在网页 IDE 中测试没有问题后,即可开始下一步了。 新建仓库,类型选择密钥仓库,参考文档在仓库里创建一个env.yml文件,内容参考如下: # 密钥仓库 env.yml RSYNC_KEY: | -----BEGIN OPENSSH PRIVATE KEY----- b3BlbnNzaC1rABAAABlwAAAAdzc2gtcn NhAAAAfdsghr/tUCVZVy4w5Clrs1Jgwq -----END OPENSSH PRIVATE KEY----- RSYNC_USER: root # 声明指定镜像的插件任务能引用该配置文件 allow_images: - tencentcom/rsync:latest # 声明指定仓库的流水线能引用该配置文件 allow_slugs: - hin/hexo 详细的参数说明参考官方的 rsync 文档。此外,一定要记得粘贴私钥内容有两个要点: 1.在 yml 中,多行内容要用|来表明; 2.由于 yml 对格式非常敏感,所以私钥的每一行都需要缩进两个空格而不是 Tab。 一开始我没注意到第二点,导致尝试推送静态文件到服务器时登陆失败,虽然构建日志中也提供满血版 deepseek 帮忙分析日志,但这也为我明明格式正确却无法连接到服务器埋下了另一个伏笔。 创建自动化工作流 在 hexo 仓库(不是密钥仓库)中创建一个名为 .cnb.yml的文件,它的作用和 .github/workflows/main.yml是一样的,写法上稍有不同,参考代码如下: main: push: #声明构建环境:https://docs.cnb.cool/zh/ - docker: image: node:18 #volumes缓存:https://docs.cnb.cool/zh/grammar/pipeline.html#volumes volumes: - /root/.npm:cow stages: #安装依赖和 hexo - name: npm install script: npm install - name: install hexo script: npm install -g hexo-cli - name: build script: hexo generate # https://cnb.cool/cnb/plugins/tencentcom/rsync - name: rsync 上传到服务器 image: tencentcom/rsync # 引用密钥仓库配置文件 # 导入环境变量:https://docs.cnb.cool/zh/env.html#dao-ru-huan-jing-bian-liang imports: https://cnb.cool/yourgroup/env/-/blob/main/env.yml settings: user: $RSYNC_USER key: $RSYNC_KEY port: 22 hosts: - 1.2.3.4 # 相对路径末尾带斜线表示同步文件夹里面的内容。 # 不带斜线表示通过这个目录 source: ./public/ target: /www/hexo prescript: - echo "prescript" - ls /www/hexo script: - echo "after script" - ls /www/hexo 到此我们要做的事已经基本完成。当这个文件创建之后,云原生构建便会自动开始。起初,我的每一次构建都在上传到服务器这一步失败了,原因是服务器拒绝了连接。后来查看服务器日志才发现,因为之前失败次数达到设定的值,IP 已经被 fail2ban 给拉黑了。 写在最后 其实这个过程我尝试并失败过很多次,比如 hexo s 的时候发现有标签报错呀,我一直很纳闷,明明主题里有这个标签。后来偶然发现,我的主题是以子模块的方式引入的,在 CNB 仓库里没有声明子模块,导致浪费了很多时间。 其实自从腾讯云的 webify 基本没什么存在感之后,我对 CNB 的期待也不会太高,不知道哪一天这个项目也会被腾讯给淡忘。但是就目前来说,拉取和推送代码快速,云端 IDE 方便,配置给得也很大方,后面试试用来编译 openwrt 的固件都是值得一试的,我们切用且珍惜吧。

2025/4/4
articleCard.readMore