<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>云栖小记</title>
    <link>https://ae.xht.one/</link>
    <description>Recent content on 云栖小记</description>
    <generator>Hugo</generator>
    <language>zh-cn</language>
    <lastBuildDate>Mon, 09 Nov 2026 22:30:00 +0800</lastBuildDate>
    <atom:link href="https://ae.xht.one/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>十月观影与读书小结</title>
      <link>https://ae.xht.one/posts/october-life/</link>
      <pubDate>Mon, 09 Nov 2026 22:30:00 +0800</pubDate>
      <guid>https://ae.xht.one/posts/october-life/</guid>
      <description>&lt;p&gt;十月没怎么写技术笔记，时间大多花在看片和看书上，补个小结。&lt;/p&gt;&#xA;&lt;p&gt;电影重看了两部老片，节奏慢下来的老电影反而越看越有味道。新片看了一部科幻，特效没得说，剧本中段有点垮，整体还是值得一看，具体名字就不写了，免得引战。&lt;/p&gt;&#xA;&lt;p&gt;书在读一本讲网络协议史的，写得意外地好读，那些今天看起来理所当然的设计，当年都是吵出来的。读到一半，最大的感受是：工程上的&amp;quot;优雅&amp;quot;往往是约束逼出来的，不是设计出来的。&lt;/p&gt;&#xA;&lt;p&gt;十一月的计划：把书读完，给博客补两篇欠了很久的笔记。flag 先立这儿。&lt;/p&gt;</description>
    </item>
    <item>
      <title>我的备份习惯：本地一份，云上一份</title>
      <link>https://ae.xht.one/posts/backup-habit/</link>
      <pubDate>Sun, 01 Nov 2026 20:50:00 +0800</pubDate>
      <guid>https://ae.xht.one/posts/backup-habit/</guid>
      <description>&lt;p&gt;上个月有块硬盘突然读不出来，虽然最后数据抢救回来了，还是惊出一身汗，顺手把备份流程重新整理了一遍。&lt;/p&gt;&#xA;&lt;p&gt;现在的规矩是 3-2-1 的简化版：重要数据本地留一份（另一块盘），云上再留一份加密的。加密在本地做完再上传，密码自己管，谁也别想替我保管。&lt;/p&gt;&#xA;&lt;p&gt;工具没什么花哨的，定时任务加脚本，关键是三点：一是自动跑，不靠记性；二是有日志，失败了能看出来；三是&lt;strong&gt;真的去恢复过一次&lt;/strong&gt;验证能用。备份这事，没恢复过的备份只能叫&amp;quot;有个文件在那儿&amp;quot;。&lt;/p&gt;&#xA;&lt;p&gt;频率上，文档类的每天一次，照片之类的大文件每周一次。跑了一个多月，踏实多了。&lt;/p&gt;</description>
    </item>
    <item>
      <title>用 Docker Compose 管自托管服务的日常</title>
      <link>https://ae.xht.one/posts/docker-selfhost/</link>
      <pubDate>Mon, 19 Oct 2026 21:20:00 +0800</pubDate>
      <guid>https://ae.xht.one/posts/docker-selfhost/</guid>
      <description>&lt;p&gt;手头自托管的小服务慢慢攒了几个：密码管理、文件同步、RSS 阅读器。统一用 Docker Compose 管，每个服务一个目录、一个 compose 文件，数据都在目录里，搬家的时候打包带走就行。&lt;/p&gt;&#xA;&lt;p&gt;几个自己定的小规矩：&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;镜像版本写死，不用 &lt;code&gt;latest&lt;/code&gt;，升级前先看一眼 changelog；&lt;/li&gt;&#xA;&lt;li&gt;数据目录和配置文件都放在宿主机上，容器随时可以删了重建；&lt;/li&gt;&#xA;&lt;li&gt;备份只备数据目录和 compose 文件，镜像本身不备，拉一次就回来。&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;这套方式最打动我的是&amp;quot;可复现&amp;quot;：新机器上把目录拷过去，&lt;code&gt;docker compose up -d&lt;/code&gt;，服务就原样回来了。折腾的乐趣保留了，翻车的成本降下来了。&lt;/p&gt;</description>
    </item>
    <item>
      <title>周末把书房收拾出来了</title>
      <link>https://ae.xht.one/posts/study-room/</link>
      <pubDate>Mon, 05 Oct 2026 19:40:00 +0800</pubDate>
      <guid>https://ae.xht.one/posts/study-room/</guid>
      <description>&lt;p&gt;国庆假期哪儿也没去，在家把堆了半年的书房收拾了出来。&lt;/p&gt;&#xA;&lt;p&gt;主要是书架。书按&amp;quot;读完的、正在读的、买回来还没拆封的&amp;quot;分了三摞，第三摞意外地高，清出来一箱重复买的和不会再翻的，挂到二手平台随缘出。桌面也换了张大桌垫，键盘鼠标一归位，看着清爽多了。&lt;/p&gt;&#xA;&lt;p&gt;窗边添了把单椅和一盏落地灯，凑出个小的阅读角。试坐了两晚，效果不错，手机基本想不起来摸，注意力回到书上。&lt;/p&gt;&#xA;&lt;p&gt;收拾屋子这事，动手之前觉得是苦差事，干完又觉得早该干了。下次立个规矩：东西进门之前先想好放哪儿，源头控制比事后整理省力得多。&lt;/p&gt;</description>
    </item>
    <item>
      <title>nginx 托管静态站的配置笔记</title>
      <link>https://ae.xht.one/posts/nginx-static/</link>
      <pubDate>Mon, 21 Sep 2026 22:05:00 +0800</pubDate>
      <guid>https://ae.xht.one/posts/nginx-static/</guid>
      <description>&lt;p&gt;这个站就是 nginx 直接托管的静态文件，把配置里几个点记一下。&lt;/p&gt;&#xA;&lt;p&gt;证书是 Let&amp;rsquo;s Encrypt 的，用 acme.sh 申请，验证走 80 端口的 webroot。证书文件按域名分目录放，续期的时候 reload 一下 nginx 就好，这套流程跑了一年多没出过问题。&lt;/p&gt;&#xA;&lt;p&gt;站点配置本身没几行：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-nginx&#34; data-lang=&#34;nginx&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;server&lt;/span&gt; {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;listen&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;443&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;ssl&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;http2&lt;/span&gt; &lt;span style=&#34;color:#66d9ef&#34;&gt;on&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;server_name&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;example.com&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;root&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;/var/www/example&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;index&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;index.html&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    &lt;span style=&#34;color:#f92672&#34;&gt;location&lt;/span&gt; &lt;span style=&#34;color:#e6db74&#34;&gt;/&lt;/span&gt; {&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;        &lt;span style=&#34;color:#f92672&#34;&gt;try_files&lt;/span&gt; $uri $uri/ =&lt;span style=&#34;color:#ae81ff&#34;&gt;404&lt;/span&gt;;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;    }&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;开 gzip、对静态资源加个长缓存，也就差不多了。静态站的好处是真没什么可调的，瓶颈永远不在它这儿。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Debian 13 装好后我做的几件事</title>
      <link>https://ae.xht.one/posts/debian-13-setup/</link>
      <pubDate>Wed, 02 Sep 2026 20:15:00 +0800</pubDate>
      <guid>https://ae.xht.one/posts/debian-13-setup/</guid>
      <description>&lt;p&gt;新机器到手装了 Debian 13，记一下我现在固化下来的初始化清单，省得下次又到处翻命令。&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;换源、更新：&lt;code&gt;apt update &amp;amp;&amp;amp; apt full-upgrade&lt;/code&gt;，先把系统带到最新。&lt;/li&gt;&#xA;&lt;li&gt;时区设成 &lt;code&gt;Asia/Shanghai&lt;/code&gt;，顺手确认 &lt;code&gt;timedatectl&lt;/code&gt; 里 NTP 是同步的。&lt;/li&gt;&#xA;&lt;li&gt;SSH 只留密钥登录，密码登录关掉；再装 fail2ban，默认配置其实就够用了，封禁时长我习惯改成两小时。&lt;/li&gt;&#xA;&lt;li&gt;防火墙用 nftables，默认丢弃，只放行真正要用的端口。规则写进 &lt;code&gt;/etc/nftables.conf&lt;/code&gt; 并让服务自启——这一步最容易漏，光在运行时加规则，重启就没了。&lt;/li&gt;&#xA;&lt;li&gt;装好常用的小工具：&lt;code&gt;curl&lt;/code&gt;、&lt;code&gt;htop&lt;/code&gt;、&lt;code&gt;tmux&lt;/code&gt;、&lt;code&gt;git&lt;/code&gt;，也就这些。&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;做完这五步先打个快照或者整机备份，再开始装业务。顺序反过来，出了问题回滚都不知道从哪儿下手。&lt;/p&gt;</description>
    </item>
    <item>
      <title>把博客换成 Hugo 了</title>
      <link>https://ae.xht.one/posts/hugo-migration/</link>
      <pubDate>Sun, 16 Aug 2026 21:30:00 +0800</pubDate>
      <guid>https://ae.xht.one/posts/hugo-migration/</guid>
      <description>&lt;p&gt;拖了很久，终于把这个小站从动态博客换成了 Hugo 生成的静态站。&lt;/p&gt;&#xA;&lt;p&gt;换的理由很简单：动态博客要维护的东西太多了，数据库、运行时、时不时的安全更新，一年写不了几篇文章，维护的心力比写作还多。静态站就完全不一样，写 Markdown、生成、把文件往服务器上一放，结束。服务器上只有一个 nginx，连多余的进程都没有，睡得安稳。&lt;/p&gt;&#xA;&lt;p&gt;迁移过程本身没什么好说的，老文章导出成 Markdown，图片跟着目录走，一个下午搞定。版式也没折腾，自己写了几十行 CSS，黑白两色，手机上看着不累就行。&lt;/p&gt;&#xA;&lt;p&gt;唯一的小遗憾是评论没了。不过想想这几年评论区也没什么人说话，真有事邮件联系就是了，地址在关于页面。&lt;/p&gt;</description>
    </item>
    <item>
      <title>关于</title>
      <link>https://ae.xht.one/about/</link>
      <pubDate>Sun, 16 Aug 2026 21:00:00 +0800</pubDate>
      <guid>https://ae.xht.one/about/</guid>
      <description>&lt;p&gt;一个普通的技术爱好者，白天有正经工作，晚上折腾点自己的小东西。&lt;/p&gt;&#xA;&lt;p&gt;这个站主要记三类东西：服务器和网络的折腾笔记、自托管服务的日常、偶尔的读书观影小结。更新随缘，写给自己看，顺便给搜索引擎留个索引，日后自己翻起来方便。&lt;/p&gt;&#xA;&lt;p&gt;本站不留联系方式，就是个安安静静的笔记本。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
