本文从 root 密码的安全边界出发,讲清 Linux 用户身份、su 与 sudo、认证与授权、sudoers 权限模型,并结合 RHEL、Ubuntu、Debian 的差异,总结最小权限配置、验证和生产实践
Proxmox VE 9.2 深度教学|存储篇
本文以 PVE 9.2 为例,讲解四块 SSD 的 ZFS 镜像池规划与创建,梳理存储后端和内容类型的区别,通过独立数据集存放 ISO,缓解系统盘空间压力,并演示将运行中的虚拟机磁盘在线迁移至新存储的操作流程与注意事项。
Proxmox VE 9.2 深度教学|安装篇
以一台 Dell R740 为例,完整走一遍 Proxmox VE 9.2 安装向导。六屏配置里只有三处装完不能改:磁盘与文件系统、主机名、管理网卡。本文按能改和不能改重新分组,并补上向导之前就该做完的 RAID 卡模式决策。
Go 重难点拆解|errors.Is、errors.As 与 errors.AsType 的分工
错误经 %w 包装后,== 和类型断言都会失效。本文按读者的疑问路径拆解 errors.Is、errors.As 与 Go 1.26 新增的 errors.AsType:三者各自交付什么、为什么 errors.As 的第二个参数要传地址、两个运行时陷阱,以及如何选择。
广播风暴的根源是一个永远不会“死”的帧
双上联为什么会引发广播风暴?从一条闭合的二层转发路径出发,跟着一个帧看懂泛洪、复制放大、MAC 漂移,以及它们如何影响正常通信。
LVM 的基本结构与常用命令
本文从 PV、VG、LV 的归属关系讲起,介绍 PE、LE 与容量计算,结合命令输出说明各层空间的分配情况,解释 VG 空闲空间与文件系统可用空间的区别,并梳理新盘加入、逻辑卷扩容和文件系统扩展的步骤,便于日常查询和操作。
Go 错误处理演进:从 1.0 到 1.26
从 Go 1.0 到 1.26,错误处理的内核始终是错误是值。梳理五个演进阶段、一次被否决的语法提案,附最佳实践与速查表。
Go 的函数调用:从内存地址讲到栈帧
没有栈行不行?函数调用一定要靠栈来完成吗?从地址编号讲到 SP 的加减,用七个动作和九张图拆开一次函数调用:栈帧凭什么长成那个样子、返回地址存在哪、为什么偏移量能在编译期定死、闭包变量为什么留不住。
Linux 忘记密码怎么办:从原理到实战
从口令哈希与启动链认证时机讲清重置密码的原理,覆盖 Ubuntu、RHEL 7/8/9、openEuler、麒麟 V10 及云主机的完整操作,含 SELinux 标签、GRUB 默认口令等实测坑点。
同样的文件体积如何换来更清晰的 Word 和 PDF 截图
截图在 Word 里发糊,多半和压缩选项无关。本文讲清有效 ppi 换算、插入到导出的三次变换、PNG 与 JPEG 的取舍,并实测六种 PDF 导出路径。