TeoSeo v1.3.0:GEO 优化、主题适配检测与自动更新修复
本文要点 TeoSeo v1.3.0 新增 GEO 优化:meta/og:description 清理、BreadcrumbList 结构化数据、文章顶部「本文要点」折叠块保护; 新增 GEO 开关(默认关闭,手动开启)与主题适配检测弹窗(非 Inaline 主题勾选开启时会提示,可前往博客留言请求适配); 新增 Inaline 主题适配补丁(inaline-patch/),解决 details.
本文要点 TeoSeo v1.3.0 新增 GEO 优化:meta/og:description 清理、BreadcrumbList 结构化数据、文章顶部「本文要点」折叠块保护; 新增 GEO 开关(默认关闭,手动开启)与主题适配检测弹窗(非 Inaline 主题勾选开启时会提示,可前往博客留言请求适配); 新增 Inaline 主题适配补丁(inaline-patch/),解决 details.
本文要点 大页解决的是 TLB 查表次数:x86-64 默认页 4KiB,1GiB 工作集就是 26 万个页表项,TLB 装不下;换成 2MiB 大页只剩 512 项 透明大页由三个文件共同决定:enabled(always/madvise/never)、defrag(内核肯不肯为它做内存规整)、shmemenabled(共享内存那一侧)。这台机器是 madvise + madvise +...
本文要点 SysRq 有两条触发路径:控制台键盘上的 Alt+SysRq+<字母>,以及文件 /proc/sysrq-trigger(root 写一个字母进去即可)。后者不需要键盘、不需要控制台,是脚本和本文演示用的方式 /proc/sys/kernel/sysrq 的值是位掩码,不是开关:本文这台机器是 176 = 16(sync) + 32(remount-ro) +...
本文要点 Linux 选路不是「查一张路由表」,而是先查规则、再查表:内核的 RPDB(Routing Policy Database)按优先级依次匹配 ip rule,命中哪条,就去它指定的表里找路由 系统默认只装三条规则:0: local、32766: main、32767: default。平时敲 ip route 看到的是 main 表,换个源地址就可能查到别的表去 加一条 ip...
本文要点 /dev 下的节点不是 udev 建出来的,是内核建的:/dev 是内核挂的 devtmpfs,设备一注册节点就出现,此时的权限是内核的默认值(brw------- root root,0600) udev(systemd-udevd)随后接到内核发来的 uevent,按 /usr/lib/udev/rules.d + /etc/udev/rules.d...
本文要点 同一份 16MiB 的日志语料,四种工具的产物差了 4.5 倍:gzip -9 压到 12.6%、bzip2 -9 6.1%、zstd -19 4.8%、xz -6 2.8%——但耗时也从 gzip 的 0.85 秒一路涨到 zstd -19 的 37 秒、xz -6 的 15 秒 ⚠️ 三个工具的「ratio」列口径完全不同,直接抄进表格会出错:gzip -l...
本文要点 服务能跑起来只是及格线:在 Ubuntu 22.04 上随手写一个 Type=oneshot 单元,systemd-analyze security 给的评分就是 9.6 UNSAFE——和 cron、dbus、dmesg 这些系统自带服务同一个档次...
本文要点 同一个文件,ls -lh 说 512M、du -h 说 0,两个数都是对的:前者读的是 inode 里的逻辑长度,后者数的是真正分配出去的块。差距来自空洞(hole)——稀疏文件的核心概念 两种「造大文件」的手法是反的:truncate -s 512M 只改长度、一个块都不占(实测 stat 的 blocks=0、filefrag 报 0 extents...
本文要点 Ubuntu 上日志是两段接力:应用写 /dev/log(已被 journald 接管,实际指向 /run/systemd/journal/dev-log),journald 再通过 /run/systemd/journal/syslog 这个 socket 转给 rsyslog,最后由 rsyslog 按规则写进 /var/log/ 规则的核心语法只有...
本文要点 script 录的不是「命令的输出」,而是整个伪终端会话:键盘输入、屏幕输出、控制码、提示符、交互式程序的界面全都在里面——这是 cmd | tee log 做不到的 录制产物有固定骨架:开头 Script started on …、结尾 Script done on … [COMMANDEXITCODE="0"],中间每行以 ^M(CRLF)结尾;-q...