<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Ubuntu on FXIO 技术博客</title><link>https://fxio.site/tags/ubuntu/</link><description>Recent content in Ubuntu on FXIO 技术博客</description><generator>Hugo -- 0.157.0</generator><language>zh-cn</language><lastBuildDate>Sun, 26 Jul 2026 22:30:00 +0800</lastBuildDate><atom:link href="https://fxio.site/tags/ubuntu/index.xml" rel="self" type="application/rss+xml"/><item><title>Ubuntu WireGuard 虚拟局域网配置：从零搭建安全隧道</title><link>https://fxio.site/posts/linux/ubuntu-wireguard-vpn-setup/</link><pubDate>Sun, 26 Jul 2026 22:30:00 +0800</pubDate><guid>https://fxio.site/posts/linux/ubuntu-wireguard-vpn-setup/</guid><description>手把手教你在 Ubuntu 上配置 WireGuard 虚拟局域网，实现安全的点对点连接。从原理到实战，避开所有坑。</description></item><item><title>PostgreSQL 16 → 18 官方升级实践（Ubuntu 24.04）</title><link>https://fxio.site/posts/sql/postgresql-16-upgrade-to-18/</link><pubDate>Sat, 25 Jul 2026 10:25:00 +0800</pubDate><guid>https://fxio.site/posts/sql/postgresql-16-upgrade-to-18/</guid><description>&lt;blockquote&gt;
&lt;p&gt;一次真实的升级记录。&lt;/p&gt;
&lt;p&gt;从 Ubuntu 默认 Cluster 管理模式，迁移到 PostgreSQL 官方推荐目录结构。&lt;/p&gt;
&lt;p&gt;全程使用 pg_upgrade，保留所有数据库，最终实现：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;PostgreSQL 18&lt;/li&gt;
&lt;li&gt;官方数据目录&lt;/li&gt;
&lt;li&gt;systemd 管理&lt;/li&gt;
&lt;li&gt;MacBook 远程访问&lt;/li&gt;
&lt;li&gt;完整踩坑记录&lt;/li&gt;
&lt;/ul&gt;
&lt;/blockquote&gt;
&lt;!-- more --&gt;
&lt;hr&gt;
&lt;h1 id="一为什么升级"&gt;一、为什么升级？&lt;/h1&gt;
&lt;p&gt;原环境：&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;项目&lt;/th&gt;
&lt;th&gt;版本&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Ubuntu&lt;/td&gt;
&lt;td&gt;24.04&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PostgreSQL&lt;/td&gt;
&lt;td&gt;16.14&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;数据目录&lt;/td&gt;
&lt;td&gt;/srv/data/db/postgres/16/main&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;希望升级到：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;PostgreSQL 18.4
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="postgresql-18-vs-16-关键改进"&gt;PostgreSQL 18 vs 16 关键改进&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;特性&lt;/th&gt;
&lt;th&gt;PostgreSQL 16&lt;/th&gt;
&lt;th&gt;PostgreSQL 18&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;增量备份&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;❌ 仅全量&lt;/td&gt;
&lt;td&gt;✅ pg_basebackup 支持增量，备份时间减少 50%+&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;逻辑复制&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;基础支持&lt;/td&gt;
&lt;td&gt;✅ 支持序列和大对象复制&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;并行查询&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;有限并行&lt;/td&gt;
&lt;td&gt;✅ 更多场景支持并行（VACUUM、CREATE INDEX）&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;JSON 处理&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;JSONB 基础&lt;/td&gt;
&lt;td&gt;✅ JSON_TABLE 增强，复杂查询更高效&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;SSD 优化&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;无特殊处理&lt;/td&gt;
&lt;td&gt;✅ &lt;strong&gt;强制 I/O 调度优化&lt;/strong&gt;（见下文）&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;连接池&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;需外部工具&lt;/td&gt;
&lt;td&gt;✅ 内置连接池改进&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="ssd-专项优化重要"&gt;SSD 专项优化（重要）&lt;/h2&gt;
&lt;p&gt;PostgreSQL 18 对 NVMe/SSD 做了底层优化，这是升级的&lt;strong&gt;核心理由&lt;/strong&gt;：&lt;/p&gt;</description></item><item><title>旧主板 + 新 NVMe 的 I/O 问题排查</title><link>https://fxio.site/posts/linux/ubuntu-nvme-post/</link><pubDate>Sun, 07 Dec 2025 00:00:00 +0000</pubDate><guid>https://fxio.site/posts/linux/ubuntu-nvme-post/</guid><description>&lt;h1 id="m2硬盘安装ubuntu出现io错误-dmar-fault的排查记录含解决方案"&gt;m2硬盘安装ubuntu出现I/O错误: DMAR fault的排查记录（含解决方案）&lt;/h1&gt;
&lt;p&gt;在旧台式机安装Ubuntu24.04 的过程中，我遇到一个非常棘手的问题：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;第一次安装失败; 安装过程中, 提示io错误&lt;/li&gt;
&lt;li&gt;关机后, 再次安装, 安装成功&lt;/li&gt;
&lt;li&gt;进入系统后, 硬盘灯持续规律闪烁, 频繁出现 I/O 错误、系统卡顿、硬盘灯间隔性闪烁、并伴随 DMAR/IOMMU 报错&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;最开始遇到这个问题, 我以为是硬盘问题, 更换为 sata硬盘后, 问题消失。似乎从某种程序上证明是此硬盘问题;
随后此”坏硬盘“, 就安静的放在角落;
今天整理物品, 发现这块硬盘, 突然想到, 让ai帮忙分析分析硬盘是什么原因导致的故障, 以后如何避免买到类似的硬盘;&lt;/p&gt;
&lt;p&gt;这篇文章记录整个排查过程，希望给未来遇到类似问题的人提供一个可参考的解决思路。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="1-硬件与环境背景"&gt;1. 硬件与环境背景&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;主板：Gigabyte Z97X-UD3H（2014年）&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CPU：Intel i7-4790K（Haswell）&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;NVMe：YMTC PC300 512GB（支持 HMB，NVMe1.4）&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;系统：Ubuntu 24.04&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;NVMe 安装在主析的m2硬盘槽位&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;这是典型的“老主板 + 新 NVMe 控制器”的组合，在 Linux 下非常容易触发兼容性问题。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="2-问题现象"&gt;2. 问题现象&lt;/h2&gt;
&lt;h3 id="1安装-ubuntu-时随机-io-错误"&gt;（1）安装 Ubuntu 时随机 I/O 错误&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;系统安装过程中文件复制中断&lt;/li&gt;
&lt;li&gt;安装流程偶尔直接失败&lt;/li&gt;
&lt;li&gt;重试偶尔能安装成功&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id="2安装成功后进入系统-硬盘灯持续规律闪烁"&gt;（2）安装成功后,进入系统, 硬盘灯持续规律闪烁&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;开机后系统明显不顺畅。&lt;/li&gt;
&lt;li&gt;复制文件时，会出现卡顿, 此时硬盘灯一直有规律的闪烁;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id="3复制大文件如-ubuntuiso-6gb出现卡顿"&gt;（3）复制大文件（如 ubuntu.iso 6GB）出现卡顿&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;传输速度会突然降到零，直到系统无响应。&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id="4dmesg-出现-dmariommu-报错"&gt;（4）dmesg 出现 DMAR/IOMMU 报错&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;DMAR: DRHD: handling fault status reg &lt;span class="m"&gt;2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;DMAR: &lt;span class="o"&gt;[&lt;/span&gt;DMA Write&lt;span class="o"&gt;]&lt;/span&gt; Request device &lt;span class="o"&gt;[&lt;/span&gt;01:00.0&lt;span class="o"&gt;]&lt;/span&gt; fault addr ...
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;DMAR: write no_pasid
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="5-硬盘smart-检测无异常"&gt;(5) 硬盘smart 检测无异常&lt;/h3&gt;
&lt;p&gt;使用 smartctl 读取 NVMe 健康状态：
smartctl -x /dev/nvme0&lt;/p&gt;</description></item></channel></rss>