<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <author>
    <name>anniharax</name>
  </author>
  <generator uri="https://hexo.io/">Hexo</generator>
  <id>https://www.anniharax.com/</id>
  <link href="https://www.anniharax.com/" rel="alternate"/>
  <link href="https://www.anniharax.com/atom.xml" rel="self"/>
  <rights>All rights reserved 2026, anniharax</rights>
  <title>anniharax的博客</title>
  <updated>2026-08-26T12:38:28.155Z</updated>
  <entry>
    <author>
      <name>anniharax</name>
    </author>
    <category term="项目分享" scheme="https://www.anniharax.com/categories/%E9%A1%B9%E7%9B%AE%E5%88%86%E4%BA%AB/"/>
    <category term="发布信息" scheme="https://www.anniharax.com/tags/%E5%8F%91%E5%B8%83%E4%BF%A1%E6%81%AF/"/>
    <category term="整活" scheme="https://www.anniharax.com/tags/%E6%95%B4%E6%B4%BB/"/>
    <category term="赤石科技" scheme="https://www.anniharax.com/tags/%E8%B5%A4%E7%9F%B3%E7%A7%91%E6%8A%80/"/>
    <content>
      <![CDATA[<p>在我们的日常生活中（Linux日用很日常对吧），</p><p>&#9;我们总是喜欢折腾很多和Linux美化有关的东西。</p><p>但是呢，我发现，现有的Cowsay存在一些缺点，比如说呢，就是入戏程度不够，名字不够炫酷，对情绪的发泄能力明显不足。</p><p>于是呢，Sawhay横空出世，就像你对你的广东朋友说出第一句“索嗨”一样。</p><p>“索嗨”？没错，这个项目的名字就是来自于那句鼎鼎有名、远近闻名、如雷贯耳、举世闻名、赫赫有名、流芳百世、家喻户晓、妇孺皆知的粤语脏话“索嗨（傻閪）”。</p><h2 id="怎么安装？怎么使用？"><a href="#怎么安装？怎么使用？" class="headerlink" title="怎么安装？怎么使用？"></a>怎么安装？怎么使用？</h2><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">curl -fsSL https://raw.githubusercontent.com/KAL-Alpha/Sawhay/main/install.sh | sh</span><br></pre></td></tr></table></figure><p>打开你的终端，输入这一串命令，马上你的电脑会学会这一个神圣仪式——</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><span class="line">┌[anniharax☮anniharax]-(~)</span><br><span class="line">└&gt; sawhay</span><br><span class="line">             /´ ¯/)</span><br><span class="line">            /—-/</span><br><span class="line">           /—-/</span><br><span class="line">     /´¯/<span class="string">&#x27;--/&#x27;</span>´¯`•_</span><br><span class="line">    /<span class="string">&#x27;/--/—-/—--/¨¯\</span></span><br><span class="line"><span class="string">    (&#x27;</span>(———- ¯~/<span class="string">&#x27;--&#x27;</span>)</span><br><span class="line">     \————-\—--/ </span><br><span class="line">     <span class="string">&#x27;\&#x27;</span>————_-•´</span><br></pre></td></tr></table></figure><p>当然，你也可以使用这个命令：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">sawhay --fuck XXX</span><br></pre></td></tr></table></figure><p>你的SHELL会马上告诉你，谁会变得很让人羡慕：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br></pre></td><td class="code"><pre><span class="line">┌[anniharax☮anniharax]-(~)</span><br><span class="line">└&gt; sawhay --fuck XXX   </span><br><span class="line">             /´ ¯/)</span><br><span class="line">            /—-/</span><br><span class="line">           /—-/</span><br><span class="line">     /´¯/<span class="string">&#x27;--/&#x27;</span>´¯`•_</span><br><span class="line">    /<span class="string">&#x27;/--/—-/—--/¨¯\</span></span><br><span class="line"><span class="string">    (&#x27;</span>(———- ¯~/<span class="string">&#x27;--&#x27;</span>)</span><br><span class="line">     \————-\—--/ </span><br><span class="line">     <span class="string">&#x27;\&#x27;</span>————_-•´</span><br><span class="line">---</span><br><span class="line">Fuck You XXX !</span><br></pre></td></tr></table></figure><p>你当然也可以使用“sawhay | lolcat”来让你的仪式变得炫彩，也可以将sawhay相关的炫酷命令写进一个SHELL脚本文件，随后追加到你的.zshrc中——你的终端模拟器会在你打开它时自动完成这个炫酷而又神圣的仪式。</p><p>当然，我们现在还——不支持fortune，但是有朝一日，会支持的。甚至是从随机名言变成随机人名，让一个黑漆漆或是半透明，白花花或是带点模糊效果的终端模拟器告诉你，抑郁症是怎么不吃药就治好的。</p><p>后续敬请期待吧！欢迎大家到这个项目的仓库里面提一些奇奇怪怪的ISSUE，甚至是提PR把你们的鬼点子合并进来。</p><h3 id="GitHub仓库地址：点我"><a href="#GitHub仓库地址：点我" class="headerlink" title="GitHub仓库地址：点我"></a>GitHub仓库地址：<a href="https://github.com/KAL-Alpha/sawhay">点我</a></h3>]]>
    </content>
    <id>https://www.anniharax.com/posts/4278db50-a148-11f1-b484-034a1abcdfdd/</id>
    <link href="https://www.anniharax.com/posts/4278db50-a148-11f1-b484-034a1abcdfdd/"/>
    <published>2026-08-26T12:18:35.000Z</published>
    <summary>
      <![CDATA[<p>在我们的日常生活中（Linux日用很日常对吧），</p>
<p>&#9;我们总是喜欢折腾很多和Linux美化有关的东西。</p>
<p>但是呢，我发现，现有的Cowsay存在一些缺点，比如说呢，就是入戏程度不够，名字不够炫酷，对情绪的发泄能力明显不足。</p>
<p>于是呢，Sawhay横空出世，就像你对你的广东朋友说出第一句“索嗨”一样。</p>
<p>“索嗨”？没错，这个项目的名字就是来]]>
    </summary>
    <title>Sawhay发布信息</title>
    <updated>2026-08-26T12:38:28.155Z</updated>
  </entry>
  <entry>
    <author>
      <name>anniharax</name>
    </author>
    <category term="项目分享" scheme="https://www.anniharax.com/categories/%E9%A1%B9%E7%9B%AE%E5%88%86%E4%BA%AB/"/>
    <category term="发布信息" scheme="https://www.anniharax.com/tags/%E5%8F%91%E5%B8%83%E4%BF%A1%E6%81%AF/"/>
    <category term="整活" scheme="https://www.anniharax.com/tags/%E6%95%B4%E6%B4%BB/"/>
    <category term="赤石科技" scheme="https://www.anniharax.com/tags/%E8%B5%A4%E7%9F%B3%E7%A7%91%E6%8A%80/"/>
    <content>
      <![CDATA[<p>众所周知，这是我们早在高中生物必修二就学过的三种RNA——</p><p><img src="/posts/c6495cc0-a03a-11f1-9bb7-271ec08b98ab/pic1.webp" alt="RNA示意图"></p><p>我们还知道的是，这种神奇的、能传递信息的物质，其传递信息的有效组成部分是——碱基！</p><p><strong>等等，什么？传递信息？</strong></p><p>用的什么？<strong>三碱基组合的密码子。</strong></p><p>（鬼点子生成中…）</p><p>我有一计！</p><p>于是乎，在一顿酣畅淋漓的… <strong>vibe coding</strong> 下， <strong>HelixShieldCipher</strong> 横空出世！</p><h2 id="这是？"><a href="#这是？" class="headerlink" title="这是？"></a>这是？</h2><p>基于 RNA 密码子的 ASCII 字符加密库，支持 Rust 核心库、CLI 工具和 Web 服务。</p><p>这个项目的GItHub地址是：<a href="https://github.com/KAL-Alpha/HelixShieldCipher">HelixShieldCipher</a></p><h2 id="功能特性"><a href="#功能特性" class="headerlink" title="功能特性"></a>功能特性</h2><h3 id="核心加密-解密"><a href="#核心加密-解密" class="headerlink" title="核心加密&#x2F;解密"></a>核心加密&#x2F;解密</h3><ul><li><strong>字符集<!----></strong>：支持  ASCII 字符</li><li><strong>密码子映射<!----></strong>：每个 ASCII 字符映射到一个唯一的 3 碱基 RNA 密码子（仅含 A&#x2F;U&#x2F;C&#x2F;G）</li><li><strong>种子驱动偏移<!----></strong>：通过 <code>u64</code> 种子初始化 LCG 伪随机数生成器，对字符索引进行偏移后查表</li></ul><h3 id="加密流程"><a href="#加密流程" class="headerlink" title="加密流程"></a>加密流程</h3><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">明文 → 字符查索引 → (索引 + 伪随机偏移) mod 54 → 查密码子表 → 密文（RNA 碱基序列）</span><br></pre></td></tr></table></figure><p>解密过程反向进行：</p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">密文 → 按3碱基分组 → 查反向表得 ASCII → (加密索引 - 伪随机偏移) mod 54 → 原字符</span><br></pre></td></tr></table></figure><h3 id="组件"><a href="#组件" class="headerlink" title="组件"></a>组件</h3><table><thead><tr><th>组件</th><th>名称</th><th>说明</th></tr></thead><tbody><tr><td>核心库</td><td><code>rna-cipher-core</code></td><td>零依赖 Rust 库，提供加密&#x2F;解密&#x2F;编解码</td></tr><tr><td>CLI 工具</td><td><code>rna-cipher-cli</code></td><td>命令行加密&#x2F;解密&#x2F;密码表导出</td></tr><tr><td>Web 服务</td><td><code>rna-cipher-web</code></td><td>Axum + 前端界面</td></tr></tbody></table><h3 id="接口"><a href="#接口" class="headerlink" title="接口"></a>接口</h3><table><thead><tr><th>接口</th><th>说明</th></tr></thead><tbody><tr><td>Rust API</td><td><code>encrypt(text, seed)</code> &#x2F; <code>decrypt(cipher, seed)</code></td></tr><tr><td>C FFI</td><td><code>rna_encrypt()</code> &#x2F; <code>rna_decrypt()</code></td></tr><tr><td>Web API</td><td><code>POST /api/encrypt</code> &#x2F; <code>POST /api/decrypt</code></td></tr></tbody></table><h4 id="Rust-API"><a href="#Rust-API" class="headerlink" title="Rust API"></a>Rust API</h4><figure class="highlight rust"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment">// v1.00（已弃用但保留）</span></span><br><span class="line"><span class="title function_ invoke__">encrypt</span>(plaintext: &amp;<span class="type">str</span>, seed: <span class="type">u64</span>) <span class="punctuation">-&gt;</span> <span class="type">Result</span>&lt;<span class="type">String</span>&gt;</span><br><span class="line"><span class="title function_ invoke__">decrypt</span>(ciphertext: &amp;<span class="type">str</span>, seed: <span class="type">u64</span>) <span class="punctuation">-&gt;</span> <span class="type">Result</span>&lt;<span class="type">String</span>&gt;</span><br><span class="line"></span><br><span class="line"><span class="comment">// v1.01（新增）</span></span><br><span class="line"><span class="title function_ invoke__">encrypt_v2</span>(plaintext: &amp;<span class="type">str</span>, password: &amp;<span class="type">str</span>, options: &amp;CipherOptions) <span class="punctuation">-&gt;</span> <span class="type">Result</span>&lt;<span class="type">String</span>&gt;</span><br><span class="line"><span class="title function_ invoke__">decrypt_v2</span>(ciphertext: &amp;<span class="type">str</span>, password: &amp;<span class="type">str</span>, options: &amp;CipherOptions) <span class="punctuation">-&gt;</span> <span class="type">Result</span>&lt;<span class="type">String</span>&gt;</span><br></pre></td></tr></table></figure><h4 id="CLI"><a href="#CLI" class="headerlink" title="CLI"></a>CLI</h4><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># v1.00</span></span><br><span class="line">rna-cipher encrypt --seed 42 &lt; plain.txt</span><br><span class="line"></span><br><span class="line"><span class="comment"># v1.01</span></span><br><span class="line">rna-cipher encrypt --password <span class="string">&quot;mypass&quot;</span> &lt; plain.txt</span><br><span class="line">rna-cipher encrypt --password <span class="string">&quot;mypass&quot;</span> --methylation &lt; plain.txt</span><br></pre></td></tr></table></figure><h4 id="Web-API"><a href="#Web-API" class="headerlink" title="Web API"></a>Web API</h4><figure class="highlight json"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br></pre></td><td class="code"><pre><span class="line"><span class="punctuation">&#123;</span></span><br><span class="line">  <span class="attr">&quot;text&quot;</span><span class="punctuation">:</span> <span class="string">&quot;Hello&quot;</span><span class="punctuation">,</span></span><br><span class="line">  <span class="attr">&quot;password&quot;</span><span class="punctuation">:</span> <span class="string">&quot;mypass&quot;</span><span class="punctuation">,</span></span><br><span class="line">  <span class="attr">&quot;options&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line">    <span class="attr">&quot;prime5_obfuscate&quot;</span><span class="punctuation">:</span> <span class="literal"><span class="keyword">false</span></span><span class="punctuation">,</span></span><br><span class="line">    <span class="attr">&quot;pair_mode&quot;</span><span class="punctuation">:</span> <span class="literal"><span class="keyword">false</span></span><span class="punctuation">,</span></span><br><span class="line">    <span class="attr">&quot;template_strand&quot;</span><span class="punctuation">:</span> <span class="literal"><span class="keyword">false</span></span><span class="punctuation">,</span></span><br><span class="line">    <span class="attr">&quot;methylation&quot;</span><span class="punctuation">:</span> <span class="literal"><span class="keyword">false</span></span></span><br><span class="line">  <span class="punctuation">&#125;</span></span><br><span class="line"><span class="punctuation">&#125;</span></span><br></pre></td></tr></table></figure><h2 id="算法介绍"><a href="#算法介绍" class="headerlink" title="算法介绍"></a>算法介绍</h2><h3 id="1-基于口令的种子派生"><a href="#1-基于口令的种子派生" class="headerlink" title="1. 基于口令的种子派生"></a>1. 基于口令的种子派生</h3><p>种子 $X$ 完全由口令 $P$ 的 SHA256 哈希值派生：</p><p>$$X &#x3D; \text{int}(\text{SHA256}(P)[8:16])$$</p><h3 id="2-类-Enigma-步进（步进值-B-）"><a href="#2-类-Enigma-步进（步进值-B-）" class="headerlink" title="2. 类 Enigma 步进（步进值 $B$）"></a>2. 类 Enigma 步进（步进值 $B$）</h3><p>密码子表按照步进值 $B$ 动态偏移，每加密一个字符生成新的 $B$ 值：</p><p>$$B_i &#x3D; \text{LCG}(\text{state}_i) \bmod 54$$</p><p>使得同一明文字符在不同位置映射到不同密码子，有效抵抗频率分析。</p><h3 id="3-配对方式偏移（偏移量-Y-）"><a href="#3-配对方式偏移（偏移量-Y-）" class="headerlink" title="3. 配对方式偏移（偏移量 $Y$）"></a>3. 配对方式偏移（偏移量 $Y$）</h3><p>$H’$ 的取模结果产生配对方式偏移 $1 \sim 2$ 位：</p><p>$$Y &#x3D; (H’ \bmod 2) + 1$$</p><h3 id="4-5’-3’-端混淆"><a href="#4-5’-3’-端混淆" class="headerlink" title="4. 5’&#x2F;3’ 端混淆"></a>4. 5’&#x2F;3’ 端混淆</h3><p>通过开关控制，启用后密文的 5’ 端起始点由口令派生，进一步增强混淆。</p><h3 id="5-模板链"><a href="#5-模板链" class="headerlink" title="5. 模板链"></a>5. 模板链</h3><p>开启后生成模板链（非直接信息链），解密时需还原为信息链。必须同时开启 5’&#x2F;3’ 端混淆。</p><h3 id="6-RNA-甲基化"><a href="#6-RNA-甲基化" class="headerlink" title="6. RNA 甲基化"></a>6. RNA 甲基化</h3><p>甲基化的基因密码子在解密时自动跳过。甲基化位置由口令派生，不体现在密码子计数值差异中。</p><h3 id="算法流程"><a href="#算法流程" class="headerlink" title="算法流程"></a>算法流程</h3><figure class="highlight tex"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br><span class="line">6</span><br><span class="line">7</span><br><span class="line">8</span><br><span class="line">9</span><br><span class="line">10</span><br><span class="line">11</span><br><span class="line">12</span><br><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br><span class="line">16</span><br><span class="line">17</span><br></pre></td><td class="code"><pre><span class="line">输入：口令 P，明文 M（或密文 C）</span><br><span class="line">                    ↓</span><br><span class="line">          H(P) = SHA256(P)</span><br><span class="line">                    ↓</span><br><span class="line">          S₀ = int(H(P)[0:8]),   S₁ = int(H(P)[8:16])</span><br><span class="line">          H₆₄ = S₀,              X = S₁</span><br><span class="line">                    ↓</span><br><span class="line">          H&#x27; = H₆₄ ⊕ X</span><br><span class="line">                    ↓</span><br><span class="line">          state₀ = H&#x27;</span><br><span class="line">                    ↓</span><br><span class="line">    对于每个字符 i ∈ [0, n)：</span><br><span class="line">        state<span class="built_in">_</span>&#123;i+1&#125; = state<span class="built_in">_</span>i × 6364136223846793005 + 1442695040888963407 (mod 2⁶⁴)</span><br><span class="line">        B<span class="built_in">_</span>i = state<span class="built_in">_</span>&#123;i+1&#125; mod 54</span><br><span class="line">                    ↓</span><br><span class="line">        加密：enc<span class="built_in">_</span>idx<span class="built_in">_</span>i = (idx<span class="built_in">_</span>i + B<span class="built_in">_</span>i) mod 54</span><br><span class="line">        解密：idx<span class="built_in">_</span>i = (enc<span class="built_in">_</span>idx<span class="built_in">_</span>i - B<span class="built_in">_</span>i + 54) mod 54</span><br></pre></td></tr></table></figure><h2 id="许可"><a href="#许可" class="headerlink" title="许可"></a>许可</h2><p>GNU General Public License v3.0</p>]]>
    </content>
    <id>https://www.anniharax.com/posts/c6495cc0-a03a-11f1-9bb7-271ec08b98ab/</id>
    <link href="https://www.anniharax.com/posts/c6495cc0-a03a-11f1-9bb7-271ec08b98ab/"/>
    <published>2026-08-25T04:09:32.000Z</published>
    <summary>
      <![CDATA[<p>众所周知，这是我们早在高中生物必修二就学过的三种RNA——</p>
<p><img src="/posts/c6495cc0-a03a-11f1-9bb7-271ec08b98ab/pic1.webp" alt="RNA示意图"></p>
<p>我们还知道的是，这种神奇的、能传递信息的物质，其传递信息的有效组成部分是——碱基！</p>
<p><strong>等等，什么？传递信息？</stro]]>
    </summary>
    <title>HelixShieldCipher发布信息</title>
    <updated>2026-08-26T12:19:37.660Z</updated>
  </entry>
  <entry>
    <author>
      <name>anniharax</name>
    </author>
    <category term="技术分享" scheme="https://www.anniharax.com/categories/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/"/>
    <category term="Linux" scheme="https://www.anniharax.com/tags/Linux/"/>
    <content>
      <![CDATA[<p>众所周知，Linux给人的印象通常是这样的：</p><blockquote><p>你想要体验Linux，按照网上的建议选择了Arch Linux，但是你却没有了解其安装流程完全基于CLI，于是，世界上多了一个看着黑窗口发呆的你。</p><p>你想安装Microsoft Edge，你通常需要打开终端，然后输入一长串命令。在部分发行版上，可能还需要引入别的包管理器助手甚至是包管理器，例如yay、flatpak等。当你遇见依赖项错误时，那更是一番无法描述的风景。</p><p>你想要配置软件源，发现你的发行版存在过多种配置方式，你弄不清是修改哪一个配置文件。</p></blockquote><span id="more"></span><p>不知何日，这一进程终于迎来了被简化的那一天，至少是在你发现还存在OpenSUSE这个神奇的发行版之后。</p><p>你也可以这么理解：YaST，治好了我的精神内耗。</p><h1 id="精神内耗，是从哪来的？"><a href="#精神内耗，是从哪来的？" class="headerlink" title="精神内耗，是从哪来的？"></a>精神内耗，是从哪来的？</h1><p>这里我必须要Diss某个橙黄色图标的发行版。</p><p>可能是由于学业负担，我弃用了Arch Linux，</p><p>&emsp;<strong>肯定不是滚挂过一次之后懒得再重装Arch，</strong></p><p>于是我选择了Ubuntu。</p><p>配置软件源时，就是吃了消息不及时的亏。</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">vim /etc/apt/sources.list</span><br></pre></td></tr></table></figure><p>你大概会以为是这样配置？</p><p>不好意思，在Ubuntu 24.04之后，我们默认使用DEB822格式——</p><p>&emsp;<strong>软件源配置在&#x2F;etc&#x2F;apt&#x2F;sources.list.d&#x2F;ubuntu.sources这个文件里面。</strong></p><p>并且配置方法也有大变：</p><figure class="highlight text"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br><span class="line">5</span><br></pre></td><td class="code"><pre><span class="line">Types: deb</span><br><span class="line">URIs: http://archive.ubuntu.com/ubuntu/</span><br><span class="line">Suites: noble noble-updates noble-backports</span><br><span class="line">Components: main restricted universe multiverse</span><br><span class="line">Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg</span><br></pre></td></tr></table></figure><p><em>于是，我望着那个空空如也的sources.list，以及正常使用的apt陷入了沉思。</em></p><h2 id="Arch-Linux，为何不用？"><a href="#Arch-Linux，为何不用？" class="headerlink" title="Arch Linux，为何不用？"></a>Arch Linux，为何不用？</h2><p>众所周知，用Arch Linux或者Arch Linux的衍生版本的人往往会染上一个毛病。</p><p>每次打开电脑，第一件事：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">neofetch</span><br></pre></td></tr></table></figure><p>然后欣赏炫酷的Output在半透明的终端背景下与你的GUI形成一道完美的、靓丽的、平衡的风景线。</p><p>因为Arch安装过程的繁琐劝退了很多人，于是那个锥形的蓝绿色图标成为了一个神秘而高大上的符号。</p><p>显然地，社区也不乏这样的调侃：</p><p>&emsp;<strong>不折腾，用什么Arch Linux？</strong></p><h3 id="滚挂？"><a href="#滚挂？" class="headerlink" title="滚挂？"></a>滚挂？</h3><p>这也是一个老生常谈的问题。</p><p>如果你手很痒，</p><p>很享受那个在Konsole、Gnome Terminal、Kitty亦或是Alacritty中输入sudo pacman -Syyu的快感，</p><p>那么在某个夜黑风高的夜晚，你会发现：</p><p>&emsp;淦，没法启动了。</p><p>如果你刚好没有配置TimeShift，又是一个Linux萌新，那么你就会发现：</p><p>&emsp;你怎么救都救不回来。</p><p>如果你像我一样对Linux没有近乎Gentoo用户一般的理解，那么，还是不建议使用Arch Linux。</p><p>并且，Arch Linux基础系统是不带安全启动支持的，需要自己折腾。</p><h2 id="Fedora和Ubuntu呢？"><a href="#Fedora和Ubuntu呢？" class="headerlink" title="Fedora和Ubuntu呢？"></a>Fedora和Ubuntu呢？</h2><p>你为何不问一下神奇的deepseek呢？</p><h3 id="好的先说Ubuntu"><a href="#好的先说Ubuntu" class="headerlink" title="好的先说Ubuntu"></a>好的先说Ubuntu</h3><p>你其实也听说过，snap在Ubuntu用户中的地位，</p><p><strong>无异于某绿色商标半导体企业在Linus Torvalds心中的地位。</strong></p><p>Ubuntu的GUI集成度，在图形化软件管理上极度依赖Snap，</p><p>如果你禁用了Snap，那么恭喜你——</p><p>&#9;预装的Firefox、应用商店、固件更新……</p><p><strong>全都不能用！</strong></p><p>配置禁用并重装一遍上述应用或其替代品所用的时间，</p><p>无异于重新安装一遍Arch Linux的基础系统。</p><h3 id="再说到Fedora"><a href="#再说到Fedora" class="headerlink" title="再说到Fedora"></a>再说到Fedora</h3><p>光从Fedora的使用体验和稳定性来看，</p><p>其实Fedora真的是个很优秀的系统，</p><p>就连Linux之父Linus Torvalds都在使用Fedora。</p><p>这足以证明Fedora的强大，</p><p><strong>如果你愿意以默认配置安装系统，在安装并配置完成系统后再进行你的个性化的话。</strong></p><p>OpenSUSE比Fedora和Ubuntu厉害的地方就在于，</p><p>其安装系统时的可配置性就非常强。</p><p>你可以选择使用GRUB2、systemd-boot亦或是rEFInd。</p><p>并且，OpenSUSE还有一个杀招：</p><p>&emsp;<strong>YaST。</strong></p><p>懂不懂把Linux当成Windows用的含金量啊。</p><h1 id="为什么OpenSUSE更好？"><a href="#为什么OpenSUSE更好？" class="headerlink" title="为什么OpenSUSE更好？"></a>为什么OpenSUSE更好？</h1><p><strong>OpenSUSE首推的就是YaST。</strong></p><h3 id="系统安装？"><a href="#系统安装？" class="headerlink" title="系统安装？"></a>系统安装？</h3><p>虽然OpenSUSE没有像Fedora、Manjaro、CachyOS亦或是Ubuntu那样给你一个体验系统的机会，</p><p>但是，你别忘了你蜥蜴哥的安装器是YaST。</p><p>YaST？不就是换了个安装器吗？</p><p>&emsp;<strong>这你就不懂了。</strong></p><p>如果你安装过Kali，体验过Calamares，</p><p><strong>你就会发现其实OpenSUSE在安装时的可定制性比Kali还高。</strong></p><p>前者只是让你能够在安装时自由选择桌面环境等软件，</p><p>而OpenSUSE能够定制什么？</p><p>&emsp;<strong>桌面环境，X11还是Wayland，systemd-boot还是GRUB……</strong></p><p>而且，相较于Fedora或者Arch系发行版，</p><p>OpenSUSE Tumbleweed虽然同为滚动更新，但是明显更稳定。</p><h3 id="系统配置？"><a href="#系统配置？" class="headerlink" title="系统配置？"></a>系统配置？</h3><p>尽管在AI时代，各种agent满天飞，诸如OpenClaw、Kimi Claw，</p><p>尽管这一定程度上让新手有机会去折腾Linux了，</p><p>甚至在终端输入的命令可能也不过这些：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br><span class="line">4</span><br></pre></td><td class="code"><pre><span class="line">npm install -g openclaw@latest <span class="comment">#OpenClaw安装命令</span></span><br><span class="line"><span class="comment">#懂的都懂</span></span><br><span class="line">openclaw config</span><br><span class="line">openclaw dashboard</span><br></pre></td></tr></table></figure><p><em>接着就是使用你的命令方块。</em></p><p>但是，在被Agent把我的API Key写进前端、一夜间无故流失了剩下的全部50元余额后，</p><p><strong>我决定不使用OpenClaw配置系统。</strong></p><p>不然哪天AI幻觉出一个不存在的包，导致你的电脑成功被投毒——</p><p><strong>有的你哭。</strong></p><p>更何况，AI删库已经不再是一个冷门话题了，</p><p>或者说，AI删库这个场景中，AI成功使用八个圆石合成了熔炉。</p><p>所以，YaST的伟大之处是显而易见的。</p><p>而且，如果你很喜欢用KDE，</p><p><strong>OpenSUSE与KDE的集成度那不是一般的高。</strong></p><p>OpenSUSE 有专门的 KDE 工程维护者和社区团队，负责 KDE 软件的 bug 修复和发行版集成。</p><p>OpenSUSE的<a href="https://doc.opensuse.org/documentation/tumbleweed/kde/">官方文档</a>也直接强调了这一点。</p><p>YaST虽然和KDE系统设置不是一个东西，但是却以一种分工明确的形式共存：</p><table><thead><tr><th>KDE System Settings</th><th>桌面级设置</th></tr></thead><tbody><tr><td>YaST</td><td>openSUSE 的系统级管理</td></tr></tbody></table><p>所以 openSUSE KDE 并不是试图把所有系统管理功能塞进 KDE或者YaST，</p><p>而是让KDE 负责桌面，YaST 负责发行版。</p><p>这种分层实际上非常“Unix”。</p><p>尽管来说，会有人对OpenSUSE预装全套KDE软件有所反感，</p><p>但是你至少在进入系统后看到的是KDE生态的闭环，</p><p>而不是“搞半天还要自己拼”。</p><p>开箱即用，也允许着你把OpenSUSE当成Windows来用。</p><h1 id="讲在最后"><a href="#讲在最后" class="headerlink" title="讲在最后"></a>讲在最后</h1><p>Linux真正有意思的地方，从来不是“你能不能不用GUI”，</p><p>而是<strong>当你想折腾的时候，它允许你折腾；当你不想折腾的时候，它也应该允许你安安静静地工作。</strong></p><p>而OpenSUSE正好提供了这一种体验。</p><p>所以，我认为，这才是OpenSUSE真正吸引我的地方。</p>]]>
    </content>
    <id>https://www.anniharax.com/posts/4f670760-986f-11f1-ae7a-5301f23be7b8/</id>
    <link href="https://www.anniharax.com/posts/4f670760-986f-11f1-ae7a-5301f23be7b8/"/>
    <published>2026-08-15T06:05:26.000Z</published>
    <summary>
      <![CDATA[<p>众所周知，Linux给人的印象通常是这样的：</p>
<blockquote>
<p>你想要体验Linux，按照网上的建议选择了Arch Linux，但是你却没有了解其安装流程完全基于CLI，于是，世界上多了一个看着黑窗口发呆的你。</p>
<p>你想安装Microsoft Edge，你通常需要打开终端，然后输入一长串命令。在部分发行版上，可能还需要引入别的包管理器助手甚至是包管理器，例如yay、flatpak等。当你遇见依赖项错误时，那更是一番无法描述的风景。</p>
<p>你想要配置软件源，发现你的发行版存在过多种配置方式，你弄不清是修改哪一个配置文件。</p>
</blockquote>]]>
    </summary>
    <title>折腾？也许是轻松使用Linux的另一个选择</title>
    <updated>2026-08-16T01:13:37.972Z</updated>
  </entry>
  <entry>
    <author>
      <name>anniharax</name>
    </author>
    <category term="散文" scheme="https://www.anniharax.com/categories/%E6%95%A3%E6%96%87/"/>
    <category term="日常杂文" scheme="https://www.anniharax.com/tags/%E6%97%A5%E5%B8%B8%E6%9D%82%E6%96%87/"/>
    <content>
      <![CDATA[<p>&#x09;在读到周敦颐的《爱莲说》的时候，我的心中不禁涌现出了一个想法：若是以一种花来形容一类人，那我应该选择什么花呢？</p><p>&#x09;这个问题一直困扰着我。古云：水陆草木之花，可爱者甚蕃。可即使那些花再“蕃”，这个问题的答案也如同水下冰川般困扰着我——找到一种能深切代表哪一类人的花，是极不容易的。直到那个暮春，当我漫步在一条新建的钢渣砖小道上，瞥见那行道树时，我看见了盛放的白花，闻到了那一缕标志性的花香——那是一丛丛雪白的、簇拥在枝间的、黄豆般大小的花，散发着一阵阵生命的芬芳——那是石楠花啊！</p><p>&#x09;石楠花，是生命韧性的生动注脚。其不同于茉莉花，石楠花易于成活，有着茉莉花望尘莫及的适应性。哪怕是在阳光的真空地带，石楠花的正常生长和开花也不会受到影响。石楠长在贫瘠的土地上，却能够开出如此茂盛的、云一般密集且蓬松的花丛。此外，石楠花还具有一定的耐寒性——像那些皮糙脂厚的耐寒动物一样，能够在北方生长。正因为这几点，石楠花才被选为了绿化工程的主要植物之一，开到了街道旁、高楼下，开进了小区里、校园里…….石楠花开遍了祖国的大江南北，开遍了大江南北的大街小巷，到处都是石楠花，处处都有石楠花。</p><p>&#x09;石楠花，也是集体主义的一个缩影。茉莉花清香怡人，这是实打实的事实，可是茉莉那曲折多姿、互相分离的枝干却实在恼人——当今社会，我们讲究的，是集体主义，茉莉的每朵花开得那么离散，她的枝干是那么多姿而有个性——这是想干嘛？石楠花就与之大相径庭。那一朵朵形态相似的、伞形的花，就像“超级中学”的学生们跑操一般密密麻麻地簇在紧凑的枝干上，颇有“整齐划一”之美，一眼望去就很有“精气神”。</p><p>&#x09;石楠花，更是一部生命的史诗，是新生的迷人芬芳，是那“两耳不闻世人语，一心只向所诺处”的坚持。尽管人们常诟病石楠花的浓香，憎恶那容易让人联想到交配与生殖的气味。他们曾不停地、发自肺腑地提出疑问：这种看上去纯洁而无瑕、矜持然活力四溅的花，为何却散发出这般骇人的味道！他们曾在内心无力地央求着，无力地抱怨着、无力地控诉着那一棵棵石楠树——那本可以是杨柳、香樟抑或是女贞。可是事实却给予这种无力的控诉沉重一击：石楠花易成活，成本低廉，还能净化空气。从这一点出发，石楠花自然就是绿化植物的首选了。若是再有不满，就只能忍着吧！不管怎样，每逢花期，石楠花仍会照常绽放。</p><p>&#x09;石楠花，是实用主义的极致体现，是“务实”的观念对传统思想的一次冲击，一次彻彻底底的革新。旧中国推行茉莉花，推行茉莉花的各式精神内涵，甚至曾不惜将《茉莉花》指认为旧帝国的非正式国歌，作为代表中华民族的国际符号。可这一切终究在高速发展的进程中烟消云散，被“效率至上”的、石楠花般的“正人君子”们抛弃，扫进历史的垃圾堆——那些所谓“天人合一”“无用之用”“格物致知”，究其根本是学习、事业以外的东西，是所谓“成功”的绊脚石与拦路虎，是“成功人士”的刽子手与暗杀者，是玩物丧志的东西。而石楠花所代表的极致的实用主义，才是时代之正轨——标准化、规模化、实用化。谁会在意你是否有着石楠花那样不堪的、骇人的味道呢？人们只是在意你是否像石楠花般光鲜、实用罢了。</p><p>&#x09;石楠花从不屑于与兰、莲、菊、茉莉等民俗之花相提并论，也从未想过与牡丹、杜鹃这些赏玩之花争奇斗艳。自古以来，莲花虽然被人们解读为“君子”，其“出淤泥而不染，濯清莲而不妖”的内在品格让人不禁联想到千古以来的风流人物，影响着一代又一代人，代代相传。可是，当我们跳出惯性思维的圈套，事实真的如此吗？莲花独立地、一株株地长在水池里，那是多么孤傲而自大啊！茉莉，起码每一朵花都长在同一棵树上，可是莲花呢？一株莲就是一朵花，没有“树”，自然就没有集体；莲长在水中，路人靠近莲花去“指点几句”，自然就成了一件难事。种种因素相加，很难不让人想到网络上常说的“嘉豪”。莲花从淤泥中挺拔而出，却丝毫不沾染那污泥，甚至还要自豪地、挺拔地把那些“出淤泥而不染”的茎秆与荷叶展示出来，颇有一种“贬损托举自己的集体，反而自作清高”的既视感。而石楠花就与之大相径庭，石楠长在贫瘠的土地却从未刻意地向世人展示她的“生贫土而不羸”，她甚至从未强求过哪怕是一片沃土——也许，生长在沃土的她还会“水土不服”。石楠只知道，在该开花的时候开花，展示出那雪白的花朵，散发出那生机勃勃的花香。石楠花的花朵与花香相辅相成，共同构成了石楠花，代表了石楠花独特的内在与外在。这就是石楠花。</p><p>&#x09;石楠花，实则是当今社会的一种人的缩影，是他们的座右铭与咏志诗。随着网络上“嘉豪”等内容的流行，人们开始思考，思考他们的人生观，思考为人处世的价值导向。在这种思考的过程中，越来越多的人选择活成了一株石楠——一首代表着合群与规模的清代试贴诗。</p><p>&#x09;石楠花的气味，不过是它内在美德的自然流露，正如牡丹的富贵、莲花的清高一样，都是值得尊重的个性表达。至于那些抱怨花气刺鼻、怀念茉莉幽香的人——他们大抵是不懂这个时代的。毕竟，气味只是表象，石楠花所代表的那种高效、团结、规模化的精神，才是我们真正需要的芬芳。若有人仍要为此皱眉，那我只好借用一句流行语来宽慰他：受着。<br><img src="/posts/aae46cd0-883f-11f1-a400-655a276cb48d/IMG_20260727_235010.jpg" alt="做题家"></p>]]>
    </content>
    <id>https://www.anniharax.com/posts/aae46cd0-883f-11f1-a400-655a276cb48d/</id>
    <link href="https://www.anniharax.com/posts/aae46cd0-883f-11f1-a400-655a276cb48d/"/>
    <published>2026-06-04T05:44:05.000Z</published>
    <summary>论证石楠花的特性，歌颂石楠花。</summary>
    <title>石楠花语</title>
    <updated>2026-08-15T14:47:53.518Z</updated>
  </entry>
  <entry>
    <author>
      <name>anniharax</name>
    </author>
    <category term="技术分享" scheme="https://www.anniharax.com/categories/%E6%8A%80%E6%9C%AF%E5%88%86%E4%BA%AB/"/>
    <category term="Linux" scheme="https://www.anniharax.com/tags/Linux/"/>
    <category term="操作指南" scheme="https://www.anniharax.com/tags/%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97/"/>
    <content>
      <![CDATA[<h2 id="引言"><a href="#引言" class="headerlink" title="引言"></a>引言</h2><p>或许你会遇到过一个很烦人的问题：</p><p>在使用Windows和Linux双系统时，</p><p>Linux下设置时区正常时，Win下时间会错位；<br>Win下同步时间时，Linux下时间会错位；</p><p><del><strong>王 昌 龄 马 ！</strong></del></p><p>问题根源：默认情况下，Linux系统使用协调世界时（UTC），而Windows则使用实时时钟（RTC）中存储的本地时间。安装Linux并同步时间后Linux会将硬件时间同步至UTC时间，这会导致Windows错误地将UTC时间当作本地时间而出现时间显示错误。而Linux系统在设置时区之后会在UTC上加上对应时区的时间偏移量进行显示，因此不会出现时间显示问题。</p><p>当然，除了每次开机自己动手去同步时间这种笨方法之外，还是有很有效的解决方法的。</p><p>要么，你让Windows用UTC；</p><p>要么，你让Linux用RTC。</p><h2 id="解决方案"><a href="#解决方案" class="headerlink" title="解决方案"></a>解决方案</h2><h3 id="方法1：将Windows的时钟基准切换为UTC（推荐）"><a href="#方法1：将Windows的时钟基准切换为UTC（推荐）" class="headerlink" title="方法1：将Windows的时钟基准切换为UTC（推荐）"></a>方法1：将Windows的时钟基准切换为UTC（推荐）</h3><p>笔者当然优先选择这一个方案。</p><p>我们按 Win+R 输入 regedit 打开注册表编辑器，</p><p>然后导航到以下路径：</p><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation </span><br></pre></td></tr></table></figure><p>新建 <strong>DWORD(32位) 值<!----></strong>，名称设置为 <strong>RealTimeIsUniversal</strong> ，并将这一项的值修改为 <strong>1</strong> </p><p>重启系统，很快你就能看到你的系统时间正常了。</p><h3 id="方法2：将Linux的时钟基准切换为RTC"><a href="#方法2：将Linux的时钟基准切换为RTC" class="headerlink" title="方法2：将Linux的时钟基准切换为RTC"></a>方法2：将Linux的时钟基准切换为RTC</h3><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">timedatectl set-local-rtc 1 --adjust-system-clock</span><br></pre></td></tr></table></figure><h3 id="为什么笔者更推荐设置Windows时钟基准为UTC："><a href="#为什么笔者更推荐设置Windows时钟基准为UTC：" class="headerlink" title="为什么笔者更推荐设置Windows时钟基准为UTC："></a>为什么笔者更推荐设置Windows时钟基准为UTC：</h3><p><strong>Linux的大多数程序和服务是遵循POSIX标准设计的</strong><br>如果你将Linux的时钟基准切换为RTC，那么:</p><ul><li>一些程序和服务会在日志中记录错误的时间</li><li>个人脚本、cron任务可能会出现延迟&#x2F;提前执行的问题</li></ul>]]>
    </content>
    <id>https://www.anniharax.com/posts/ad92a320-875e-11f1-b87b-7da3639f2173/</id>
    <link href="https://www.anniharax.com/posts/ad92a320-875e-11f1-b87b-7da3639f2173/"/>
    <published>2026-04-18T11:42:54.000Z</published>
    <summary>解决Linux与Windows时差问题的两种方式</summary>
    <title>告别时间错乱！彻底解决Linux与Windows双系统时间的同步问题</title>
    <updated>2026-08-15T06:06:27.055Z</updated>
  </entry>
</feed>
