<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Jinghuashang</title>
  
  <subtitle>屑殇的小破站</subtitle>
  <link href="https://jinghuashang.cn/atom.xml" rel="self"/>
  
  <link href="https://jinghuashang.cn/"/>
  <updated>2024-09-25T02:23:21.135Z</updated>
  <id>https://jinghuashang.cn/</id>
  
  <author>
    <name>Jinghuashang</name>
    
  </author>
  
  <generator uri="https://hexo.io/">Hexo</generator>
  
  <entry>
    <title>追番自动化</title>
    <link href="https://jinghuashang.cn/posts/8f622332.html"/>
    <id>https://jinghuashang.cn/posts/8f622332.html</id>
    <published>2024-09-23T13:15:25.000Z</published>
    <updated>2024-09-25T02:23:21.135Z</updated>
    
    <content type="html"><![CDATA[<p class="fp-label is-center is-logo is-large">自动化追番计划</p><h2 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h2><blockquote><p>你还在为了没米或没渠道而烦恼吗<br>还在为了每次追番都要手动下载而烦恼吗<br>你还在下一个看一个，没有整合的客户端烦恼吗</p></blockquote><p><strong>接下来跟着咱走，让你轻松追番</strong> 👋👋</p><h2 id="准备工作"><a href="#准备工作" class="headerlink" title="准备工作"></a>准备工作</h2><h3 id="了解工具"><a href="#了解工具" class="headerlink" title="了解工具"></a>了解工具</h3><ul><li><strong><a href="https://mikanime.tv/">mikan</a></strong>: 简称蜜柑，是番剧磁力收集站，大部分番剧都可以在这里找到。</li><li><strong><a href="https://github.com/wushuo894/ani-rss">ani-rss</a></strong>: 一个<code>好用</code>的追番工具，可以自动订阅番剧,自动推送到qb下载番剧。</li><li><strong><a href="https://nyaa.si/">nyaa</a></strong>: 番剧磁力收集站，和蜜柑类似，但是这个里包含里/番，因此肯定GFW了(毕竟mikan本体也被GFW了)，所以你要用这个就得魔法了（</li><li><strong><a href="https://github.com/qbittorrent/qBittorrent">qbittorrent</a></strong>: 一个开源的磁力下载工具，可以自动下载番剧。</li><li><strong><a href="https://www.autobangumi.org/">autobangumi</a></strong>: 一个追番工具，可以自动订阅番剧，自动推送到qb下载番剧。</li><li><strong>emby</strong>: 一个媒体服务器，可以整合你的番剧，让你在手机、平板、电脑上都可以观看。</li></ul><h3 id="免责声明"><a href="#免责声明" class="headerlink" title="免责声明"></a>免责声明</h3><ul><li>本教程仅用于学习交流，请勿用于商业用途。</li><li>本教程中的所有工具均为开源软件，请遵守相关法律法规。</li><li>本教程中的所有工具虽由作者提供，但作者不对任何因使用本教程中的工具而造成的损失负责。</li></ul><h2 id="选择的英雄-番剧订阅工具"><a href="#选择的英雄-番剧订阅工具" class="headerlink" title="选择的英雄 (番剧订阅工具)"></a>选择的英雄 (番剧订阅工具)</h2><h3 id="ANi-RSS"><a href="#ANi-RSS" class="headerlink" title="ANi-RSS"></a>ANi-RSS</h3><p><strong>实现功能</strong></p><ul><li>自动下载</li><li>自动识别季数</li><li>自动重命名</li><li>文件已下载自动跳过</li><li>自动删除已完成任务</li><li>自定义 qBittorrent 设置</li><li>RSS 关键字过滤</li><li>集数偏移</li><li>自动识别集数偏移</li><li>自定义间隔</li><li>适配移动端</li><li>支持拼音排序与搜索</li><li>支持自定义代理</li><li>自动洗版</li><li>支持X.5集</li><li>支持动漫花园</li><li>支持windows端exe</li><li>季命名方式可选</li><li>支持自定义mikan地址</li><li>IP白名单登录校验</li><li>订阅可设置自定义下载位置</li><li>支持自动切换暗黑模式</li><li>支持代理测试</li><li>支持nyaa订阅</li><li>自动使用TMDB的标题</li><li>支持ova</li><li>支持 Telegram 和 WebHook 通知</li><li>支持RSS订阅预览</li><li>获取标题时带上年份</li><li>支持 Transmission qBittorrent Aria2</li><li>支持BGM自动点格子</li></ul><p><img src="https://img.jinghuashang.cn/blog/ani-rss.webp" alt=""><br><img src="https://img.jinghuashang.cn/blog/ani-rss-1.webp" alt=""></p><h3 id="Autobangumi"><a href="#Autobangumi" class="headerlink" title="Autobangumi"></a>Autobangumi</h3><blockquote><p><code>AutoBangumi</code> 是基于 RSS 的全自动追番整理下载工具。只需要在 Mikan Project 等网站上订阅番剧，就可以全自动追番。 并且整理完成的名称和目录可以直接被 Plex、Jellyfin 等媒体库软件识别，无需二次刮削。</p></blockquote><h4 id="功能说明"><a href="#功能说明" class="headerlink" title="功能说明"></a>功能说明</h4><ul><li>简易单次配置就能持续使用</li><li>无需介入的 <code>RSS</code> 解析器，解析番组信息并且自动生成下载规则。</li><li><p>番剧文件整理:</p>  <figure class="highlight plaintext"><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></pre></td><td class="code"><pre><span class="line">Bangumi</span><br><span class="line">├── bangumi_A_title</span><br><span class="line">│   ├── Season 1</span><br><span class="line">│   │   ├── A S01E01.mp4</span><br><span class="line">│   │   ├── A S01E02.mp4</span><br><span class="line">│   │   ├── A S01E03.mp4</span><br><span class="line">│   │   └── A S01E04.mp4</span><br><span class="line">│   └── Season 2</span><br><span class="line">│       ├── A S02E01.mp4</span><br><span class="line">│       ├── A S02E02.mp4</span><br><span class="line">│       ├── A S02E03.mp4</span><br><span class="line">│       └── A S02E04.mp4</span><br><span class="line">├── bangumi_B_title</span><br><span class="line">│   └─── Season 1</span><br></pre></td></tr></table></figure></li><li><p>全自动重命名，重命名后 99% 以上的番剧可以直接被媒体库软件直接刮削</p>  <figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">[Lilith-Raws] Kakkou no Iinazuke - 07 [Baha][WEB-DL][1080p][AVC AAC][CHT][MP4].mp4 </span><br><span class="line">&gt;&gt;</span><br><span class="line"> Kakkou no Iinazuke S01E07.mp4</span><br></pre></td></tr></table></figure></li><li><p>自定义重命名，可以根据上级文件夹对所有子文件重命名。</p></li><li>季中追番可以补全当季遗漏的所有剧集</li><li>高度可自定义的功能选项，可以针对不同媒体库软件微调</li><li>支持多种 RSS 站点，支持聚合 RSS 的解析。</li><li>无需维护完全无感使用</li><li>内置 TDMB 解析器，可以直接生成完整的 TMDB 格式的文件以及番剧信息。</li></ul><h2 id="部署订阅下载工具-默认环境已使用Docker"><a href="#部署订阅下载工具-默认环境已使用Docker" class="headerlink" title="部署订阅下载工具 (默认环境已使用Docker)"></a>部署订阅下载工具 (默认环境已使用Docker)</h2><h3 id="qBittorrent"><a href="#qBittorrent" class="headerlink" title="qBittorrent"></a>qBittorrent</h3><h4 id="1Panel"><a href="#1Panel" class="headerlink" title="1Panel"></a>1Panel</h4><p>因为 1Panel 已经提供了qBittorrent 在应用商店，所以可以直接在应用完成安装。</p><h4 id="Docker-cli"><a href="#Docker-cli" class="headerlink" title="Docker cli"></a>Docker cli</h4><figure class="highlight plaintext"><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></pre></td><td class="code"><pre><span class="line">docker run -d \</span><br><span class="line">  --name=qbittorrent \</span><br><span class="line">  -e PUID=1000 \</span><br><span class="line">  -e PGID=1000 \</span><br><span class="line">  -e TZ=Etc/UTC \</span><br><span class="line">  -e WEBUI_PORT=8080 \</span><br><span class="line">  -e TORRENTING_PORT=6881 \</span><br><span class="line">  -p 8080:8080 \</span><br><span class="line">  -p 6881:6881 \</span><br><span class="line">  -p 6881:6881/udp \</span><br><span class="line">  -v /opt/qbittorrent/appdata:/config \ #配置文件目录</span><br><span class="line">  -v /webdav/downloads:/downloads `#下载目录` \</span><br><span class="line">  --restart unless-stopped \</span><br><span class="line">  lscr.io/linuxserver/qbittorrent:latest</span><br></pre></td></tr></table></figure><h4 id="Docker-compose"><a href="#Docker-compose" class="headerlink" title="Docker compose"></a>Docker compose</h4><ol><li><p>创建目录，并生成 <code>docker-compose.yml</code> 文件，内容如下</p><figure class="highlight plaintext"><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><span class="line">18</span><br></pre></td><td class="code"><pre><span class="line">services:</span><br><span class="line">  qbittorrent:</span><br><span class="line">    image: lscr.io/linuxserver/qbittorrent:latest</span><br><span class="line">    container_name: qbittorrent</span><br><span class="line">    environment:</span><br><span class="line">      - PUID=1000</span><br><span class="line">      - PGID=1000</span><br><span class="line">      - TZ=Etc/UTC</span><br><span class="line">      - WEBUI_PORT=8080</span><br><span class="line">      - TORRENTING_PORT=6881</span><br><span class="line">    volumes:</span><br><span class="line">      - /opt/qbittorrent/appdata:/config #配置文件目录</span><br><span class="line">      - /webdav/downloads:/downloads #下载目录</span><br><span class="line">    ports:</span><br><span class="line">      - 8080:8080</span><br><span class="line">      - 6881:6881</span><br><span class="line">      - 6881:6881/udp</span><br><span class="line">    restart: unless-stopped</span><br></pre></td></tr></table></figure></li><li><p>执行 <code>docker-compose up -d</code> 启动容器</p></li></ol><h4 id="Windows"><a href="#Windows" class="headerlink" title="Windows"></a>Windows</h4><p><a href="https://www.fosshub.com/qBittorrent.html">点我前往下载</a></p><h3 id="ANI-RSS"><a href="#ANI-RSS" class="headerlink" title="ANI-RSS"></a>ANI-RSS</h3><h4 id="Linux"><a href="#Linux" class="headerlink" title="Linux"></a>Linux</h4><ol><li>访问<a href="https://github.com/wushuo894/ani-rss/releases">Github库</a>下载 ani-rss-jar-with-dependencies.jar 文件</li><li>然后使用命令行 java -jar ani-rss-jar-with-dependencies.jar 开始运行ani</li></ol><h4 id="Docker-cli-1"><a href="#Docker-cli-1" class="headerlink" title="Docker cli"></a>Docker cli</h4><figure class="highlight plaintext"><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">docker run -d \</span><br><span class="line">--name ani-rss \</span><br><span class="line">-v /opt/ani-rss/config:/config \ #配置文件目录，根据需要修改</span><br><span class="line">-v /webdav/Media/:/Media \ #媒体文件目录，建议设置和qb一样</span><br><span class="line">-p 7789:7789 \</span><br><span class="line">-e PORT=&quot;7789&quot; \</span><br><span class="line">-e CONFIG=&quot;/config&quot; \</span><br><span class="line">-e TZ=Asia/Shanghai \</span><br><span class="line">--restart always \</span><br><span class="line">wushuo894/ani-rss</span><br></pre></td></tr></table></figure><h4 id="Docker-compose-1"><a href="#Docker-compose-1" class="headerlink" title="Docker compose"></a>Docker compose</h4><ol><li>创建一个目录，并生成 <code>docker-compose.yml</code> 文件，内容如下</li></ol><figure class="highlight plaintext"><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></pre></td><td class="code"><pre><span class="line">version: &quot;3&quot;</span><br><span class="line">services:</span><br><span class="line">  ani-rss:</span><br><span class="line">    container_name: ani-rss</span><br><span class="line">    volumes:</span><br><span class="line">      - /opt/ani-rss/config:/config #配置文件目录，根据需要修改</span><br><span class="line">      - /webdav/Media/:/Media #媒体文件目录，建议设置和qb一样</span><br><span class="line">    ports:</span><br><span class="line">      - 7789:7789</span><br><span class="line">    environment:</span><br><span class="line">      - PORT=7789</span><br><span class="line">      - CONFIG=/config</span><br><span class="line">      - TZ=Asia/Shanghai</span><br><span class="line">    restart: always</span><br><span class="line">    image: wushuo894/ani-rss</span><br></pre></td></tr></table></figure><ol><li>使用命令行 docker-compose up -d 启动ani</li></ol><h4 id="Windows-1"><a href="#Windows-1" class="headerlink" title="Windows"></a>Windows</h4><ol><li>访问<a href="https://github.com/wushuo894/ani-rss/releases">Github库</a>下载 ani-rss-launcher.exe 文件</li><li>然后直接运行 ani-rss-launcher.exe </li></ol><h2 id="配置"><a href="#配置" class="headerlink" title="配置"></a>配置</h2><h3 id="qBittorrent-1"><a href="#qBittorrent-1" class="headerlink" title="qBittorrent"></a>qBittorrent</h3><ol><li>访问 ip:8080 进入qbittorrent webui ,如果是1panel商店安装的端口号是 8181</li><li>进入后点击设置里的webui, 修改默认用户名及密码(如果你不打算暴露qb到公网，可以不修改)。并勾选 <code>对本地主机上的客户端跳过身份验证</code> 和 <code>对 IP 子网白名单中的客户端跳过身份验证</code></li></ol><h3 id="ani-rss"><a href="#ani-rss" class="headerlink" title="ani-rss"></a>ani-rss</h3><ol><li>访问 ip:7789 进入ani-rss webui ,默认 用户名: admin 密码: admin<br><img src="https://img.jinghuashang.cn/blog/20240923/ani-rss-1-1.webp" alt=""></li><li>点击设置，修改默认用户名和密码<br><img src="https://img.jinghuashang.cn/blog/20240923/ani-rss-1-2.webp" alt=""></li><li>设置qb地址，在 ani 下载设置里选择qb(默认)，在地址里填入 <a href="http://ip:8080">http://ip:8080</a> 。 若之前qb两个你勾选了就不用填入用户名和密码，但如果你是容器安装请填入用户名和密码。完成设置后点击测试便可以知道是否连接成功<br><img src="https://img.jinghuashang.cn/blog/20240923/be464d824395d358ea91e9ab1b05eaeb.webp" alt=""></li><li>设置qb下载地址，上面配置完后下拉可看见保存位置和剧场版的保存位置 (注意这个下载配置的路径就是后面获取番剧后qb下载的路径，同时你如果要启用 <code>自动跳过</code> 这个功能，在ani docke配置时你也要映射这个路径到docker)<br><img src="https://img.jinghuashang.cn/blog/20240923/b7a7f461d7713bfff27da5d03eca0121.webp" alt=""></li></ol><h4 id="推荐配置"><a href="#推荐配置" class="headerlink" title="推荐配置"></a>推荐配置</h4><div class="fp-checkbox"><input type="checkbox" disabled><p>checked, 检测是否死种</p></div><div class="fp-checkbox"><input type="checkbox" disabled><p>checked, RSS开关</p></div><div class="fp-checkbox"><input type="checkbox" disabled><p>checked, 自动重命名</p></div><div class="fp-checkbox"><input type="checkbox" disabled><p>checked, 按星期展示</p></div><div class="fp-checkbox"><input type="checkbox" disabled><p>checked, 自动跳过</p></div><div class="fp-checkbox"><input type="checkbox" disabled><p>checked, 自动禁用订阅</p></div><div class="fp-checkbox"><input type="checkbox" disabled><p>checked, 显示视频列表</p></div><div class="fp-checkbox"><input type="checkbox" disabled><p>checked, 自动禁用订阅</p></div><h2 id="开始追番"><a href="#开始追番" class="headerlink" title="开始追番"></a>开始追番</h2><ol><li>在主页面找到 <code>+ 添加</code> 不出意外他是蓝色的<br><img src="https://img.jinghuashang.cn/blog/20240923/130b4f94-ec3f-4437-9a4c-01f2e127b503.webp" alt=""><br><strong>错误示范</strong><br><img src="https://img.jinghuashang.cn/blog/20240923/1e81959697bf31f15560f3fb6125e60b.webp" alt=""><br><img src="https://img.jinghuashang.cn/blog/20240923/660B5042239E09C04BC7695488B0063E.webp" alt=""></li><li>点击后会出现下图界面，并如界面所说不必在 mikan 网站添加订阅, 你可以通过上方👆 [Mikan] 按钮浏览字幕组订阅，请不要点到Nyaa去了，Nyaa是不带搜索功能只能手动添加RSS<br><img src="https://img.jinghuashang.cn/blog/20240923/7cd3e6a0f24dc3cb1d2ce85f83682e11.webp" alt=""><br><strong>错误示范</strong><br><img src="https://img.jinghuashang.cn/blog/20240923/CF96FE83E8390DE1A83235CD30586A76.webp" alt=""></li><li>页面出现后会有两个选择，一个是是手动搜索，二是本季度正在放映的番剧。<br><img src="https://img.jinghuashang.cn/blog/20240923/d84bbf2dc68934e4a91a2eaf4483fd54.webp" alt=""></li><li>本季度正在热播番剧由上映时间分类到了星期，若是你想订阅本季度的番剧就直接在星期内查找，并展开番剧就能看见每个字幕组，选个你喜欢的字幕组添加即可。添加后会返回上级界面，在右下角点击确定便可以进入下一步的配置<br><img src="https://img.jinghuashang.cn/blog/20240923/8cad1f89f3c5041c8eb08825e0f6e314.webp" alt=""><br><img src="https://img.jinghuashang.cn/blog/20240923/fb1f4c5e9f7e3a9a361b385b59a60d25.webp" alt=""></li><li>进入后你会看见如下界面，如图中我配置的是  <code>战国妖狐</code> 这个番剧，字幕组整理的标题为 <code>战国妖狐 千魔混沌篇</code> , 而下面 <code>TMDB</code> 整理的是一个大类。你肯定就要问了两个有啥区别，如果你没用emby之类的这个关系其实不大默认这个标题就行，但如果你是用了emby之类的非常建议将标题改为与 <code>TMDB</code> 一样，这样emby就会自动识别番剧，并自动添加海报等。<br><img src="https://img.jinghuashang.cn/blog/20240923/32e946ca77c90a54d9f1abb2b33a9696.webp" alt=""></li><li>配置完成后你可以点击预览看看效果如何，没问题点关闭返回后确认就能开始自动追番了<br><img src="https://img.jinghuashang.cn/blog/20240923/aa139113c2d367fae5fa23ca2b899926.webp" alt=""><br><img src="https://img.jinghuashang.cn/blog/20240923/b52ccb15326e431c7b86a2863ad6f7de.webp" alt=""><br><img src="https://img.jinghuashang.cn/blog/20240923/b3e6b7c5031cd5016d3a428bf68d1e8e.webp" alt=""></li><li>返回主页，这时番剧会出现一个按钮，点开就能看番剧拉 (不过不建议在这里看，因为部分番剧是hevc编码，有些浏览器还不支持)<br><img src="https://img.jinghuashang.cn/blog/20240923/fc3dd0f674a514d84e871f9bd6da70c9.webp" alt=""><br><img src="https://img.jinghuashang.cn/blog/20240923/372eb057d0f3cb128776946a5e24802e.webp" alt=""><br><img src="https://img.jinghuashang.cn/blog/20240923/40196463f99effeb8659740bcd295a7d.webp" alt=""></li></ol><h2 id="高级玩法"><a href="#高级玩法" class="headerlink" title="高级玩法"></a>高级玩法</h2><h3 id="最快追番，繁简共存"><a href="#最快追番，繁简共存" class="headerlink" title="最快追番，繁简共存"></a>最快追番，繁简共存</h3><p>每个字幕组的更新都不同，有的劳模字幕组凌晨更新的番剧早上就能更新出来。有的字幕组得等几天才能更新，这导致我们追番时间不再固定，得看字幕组脸色行事，这是很让人不爽的。所以我们可以先看更新快的繁体字幕组，等简体字幕更新后再上简体。当然如果你说你不会繁体，那没办法了。你要么等简体，要么简化繁体。</p><ol><li>在订阅再添加一个ANI源，这个是字幕组（除去21°）更新最快的，将标题设置为 <code>番剧名 + CHT</code>，比如 <code>败犬女主太多了！CHT</code>。并且开启自定义下载，将保存地址设置为简体同目录，比如简体保存为 <code>/115/bangumi/败犬女主太多了！/Season 1</code> 那么CHT也设置为同样位置。你如果不是emby可以不用这样设置，这样配置是为了方便emby自动识别。</li></ol><p><img src="https://img.jinghuashang.cn/blog/20240923/d81bdf675e0e204fa9042b16be405f1d.webp" alt=""><br><img src="https://img.jinghuashang.cn/blog/20240923/b351d4e74469661a006d02c21ccd8666.webp" alt=""></p><h3 id="洗版-单版本保留"><a href="#洗版-单版本保留" class="headerlink" title="洗版(单版本保留)"></a>洗版(单版本保留)</h3><p>这个玩法和上一个玩法类似，同样是先下载ANI的繁体版本，但这个后面更新的简体版本会覆盖之前的繁体版本。相当于把繁体洗成简体，所以叫做洗版。我到是不喜欢这个方法，因为有些订阅是mkv格式，但是ani的是mp4格式，导致覆盖的时候会出现两个版本，在emby内不好分辨哪个是简体哪个是繁体。</p><ol><li>在设置 &gt; 基本设置 中开启 <code>备用RSS</code> 功能，因为ani-rss作者被催了就支持了这个功能，但是ab得直接订阅两个，没ani-rss方便管理。<br><img src="https://img.jinghuashang.cn/blog/20240923/70a2846ad6fa5928507e5cb22295229e.webp" alt=""></li><li>选择你要设置备用rss的订阅，在备用RSS处点击管理<br><img src="https://img.jinghuashang.cn/blog/20240923/a7accd549a22a8875c7a1c72a221c9a8.webp" alt=""></li><li>你可以选择手动添加或者自动添加 ANI源，添加完后保存即可，ani-rss会自动更新下载的<br><img src="https://img.jinghuashang.cn/blog/20240923/5dc24730e246cc69d8fe71869524df98.webp" alt=""></li></ol><h2 id="Ani-RSS-＆-AutoBangumi-浅谈"><a href="#Ani-RSS-＆-AutoBangumi-浅谈" class="headerlink" title="Ani-RSS ＆ AutoBangumi 浅谈"></a>Ani-RSS ＆ AutoBangumi 浅谈</h2><p>在了解到ani-rss之前咱也是用ab的（AutoBangumi），那为何跑路了，ani-rss的优势在哪呢？</p><h3 id="技术栈与开发语言"><a href="#技术栈与开发语言" class="headerlink" title="技术栈与开发语言"></a>技术栈与开发语言</h3><ul><li><strong>ani-rss</strong>：使用Java语言开发，Java是一种广泛使用的编程语言，以其稳定性和跨平台能力著称。</li><li><strong>autobangumi</strong>：使用Python语言开发，Python以其简洁明了的语法和强大的库支持在开发者中广受欢迎。</li></ul><h3 id="项目维护与活跃度"><a href="#项目维护与活跃度" class="headerlink" title="项目维护与活跃度"></a>项目维护与活跃度</h3><ul><li><strong>ani-rss</strong>：<ul><li>维护者数量较少，主要活跃维护者为原作者。</li><li>项目更新频繁，对issue的响应速度快，修复及时。</li></ul></li><li><strong>autobangumi</strong>：<ul><li>维护者数量多，达到38位。</li><li>尽管维护者众多，项目的活跃度相对较低，更新不频繁，对issue的响应可能较慢。</li></ul></li></ul><h3 id="功能支持与实现"><a href="#功能支持与实现" class="headerlink" title="功能支持与实现"></a>功能支持与实现</h3><ul><li><strong>ani-rss</strong>的优势：<ul><li>高度的用户反馈采纳，新功能实现迅速。</li><li>活跃的开发者确保了项目能够紧跟用户需求。</li></ul></li><li><strong>ani-rss</strong>的劣势：<ul><li>不支持某些特定功能，例如对 qbittorrent 的管理，TMDB 元数据生成等。</li></ul></li><li><strong>autobangumi</strong>的优势与劣势：<ul><li>优势：可能拥有更为广泛的社区支持和更稳定的用户基础。</li><li>劣势：由于活跃度较低，新功能添加和问题修复可能不够及时。</li></ul></li></ul><h3 id="总结"><a href="#总结" class="headerlink" title="总结"></a>总结</h3><p>ani-rss和autobangumi各有千秋，选择哪个更多取决于用户的具体需求和对项目活跃度的期望。ani-rss可能更适合需要快速响应和频繁更新的用户，而autobangumi可能更适合那些寻求更广泛社区支持和不太关心更新频率的用户。<br>需要注意的是，项目的活跃度和维护情况可能会随着时间而变化，用户在选择时应考虑最新的项目状态和自己的实际需求。</p>]]></content>
    
    
      
      
    <summary type="html">&lt;p class=&quot;fp-label is-center is-logo is-large&quot;&gt;自动化追番计划&lt;/p&gt;
&lt;h2 id=&quot;前言&quot;&gt;&lt;a href=&quot;#前言&quot; class=&quot;headerlink&quot; title=&quot;前言&quot;&gt;&lt;/a&gt;前言&lt;/h2&gt;&lt;blockquote&gt;
&lt;</summary>
      
    
    
    
    
    <category term="mikan" scheme="https://jinghuashang.cn/tags/mikan/"/>
    
    <category term="ani-rss" scheme="https://jinghuashang.cn/tags/ani-rss/"/>
    
    <category term="nyaa" scheme="https://jinghuashang.cn/tags/nyaa/"/>
    
    <category term="qbittorrent" scheme="https://jinghuashang.cn/tags/qbittorrent/"/>
    
    <category term="autobangumi" scheme="https://jinghuashang.cn/tags/autobangumi/"/>
    
    <category term="emby" scheme="https://jinghuashang.cn/tags/emby/"/>
    
    <category term="docker" scheme="https://jinghuashang.cn/tags/docker/"/>
    
  </entry>
  
  <entry>
    <title>GitHub + NPM + PicList 图床方案</title>
    <link href="https://jinghuashang.cn/posts/5764339f.html"/>
    <id>https://jinghuashang.cn/posts/5764339f.html</id>
    <published>2024-06-09T10:16:54.000Z</published>
    <updated>2024-06-10T02:03:00.071Z</updated>
    
    <content type="html"><![CDATA[<details class="flatpaper-note flatpaper-note--warning"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>免责声明</p><blockquote><p>此方法并不道德，因为你只用付出精力，而别人需要给你提供存储和cdn加速<br>当然，白嫖万岁！！！</p></blockquote></div></details><h1 id="GitHub-NPM-PicList-图床方案"><a href="#GitHub-NPM-PicList-图床方案" class="headerlink" title="GitHub + NPM + PicList 图床方案"></a>GitHub + NPM + PicList 图床方案</h1><h2 id="开始准备"><a href="#开始准备" class="headerlink" title="开始准备"></a>开始准备</h2><ol><li>一个功能强大的GitHub账号，成为您的得力助手，助您实现各种自动化操作，提高工作效率。</li><li>一个实用的NPM账号，不仅能存储图片，还能轻松将图片发布到CDN，让您的图片加载速度更快，用户体验更佳。</li><li>PicList，一款方便快捷的工具，助您轻松上传图片，管理图片资源，让您的图片工作变得更加简单高效。</li><li>图片，如果没有准备好图片，那么您搭建的图床将无法发挥其存储和展示图片的功能，如同虚设。因此，准备好图片，让您的图床发挥其真正的价值。</li></ol><h2 id="准备前言"><a href="#准备前言" class="headerlink" title="准备前言"></a>准备前言</h2><p>此方案专为那些希望拥有图床但又不具备自建能力的用户设计。它采用<code>Github Action</code>来实现自动化流程，利用<code>NPM</code>作为图床的存储后端，并通过<code>PicList</code>这一便捷的上传工具来管理您的图片。此外，为了提升图片加载速度，我们还选择了<code>NPM</code>提供的公益CDN服务进行内容分发。</p><p>需要特别注意的是，由于我们使用的是<code>NPM</code>作为图床，每次更新图片时都需要更新版本号，这可能在一定程度上增加了操作的复杂性。如果您对这一点感到不便，可能需要考虑其他更适合自己的解决方案。</p><h2 id="开始搭建"><a href="#开始搭建" class="headerlink" title="开始搭建"></a>开始搭建</h2><h3 id="1-创建Github仓库"><a href="#1-创建Github仓库" class="headerlink" title="1. 创建Github仓库"></a>1. 创建Github仓库</h3><ol><li><p>创建一个仓库，仓库名随意，例如：<code>jinghuashang-img-bed</code></p><p><img src="https://img.jinghuashang.cn/hexo/img-bed/img-bed-1.webp" alt=""></p></li><li><p>公共还是私有看你需要，毕竟不管哪个你都是要部署到公网。</p></li></ol><h3 id="2-创建NPM仓库"><a href="#2-创建NPM仓库" class="headerlink" title="2. 创建NPM仓库"></a>2. 创建NPM仓库</h3><p>对于熟悉<code>npm</code>包创建流程的用户来说，这里的内容应该是不言自明的。如果您对如何创建<code>npm</code>包已经很熟悉，那么您可以继续阅读下去，因为接下来的内容将基于您已经具备这一知识前提。如果您对<code>npm</code>包的创建不是很了解，那么接下来的信息可能对您来说不够直观，您可能需要先补充相关知识。总之，这里我们默认您对<code>npm</code>包的创建和发布有一定的了解。</p><ol><li>创建包，包名随意，例如：<code>jinghuashang-img-bed</code></li></ol><h3 id="3-配置PicList工具"><a href="#3-配置PicList工具" class="headerlink" title="3. 配置PicList工具"></a>3. 配置PicList工具</h3><ol><li><p>下载<a href="https://github.com/Kuingsmile/PicList/releases/latest">PicList</a></p></li><li><p>安装完成后启动程序，选择图床中的GitHub</p><p><img src="https://img.jinghuashang.cn/hexo/img-bed/img-bed-2.webp" alt=""></p></li><li><p>添加图床配置</p><p>获取<a href="https://github.com/settings/tokens">tokens</a></p><p>选择第二个就行了</p><p><img src="https://img.jinghuashang.cn/hexo/img-bed/img-bed-7.webp" alt=""></p><p><img src="https://img.jinghuashang.cn/hexo/img-bed/img-bed-6.webp" alt=""></p><p><img src="https://img.jinghuashang.cn/hexo/img-bed/img-bed-3.webp" alt=""></p><p><img src="https://img.jinghuashang.cn/hexo/img-bed/img-bed-4.webp" alt=""></p></li></ol><h3 id="4-配置GitHub-Action"><a href="#4-配置GitHub-Action" class="headerlink" title="4. 配置GitHub Action"></a>4. 配置GitHub Action</h3><ol><li><p>先为Github仓库添加我们的上传和处理目录，在本地创建 <code>raw</code> <code>webp</code> <code>imgs</code> 三个目录，并使用<code>git</code>上传目录。注意，在目录下要创建一个隐藏文件，不然上传后等于没上传，比如创建一个名为 <code>.keep</code>  的文件，同时创建你npm包的package.json</p><p><img src="https://img.jinghuashang.cn/hexo/img-bed/img-bed-5.webp" alt=""></p></li><li><p>选择仓库Settings中的secrets/actions ,分别添加 <code>EMAIL</code> <code>NAME</code> <code>NPM_TOKEN</code> ENAIL 为GitHub注册邮箱，NAME为Github用户名，NPM_TOKEN为NPM的token，至于token自己找</p></li><li><p>创建仓库 Actions</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><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><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br><span class="line">80</span><br><span class="line">81</span><br><span class="line">82</span><br><span class="line">83</span><br><span class="line">84</span><br><span class="line">85</span><br><span class="line">86</span><br><span class="line">87</span><br><span class="line">88</span><br><span class="line">89</span><br><span class="line">90</span><br><span class="line">91</span><br><span class="line">92</span><br><span class="line">93</span><br><span class="line">94</span><br><span class="line">95</span><br><span class="line">96</span><br></pre></td><td class="code"><pre><span class="line"> name: img2webp &amp; Deploy</span><br><span class="line"></span><br><span class="line"><span class="comment"># 手动执行</span></span><br><span class="line"></span><br><span class="line">on:</span><br><span class="line">  release:</span><br><span class="line">     types:</span><br><span class="line">       - published</span><br><span class="line"></span><br><span class="line">  workflow_dispatch:</span><br><span class="line"></span><br><span class="line"><span class="built_in">jobs</span>:</span><br><span class="line">  publish-npm:</span><br><span class="line">    runs-on: ubuntu-latest</span><br><span class="line">    steps:</span><br><span class="line">      - uses: actions/checkout@v2</span><br><span class="line">      - uses: actions/setup-node@v1</span><br><span class="line">        with:</span><br><span class="line">          node-version: <span class="string">&quot;12.x&quot;</span></span><br><span class="line">          registry-url: https://registry.npmjs.org/</span><br><span class="line"></span><br><span class="line">      - name: hp</span><br><span class="line">        run: |</span><br><span class="line">          <span class="comment"># 遍历指定目录中的每个文件</span></span><br><span class="line">          <span class="keyword">for</span> file <span class="keyword">in</span> raw/*; <span class="keyword">do</span></span><br><span class="line">          <span class="comment"># 检查文件是否为普通文件（排除目录）</span></span><br><span class="line">              <span class="keyword">if</span> [ -f <span class="string">&quot;<span class="variable">$file</span>&quot;</span> ]; <span class="keyword">then</span></span><br><span class="line">              <span class="comment"># 获取文件名（不包括路径）和扩展名</span></span><br><span class="line">              filename=$(<span class="built_in">basename</span> <span class="string">&quot;<span class="variable">$file</span>&quot;</span>)</span><br><span class="line">              extension=<span class="string">&quot;<span class="variable">$&#123;filename##*.&#125;</span>&quot;</span></span><br><span class="line">              filename_without_extension=<span class="string">&quot;<span class="variable">$&#123;filename%.*&#125;</span>&quot;</span></span><br><span class="line">            </span><br><span class="line">              <span class="comment"># 使用mktemp生成一个新的随机文件名（不包含扩展名）</span></span><br><span class="line">              new_name=$(<span class="built_in">mktemp</span> -u XXXXXXXXXX)</span><br><span class="line">            </span><br><span class="line">              <span class="comment"># 重建新的文件名，包括随机字符串和原始扩展名</span></span><br><span class="line">              new_filename=<span class="string">&quot;<span class="variable">$&#123;new_name&#125;</span>.<span class="variable">$&#123;extension&#125;</span>&quot;</span></span><br><span class="line">              </span><br><span class="line">              <span class="comment"># 重命名文件，保留原始扩展名</span></span><br><span class="line">              <span class="built_in">mv</span> <span class="string">&quot;<span class="variable">$file</span>&quot;</span> <span class="string">&quot;raw/<span class="variable">$new_filename</span>&quot;</span></span><br><span class="line">              <span class="built_in">echo</span> <span class="string">&quot;Renamed <span class="variable">$file</span> to<span class="variable">$new_filename</span>&quot;</span></span><br><span class="line">            <span class="keyword">fi</span></span><br><span class="line">          <span class="keyword">done</span></span><br><span class="line">          </span><br><span class="line">      <span class="comment"># raw/ 作为原始图片存储，webp/ 作为压缩图片存储处，最后保存转换后的图片到 imgs/，可以自行修改为对应的文件夹位置</span></span><br><span class="line">      <span class="comment"># 安装相关插件，转换图片</span></span><br><span class="line">      - name: Install &amp; Convert</span><br><span class="line">        run: |</span><br><span class="line">          npm install -g webp-batch-convert@0.1.2</span><br><span class="line">          <span class="comment"># 要注意这里的版本号需要添加，如果不添加默认使用@Latest会出现问题</span></span><br><span class="line">          cwebp-batch --<span class="keyword">in</span> raw --out webp -q 75 -quiet</span><br><span class="line">          <span class="built_in">mv</span> webp/*.webp imgs/</span><br><span class="line">      - name: Read package.json and bump version</span><br><span class="line">        <span class="built_in">id</span>: bump-version</span><br><span class="line">        run: |</span><br><span class="line">          <span class="comment"># 读取package.json中的版本号</span></span><br><span class="line">          version=$(<span class="built_in">cat</span> package.json | grep -oP <span class="string">&#x27;&quot;version&quot;: &quot;\K[^&quot;]+&#x27;</span>)</span><br><span class="line">        </span><br><span class="line">          <span class="comment"># 解析版本号并增加</span></span><br><span class="line">          IFS=<span class="string">&#x27;.&#x27;</span> <span class="built_in">read</span> -ra VER &lt;&lt;&lt; <span class="string">&quot;<span class="variable">$version</span>&quot;</span></span><br><span class="line">          ((VER[<span class="number">2</span>]++))</span><br><span class="line">          new_version=<span class="string">&quot;<span class="variable">$&#123;VER[0]&#125;</span>.<span class="variable">$&#123;VER[1]&#125;</span>.<span class="variable">$&#123;VER[2]&#125;</span>&quot;</span></span><br><span class="line">        </span><br><span class="line">          <span class="comment"># 更新package.json中的版本号</span></span><br><span class="line">          sed -i <span class="string">&quot;s/\&quot;version\&quot;: \&quot;[^\&quot;]*\&quot;/\&quot;version\&quot;: \&quot;<span class="variable">$new_version</span>\&quot;/g&quot;</span> package.json</span><br><span class="line">        </span><br><span class="line">          <span class="comment"># 输出新的版本号</span></span><br><span class="line">          <span class="built_in">echo</span> <span class="string">&quot;Old version: <span class="variable">$version</span>&quot;</span></span><br><span class="line">          <span class="built_in">echo</span> <span class="string">&quot;New version: <span class="variable">$new_version</span>&quot;</span></span><br><span class="line">           <span class="comment"># 删除 raw/ 和 webp/ 下的所有文件</span></span><br><span class="line">      - name: Delete Files</span><br><span class="line">        run: |</span><br><span class="line">          <span class="built_in">rm</span> -rf webp/*</span><br><span class="line">          <span class="built_in">rm</span> -rf raw/*</span><br><span class="line">          <span class="built_in">touch</span> webp/.keep</span><br><span class="line">          <span class="built_in">touch</span> raw/.keep</span><br><span class="line">      <span class="comment"># 获取文件名字</span></span><br><span class="line">      - name: <span class="built_in">ls</span> Files</span><br><span class="line">        run:  |</span><br><span class="line">          <span class="built_in">ls</span> -R imgs/* &gt; file.txt</span><br><span class="line">          </span><br><span class="line">      <span class="comment"># 发布 NPM 包</span></span><br><span class="line">      <span class="comment"># 自行修改为自己的Github邮箱地址和用户名</span></span><br><span class="line">      - name: Publish Package</span><br><span class="line">        run: |</span><br><span class="line">          git config --global user.email <span class="string">&quot;<span class="variable">$&#123;&#123;secrets.email&#125;</span>&#125;&quot;</span></span><br><span class="line">          git config --global user.name <span class="string">&quot;<span class="variable">$&#123;&#123;secrets.name&#125;</span>&#125;&quot;</span></span><br><span class="line">          npm publish</span><br><span class="line">        <span class="built_in">env</span>:</span><br><span class="line">          NODE_AUTH_TOKEN: <span class="variable">$&#123;&#123;secrets.npm_token&#125;</span>&#125;</span><br><span class="line"></span><br><span class="line">      - name: Push</span><br><span class="line">        run: |</span><br><span class="line">          git add -A</span><br><span class="line">          git commit -m <span class="string">&quot;Publish&quot;</span></span><br><span class="line">          git push origin main</span><br></pre></td></tr></table></figure></li></ol><h3 id="第5步：上传文件"><a href="#第5步：上传文件" class="headerlink" title="第5步：上传文件"></a>第5步：上传文件</h3><ol><li>打开 <code>PicList</code> 工具，点击 <code>上传</code> 按钮，选择您要上传的图片。</li></ol><h3 id="第6步：自动化图片处理"><a href="#第6步：自动化图片处理" class="headerlink" title="第6步：自动化图片处理"></a>第6步：自动化图片处理</h3><ol><li>返回您的GitHub仓库，导航至 <code>Actions</code> 部分，启动脚本以执行自动化流程。</li></ol><h3 id="第7步：CDN发布"><a href="#第7步：CDN发布" class="headerlink" title="第7步：CDN发布"></a>第7步：CDN发布</h3><ol><li><p>等待自动化脚本完成执行，这将处理您的图片并将它们发布到CDN。</p></li><li><p>确认图片已成功上传到CDN，并检查它们是否可以通过CDN链接访问。</p></li></ol><p>请注意，每一步骤都可能需要您对相关工具和平台有一定的熟悉度。如果在任何步骤中遇到困难，建议查看相关工具的文档或寻求社区的帮助。</p><p>在脚本运行完成后，您需要在 <code>file.txt</code> 文件中查找您的图片名称。一旦找到，您需要在这些图片名称前添加CDN的URL前缀。例如，如果您的图片名称是 <code>imgs/0DPgqcbczm.webp</code> ，您需要将其修改为 <code>https://cdn.cbd.int/jinghuashang-imgbed@0.0.1/imgs/0DPgqcbczm.webp</code> 。在这个URL中，<code>https://cdn.cbd.int/</code> 是CDN的基地址，而<code>jinghuashang-imgbed@0.0.1</code> 部分则是您的npm包名称加上版本号。确保您使用的是正确的包名称和版本号，以便CDN能够正确地解析和提供您的图片资源。</p><blockquote><p>请注意，在上传或更新图片后，务必及时更新您的<code>npm</code>包版本号。这是因为在<code>npm</code>生态中，版本号是区分不同版本的唯一标识，也是确保依赖项正确更新的关键。更新版本号不仅能够确保您的项目使用的是最新的图片资源，还能让其他依赖您的项目的用户知道有新的内容可用。因此，遵循正确的版本控制实践对于维护和分发您的图床服务至关重要。</p></blockquote>]]></content>
    
    
      
      
    <summary type="html">&lt;details class=&quot;flatpaper-note flatpaper-note--warning&quot;&gt;&lt;summary class=&quot;flatpaper-note__title&quot;&gt;&lt;span class=&quot;flatpaper-note__icon&quot; aria-hidde</summary>
      
    
    
    
    <category term="教程" scheme="https://jinghuashang.cn/categories/%E6%95%99%E7%A8%8B/"/>
    
    
    <category term="github" scheme="https://jinghuashang.cn/tags/github/"/>
    
    <category term="NPM" scheme="https://jinghuashang.cn/tags/NPM/"/>
    
    <category term="picList" scheme="https://jinghuashang.cn/tags/picList/"/>
    
  </entry>
  
  <entry>
    <title>steam账户安全</title>
    <link href="https://jinghuashang.cn/posts/9df41401.html"/>
    <id>https://jinghuashang.cn/posts/9df41401.html</id>
    <published>2024-04-25T01:40:39.000Z</published>
    <updated>2024-04-25T02:15:36.593Z</updated>
    
    <content type="html"><![CDATA[<details class="flatpaper-note flatpaper-note--danger"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>请不要在不信任的设备登录Steam账户</p></div></details><h1 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h1><p>今天早上，我拿起手机的时候看到了一串的Steam购买出售的交易信息。当时那还有点迷胡，看清楚的一瞬间就醒了，甚至还吓出了一身的冷汗。</p><p>于是乎我打开了电脑，查看了交易记录，好在并不是游戏，只是交易了一些卡片</p><p><img src="https://img.jinghuashang.cn/images/steam/jiaoyi.webp" alt=""></p><p><img src="https://img.jinghuashang.cn/images/steam/jiaoyi2.webp" alt=""></p><h1 id="结尾"><a href="#结尾" class="headerlink" title="结尾"></a>结尾</h1><p>虽然只是交易一些卡片，但是有点后怕，毕竟我这steam买的游戏总价值有上K了，要是真被卖了可得心疼死了</p><h1 id="安全建议"><a href="#安全建议" class="headerlink" title="安全建议"></a>安全建议</h1><ol><li><p>不要在网吧或者公共场合登录Steam账户</p></li><li><p>若是要在网吧或公共场合登录Steam账户，可以选择小号然后用家庭组的方式登录</p></li></ol>]]></content>
    
    
    <summary type="html">steam账户安全</summary>
    
    
    
    <category term="生活" scheme="https://jinghuashang.cn/categories/%E7%94%9F%E6%B4%BB/"/>
    
    
    <category term="steam" scheme="https://jinghuashang.cn/tags/steam/"/>
    
    <category term="信息安全" scheme="https://jinghuashang.cn/tags/%E4%BF%A1%E6%81%AF%E5%AE%89%E5%85%A8/"/>
    
    <category term="网吧" scheme="https://jinghuashang.cn/tags/%E7%BD%91%E5%90%A7/"/>
    
  </entry>
  
  <entry>
    <title>HP DL 360 Gen 9</title>
    <link href="https://jinghuashang.cn/posts/738cff63.html"/>
    <id>https://jinghuashang.cn/posts/738cff63.html</id>
    <published>2024-04-06T11:47:34.000Z</published>
    <updated>2024-04-06T13:49:51.958Z</updated>
    
    <content type="html"><![CDATA[<p class="fp-label is-center is-logo is-large">HP DL 360 Gen 9</p><h2 id="简介"><a href="#简介" class="headerlink" title="简介"></a>简介</h2><p>随着 Intel Xeon E5-2600 v3 系列处理器的面世，各种服务器供应商都推出了利用新 Xeon 架构的性能提升的计算平台。 DL360 Gen9 是 HP ProLiant 系列中新的主流 1U 计算平台，除了配备新的 E5-2600 v3 处理器和 DD4 内存外，DL360 Gen9 还反映了 HP 服务器技术组合的多项进步以及公司对融合的总体愿景数据中心。</p><p>与更大的 2U DL380 Gen9 一样，DL360 采用新的英特尔至强 E5-2600 v3 处理器和高达 768GB 的​​惠普 DDR4 智能内存，速度高达 2,133MHz，高于其 Gen1,866 前辈的最大 3MHz DDR8 传输速率。 新的 E5-2600 v3 处理器最多可提供 18 个内核，理论上每瓦性能比 Gen8 ProLiant 服务器提高三倍。 HP 最新的 12Gb/s 智能阵列控制器和 PCIe 加速器也可用于 DL360 Gen9。 与其 DL360p Gen8 前身不同，DL360 Gen9 支持 GPU：最多两个单宽和活动卡，长度可达 9.5 英寸。</p><p><img src="/images/StorageReview-HP-ProLiant-DL360-Gen9.webp" alt=""></p><h2 id="参数"><a href="#参数" class="headerlink" title="参数"></a>参数</h2><ul><li>处理器：Intel Xeon E5-2600 v3 产品系列</li><li>处理器数量：2</li><li>可用的处理器核心数：4、6、8、10、12、14、16、18</li><li>外形尺寸：1U</li><li>电源类型：(2) Flex Slot</li><li>PCIe 扩展槽：最多 3 个</li><li>内存，最大：768GB DDR4 HP SmartMemory</li><li>内存插槽：24 个 DIMM 插槽，最高 2,133MHz</li><li>存储驱动器：(8) SFF SAS/SATA + Universal Media Bay 或 (4) LFF SAS/SATA</li><li>网络：4 个 1GbE 嵌入式 + FlexibleLOM 插槽</li><li>网络控制器选项：Broadcom 5720 和/或 10Gb 533FLR-T FlexFabric 适配器</li><li>存储控制器选项：<ul><li>动态智能阵列 B140i</li><li>H240ar 主机总线适配器</li><li>智能阵列 P440ar/2GB FBWC</li></ul></li><li>闪存支持的写入高速缓存 (FBWC)：2GB DDR3-1,866MHz，72 位宽总线，在 P14.9ar 上速度为 440GB/s</li><li>电池：HP DL/ML/SL 96W 智能蓄电池</li><li>VGA/串行/USB 端口：前置 VGA 选项，后置 VGA 标准，串行选项，5 个 USB 3.0</li><li>GPU 支持：两个单宽和有效长度为 9.5”，每个高达 150W</li><li>本地管理：HP OneView 和 HP iLO Advanced</li><li>云管理：带有移动应用程序的 HP Insight Online</li><li>电源和冷却：使用 HP Flexible Slot FF 时效率高达 94% (Platinum Plus)</li><li>带 N+1 冗余的热插拔风扇，可选高性能风扇</li><li>行业合规性：ASHRAE A3 和 A4，闲置功率更低</li><li>外形尺寸/机箱深度：机架 (1U)、27.5 英寸 (SFF)、29.5 英寸 (LFF)</li><li>操作系统支持：<ul><li>Microsoft Windows 服务器：2008 R2（仅限 x64）、2012、2012 R2</li><li>红帽企业 Linux 6.5 及更高版本</li><li>SUSE Linux Enterprise Server 11 SP3 及更高版本</li><li>Ubuntu 服务器 14.04 及更高版本</li><li>VMware vSphere 5.1 U2 及更高版本</li><li>思杰XenServer</li><li>Solaris 11.1 及更高版本</li></ul></li></ul><h2 id="外观简介"><a href="#外观简介" class="headerlink" title="外观简介"></a>外观简介</h2><h3 id="正面"><a href="#正面" class="headerlink" title="正面"></a>正面</h3><p><img src="/images/hpe_dl360_gen9_front.webp" alt=""></p><div class="table-container"><table><thead><tr><th>编号</th><th>说明</th></tr></thead><tbody><tr><td>1</td><td>上盖板</td></tr><tr><td>2</td><td>序列号标签拉片</td></tr><tr><td>3</td><td>VGA视频接口及USB 2.0端口</td></tr><tr><td>4</td><td>电源指示灯/开关</td></tr><tr><td>5</td><td>Health 指示灯</td></tr><tr><td>6</td><td>网卡指示灯</td></tr><tr><td>7</td><td>USB 3.0 端口</td></tr><tr><td>8</td><td>用户指示灯</td></tr><tr><td>9</td><td>SAS/SATA/SSD/NVME 硬盘插槽</td></tr></tbody></table></div><h3 id="背面"><a href="#背面" class="headerlink" title="背面"></a>背面</h3><p><img src="/images/hpe_dl360_gen9_back.webp" alt=""></p><div class="table-container"><table><thead><tr><th>编号</th><th>说明</th><th>编号</th><th>说明</th></tr></thead><tbody><tr><td>1</td><td>PCIE 3.0 SIots 1-3</td><td>8</td><td>VGA 视频接口</td></tr><tr><td>2</td><td>HP 冗余电源</td><td>9</td><td>HP 4口千兆网卡</td></tr><tr><td>3</td><td>HP 冗余电源指示灯</td><td>10</td><td>ILO 4 网络管理网口</td></tr><tr><td>4</td><td>HP 冗余电源 插槽</td><td>11</td><td>串行接口</td></tr><tr><td>5</td><td>HP 冗余电源 2</td><td>12</td><td>USB 3.0 端口</td></tr><tr><td>6</td><td>HP 冗余电源指示灯 2</td><td>13</td><td>用户指示灯</td></tr><tr><td>7</td><td>HP 冗余电源 插槽 2</td><td>14</td><td>网络适配器(可选)</td></tr></tbody></table></div><h3 id="内部功能"><a href="#内部功能" class="headerlink" title="内部功能"></a>内部功能</h3><p><img src="/images/hpe_dl360_gen9_mainboard.webp" alt=""></p><div class="table-container"><table><thead><tr><th>编号</th><th>说明</th><th>编号</th><th>说明</th></tr></thead><tbody><tr><td>1</td><td>FlexibleLOM 接口</td><td></td><td></td></tr><tr><td>2</td><td>主（处理器 1）PCI Riser 卡接口</td><td>12</td><td>HPE Smart Storage 电池接口</td></tr><tr><td>3</td><td>NMI 跳线</td><td>13</td><td>可选的位置查找服务接口</td></tr><tr><td>4</td><td>系统维护开关</td><td>14</td><td>驱动器背板电源接口</td></tr><tr><td>5</td><td>前 VGA/USB 2.0 接口</td><td>15</td><td>microSD 卡插槽</td></tr><tr><td>6</td><td>x4 SATA 端口 1</td><td>16</td><td>双内置 USB 3.0 接口</td></tr><tr><td>7</td><td>x4 SATA 端口 2</td><td>17</td><td>Smart Array/HBA 接口</td></tr><tr><td>8</td><td>背板存在检测接口</td><td>18</td><td>辅助（处理器 2）PCI Riser 卡接口</td></tr><tr><td>9</td><td>光驱/SATA 端口 5</td><td>19</td><td>系统电池</td></tr><tr><td>10</td><td>SATA 端口 4</td><td>20</td><td>TPM 接口</td></tr><tr><td>11</td><td>前电源/USB 3.0 接口</td><td>21</td><td>可选的串行端口接口</td></tr></tbody></table></div><h3 id="其他"><a href="#其他" class="headerlink" title="其他"></a>其他</h3><p>过多的就不一一介绍了，接下来是博主个人的见解。<br><a href="https://www.hpe.com/psnow/doc/c04471523">HP DL 360 Gen 9 用户手册</a></p><h2 id="个人见解"><a href="#个人见解" class="headerlink" title="个人见解"></a>个人见解</h2><h3 id="为什么买这个"><a href="#为什么买这个" class="headerlink" title="为什么买这个"></a>为什么买这个</h3><p>当初看群友在群里说自己买了一个服务器 <code>R730 XD</code> ,看到服务器的时候我着实心动，就开始在网上各种冲浪。于是乎，我就看上了 <code>HP DL 360 GEN 9</code> 这款服务器，然后就斥巨资拿下了这个。</p><h3 id="功能"><a href="#功能" class="headerlink" title="功能"></a>功能</h3><p>我购买的8块2.5寸硬盘的机器,可根据自己的需要选配硬盘组成阵列，当然我买的这个是二手的，到手的时候阵列卡已经被卖家拆了。如果我想配置硬阵列，就得再买阵列卡及阵列卡电源。但是我没有用硬阵列，用的ESXI自带的软阵列。<br><img src="/images/image_editor_1712408715735.webp" alt="电池"><br><img src="/images/image_editor_1712408657779.webp" alt="阵列卡"></p><p>不过作为1U服务器，这个机器的功能还是挺多的，可以满足大部分的需求。但是我买来发现好像没什么用了，因为这1U的功耗着实高啊。开一个windows虚拟机，单纯开着都有150W左右的功耗。并且之前有段时间跑 <code>so-vits-svc</code> 的模型训练，用的 <code>TESLE M40</code> 跑的，功耗跑到400W左右。跑了半个月的样子，那个月电费直接多了两百多。</p><p>后来服务器有段时间没用了，最近入手了一个 <code>Tesle p4</code> ,开始跑 <code>GPT-SoVITS</code> 作为后端给自己部署 AI听书，虽然跑不满显卡但是还是有200W的功耗。</p><p><img src="/images/Screenshot_2024-04-06-21-25-14-475_com.xiaomi.sma.webp" alt="功耗"></p><h4 id="部署项目"><a href="#部署项目" class="headerlink" title="部署项目"></a>部署项目</h4><ol><li>部署 <code>GPT-SoVITS</code> 作为AI听书</li><li>部署 <code>so-vits-svc</code> 玩玩AI唱歌</li><li>ffmpeg 转码/切片 为影视站自建用的，不过因为太费精力就没弄了</li><li>云游戏 之前玩云·崩坏星穹铁道，突然想自己能不能也自建一个给自己玩玩云游戏，但是因为Tesla P4和Tesla M40都为计算卡，没有视频输出口。但是串流Moonlight需要一个单独的输出接口，我就弄了一个虚拟显示器，然而BUG实在太多，并且服务器没公网用内网穿透实在太卡了，就不了了之了。</li></ol><h3 id="总结"><a href="#总结" class="headerlink" title="总结"></a>总结</h3><p>如果你想购入这款服务器我并不是很推荐，因为作为X99平台，CPU普遍要么核心多主频低，要么主频高核心低,功耗也是挺高的。<br>况且1U对于现在来说有点不够用，因为现在主流玩AI，1U塞不进去正常显卡，只能塞半高刀卡，当然你也可以选择PCIe扩展槽。</p><p><img src="/images/image_editor_1712410942419.webp" alt=""></p>]]></content>
    
    
      
      
    <summary type="html">&lt;p class=&quot;fp-label is-center is-logo is-large&quot;&gt;HP DL 360 Gen 9&lt;/p&gt;
&lt;h2 id=&quot;简介&quot;&gt;&lt;a href=&quot;#简介&quot; class=&quot;headerlink&quot; title=&quot;简介&quot;&gt;&lt;/a&gt;简介&lt;/h2&gt;&lt;p&gt;随着 </summary>
      
    
    
    
    <category term="分享" scheme="https://jinghuashang.cn/categories/%E5%88%86%E4%BA%AB/"/>
    
    
    <category term="1U服务器" scheme="https://jinghuashang.cn/tags/1U%E6%9C%8D%E5%8A%A1%E5%99%A8/"/>
    
    <category term="HP服务器" scheme="https://jinghuashang.cn/tags/HP%E6%9C%8D%E5%8A%A1%E5%99%A8/"/>
    
  </entry>
  
  <entry>
    <title>苹果CMS搭建教程[1Panel环境版]</title>
    <link href="https://jinghuashang.cn/posts/a3f04f84.html"/>
    <id>https://jinghuashang.cn/posts/a3f04f84.html</id>
    <published>2024-03-26T14:51:47.000Z</published>
    <updated>2024-04-23T12:37:31.637Z</updated>
    
    <content type="html"><![CDATA[<p class="fp-label is-center is-logo is-large">苹果CMS搭建教程[1Panel环境版]</p><h1 id="苹果CMS是什么"><a href="#苹果CMS是什么" class="headerlink" title="苹果CMS是什么"></a>苹果CMS是什么</h1><h2 id="简介"><a href="#简介" class="headerlink" title="简介"></a>简介</h2><p><code>苹果CMS程序</code>是一套采用<code>PHP+MYSQL</code>环境下运行的完善而强大的快速建站系统。 经过近多年的开发经验和技术积累，苹果CMS程序已逐步走向成熟，在易用性和功能上已经成为同行中的佼佼者。 程序体积小-&gt;优化程序代码，运行速度快-&gt;高效的缓存处理，只要普通的虚拟主机就可以完美搭建起来，建站成本非常低。仿MVC模板分离，内置标签，自定义函数标签接口，强大的自定义采集功能，只要你会HTML就可以轻松做出个性化的网站。 程序易用性和功能上一直以来都积极采纳广大站长提出的各种好的建议，迅速响应各种紧急问题，我们的服务理念贯穿其中，保证每一位站长每一个环节都可以从容应对。</p><ul><li><strong>简单易用</strong><br>大幅度降低站长上手门槛，让每一个无需会编程技术的新手都能快速上手。这将会是你建站学习的最佳cms。</li><li><strong>模板标签</strong><br>系统内置了丰富的cms标签并支持thinkphp框架标签完美融合，可以调取系统内所有的数据，只要你懂一些前端知识就可以快速的开发自己的模板功能。</li><li><strong>后台管理</strong><br>管理后台界面大方、操作简单、功能齐全、模块众多、双端管理，只要你会电脑或手机就会使用。</li><li><strong>丰富模块</strong><br>支持视频模块、文章模块、专题模块、网址导航模块、明星模块、剧情模块、角色模块、会员模块。</li><li><strong>文档丰富</strong><br>苹果cmsV10提供更全面、更详细、更专业的开源cms技术文档，从而更快速地解决疑难问题</li><li><strong>插件扩展</strong><br>灵活强大应用插件系统为你解决二次开发所面临的升级问题，享受扩展php功能同时还支持cms官方升级。</li></ul><h2 id="苹果CMS能做什么？"><a href="#苹果CMS能做什么？" class="headerlink" title="苹果CMS能做什么？"></a>苹果CMS能做什么？</h2><p>苹果CMS功能非常强大，模块丰富。可以用于搭建专业的视频站如：收费网课类、教学资料站，也可以用于搭建群站、文章资讯站、图片素材站、网址导航站等等类型，还可以扩展开发搭建移动APP的服务端。苹果cms的模板丰富，网络上有海量的免费模板可以使用，无需编程基础即可极速搭建网站。</p><h2 id="其他-cms"><a href="#其他-cms" class="headerlink" title="其他(cms)"></a>其他(cms)</h2><ul><li><a href="https://iycms.com/">爱影CMS</a></li><li><a href="https://www.seacms.net/">海洋CMS</a></li><li><a href="http://feifeicms.pro/">飞飞CMS</a></li><li><a href="https://www.ctcms.cn/">赤兔CMS</a></li><li><a href="https://www.zanpiancms.com/">赞片CMS</a></li></ul><h1 id="苹果CMS搭建教程"><a href="#苹果CMS搭建教程" class="headerlink" title="苹果CMS搭建教程"></a>苹果CMS搭建教程</h1><details class="flatpaper-note flatpaper-note--danger"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>注意这个是针对1panel环境搭建的，如果你是其他环境搭建，请移步其他教程。</p></div></details><h2 id="环境要求"><a href="#环境要求" class="headerlink" title="环境要求"></a>环境要求</h2><ul><li>服务器：Linux</li><li>数据库：MySQL 5.5+</li><li>服务器环境：PHP 5.6+、OpenResty </li><li>服务器空间：40G+</li><li>服务器带宽：4M+</li><li>服务器内存：2G+</li><li>服务器CPU：2核+</li></ul><h2 id="1-服务器环境搭建"><a href="#1-服务器环境搭建" class="headerlink" title="1. 服务器环境搭建"></a>1. 服务器环境搭建</h2><h3 id="1-1-openresty安装"><a href="#1-1-openresty安装" class="headerlink" title="1.1 openresty安装"></a>1.1 openresty安装</h3><details class="flatpaper-note flatpaper-note--warning"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>注意1pane安装时请先卸载docker，否则会报错openresty无法安装。</p></div></details><h3 id="1-1-1-选择菜单应用商店"><a href="#1-1-1-选择菜单应用商店" class="headerlink" title="1.1.1 选择菜单应用商店"></a>1.1.1 选择菜单应用商店</h3><p><img src="/images/yysd.webp" alt=""></p><h3 id="1-1-2-选择openresty"><a href="#1-1-2-选择openresty" class="headerlink" title="1.1.2 选择openresty"></a>1.1.2 选择openresty</h3><p><img src="/images/openresty.webp" alt=""></p><h3 id="1-1-3-根据需要配置并且确定"><a href="#1-1-3-根据需要配置并且确定" class="headerlink" title="1.1.3 根据需要配置并且确定"></a>1.1.3 根据需要配置并且确定</h3><p><img src="/images/openresty-2.webp" alt=""></p><h3 id="1-1-4-确认安装完成"><a href="#1-1-4-确认安装完成" class="headerlink" title="1.1.4 确认安装完成"></a>1.1.4 确认安装完成</h3><p><img src="/images/openresty3.webp" alt=""></p><h2 id="2-数据库安装"><a href="#2-数据库安装" class="headerlink" title="2. 数据库安装"></a>2. 数据库安装</h2><h3 id="2-1-MySQL安装"><a href="#2-1-MySQL安装" class="headerlink" title="2.1 MySQL安装"></a>2.1 MySQL安装</h3><h4 id="2-1-1-选择菜单应用商店"><a href="#2-1-1-选择菜单应用商店" class="headerlink" title="2.1.1 选择菜单应用商店"></a>2.1.1 选择菜单应用商店</h4><p><img src="/images/sjk.webp" alt=""></p><h4 id="2-1-2-选择mysql"><a href="#2-1-2-选择mysql" class="headerlink" title="2.1.2 选择mysql"></a>2.1.2 选择mysql</h4><p>根据需要是否开启外网访问，版本默认就好，配置好后确认</p><p><img src="/images/sjk2.webp" alt=""></p><h4 id="2-1-3-确认安装完成"><a href="#2-1-3-确认安装完成" class="headerlink" title="2.1.3 确认安装完成"></a>2.1.3 确认安装完成</h4><p><img src="/images/sjk3.webp" alt=""></p><h3 id="2-2-Redis安装-可选"><a href="#2-2-Redis安装-可选" class="headerlink" title="2.2 Redis安装[可选]"></a>2.2 Redis安装[可选]</h3><details class="flatpaper-note flatpaper-note--warning"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>注意：如果需要使用苹果CMS的缓存功能，请安装redis。</p></div></details><h4 id="2-2-1-选择菜单应用商店"><a href="#2-2-1-选择菜单应用商店" class="headerlink" title="2.2.1 选择菜单应用商店"></a>2.2.1 选择菜单应用商店</h4><p><img src="/images/redis.webp" alt=""></p><h4 id="2-2-2-选择redis"><a href="#2-2-2-选择redis" class="headerlink" title="2.2.2 选择redis"></a>2.2.2 选择redis</h4><p>还是如MySQL根据需要是否开启外网访问，版本默认就好，配置好后确认</p><p><img src="/images/redis2.webp" alt=""></p><h4 id="2-2-3-确认安装完成"><a href="#2-2-3-确认安装完成" class="headerlink" title="2.2.3 确认安装完成"></a>2.2.3 确认安装完成</h4><p><img src="/images/redis3.webp" alt=""></p><h2 id="3-PHP环境安装"><a href="#3-PHP环境安装" class="headerlink" title="3. PHP环境安装"></a>3. PHP环境安装</h2><details class="flatpaper-note flatpaper-note--danger"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>对于PHP版本推荐食用7.2，部分高于7.2版本存在模板无法使用食用</p></div></details><h4 id="3-1-开始安装PHP"><a href="#3-1-开始安装PHP" class="headerlink" title="3.1 开始安装PHP"></a>3.1 开始安装PHP</h4><p>选择菜单里的网站 &gt; 点击运行环境 &gt; 创建运行环境</p><p><img src="/images/php.webp" alt=""></p><h4 id="3-2-配置安装PHP"><a href="#3-2-配置安装PHP" class="headerlink" title="3.2 配置安装PHP"></a>3.2 配置安装PHP</h4><p>随便取一个名字 &gt; 在应用版本选择PHP7.2.34 &gt; 在扩展选择模板 苹果CMSV-V10 &gt; 点击确定</p><p><img src="/images/php2.webp" alt=""></p><h3 id="3-3-确认安装完成"><a href="#3-3-确认安装完成" class="headerlink" title="3.3 确认安装完成"></a>3.3 确认安装完成</h3><p><img src="/images/php3.webp" alt=""><br><img src="/images/php4.webp" alt=""></p><h2 id="4-苹果CMS安装"><a href="#4-苹果CMS安装" class="headerlink" title="4. 苹果CMS安装"></a>4. 苹果CMS安装</h2><h3 id="4-1-获取苹果CMS本体-可选，后面可以直接使用面板远程下载"><a href="#4-1-获取苹果CMS本体-可选，后面可以直接使用面板远程下载" class="headerlink" title="4.1 获取苹果CMS本体 [可选，后面可以直接使用面板远程下载]"></a>4.1 获取苹果CMS本体 [可选，后面可以直接使用面板远程下载]</h3><p><strong>使用GIT获取</strong><br><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">git clone https://github.com/magicblack/maccms10.git</span><br></pre></td></tr></table></figure></p><p><strong>使用下载链接获取</strong></p><p>访问Github下载地址： <a href="https://github.com/magicblack/maccms10/releases">MacCMS-V10</a></p><p><strong>使用加速源</strong></p><ol><li>由屑殇(本站)提供</li></ol><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">git clone https://github-cf.jinghuashang.cn/magicblack/maccms10.git</span><br></pre></td></tr></table></figure><p>访问Github下载地址： <a href="https://github-cf.jinghuashang.cn/magicblack/maccms10/releases">MacCMS-V10</a></p><ol><li>由Moeyy提供</li></ol><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">git clone https://github.moeyy.xyz/magicblack/maccms10.git</span><br></pre></td></tr></table></figure><h3 id="4-2-创建苹果CMS网站环境"><a href="#4-2-创建苹果CMS网站环境" class="headerlink" title="4.2 创建苹果CMS网站环境"></a>4.2 创建苹果CMS网站环境</h3><h3 id="4-2-1-选择菜单网站"><a href="#4-2-1-选择菜单网站" class="headerlink" title="4.2.1 选择菜单网站"></a>4.2.1 选择菜单网站</h3><p>选择菜单里的网站 &gt; 点击创建网站 </p><p><img src="/images/cjwz.webp" alt=""></p><h3 id="4-2-2-配置苹果CMS网站环境"><a href="#4-2-2-配置苹果CMS网站环境" class="headerlink" title="4.2.2 配置苹果CMS网站环境"></a>4.2.2 配置苹果CMS网站环境</h3><p>选择运行环境 &gt; 运行环境选择刚刚创建的(比如我创建的cms，我这里就选择cms)</p><p><img src="/images/cjwz2.webp" alt=""></p><h3 id="4-2-3-进入网站目录"><a href="#4-2-3-进入网站目录" class="headerlink" title="4.2.3 进入网站目录"></a>4.2.3 进入网站目录</h3><p>点击 <code>文件夹</code> 图标进入 &gt; 进入 <code>index</code> 文件夹</p><p><img src="/images/cjwz3.webp" alt=""><br><img src="/images/cjwz4.webp" alt=""></p><h3 id="4-2-4-安装苹果CMS主体"><a href="#4-2-4-安装苹果CMS主体" class="headerlink" title="4.2.4 安装苹果CMS主体"></a>4.2.4 安装苹果CMS主体</h3><h4 id="4-2-4-1-已下载苹果CMS主体"><a href="#4-2-4-1-已下载苹果CMS主体" class="headerlink" title="4.2.4.1 已下载苹果CMS主体"></a>4.2.4.1 已下载苹果CMS主体</h4><ol><li>上传文件</li></ol><p><img src="/images/cjwz5.webp" alt=""><br><img src="/images/cjwz6.webp" alt=""></p><ol><li>解压文件</li></ol><p><img src="/images/cjwz7.webp" alt=""><br><img src="/images/cjwz8.webp" alt=""></p><h4 id="4-2-4-2-未下载苹果CMS主体-直接远程下载"><a href="#4-2-4-2-未下载苹果CMS主体-直接远程下载" class="headerlink" title="4.2.4.2 未下载苹果CMS主体 [直接远程下载]"></a>4.2.4.2 未下载苹果CMS主体 [直接远程下载]</h4><ol><li>选择远程下载</li></ol><p><img src="/images/cjwz9.webp" alt=""></p><ol><li>填入下载文件路径及文件名字</li></ol><p><img src="/images/cjwz10.webp" alt=""></p><h3 id="4-2-5-非常重要-环境权限"><a href="#4-2-5-非常重要-环境权限" class="headerlink" title="4.2.5 [非常重要] 环境权限"></a>4.2.5 [非常重要] 环境权限</h3><details class="flatpaper-note flatpaper-note--danger"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>PHP环境环境需要1000权限，否则无法正常运行苹果CMS，但1panel上传或下载皆为root权限，所以需要手动修改权限。</p></div></details><p>选择菜单网站 &gt; 选择刚刚创建的网站 &gt; 点击配置 &gt; 网站目录 &gt; 选择运行目录为苹果CMS主体目录后<code>保存并重载</code> &gt; 并在运行用户组选择<code>保存</code></p><p><img src="/images/cjwz11.webp" alt=""></p><h3 id="4-2-6-安装苹果CMS数据库"><a href="#4-2-6-安装苹果CMS数据库" class="headerlink" title="4.2.6 安装苹果CMS数据库"></a>4.2.6 安装苹果CMS数据库</h3><p>选择数据库 &gt; 创建数据库 &gt; 配置数据库名及数据库用户名密码后确认 </p><p><img src="/images/cjwz12.webp" alt=""></p><h3 id="4-2-7-安装苹果CMS"><a href="#4-2-7-安装苹果CMS" class="headerlink" title="4.2.7 安装苹果CMS"></a>4.2.7 安装苹果CMS</h3><p>访问苹果CMS安装地址： <a href="http://域名/install.php">http://域名/install.php</a> &gt; 确认安装 &gt; 填写数据库信息 &gt; 填写管理员信息 &gt; 安装完成</p><p><img src="/images/azcms.webp" alt=""><br><img src="/images/azcms2.webp" alt=""><br><img src="/images/azcms3.webp" alt=""><br><img src="/images/azcms4.webp" alt=""></p><h3 id="4-2-8-苹果CMS安全及伪静态配置"><a href="#4-2-8-苹果CMS安全及伪静态配置" class="headerlink" title="4.2.8 苹果CMS安全及伪静态配置"></a>4.2.8 苹果CMS安全及伪静态配置</h3><p>回到苹果CMS主体目录 &gt; 修改admin.php文件名成自己知道 <strong><code>[切记不要告诉他人！不要告诉他人！不要告诉他人！]</code></strong></p><p><img src="/images/azcms6.webp" alt=""><br><img src="/images/azcms7.webp" alt=""></p><p>回到网站配置 &gt; 选择伪静态 &gt; 选择伪静态规则 &gt; 修改admin为你修改的名字 &gt; 保存</p><p><img src="/images/azcms8.webp" alt=""><br><img src="/images/azcms9.webp" alt=""></p><h3 id="4-2-9-完成安装-登录后台"><a href="#4-2-9-完成安装-登录后台" class="headerlink" title="4.2.9 完成安装 登录后台"></a>4.2.9 完成安装 登录后台</h3><p>访问苹果CMS后台地址： <a href="http://域名/admin.php">http://域名/admin.php</a> &gt; 输入账号密码 &gt; 登录后台</p><p><img src="/images/azcms10.webp" alt=""></p><h3 id="4-2-10-苹果CMS-Redis缓存配置-可选"><a href="#4-2-10-苹果CMS-Redis缓存配置-可选" class="headerlink" title="4.2.10 苹果CMS Redis缓存配置 [可选]"></a>4.2.10 苹果CMS Redis缓存配置 [可选]</h3><details class="flatpaper-note flatpaper-note--warning"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>注意：如果需要使用苹果CMS的缓存功能，请特殊配置，因为1panel和苹果cms代码存在bug，导致无法连接Redis</p></div></details><p>回到苹果CMS主体目录 &gt; 修改/thinkphp/library/think/cache/driver/Redis.php &gt; 将连接和密码修改为你的redis连接和密码</p><p><img src="/images/azcms11.webp" alt=""><br><img src="/images/azcms12.webp" alt=""></p><p>进入苹果CMS后台 &gt; 选择系统 &gt; 选择网站参数 &gt; 选择性能优化 &gt; 选择Redis &gt; 修改连接和密码后测试连接 &gt; 连接完成后保存</p><p><img src="/images/azcms13.webp" alt=""></p><h1 id="到此本教程就结束了，不过后期可能归档一些疑难杂症"><a href="#到此本教程就结束了，不过后期可能归档一些疑难杂症" class="headerlink" title="到此本教程就结束了，不过后期可能归档一些疑难杂症"></a>到此本教程就结束了，不过后期可能归档一些疑难杂症</h1><h1 id="苹果CMS-PHP扩展-（2024-04-23更新）"><a href="#苹果CMS-PHP扩展-（2024-04-23更新）" class="headerlink" title="苹果CMS PHP扩展 （2024-04-23更新）"></a>苹果CMS PHP扩展 （2024-04-23更新）</h1><p><code>mysqli,pdo_mysql,sg11,fileinfo,bcmath,gd,gettext,intl,pcntl,shmop,soap,sockets,sysvsem,xmlrpc,zip,redis</code></p><span class="fp-label is-center is-logo is-large">结尾</span><blockquote><p>这是一个勉强有点网络知识和经验的<strong>小博主</strong>的教程，或许有些不对的地方，欢迎到<strong>评论</strong>指出错误</p></blockquote>]]></content>
    
    
      
      
    <summary type="html">&lt;p class=&quot;fp-label is-center is-logo is-large&quot;&gt;苹果CMS搭建教程[1Panel环境版]&lt;/p&gt;
&lt;h1 id=&quot;苹果CMS是什么&quot;&gt;&lt;a href=&quot;#苹果CMS是什么&quot; class=&quot;headerlink&quot; title=&quot;苹果CM</summary>
      
    
    
    
    <category term="教程" scheme="https://jinghuashang.cn/categories/%E6%95%99%E7%A8%8B/"/>
    
    
    <category term="MACCMS" scheme="https://jinghuashang.cn/tags/MACCMS/"/>
    
    <category term="1Panel" scheme="https://jinghuashang.cn/tags/1Panel/"/>
    
    <category term="openresty" scheme="https://jinghuashang.cn/tags/openresty/"/>
    
    <category term="php" scheme="https://jinghuashang.cn/tags/php/"/>
    
    <category term="mysql" scheme="https://jinghuashang.cn/tags/mysql/"/>
    
    <category term="redis" scheme="https://jinghuashang.cn/tags/redis/"/>
    
  </entry>
  
  <entry>
    <title>IPV6折腾篇</title>
    <link href="https://jinghuashang.cn/posts/2353d4d9.html"/>
    <id>https://jinghuashang.cn/posts/2353d4d9.html</id>
    <published>2023-08-15T13:12:54.000Z</published>
    <updated>2024-04-28T02:26:07.309Z</updated>
    
    <content type="html"><![CDATA[<h1 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h1><h2 id="什么是IPV6"><a href="#什么是IPV6" class="headerlink" title="什么是IPV6"></a>什么是IPV6</h2><p>IPv6，全称为Internet Protocol Version 6，是互联网工程任务组（IETF）为了解决IPv4地址耗尽问题而设计的一种新型网络协议。作为互联网的基石，IP协议负责为网络上的每一台设备分配一个独一无二的地址，以便数据能够在复杂的网络结构中准确无误地送达目的地。随着互联网的飞速发展，原有的IPv4协议所提供的地址空间已经无法满足日益增长的网络设备数量，因此IPv6的推出成为了一种必然趋势。</p><p>IPv6的核心特性在于其扩展的地址长度，从IPv4的32位增加到了128位，这使得新的协议能够提供几乎无限的地址资源。这一巨大的地址空间不仅能够满足现有的个人电脑、智能手机和其他设备的连接需求，还能够为未来的物联网（IoT）设备、智能家居、智能城市等新兴技术提供充足的地址资源。</p><p>除了地址资源的丰富性，IPv6还在安全性、流媒体传输和移动性等方面提供了更加先进的支持。在安全性方面，IPv6内置了对IPsec的支持，这是一种用于保护网络通信的安全协议，它能够为数据传输提供加密和认证，从而大大增强了网络的安全性。在流媒体传输方面，IPv6通过改进的QoS机制，能够保证音视频数据在网络中的优先传输，从而提供更加流畅的流媒体体验。在移动性方面，IPv6的移动IPv6（MIPv6）协议使得移动设备在切换网络时能够无缝连接，这对于移动用户来说是一个巨大的改进。</p><p>IPv6的普及和部署对于互联网的未来发展至关重要。它不仅解决了地址耗尽的问题，还为互联网的持续创新和扩展提供了新的可能性。随着越来越多的网络服务提供商、企业和设备制造商开始支持IPv6，我们可以预见一个更加广阔、安全、高效的互联网未来。</p><h2 id="为什么要用IPV6"><a href="#为什么要用IPV6" class="headerlink" title="为什么要用IPV6"></a>为什么要用IPV6</h2><p>IPv6，作为互联网协议（IP）的第六版，被设计为IPv4的继任者，以应对当今网络世界所面临的诸多挑战。IPv6的核心优势在于其几乎无限的地址空间，这为互联网的持续增长提供了坚实的基础。以下是IPv6相较于IPv4的几个显著优势的详细阐述：</p><ol><li><strong>地址资源的丰富性</strong>：IPv6采用128位的地址长度，这使得它可以提供数量惊人的网络地址，远远超过了IPv4的32位地址所能提供的数量。具体来说，IPv6能够提供大约3.4×10^38个独特的网络地址，这个数字如此庞大，以至于可以为地球上的每一粒沙子分配一个IP地址，从而彻底解决了IPv4地址耗尽的问题。</li><li><strong>增强的安全性</strong>：IPv6在设计之初就内置了安全性考虑，支持IPsec（Internet Protocol Security）协议，这是一套用于在互联网协议网络上进行安全通信的标准框架。IPsec可以为IPv6提供端到端的加密和数据完整性保障，这在IPv4中通常是作为可选的附加功能实现的。此外，IPv6的地址自动配置功能也能减少对DNS的依赖，从而降低了某些类型的网络攻击风险。</li><li><strong>网络拓扑的优化</strong>：IPv6通过邻居发现协议（NDP）简化了网络设备之间的通信过程。NDP取代了IPv4中的地址解析协议（ARP），使得设备能够更高效地发现和维持网络中的邻居关系，从而优化了网络拓扑结构和数据传输路径。</li><li><strong>流媒体传输的优化</strong>：IPv6对流媒体传输的支持进行了改进，特别是在支持QoS（Quality of Service）方面。QoS允许网络管理员为特定的流量类型分配带宽和优先级，确保关键应用（如视频会议或实时流媒体）的网络传输质量，这在日益增长的互联网应用中尤为重要。</li><li><strong>移动性的支持</strong>：IPv6原生支持移动IPv6（MIPv6）协议，这使得移动设备在切换网络时能够无缝地保持连接，无需重新配置网络设置。这对于智能手机、平板电脑和其他移动设备用户来说是一个巨大的便利，因为它们可以在不同的网络之间移动而不会丢失连接。</li></ol><p>综上所述，IPv6不仅提升了网络的性能、安全性和可扩展性，还为互联网的未来发展奠定了坚实的基础。随着物联网（IoT）设备的激增和互联网用户数量的不断增长，IPv6的重要性将日益凸显，它为创新和连接提供了无限的可能性。</p><h1 id="食用"><a href="#食用" class="headerlink" title="食用"></a>食用</h1><h2 id="食用准备"><a href="#食用准备" class="headerlink" title="食用准备"></a>食用准备</h2><p>尽管工业和信息化部（工信部）在推动IPv6的部署和应用，但IPv6的普及程度在全国范围内并不均衡。因此，如果您想确定自己是否已经接入了IPv6网络</p><p>访问<a href="https://www.test-ipv6.com/index.html.zh_CN">IPV6测试</a></p><p><img src="https://download.tooc.xlj0.com/uploads/56/ipv6test.png" alt=""></p><p>如果出现你的公网IPV6地址，那么就可以进行下一步</p><p><img src="https://download.tooc.xlj0.com/uploads/56/ipv6test2.png" alt=""></p><p>如果你是以上情况，那么恭喜你，你没有IPV6，若想获取就问问你宽带相对应的运营商</p><h2 id="开始食用"><a href="#开始食用" class="headerlink" title="开始食用"></a>开始食用</h2><details class="flatpaper-note flatpaper-note--warning"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>因为光猫有防火墙，如果你想外网访问，需要配置防火墙，将强度设置到低</p></div></details><h3 id="Windows-获取IPV6地址"><a href="#Windows-获取IPV6地址" class="headerlink" title="Windows 获取IPV6地址"></a>Windows 获取IPV6地址</h3><p>打开终端或CMD</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><span class="line">13</span><br><span class="line">14</span><br><span class="line">15</span><br></pre></td><td class="code"><pre><span class="line">$ ipconfig</span><br><span class="line"></span><br><span class="line">Windows IP 配置</span><br><span class="line"></span><br><span class="line"></span><br><span class="line">以太网适配器 以太网:</span><br><span class="line"></span><br><span class="line">   连接特定的 DNS 后缀 . . . . . . . :</span><br><span class="line">   IPv6 地址 . . . . . . . . . . . . : 240e:398:1e50:</span><br><span class="line">   临时 IPv6 地址. . . . . . . . . . : 240e:398:1e50:</span><br><span class="line">   本地链接 IPv6 地址. . . . . . . . : fe80::a72:fec8:a5d9:4b10%6</span><br><span class="line">   IPv4 地址 . . . . . . . . . . . . : 192.168.1.4</span><br><span class="line">   子网掩码  . . . . . . . . . . . . : 255.255.255.0</span><br><span class="line">   默认网关. . . . . . . . . . . . . : fe80::1%6</span><br><span class="line">                                       192.168.1.1</span><br></pre></td></tr></table></figure><p>其中IPV6地址就是你的IPV6地址，将其复制到浏览器中，访问即可</p><details class="flatpaper-note flatpaper-note--info"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>IPV6访问与IPV4有些许不同，IPV6访问需要将IPV6填入[]内才能访问</p></div></details><h3 id="Linux-获取IPV6地址"><a href="#Linux-获取IPV6地址" class="headerlink" title="Linux 获取IPV6地址"></a>Linux 获取IPV6地址</h3><p>打开终端<br><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><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">$ ip a</span><br><span class="line"></span><br><span class="line">1: lo: &lt;LOOPBACK,UP,LOWER_UP&gt; mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000</span><br><span class="line">    <span class="built_in">link</span>/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00</span><br><span class="line">    inet 127.0.0.1/8 scope host lo</span><br><span class="line">       valid_lft forever preferred_lft forever</span><br><span class="line">    inet6 ::1/128 scope host</span><br><span class="line">       valid_lft forever preferred_lft forever</span><br><span class="line">2: ens18: &lt;BROADCAST,MULTICAST,UP,LOWER_UP&gt; mtu 1500 qdisc fq_codel state UP group default qlen 1000</span><br><span class="line">    <span class="built_in">link</span>/ether 8a:94:d4:2e:1c:4e brd ff:ff:ff:ff:ff:ff</span><br><span class="line">    altname enp0s18</span><br><span class="line">    inet 192.168.1.20/24 metric 100 brd 192.168.1.255 scope global dynamic ens18</span><br><span class="line">       valid_lft 595136sec preferred_lft 595136sec</span><br><span class="line">    inet6 240e:398:1e50:/64 scope global dynamic mngtmpaddr noprefixroute</span><br><span class="line">       valid_lft 2591896sec preferred_lft 604696sec</span><br><span class="line">    inet6 fe80::8894:d4ff:fe2e:1c4e/64 scope <span class="built_in">link</span></span><br><span class="line">       valid_lft forever preferred_lft forever</span><br></pre></td></tr></table></figure><br>其中inet6地址就是你的IPV6地址，将其复制到浏览器中，访问即可</p><h3 id="添加域名"><a href="#添加域名" class="headerlink" title="添加域名"></a>添加域名</h3><details class="flatpaper-note flatpaper-note--info"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>因为IPV6地址难记，并且家庭宽带的IPV6地址是动态的，所以需要添加域名，这样就可以通过域名访问</p></div></details><p>因为是动态域名，我这里推荐<code>ddns-go</code>,他可以根据你的IPV6地址自动更新域名，并且支持多域名，多IPV6地址，多IPV4地址</p><h3 id="系统中使用"><a href="#系统中使用" class="headerlink" title="系统中使用"></a>系统中使用</h3><ul><li>从 <a href="https://github.com/jeessy2/ddns-go/releases">Releases</a> 下载并解压 ddns-go</li><li><p>[可选] 使用 <a href="https://brew.sh">Homebrew</a> 安装 <a href="https://formulae.brew.sh/formula/ddns-go">ddns-go</a>：</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">brew install ddns-go</span><br></pre></td></tr></table></figure></li><li><p>双击运行, 如没有找到配置, 程序将自动打开 <a href="http://127.0.0.1:9876">http://127.0.0.1:9876</a></p></li><li>安装服务<ul><li>Mac/Linux: <code>sudo ./ddns-go -s install</code></li><li>Win(以管理员打开cmd): <code>.\ddns-go.exe -s install</code></li></ul></li><li>服务卸载<ul><li>Mac/Linux: <code>sudo ./ddns-go -s uninstall</code></li><li>Win(以管理员打开cmd): <code>.\ddns-go.exe -s uninstall</code></li></ul></li><li>支持安装或启动时带参数 <code>-l</code>监听地址 <code>-f</code>同步间隔时间(秒) <code>-cacheTimes</code>间隔N次与服务商比对 <code>-c</code>自定义配置文件路径 <code>-noweb</code>不启动web服务 <code>-skipVerify</code>跳过证书验证 <code>-dns</code> 自定义 DNS 服务器。如：<code>./ddns-go -s install -l :9877 -f 600 -c /Users/name/ddns-go.yaml</code></li></ul><p>安装服务后会自启动，所以直接去浏览器访问<code>localhost:9876</code>即可</p><h3 id="Docker中使用"><a href="#Docker中使用" class="headerlink" title="Docker中使用"></a>Docker中使用</h3><ul><li><p>挂载主机目录, 使用docker host模式。可把 <code>/opt/ddns-go</code> 替换为你主机任意目录, 配置文件为隐藏文件</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">docker run -d --name ddns-go --restart=always --net=host -v /opt/ddns-go:/root jeessy/ddns-go</span><br></pre></td></tr></table></figure></li><li><p>在浏览器中打开<code>http://主机IP:9876</code>，修改你的配置，成功</p></li><li><p>[可选] 使用 <code>ghcr.io</code> 镜像</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">docker run -d --name ddns-go --restart=always --net=host -v /opt/ddns-go:/root ghcr.io/jeessy2/ddns-go</span><br></pre></td></tr></table></figure></li><li><p>[可选] 支持启动带参数 <code>-l</code>监听地址 <code>-f</code>间隔时间(秒)</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">docker run -d --name ddns-go --restart=always --net=host -v /opt/ddns-go:/root jeessy/ddns-go -l :9877 -f 600</span><br></pre></td></tr></table></figure></li><li><p>[可选] 不使用docker host模式</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">docker run -d --name ddns-go --restart=always -p 9876:9876 -v /opt/ddns-go:/root jeessy/ddns-go</span><br></pre></td></tr></table></figure></li></ul><h3 id="使用IPv6"><a href="#使用IPv6" class="headerlink" title="使用IPv6"></a>使用IPv6</h3><ul><li>前提：你的电脑或终端能正常获取IPv6，并能正常访问IPv6</li><li>Windows/Mac：推荐 <a href="#系统中使用">系统中使用</a>，Windows/Mac桌面版的docker不支持<code>--net=host</code></li><li>群晖：<ul><li>套件中心下载docker并打开</li><li>注册表中搜索<code>ddns-go</code>并下载</li><li>映像 -&gt; 选择<code>jeessy/ddns-go</code> -&gt; 启动 -&gt; 高级设置 -&gt; 网络中勾选<code>使用与 Docker Host 相同的网络</code>，高级设置中勾选<code>启动自动重新启动</code></li><li>在浏览器中打开<code>http://群晖IP:9876</code>，修改你的配置，成功</li></ul></li><li>Linux的x86或arm架构，推荐使用Docker的<code>--net=host</code>模式。参考 <a href="#Docker中使用">Docker中使用</a></li><li>虚拟机中使用有可能正常获取IPv6，但不能正常访问IPv6</li></ul><h3 id="Webhook"><a href="#Webhook" class="headerlink" title="Webhook"></a>Webhook</h3><ul><li>支持webhook, 域名更新成功或不成功时, 会回调填写的URL</li><li><p>支持的变量</p><p>|  变量名   | 说明  |<br>|  ——  | ——  |<br>| #{ipv4Addr}  | 新的IPv4地址 |<br>| #{ipv4Result}  | IPv4地址更新结果: <code>未改变</code> <code>失败</code> <code>成功</code>|<br>| #{ipv4Domains}  | IPv4的域名，多个以<code>,</code>分割 |<br>| #{ipv6Addr}  | 新的IPv6地址 |<br>| #{ipv6Result}  | IPv6地址更新结果: <code>未改变</code> <code>失败</code> <code>成功</code>|<br>| #{ipv6Domains}  | IPv6的域名，多个以<code>,</code>分割 |</p></li><li><p>如 RequestBody 为空则为 GET 请求，否则为 POST 请求</p></li><li><p><details><summary>Server酱</summary></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">https://sctapi.ftqq.com/[SendKey].send?title=你的公网IP变了&amp;desp=主人IPv4变了#&#123;ipv4Addr&#125;,域名更新结果:#&#123;ipv4Result&#125;</span><br></pre></td></tr></table></figure></li><li><details><summary>Bark</summary><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">https://api.day.app/[YOUR_KEY]/主人IPv4变了#&#123;ipv4Addr&#125;,域名更新结果:#&#123;ipv4Result&#125;</span><br></pre></td></tr></table></figure></details></li><li><details><summary>钉钉</summary>- 钉钉电脑端 -> 群设置 -> 智能群助手 -> 添加机器人 -> 自定义- 只勾选 `自定义关键词`, 输入的关键字必须包含在RequestBody的content中, 如：`你的公网IP变了`- URL中输入钉钉给你的 `Webhook地址`- RequestBody中输入  <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></pre></td><td class="code"><pre><span class="line"><span class="punctuation">&#123;</span></span><br><span class="line">    <span class="attr">&quot;msgtype&quot;</span><span class="punctuation">:</span> <span class="string">&quot;markdown&quot;</span><span class="punctuation">,</span></span><br><span class="line">    <span class="attr">&quot;markdown&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line">        <span class="attr">&quot;title&quot;</span><span class="punctuation">:</span> <span class="string">&quot;你的公网IP变了&quot;</span><span class="punctuation">,</span></span><br><span class="line">        <span class="attr">&quot;text&quot;</span><span class="punctuation">:</span> <span class="string">&quot;#### 你的公网IP变了 \n - IPv4地址：#&#123;ipv4Addr&#125; \n - 域名更新结果：#&#123;ipv4Result&#125; \n&quot;</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>  </details></li><li><details><summary>飞书</summary>- 飞书电脑端 -> 群设置 -> 添加机器人 -> 自定义机器人- 安全设置只勾选 `自定义关键词`, 输入的关键字必须包含在RequestBody的content中, 如：`你的公网IP变了`- URL中输入飞书给你的 `Webhook地址`- RequestBody中输入  <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><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><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</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;msg_type&quot;</span><span class="punctuation">:</span> <span class="string">&quot;post&quot;</span><span class="punctuation">,</span></span><br><span class="line">    <span class="attr">&quot;content&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line">        <span class="attr">&quot;post&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line">            <span class="attr">&quot;zh_cn&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line">                <span class="attr">&quot;title&quot;</span><span class="punctuation">:</span> <span class="string">&quot;你的公网IP变了&quot;</span><span class="punctuation">,</span></span><br><span class="line">                <span class="attr">&quot;content&quot;</span><span class="punctuation">:</span> <span class="punctuation">[</span></span><br><span class="line">                    <span class="punctuation">[</span></span><br><span class="line">                        <span class="punctuation">&#123;</span></span><br><span class="line">                            <span class="attr">&quot;tag&quot;</span><span class="punctuation">:</span> <span class="string">&quot;text&quot;</span><span class="punctuation">,</span></span><br><span class="line">                            <span class="attr">&quot;text&quot;</span><span class="punctuation">:</span> <span class="string">&quot;IPv4地址：#&#123;ipv4Addr&#125;&quot;</span></span><br><span class="line">                        <span class="punctuation">&#125;</span></span><br><span class="line">                    <span class="punctuation">]</span><span class="punctuation">,</span></span><br><span class="line">                    <span class="punctuation">[</span></span><br><span class="line">                        <span class="punctuation">&#123;</span></span><br><span class="line">                            <span class="attr">&quot;tag&quot;</span><span class="punctuation">:</span> <span class="string">&quot;text&quot;</span><span class="punctuation">,</span></span><br><span class="line">                            <span class="attr">&quot;text&quot;</span><span class="punctuation">:</span> <span class="string">&quot;域名更新结果：#&#123;ipv4Result&#125;&quot;</span></span><br><span class="line">                        <span class="punctuation">&#125;</span></span><br><span class="line">                    <span class="punctuation">]</span></span><br><span class="line">                <span class="punctuation">]</span></span><br><span class="line">            <span class="punctuation">&#125;</span></span><br><span class="line">        <span class="punctuation">&#125;</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>  </details></li><li><details><summary>Telegram</summary>[ddns-telegram-bot](https://github.com/WingLim/ddns-telegram-bot)</details></li><li><details><summary>plusplus 推送加</summary>- [获取token](https://www.pushplus.plus/push1.html)- URL中输入 `https://www.pushplus.plus/send`- RequestBody中输入  <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></pre></td><td class="code"><pre><span class="line"><span class="punctuation">&#123;</span></span><br><span class="line">    <span class="attr">&quot;token&quot;</span><span class="punctuation">:</span> <span class="string">&quot;your token&quot;</span><span class="punctuation">,</span></span><br><span class="line">    <span class="attr">&quot;title&quot;</span><span class="punctuation">:</span> <span class="string">&quot;你的公网IP变了&quot;</span><span class="punctuation">,</span></span><br><span class="line">    <span class="attr">&quot;content&quot;</span><span class="punctuation">:</span> <span class="string">&quot;你的公网IP变了 \n - IPv4地址：#&#123;ipv4Addr&#125; \n - 域名更新结果：#&#123;ipv4Result&#125; \n&quot;</span></span><br><span class="line"><span class="punctuation">&#125;</span></span><br></pre></td></tr></table></figure>  </details></li><li><details><summary>Discord</summary>- Discord任意客户端 -> 伺服器 -> 频道设置 -> 整合 -> 查看Webhook -> 新Webhook -> 复制Webhook网址- URL中输入Discord复制的 `Webhook网址`- RequestBody中输入  <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><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></pre></td><td class="code"><pre><span class="line"><span class="punctuation">&#123;</span></span><br><span class="line">    <span class="attr">&quot;content&quot;</span><span class="punctuation">:</span> <span class="string">&quot;域名 #&#123;ipv4Domains&#125; 动态解析 #&#123;ipv4Result&#125;.&quot;</span><span class="punctuation">,</span></span><br><span class="line">    <span class="attr">&quot;embeds&quot;</span><span class="punctuation">:</span> <span class="punctuation">[</span></span><br><span class="line">        <span class="punctuation">&#123;</span></span><br><span class="line">            <span class="attr">&quot;description&quot;</span><span class="punctuation">:</span> <span class="string">&quot;#&#123;ipv4Domains&#125; 的动态解析 #&#123;ipv4Result&#125;, IP: #&#123;ipv4Addr&#125;&quot;</span><span class="punctuation">,</span></span><br><span class="line">            <span class="attr">&quot;color&quot;</span><span class="punctuation">:</span> <span class="number">15258703</span><span class="punctuation">,</span></span><br><span class="line">            <span class="attr">&quot;author&quot;</span><span class="punctuation">:</span> <span class="punctuation">&#123;</span></span><br><span class="line">                <span class="attr">&quot;name&quot;</span><span class="punctuation">:</span> <span class="string">&quot;DDNS&quot;</span></span><br><span class="line">            <span class="punctuation">&#125;</span><span class="punctuation">,</span></span><br><span class="line">            <span class="attr">&quot;footer&quot;</span><span class="punctuation">:</span> <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;DDNS #&#123;ipv4Result&#125;&quot;</span></span><br><span class="line">            <span class="punctuation">&#125;</span></span><br><span class="line">        <span class="punctuation">&#125;</span></span><br><span class="line">    <span class="punctuation">]</span></span><br><span class="line"><span class="punctuation">&#125;</span></span><br></pre></td></tr></table></figure>  </details></li><li><p><a href="https://github.com/jeessy2/ddns-go/issues/327">查看更多Webhook配置参考</a></p></li></ul><h3 id="Callback"><a href="#Callback" class="headerlink" title="Callback"></a>Callback</h3><ul><li>通过自定义回调可支持更多的第三方DNS服务商</li><li>配置的域名有几行, 就会回调几次</li><li><p>支持的变量</p><p>|  变量名   | 说明  |<br>|  ——  | ——  |<br>| #{ip}  | 新的IPv4/IPv6地址 |<br>| #{domain}  | 当前域名 |<br>| #{recordType}  | 记录类型 <code>A</code>或<code>AAAA</code> |<br>| #{ttl}  | ttl |</p></li><li>如 RequestBody 为空则为 GET 请求，否则为 POST 请求</li><li><a href="https://github.com/jeessy2/ddns-go/wiki/Callback配置参考">Callback配置参考</a></li></ul><details class="flatpaper-note flatpaper-note--danger"><summary class="flatpaper-note__title"><span class="flatpaper-note__icon" aria-hidden="true"></span><span class="flatpaper-note__label">simple</span><span class="flatpaper-note__chevron" aria-hidden="true"></span></summary><div class="flatpaper-note__body"><p>因为不可抗力因素，家庭宽带80和443端口被屏蔽了，所以别用这两</p></div></details>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;前言&quot;&gt;&lt;a href=&quot;#前言&quot; class=&quot;headerlink&quot; title=&quot;前言&quot;&gt;&lt;/a&gt;前言&lt;/h1&gt;&lt;h2 id=&quot;什么是IPV6&quot;&gt;&lt;a href=&quot;#什么是IPV6&quot; class=&quot;headerlink&quot; title=&quot;什么是IPV6&quot;&gt;&lt;/</summary>
      
    
    
    
    <category term="教程" scheme="https://jinghuashang.cn/categories/%E6%95%99%E7%A8%8B/"/>
    
    
    <category term="ip" scheme="https://jinghuashang.cn/tags/ip/"/>
    
    <category term="ipv6" scheme="https://jinghuashang.cn/tags/ipv6/"/>
    
  </entry>
  
  <entry>
    <title>摄影是一种热爱，不能因为设备止步</title>
    <link href="https://jinghuashang.cn/posts/bcc4b53b.html"/>
    <id>https://jinghuashang.cn/posts/bcc4b53b.html</id>
    <published>2023-07-17T10:22:28.000Z</published>
    <updated>2026-08-16T17:16:12.121Z</updated>
    
    <content type="html"><![CDATA[<h1 id="摄影是一种热爱，不能因为设备止步"><a href="#摄影是一种热爱，不能因为设备止步" class="headerlink" title="摄影是一种热爱，不能因为设备止步"></a>摄影是一种热爱，不能因为设备止步</h1><p>摄影对我来说，就是把一瞬间留住。很多情绪和场景，转眼就过去了，但按下快门，它就永远留在那里。不需要多好的设备，不需要多专业的技巧——想记录的心，比器材重要得多。</p><p>这也是为什么我不太纠结器材。与其纠结光圈和画质，不如先把手边值得拍的拍下来。摄影没有固定规则，也没有标准答案，愿意拍、喜欢拍，就已经迈过了最大的门槛。</p><h1 id="我与摄影"><a href="#我与摄影" class="headerlink" title="我与摄影"></a>我与摄影</h1><ul><li>2022年4月29日，这个日子比较特别，因为这个日子也是我红米K50的购机日</li><li>2022年5月1日，一个叫谷歌相机的APP安装到了我的手机</li></ul><p>我不像专业摄影师那样，为了一个画面等上几个小时。我更愿意捕捉生活里那些不起眼的瞬间。</p><p>印象最深的是有一次在车上，无意间抬头，正好撞见乡下的日落：太阳缓缓落下，把天边染成一片橙红，远处的田野和房子都披上了一层金色。我赶紧掏出手机记录了下来。这张照片没什么构图可言，但它是真实的——那一刻的光和心情，都在里面了。</p><p>摄影让我学会了更仔细地看生活。那些平时被忽略的小角落、小光影，都成了值得记录的小确幸，也是我生活乐趣的源泉。</p><p><img src="https://img.jinghuashang.cn/blog/1689589838730.jpg" alt=""></p><h1 id="我的照片"><a href="#我的照片" class="headerlink" title="我的照片"></a>我的照片</h1><div class="fp-stack" style="--fp-stack-w:480px;--fp-stack-h:480px" role="group" aria-label="堆叠相册"><div class="fp-stack__card fp-stack__card--h" data-orient="h"><span class="fp-tape"></span><img class="fp-img" src="https://img.jinghuashang.cn/blog/1689589838720.jpg" alt="" loading="lazy" decoding="async" draggable="false" referrerpolicy="no-referrer"></div><div class="fp-stack__card fp-stack__card--h" data-orient="h"><span class="fp-tape"></span><img class="fp-img" src="https://img.jinghuashang.cn/blog/1689589838706.jpg" alt="" loading="lazy" decoding="async" draggable="false" referrerpolicy="no-referrer"></div><div class="fp-stack__card fp-stack__card--h" data-orient="h"><span class="fp-tape"></span><img class="fp-img" src="https://img.jinghuashang.cn/blog/1689589838700.jpg" alt="" loading="lazy" decoding="async" draggable="false" referrerpolicy="no-referrer"></div><div class="fp-stack__card fp-stack__card--h" data-orient="h"><span class="fp-tape"></span><img class="fp-img" src="https://img.jinghuashang.cn/blog/1689589838778.jpg" alt="" loading="lazy" decoding="async" draggable="false" referrerpolicy="no-referrer"></div><div class="fp-stack__card fp-stack__card--h" data-orient="h"><span class="fp-tape"></span><img class="fp-img" src="https://img.jinghuashang.cn/blog/1689589838767.jpg" alt="" loading="lazy" decoding="async" draggable="false" referrerpolicy="no-referrer"></div><div class="fp-stack__card fp-stack__card--h" data-orient="h"><span class="fp-tape"></span><img class="fp-img" src="https://img.jinghuashang.cn/blog/1689589838750.jpg" alt="" loading="lazy" decoding="async" draggable="false" referrerpolicy="no-referrer"></div><div class="fp-stack__card fp-stack__card--h" data-orient="h"><span class="fp-tape"></span><img class="fp-img" src="https://img.jinghuashang.cn/blog/1689589838741.jpg" alt="" loading="lazy" decoding="async" draggable="false" referrerpolicy="no-referrer"></div></div><h1 id="最后"><a href="#最后" class="headerlink" title="最后"></a>最后</h1><p>想必你看到这里就会疑问为啥都是云，其实我也拍了不少人文，但是嘛，网上还是得注意隐私</p>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;摄影是一种热爱，不能因为设备止步&quot;&gt;&lt;a href=&quot;#摄影是一种热爱，不能因为设备止步&quot; class=&quot;headerlink&quot; title=&quot;摄影是一种热爱，不能因为设备止步&quot;&gt;&lt;/a&gt;摄影是一种热爱，不能因为设备止步&lt;/h1&gt;&lt;p&gt;摄影对我来说，就是把一瞬间留</summary>
      
    
    
    
    <category term="生活" scheme="https://jinghuashang.cn/categories/%E7%94%9F%E6%B4%BB/"/>
    
    
    <category term="红米" scheme="https://jinghuashang.cn/tags/%E7%BA%A2%E7%B1%B3/"/>
    
    <category term="摄影" scheme="https://jinghuashang.cn/tags/%E6%91%84%E5%BD%B1/"/>
    
  </entry>
  
  <entry>
    <title>AI与教育 | 北大</title>
    <link href="https://jinghuashang.cn/posts/8c137cae.html"/>
    <id>https://jinghuashang.cn/posts/8c137cae.html</id>
    <published>2023-06-21T10:00:25.000Z</published>
    <updated>2023-09-17T07:37:14.146Z</updated>
    
    <content type="html"><![CDATA[<h3 id="如果有一天，强大的-AI-让知识的获取无比便利，那么，大学还有必要存在吗？"><a href="#如果有一天，强大的-AI-让知识的获取无比便利，那么，大学还有必要存在吗？" class="headerlink" title="如果有一天，强大的 AI 让知识的获取无比便利，那么，大学还有必要存在吗？"></a>如果有一天，强大的 AI 让知识的获取无比便利，那么，大学还有必要存在吗？</h3><p><video src="https://download.tooc.xlj0.com/uploads/56/%E5%8F%91%E7%8E%B0%E6%9B%B4%E5%A4%9A%E7%B2%BE%E5%BD%A9%E8%A7%86%E9%A2%91%20-%20%E6%8A%96%E9%9F%B3%E6%90%9C%E7%B4%A2.mp4" controls="controls" width="600" height="400" poster="https://download.tooc.xlj0.com/uploads/56/ai.png"></video><br><strong>如果有一天，强大的 AI 让知识的获取无比便利，那么，大学还有必要存在吗？脑洞背后，也许有开阔的讨论空间，你愿意投出这“一块石头”吗？</strong></p><p>视频来源<a href="https://www.douyin.com/video/7246258542171245876">抖音</a></p>]]></content>
    
    
      
      
    <summary type="html">&lt;h3 id=&quot;如果有一天，强大的-AI-让知识的获取无比便利，那么，大学还有必要存在吗？&quot;&gt;&lt;a href=&quot;#如果有一天，强大的-AI-让知识的获取无比便利，那么，大学还有必要存在吗？&quot; class=&quot;headerlink&quot; title=&quot;如果有一天，强大的 AI 让知识的获</summary>
      
    
    
    
    <category term="分享" scheme="https://jinghuashang.cn/categories/%E5%88%86%E4%BA%AB/"/>
    
    
    <category term="AI" scheme="https://jinghuashang.cn/tags/AI/"/>
    
    <category term="教育" scheme="https://jinghuashang.cn/tags/%E6%95%99%E8%82%B2/"/>
    
  </entry>
  
  <entry>
    <title>本地博客部署计划</title>
    <link href="https://jinghuashang.cn/posts/536e.html"/>
    <id>https://jinghuashang.cn/posts/536e.html</id>
    <published>2023-04-02T12:15:25.000Z</published>
    <updated>2024-04-25T03:32:38.049Z</updated>
    
    <content type="html"><![CDATA[<h1 id=""><a href="#" class="headerlink" title=""></a><span class="fp-label is-center is-logo is-large">前言</span></h1><h2 id="关于这篇文章的意义"><a href="#关于这篇文章的意义" class="headerlink" title="关于这篇文章的意义"></a>关于这篇文章的意义</h2><p>在互联网服务的选择上，确实存在多种方案，各有利弊。虚拟主机平台因其价格便宜、配置简单而受到许多用户的青睐。例如，织音云提供了多种类型的虚拟主机套餐，这些套餐通常价格实惠，适合预算有限或者需求不高的用户。虚拟主机通过FTP进行文件传输，对于一些简单的网站或者应用来说，这已经足够使用。<br>然而，对于那些追求更高自定义性、灵活性和便捷性的用户来说，传统的FTP传输可能显得不够高效。这时，VPS（Virtual Private Server，虚拟私有服务器）搭配Git进行版本控制和部署的方式会更加方便。VPS提供了更高的权限和更灵活的配置选项，允许用户按照自己的需求进行服务器配置和管理。<br>FRP（Fast Reverse Proxy）加上本地服务器搭建的方式是另一种选择。这种方式通过在内网穿透工具FRP的帮助下，使用本地服务器来提供服务，可以实现一些特殊需求，比如在本地服务器上运行一些特定的服务或应用。虽然这种方式在成本上可能高于虚拟主机但低于VPS，它在某些场景下可能是一个折中的解决方案。<br>总的来说，选择哪种服务取决于用户的具体需求、预算以及对技术操作的熟悉程度。虚拟主机适合入门级用户和小型项目，而VPS和FRP+本地服务器搭建则更适合那些需要更多控制权和定制化服务的用户。每种方案都有其优势和局限性，用户需要根据自己的实际情况做出选择。</p><h2 id="准备"><a href="#准备" class="headerlink" title="准备"></a>准备</h2><p>如果你是一个有特殊需求，例如需要运行自己的服务或应用，并且希望这些服务能够通过互联网访问的用户，那么你可能需要具备一些基本的技术设备和知识。以下是你可能需要准备的一些条件和技能：</p><ol><li><strong>编译设备</strong>：无论是个人电脑（PC）还是智能手机，你需要一个能够进行编译和运行服务的设备。这个设备需要足够的处理能力和内存来满足你的服务需求。</li><li><strong>FRP服务提供商</strong>：FRP（Fast Reverse Proxy）是一种内网穿透工具，它允许外网访问你本地服务器上的服务。你可以选择一个FRP服务提供商，如樱花FRP、Open FRP等，来帮助你实现这一功能。</li><li><strong>本地服务器</strong>：这可以是一台物理服务器或者一个虚拟机，用于运行你的服务或应用。它需要足够的硬件资源来支持你的服务运行，并且需要安装一个合适的操作系统。</li><li><strong>网线</strong>：用于连接你的本地服务器和路由器，确保服务器能够接入互联网。</li><li><strong>系统镜像</strong>：这是安装操作系统的预配置文件。你需要根据你的服务器硬件和需求选择合适的系统镜像。</li><li><strong>Linux知识</strong>：为了配置和管理你的服务器，你需要具备一些基本的Linux知识。这包括了解如何使用命令行界面、管理文件系统、安装软件包以及进行基本的网络配置。</li></ol><p>通过这些准备，你将能够搭建一个本地服务器，并通过FRP服务将其暴露到互联网上，从而实现远程访问和管理。这种方式虽然需要一定的技术知识和初始设置，但它提供了高度的灵活性和控制力，允许你根据个人需求自定义服务。</p><h2 id="开始"><a href="#开始" class="headerlink" title="开始"></a>开始</h2><h3 id="连接上你的服务器"><a href="#连接上你的服务器" class="headerlink" title="连接上你的服务器"></a>连接上你的服务器</h3><p><img src="https://img.wwery.com/jinghuashang/58yR2cEH.png" alt="我的服务器ip为192.168.21.128，所以ssh ubuntu@192.168.21.128"></p><p><strong>因为命令面板是有点麻烦，所以我们采用面板来开始配置静态环境</strong></p><p><strong>我推荐是<a href="https://1panel.cn/">1Panel</a>或者<a href="https://www.bt.cn/new/index.html">宝塔</a></strong></p><p><strong>我这里使用的是1Panel ,主要是这个是现代化UI设计(简称:好看)</strong></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></pre></td><td class="code"><pre><span class="line"><span class="comment"># RedHat / CentOS 安装脚本</span></span><br><span class="line">curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh &amp;&amp; sh quick_start.sh</span><br><span class="line"></span><br><span class="line"><span class="comment"># Ubuntu 安装脚本</span></span><br><span class="line">curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh &amp;&amp; sudo bash quick_start.sh</span><br><span class="line"></span><br><span class="line"><span class="comment"># Debian 安装脚本</span></span><br><span class="line">curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh &amp;&amp; bash quick_start.sh</span><br></pre></td></tr></table></figure><p><strong>安装成功后，控制台日志会提示对应端口号，可通过浏览器访问如下页面登录 1Panel：</strong></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">http://目标服务器 IP 地址:目标端口</span><br></pre></td></tr></table></figure><p><img src="https://img.wwery.com/jinghuashang/I2EljK9R.png" alt="配置用户名和密码"></p><p><img src="https://img.wwery.com/jinghuashang/IPuajlMV.png" alt="面板首页"></p><p><img src="https://img.wwery.com/jinghuashang/LQWGVWAW.png" alt="根据提示我们先安装OpenResty"></p><p><img src="https://img.wwery.com/jinghuashang/gyJSedVB.png" alt=""></p><p><img src="https://img.wwery.com/jinghuashang/NDHayBao.png" alt="随便写一个名字开始安装"></p><p><img src="https://img.wwery.com/jinghuashang/TnCuhOBF.png" alt="等待一会就安装完毕"></p><p><img src="https://img.wwery.com/jinghuashang/Cir1BHfk.png" alt="选择网站，创建网站"></p><p><img src="https://img.wwery.com/jinghuashang/X69jJqps.png" alt=""></p><p><strong>选择静态网站，域名哪里随便填写，其他域名那里填写127.0.0.1:任意端口</strong></p><p><img src="https://img.wwery.com/jinghuashang/Bd14IYkA.png" alt="访问创建的网站"></p><h3 id="git环境配置"><a href="#git环境配置" class="headerlink" title="git环境配置"></a>git环境配置</h3><h4 id="创建一个名为blog的用户，用于管理Hexo项目"><a href="#创建一个名为blog的用户，用于管理Hexo项目" class="headerlink" title="创建一个名为blog的用户，用于管理Hexo项目"></a>创建一个名为blog的用户，用于管理Hexo项目</h4><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">sudo adduser blog</span><br></pre></td></tr></table></figure><h4 id="给blog账号添加权限"><a href="#给blog账号添加权限" class="headerlink" title="给blog账号添加权限"></a>给blog账号添加权限</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">sudo vim /etc/sudoers</span><br><span class="line"></span><br><span class="line"><span class="comment"># 找到User privilege specification部分，添加如下内容：</span></span><br><span class="line">blog    ALL=(ALL:ALL) ALL</span><br><span class="line"></span><br><span class="line"><span class="comment"># 使用wq!强制保存</span></span><br></pre></td></tr></table></figure><h4 id="切换至blog用户"><a href="#切换至blog用户" class="headerlink" title="切换至blog用户"></a>切换至blog用户</h4><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">su blog</span><br></pre></td></tr></table></figure><h4 id="配置git环境"><a href="#配置git环境" class="headerlink" title="配置git环境"></a>配置git环境</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><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line"><span class="comment"># 创建repo文件夹</span></span><br><span class="line">sudo <span class="built_in">mkdir</span> /var/repo/</span><br><span class="line"><span class="comment"># 添加权限</span></span><br><span class="line">sudo <span class="built_in">chown</span> -R <span class="variable">$USER</span>:<span class="variable">$USER</span> /var/repo/</span><br><span class="line">sudo <span class="built_in">chmod</span> -R 755 /var/repo/</span><br><span class="line"><span class="comment"># 切换至/var/repo文件夹，创建git库</span></span><br><span class="line"><span class="built_in">cd</span> /var/repo/</span><br><span class="line">git init --bare hexo.git</span><br></pre></td></tr></table></figure><h4 id="创建git钩子"><a href="#创建git钩子" class="headerlink" title="创建git钩子"></a>创建git钩子</h4><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 /var/repo/hexo.git/hooks/post-receive</span><br></pre></td></tr></table></figure><p><strong>写入下面内容</strong></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></pre></td><td class="code"><pre><span class="line"><span class="meta">#!/bin/bash</span></span><br><span class="line"></span><br><span class="line">git --work-tree=/opt/1panel/apps/openresty/jinghuashang/www/sites/hexo/index --git-dir=/var/repo/hexo.git checkout -f</span><br></pre></td></tr></table></figure><p><em>注意：tree位置就是你的网站根目录</em></p><h4 id="文件变为可执行文件"><a href="#文件变为可执行文件" class="headerlink" title="文件变为可执行文件"></a>文件变为可执行文件</h4><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"><span class="built_in">chmod</span> +x /var/repo/hexo.git/hooks/post-receive</span><br></pre></td></tr></table></figure><p><strong>这样配置是无法上传的，得给网站根目录添加777权限</strong></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">sudo <span class="built_in">chmod</span> 777 /opt/1panel/apps/openresty/jinghuashang/www/sites/hexo/index</span><br></pre></td></tr></table></figure><h4 id="添加ssh公钥"><a href="#添加ssh公钥" class="headerlink" title="添加ssh公钥"></a>添加ssh公钥</h4><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></pre></td><td class="code"><pre><span class="line"><span class="comment"># 首先创建.ssh目录，并进入该目录</span></span><br><span class="line">sudo <span class="built_in">mkdir</span> .ssh</span><br><span class="line"><span class="built_in">cd</span> .ssh/</span><br><span class="line"></span><br><span class="line"><span class="comment"># 将你windows下的id_rsa.pub写入authorized_keys文件</span></span><br><span class="line">sudo vim authorized_keys</span><br></pre></td></tr></table></figure><h4 id="给hexo-配置文件添加一下"><a href="#给hexo-配置文件添加一下" class="headerlink" title="给hexo 配置文件添加一下"></a>给hexo 配置文件添加一下</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></pre></td><td class="code"><pre><span class="line">-  <span class="built_in">type</span>: git</span><br><span class="line">   repo: blog@你的服务器ip:/var/repo/hexo.git</span><br><span class="line">   branch: master</span><br></pre></td></tr></table></figure><p><strong>上传</strong></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">hexo d</span><br></pre></td></tr></table></figure><h3 id="提示"><a href="#提示" class="headerlink" title="提示"></a><em>提示</em></h3><p>如果无法上传，基本上都是路径的权限问题。</p><h3 id="内网穿透服务-frp"><a href="#内网穿透服务-frp" class="headerlink" title="内网穿透服务 - frp"></a><em>内网穿透服务 - frp</em></h3><p>以上传了仅供本地访问，想要外网访问就需要frp<br><img src="https://img.jinghuashang.cn/hexo/frp.jfif" alt=""></p><ul><li>推荐使用樱花<a href="https://www.natfrp.com/">Frp</a></li></ul><h4 id="windows-篇"><a href="#windows-篇" class="headerlink" title="windows 篇"></a>windows 篇</h4><p>因为都用windows了，直接就用图形界面<a href="https://www.natfrp.com/tunnel/download">点击</a>下载Windows 安装程序<br><img src="https://img.jinghuashang.cn/hexo/screenshot20230727.png" alt=""><br>安装后去官网用户中心获取<code>用户密钥</code><br><img src="https://img.jinghuashang.cn/hexo/screenshot202307271.png" alt=""><br>并将用户密钥复制到<code>账户</code> - <code>访问密钥</code><br><img src="https://img.jinghuashang.cn/hexo/20230727123602.png" alt=""><br>接下来的配置相比已经挺简单了，就不一一赘述了</p><h4 id="linux-篇"><a href="#linux-篇" class="headerlink" title="linux 篇"></a>linux 篇</h4><h5 id="下载"><a href="#下载" class="headerlink" title="下载"></a>下载</h5><p><a href="https://www.natfrp.com/tunnel/download">点击</a>下载你相对应的linux发行版的frpc<br><img src="https://img.jinghuashang.cn/hexo/screenshot202307272.png" alt=""><br>咱推荐直接获取下载地址，然后去你的linux服务器直接用<code>wget</code>下载</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">wget https://getfrp.sh/d/frpc_linux_amd64 -O frpc</span><br></pre></td></tr></table></figure><p>这样你就获取到了一个<code>frpc</code>客户端，但是还不是可执行文件</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></pre></td><td class="code"><pre><span class="line"><span class="comment"># 设置775权限</span></span><br><span class="line"><span class="built_in">chmod</span> 755 frpc</span><br><span class="line"><span class="comment"># 校验文件是否损坏</span></span><br><span class="line"><span class="built_in">ls</span> -<span class="built_in">ls</span> frpc</span><br><span class="line"><span class="built_in">md5sum</span> frpc</span><br><span class="line"></span><br><span class="line"><span class="comment"># 输入以下出现版本说明程序正常</span></span><br><span class="line">./frpc -v</span><br><span class="line"><span class="comment"># 0.45.0-sakura-5.2</span></span><br></pre></td></tr></table></figure><p>同时为了方便使用建议将<code>frpc</code>放到<code>/usr/local/bin/</code>目录，并且新建一个frpc的工作目录<code>/usr/local/etc/natfrp</code><br>并且新建一个Systemd 的frpc文件，具体操作如下：</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></pre></td><td class="code"><pre><span class="line"><span class="comment"># 将frpc放到/usr/local/bin/目录</span></span><br><span class="line">sudo <span class="built_in">mv</span> frpc /usr/local/bin/</span><br><span class="line"><span class="comment"># 新建一个frpc的工作目录</span></span><br><span class="line">sudo <span class="built_in">mkdir</span> -p /usr/local/etc/natfrp</span><br><span class="line"><span class="comment"># 新建一个Systemd 的frpc文件</span></span><br><span class="line">sudo vim /etc/systemd/system/frpc@.service</span><br></pre></td></tr></table></figure><blockquote><p><strong>提示</strong><br>如果您希望提高安全性，降低被入侵造成的危险，请反注释下面的<code>DynamicUser</code>配置项。 启用此功能将导致自动 HTTPS 等功能需要写入文件时出现不完全与教程相同的行为，请在确认您有相关能力的情况下启用。</p></blockquote><figure class="highlight plaintext"><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></pre></td><td class="code"><pre><span class="line">[Unit]</span><br><span class="line">Description=SakuraFrp Service</span><br><span class="line">After=network.target</span><br><span class="line"></span><br><span class="line">[Service]</span><br><span class="line">Type=idle</span><br><span class="line">#DynamicUser=yes</span><br><span class="line">Restart=on-failure</span><br><span class="line">RestartSec=60s</span><br><span class="line">ExecStart=/usr/local/bin/frpc -f %i</span><br><span class="line">WorkingDirectory=/usr/local/etc/natfrp</span><br><span class="line"></span><br><span class="line">[Install]</span><br><span class="line">WantedBy=multi-user.target</span><br></pre></td></tr></table></figure><p>执行下面的命令重载 Systemd，这样服务就配置完成了<br><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">sudo systemctl daemon-reload</span><br></pre></td></tr></table></figure></p><blockquote><p><strong>提示</strong><br>请记住后续操作中用到的 <code>Unit 名称</code> 是 <code>frpc@&lt;启动参数&gt;</code>，例如 <code>frpc@wdnmdtoken666666:12345</code></p></blockquote><p>下面本教程将介绍一些 Systemd 的基本操作</p><h5 id="启动-停止隧道"><a href="#启动-停止隧道" class="headerlink" title="启动/停止隧道"></a><strong>启动/停止隧道</strong></h5><p>启动/停止隧道非常简单，使用下面的命令即可，start 是启动，stop 是停止</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">sudo systemctl &lt;start|stop&gt; &lt;Unit名称&gt;</span><br></pre></td></tr></table></figure><blockquote><p><strong>提示</strong><br>如果您想开启多条不同隧道，只要更换 <code>Unit 名称</code> 中的启动参数并多次执行对应的指令即可</p></blockquote><p>举个例子，开启访问密钥为 wdnmdtoken666666 的用户所拥有的 ID 为 12345 的隧道:</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">sudo systemctl start frpc@wdnmdtoken666666:12345</span><br></pre></td></tr></table></figure><h5 id="查看隧道状态"><a href="#查看隧道状态" class="headerlink" title="查看隧道状态"></a>查看隧道状态</h5><p>您可以通过下面的命令查看服务状态<br><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">sudo systemctl status &lt;Unit名称&gt;</span><br></pre></td></tr></table></figure><br>举个例子，要查看上面开启的隧道状态可以使用<br><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">sudo systemctl status frpc@wdnmdtoken666666:12345</span><br></pre></td></tr></table></figure></p><blockquote><p><strong>注意</strong><br><strong>绝对不要</strong> 开启重复的隧道，这会造成出现各种不可预计的 Bug<br>执行多次 <code>systemctl start</code> 是 <strong>安全</strong> 的<br>配置好 Systemd 后，<strong>不要</strong> 再用 <code>frpc -f &lt;启动参数&gt;</code> 的形式开启隧道</p></blockquote><p>如果您忘记了之前开启过哪些隧道，使用下面的命令可以列出当前运行中的隧道<br><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">sudo systemctl list-units <span class="string">&quot;frpc@*&quot;</span></span><br></pre></td></tr></table></figure><br>下图中的信息表示我们开启了访问密钥为 wdnmdtoken666666 的用户所拥有的两条 ID 分别为 12345 和 67890 的隧道<br><img src="https://doc.natfrp.com/assets/systemd-3-nBoWCRt3.png" alt=""></p><h1 id="-1"><a href="#-1" class="headerlink" title=""></a><span class="fp-label is-center is-logo is-large">结尾</span></h1><blockquote><p>这是一个勉强有点网络知识和经验的<strong>小博主</strong>的教程，或许有些不对的地方，欢迎到<strong>评论</strong>指出错误</p></blockquote>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;headerlink&quot; title=&quot;&quot;&gt;&lt;/a&gt;&lt;span class=&quot;fp-label is-center is-logo is-large&quot;&gt;前言&lt;/span&gt;&lt;/h1&gt;&lt;h2 id=&quot;关于这篇文章的意义&quot;&gt;&lt;a </summary>
      
    
    
    
    <category term="教程" scheme="https://jinghuashang.cn/categories/%E6%95%99%E7%A8%8B/"/>
    
    
    <category term="github" scheme="https://jinghuashang.cn/tags/github/"/>
    
    <category term="frpc" scheme="https://jinghuashang.cn/tags/frpc/"/>
    
    <category term="hexo" scheme="https://jinghuashang.cn/tags/hexo/"/>
    
  </entry>
  
  <entry>
    <title>安卓root</title>
    <link href="https://jinghuashang.cn/posts/b206.html"/>
    <id>https://jinghuashang.cn/posts/b206.html</id>
    <published>2023-02-24T11:35:02.000Z</published>
    <updated>2024-06-11T14:50:54.655Z</updated>
    
    <content type="html"><![CDATA[<h1 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h1><h2 id="🚧免责声明🚧"><a href="#🚧免责声明🚧" class="headerlink" title="🚧免责声明🚧"></a>🚧免责声明🚧</h2><p>🚨使用root权限操作系统具有潜在的风险。root是Linux和类Unix操作系统中最高级别的用户账户，拥有对系统的完全控制权。不当的使用root权限可能会导致系统文件损坏、数据丢失、安全漏洞甚至系统崩溃。因此，在执行需要root权限的操作时，应该格外小心，并且只授予信任的用户和管理员root访问权限</p><h2 id="🛰️关于为什么要root手机🛰️"><a href="#🛰️关于为什么要root手机🛰️" class="headerlink" title="🛰️关于为什么要root手机🛰️"></a>🛰️关于为什么要root手机🛰️</h2><ol><li><p><strong>为什么厂家出厂不就给手机root？</strong><br>手机制造商通常不会出厂时提供root权限，主要是因为安全性考虑。root权限使得任何软件都能够访问系统的核心部分，这极大地提高了手机遭受恶意软件攻击的风险。如果手机被恶意软件感染，用户的个人信息可能会被盗取，甚至可能导致经济损失或物理损害，如手机变砖或硬件损坏。因此，为了保护用户的数据安全和设备完整性，制造商通常会在出厂时限制root权限。</p></li><li><p><strong>既然root那么危险，为啥还要root？</strong><br>尽管root带来了安全风险，但对于技术爱好者和高级用户来说，root访问提供了对设备的完全控制。这种控制级别允许他们自定义和优化设备的各个方面，安装特殊的定制ROM，以及使用需要超级用户权限的高级应用程序。对于那些喜欢探索设备潜能、追求极致性能和个性化设置的玩家来说，root的诱惑往往难以抵挡。</p></li><li><p><strong>root的好处？</strong></p><ul><li><strong>自定义和优化</strong>：root权限允许用户更深入地定制手机，包括更改系统文件、安装自定义ROM、刷新恢复工具等，从而根据个人喜好和需求优化设备。</li><li><strong>高级应用</strong>：一些高级应用程序和功能，如系统级广告拦截、应用数据备份、系统性能监控等，需要root权限才能正常工作。</li><li><strong>科技探索</strong>：对于喜欢尝试最新技术和黑客技术的用户来说，root是开启手机潜能的关键。它允许用户进行各种实验，比如硬件层面的修改、系统级的调整等。</li></ul></li></ol><p>总之，root手机是一把双刃剑。它既赋予了用户极大的自由度和控制力，同时也带来了安全风险。因此，在决定是否root手机之前，用户应该仔细权衡这些利弊，并确保自己对相关的技术知识和潜在风险有足够的了解。</p><h2 id="🚧为搞机做准备🚧"><a href="#🚧为搞机做准备🚧" class="headerlink" title="🚧为搞机做准备🚧"></a>🚧为搞机做准备🚧</h2><p>在您考虑root您的设备之前，确实需要遵循一些步骤，并做好充分的准备。以下是对您提供的步骤的详细说明：</p><ol><li><p><strong>查询设备是否支持root</strong>：</p><ul><li>在开始之前，您需要确认您的设备是否支持获取root权限。一些设备可能由于硬件或软件限制而不容易或不可能被root。您可以查找您设备的型号和制造商，然后在互联网上搜索相关的root教程和支持论坛，以了解您的设备是否支持root，以及社区中是否有成功的root案例。</li></ul></li><li><p><strong>下载兼容的系统包</strong>：</p><ul><li>如果您的设备支持root，您需要下载与您当前系统版本兼容的root包。通常，这些包可以在设备的官方论坛或者开发者社区找到。您应该始终从官方或可信任的第三方来源下载root包，以避免下载包含恶意软件的文件。</li></ul></li><li><p><strong>准备面具（Magisk）</strong>：</p><ul><li>Magisk是一个流行的Android工具，它允许用户在不修改系统分区的情况下进行系统级的修改。在root过程中，Magisk通常用于管理root权限和进行其他系统级的自定义。在开始root之前，下载并安装Magisk是很有帮助的。</li></ul></li><li><p><strong>准备好心态</strong>：</p><ul><li>root过程可能会很复杂，并且存在风险，包括设备变砖的可能性。因此，在开始之前，您需要做好心理准备，接受可能出现的任何结果。如果您的设备在root过程中变砖，您可能需要寻找专业的帮助来恢复设备，或者准备好更换设备。</li></ul></li></ol><p>在执行root之前，请确保您已经备份了所有重要数据，因为root过程可能会导致数据丢失。此外，请仔细阅读并理解所有的指导步骤，如果您不熟悉这些过程，寻求经验丰富的用户的帮助会是一个好主意。记住，root是一个高级操作，只有当您充分了解其潜在的风险和后果时，才应该进行。</p><p>最后附上连接有关连接</p><p>小米/红米 MIUI系统包<a href="https://web.vip.miui.com/page/info/mio/mio/detail?postId=37093637&amp;app_version=dev.20051&amp;ref=share&amp;channel=Share">MIUI正式版刷机包汇总</a></p><p>面具<a href="https://github.com/topjohnwu/Magisk/releases">下载</a>地址</p><h2 id="解锁BL锁详细步骤"><a href="#解锁BL锁详细步骤" class="headerlink" title="解锁BL锁详细步骤"></a>解锁BL锁详细步骤</h2><h3 id="官方解锁方法："><a href="#官方解锁方法：" class="headerlink" title="官方解锁方法："></a>官方解锁方法：</h3><ol><li><strong>登录小米账号</strong>：首先，您需要在您的手机上登录小米账号。如果还没有账号，请先注册一个。</li><li><strong>开启开发者模式</strong>：进入手机的“设置”，然后选择“我的设备”或“关于手机”，找到“MIUI版本号”，连续点击该版本号4-8次，直到出现提示“您已开启开发者模式”。</li><li><strong>进入开发者选项</strong>：回到“设置”，选择“更多设置”，然后找到并进入“开发者选项”。</li><li><strong>绑定账号</strong>：在“开发者选项”中找到“设备解锁状态”，点击后绑定您的账号。这一步是为了确保您有权解锁您的设备。</li><li><strong>等待解锁</strong>：根据小米官方的要求，您需要等待168小时（7天）后才能解锁。这是小米公司为了防止滥用而设置的政策。</li><li><strong>下载小米解锁工具</strong>：在等待期间，您可以访问小米官方网站，下载小米解锁工具。</li><li><strong>使用解锁工具</strong>：等待时间过后，关闭手机，同时按住音量下键和开机键，进入Fastboot模式。将手机连接到电脑，打开下载的小米解锁工具，按照工具的提示进行操作。请注意，官方解锁会清除手机上的所有数据，所以在解锁前一定要做好数据备份。</li></ol><h3 id="安装Magisk和打包boot-img"><a href="#安装Magisk和打包boot-img" class="headerlink" title="安装Magisk和打包boot.img"></a>安装Magisk和打包boot.img</h3><ol><li><strong>下载MIUI系统解锁工具</strong>：首先，您需要下载适用于MIUI系统的解锁工具。这个工具通常可以在小米官方网站或相关的技术论坛上找到。</li><li><strong>下载fastboot镜像包</strong>：访问xiaomirom.com网站，下载与您机型和系统版本对应的fastboot镜像包。下载后，解压缩包，找到其中的boot.img文件。</li><li><strong>下载Magisk</strong>：从GitHub或magiskcn中文网下载Magisk正式版安装包。Magisk是一个用于修改系统文件的工具，它可以在不修改系统分区的情况下实现系统的修改。</li><li><strong>使用Magisk修补boot.img</strong>：打开Magisk，选择“安装”或“修补”，然后选择之前下载的boot.img文件。Magisk将自动修补该文件。</li></ol><h3 id="刷写修补后的boot-img文件到手机"><a href="#刷写修补后的boot-img文件到手机" class="headerlink" title="刷写修补后的boot.img文件到手机"></a>刷写修补后的boot.img文件到手机</h3><ol><li><strong>进入Fastboot模式</strong>：关闭手机，同时按住音量下键和开机键，进入Fastboot模式。</li><li><strong>使用fastboot命令刷写</strong>：在电脑上打开命令行工具，进入fastboot所在的文件夹，使用fastboot命令刷写修补后的boot.img文件到手机。命令通常是“fastboot flash boot boot.img”。</li><li><strong>重启手机</strong>：刷写完成后，使用“fastboot reboot”命令重启手机。</li></ol><h3 id="检查Root权限"><a href="#检查Root权限" class="headerlink" title="检查Root权限"></a>检查Root权限</h3><ol><li><strong>打开Magisk</strong>：在手机上打开Magisk应用程序。</li><li><strong>检查Root状态</strong>：在Magisk的主界面中，您应该能够看到Root状态。如果显示已获取Root权限，那么您已经成功Root了您的手机。</li></ol><h2 id="注意事项"><a href="#注意事项" class="headerlink" title="注意事项"></a>注意事项</h2><ul><li><strong>安全风险</strong>：解锁BL和获取Root权限可能会增加手机安全风险，并可能导致数据丢失。请确保您了解这些风险，并采取适当的预防措施。</li><li><strong>软件兼容性</strong>：在操作过程中，确保使用的工具和软件与您的手机型号和系统版本兼容。</li><li><strong>数据备份</strong>：在解锁BL和刷写系统之前，一定要备份您的重要数据，以防数据丢失。</li><li><strong>软件来源</strong>：教程中提到的软件和工具，如Momo、Magisk、Universal SafetyNet Fix模块、Shamiko模块，需要从可信赖的来源下载。</li></ul>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;前言&quot;&gt;&lt;a href=&quot;#前言&quot; class=&quot;headerlink&quot; title=&quot;前言&quot;&gt;&lt;/a&gt;前言&lt;/h1&gt;&lt;h2 id=&quot;🚧免责声明🚧&quot;&gt;&lt;a href=&quot;#🚧免责声明🚧&quot; class=&quot;headerlink&quot; title=&quot;🚧免责声明🚧&quot;</summary>
      
    
    
    
    <category term="教程" scheme="https://jinghuashang.cn/categories/%E6%95%99%E7%A8%8B/"/>
    
    
    <category term="root" scheme="https://jinghuashang.cn/tags/root/"/>
    
    <category term="android" scheme="https://jinghuashang.cn/tags/android/"/>
    
  </entry>
  
  <entry>
    <title>个人网站搭建教程</title>
    <link href="https://jinghuashang.cn/posts/bfb3.html"/>
    <id>https://jinghuashang.cn/posts/bfb3.html</id>
    <published>2022-11-22T11:57:20.000Z</published>
    <updated>2024-04-25T03:56:49.027Z</updated>
    
    <content type="html"><![CDATA[<h1 id="个人网站搭建教程"><a href="#个人网站搭建教程" class="headerlink" title="个人网站搭建教程"></a>个人网站搭建教程</h1><h2 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h2><p>❌ 问所有问题前请认真阅读本教程，若是本教程中未提到的漏洞，我会耐心解答，若是脑残问题请勿问，先自行百度</p><p>🚧 本文档处于施工期，若有大佬发现问题，欢迎前来讨论</p><h2 id="准备"><a href="#准备" class="headerlink" title="准备"></a>准备</h2><h3 id="设备"><a href="#设备" class="headerlink" title="设备"></a>设备</h3><p>拥有一台电脑是进行文件编辑和处理的理想选择，尤其是对于需要大量创作和编码的Hexo博客来说更是如此。虽然现代智能手机的功能日益强大，甚至能够处理一些简单的编辑任务，但电脑在处理大量文本、图像编辑、编程和其他复杂任务方面仍然具有不可替代的优势。</p><p>电脑提供了更大的屏幕，更适合长时间工作，同时多任务处理能力也更强。在进行博客创作时，你可以同时打开文本编辑器、浏览器、终端等多个窗口，这样可以更高效地进行写作、研究和部署。此外，电脑通常配备有更全面的输入设备，如全尺寸键盘和鼠标，这对于提高打字速度和精确度至关重要。</p><p>对于Hexo博客而言，电脑还是安装和运行必要软件的平台，比如Node.js、Git等。这些工具在博客的生成、版本控制和部署过程中发挥着核心作用。而且，电脑通常拥有更强大的处理能力和更大的存储空间，这对于处理大量的博客文章、图片和其他多媒体文件尤为重要。</p><p>总之，拥有一台电脑，特别是对于博客作者和开发者来说，是一个提高工作效率、增强创作能力的重要工具。它为处理复杂的编辑任务、管理博客内容和进行高效的多任务操作提供了便利，是进行专业内容创作和管理的理想选择。</p><h3 id="资源"><a href="#资源" class="headerlink" title="资源"></a>资源</h3><ol><li><p>域名<br>域名是互联网上网站的地址，它将易于记忆的名称（如example.com）与网站的IP地址相连接。域名的选择和管理对于建立一个专业和易于访问的网站至关重要。它不仅关系到品牌形象，还影响到网站的SEO（搜索引擎优化）和用户体验。在选择域名时，需要考虑域名的易记性、相关性以及是否容易被搜索引擎收录。注册域名后，还需要进行DNS（域名系统）设置，将域名指向网站托管服务器的IP地址。</p></li><li><p>GitHub Pages<br>GitHub Pages是一项免费的服务，允许用户托管静态网站，这些网站可以直接从GitHub仓库中部署。它是一个方便的工具，特别适合开发者展示他们的项目或个人简历。使用GitHub Pages，你可以将网站源代码推送到GitHub仓库的特定分支（通常是gh-pages分支或main分支的docs目录），GitHub会自动构建并发布网站。GitHub Pages支持自定义域名，使得网站看起来更加专业。</p></li><li><p>Vercel<br>Vercel是一个现代的开发平台，专注于为前端开发者提供快速、简单的部署体验。它支持多种前端框架和静态站点生成器，如Next.js、Gatsby和Vue等。Vercel提供免费层，允许开发者部署个人项目，并支持自动化的构建和部署流程。与GitHub Pages类似，Vercel也支持自定义域名，并提供全球CDN加速，确保网站快速加载。</p></li><li><p>Cloudflare<br>Cloudflare是一个提供网站加速、安全保护和DNS服务的平台。它通过分布在全球的边缘节点网络来缓存网站内容，从而提高网站的访问速度和性能。Cloudflare还提供免费的SSL证书，可以加密用户与网站之间的数据传输。通过Cloudflare的DNS服务，用户可以轻松地将域名解析到不同的托管服务，如GitHub Pages或Vercel，同时解决这些服务可能遇到的访问限制和速度问题。</p></li><li><p>Hexo<br>Hexo是一个基于Node.js的静态站点生成器，它允许用户使用Markdown编写内容，并快速生成静态HTML文件。Hexo拥有丰富的主题和插件生态系统，用户可以根据自己的喜好和需求定制网站的外观和功能。Hexo适合那些想要快速搭建个人博客的开发者，它简化了网站构建和部署的过程，使得用户可以专注于内容的创作。结合GitHub Pages或Vercel，Hexo可以轻松实现网站的托管和发布。</p></li></ol><h2 id="准备工作·环境"><a href="#准备工作·环境" class="headerlink" title="准备工作·环境"></a>准备工作·环境</h2><h3 id="Git"><a href="#Git" class="headerlink" title="Git"></a>Git</h3><h4 id="简介"><a href="#简介" class="headerlink" title="简介"></a>简介</h4><p>这个是使用github pages环境必不可少的工具，用于上传和下载</p><h4 id="安装"><a href="#安装" class="headerlink" title="安装"></a>安装</h4><h5 id="windwos篇"><a href="#windwos篇" class="headerlink" title="windwos篇"></a>windwos篇</h5><p>第一步 前往官网<a href="https://git-scm.com/">Git (git-scm.com)</a></p><p>第二步 选择自己电脑相应的配置安装</p><p><img src="https://img.jinghuashang.cn/blog/dow.png" alt="选择Download for Windows"></p><p>这里Standalone Installers是指安装包</p><p>Portable (“thumbdrive edition”)是指绿色安装</p><p>一般推荐使用Standalone Installers</p><p><img src="https://img.jinghuashang.cn/blog/dow2.png" alt=""></p><p>32位和64位可以右键自己电脑图标，选择属性</p><p><img src="https://img.jinghuashang.cn/blog/com.png" alt=""></p><p>我电脑是64位的，就下载64位的安装包</p><p><img src="https://img.jinghuashang.cn/blog/dow3.png" alt=""></p><p><img src="https://img.jinghuashang.cn/blog/dow4.png" alt=""></p><p>你问我安装步骤？</p><p>无脑Next就是</p><p><img src="https://img.jinghuashang.cn/blog/dow5.png" alt="安装完成后长这样"></p><h5 id="Linux篇"><a href="#Linux篇" class="headerlink" title="Linux篇"></a>Linux篇</h5><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><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></pre></td><td class="code"><pre><span class="line"><span class="comment"># Ubuntu/Debian系(D系)</span></span><br><span class="line">$ sudo apt-get update</span><br><span class="line">$ sudo apt-get install git</span><br><span class="line"><span class="comment"># 途中暂停安装让你选择时直接回车就行</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># Arch/manjaro(A系)</span></span><br><span class="line">$ sudo pacman -S git</span><br><span class="line"><span class="comment"># 或者使用aru助手 </span></span><br><span class="line">$ paru git</span><br><span class="line"><span class="comment"># yay git 也行</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># Centos</span></span><br><span class="line">$ sudo yum install git</span><br></pre></td></tr></table></figure><h4 id="配置"><a href="#配置" class="headerlink" title="配置"></a>配置</h4><p>你安装完不代表成功了，如果你单纯只下载东西是可以不配置，但要是要上传东西就要配置，不然github不知道你是不是这个项目的主人</p><p>1.创建ssh</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">ssh-keygen -t rsa -C <span class="string">&#x27;你注册github的电子邮箱地址&#x27;</span></span><br><span class="line"><span class="comment"># 这里可以用git带的，也可以用cmd</span></span><br></pre></td></tr></table></figure><p>2.复制公钥到你的github连接里</p><p><img src="https://img.jinghuashang.cn/blog/ssh.png" alt="地址如下"></p><p><img src="https://img.jinghuashang.cn/blog/ssh2.png" alt="用记事本打开，Ctrl+A全选复制全部"></p><p>访问<a href="https://github.com/">GitHub</a>官网，选择设置</p><p><img src="https://img.jinghuashang.cn/blog/github.png" alt=""></p><p><img src="https://img.jinghuashang.cn/blog/github2.png" alt=""></p><p><img src="https://img.jinghuashang.cn/blog/github3.png" alt="选择SSH and GPG keys"></p><p><img src="https://img.jinghuashang.cn/blog/github4.png" alt="新建SSH keys"></p><p><img src="https://img.jinghuashang.cn/blog/github5.png" alt="如图设置"></p><h4 id="完成配置"><a href="#完成配置" class="headerlink" title="完成配置"></a>完成配置</h4><p>到这就完成自己设备和github的连接</p><h3 id="Hexo-可选"><a href="#Hexo-可选" class="headerlink" title="Hexo(可选)"></a>Hexo(可选)</h3><h4 id="简介-1"><a href="#简介-1" class="headerlink" title="简介"></a>简介</h4><p>正如开篇所说，Hexo 是一个快速、简洁且高效的<strong>博客框架</strong>。 Hexo 使用 Markdown （或其他渲染引擎）解析文章，在几秒内，即可利用靓丽的主题生成静态网页。</p><h4 id="安装-1"><a href="#安装-1" class="headerlink" title="安装"></a>安装</h4><h5 id="windows篇"><a href="#windows篇" class="headerlink" title="windows篇"></a>windows篇</h5><p>因为hexo基于nodejs开发环境，需要hexojs环境，所以我们需要安装hexojs</p><p>1.访问<a href="https://nodejs.org/">NodeJS</a>官网</p><p><img src="https://img.jinghuashang.cn/blog/nodejs.png" alt=""></p><p><img src="https://img.jinghuashang.cn/blog/nodejs2.png" alt="点击安装，全部同意就是"></p><p><img src="https://img.jinghuashang.cn/blog/nodejs3.png" alt="输入这两串命令，确认安装完成"></p><p>2.打开cmd，安装hexo</p><p><img src="https://img.jinghuashang.cn/blog/hexo.png" alt="输入hexo -g install hexo-cli开始安装hexo"></p><p><img src="https://img.jinghuashang.cn/blog/hexo2.png" alt="如果显示这样差不多的就完成安装了"></p><h5 id="linux篇"><a href="#linux篇" class="headerlink" title="linux篇"></a>linux篇</h5><p>还是那句话，linux因为有官方库，直接傻瓜式安装</p><p>1.安装nodejs环境和npm安装器(这里还安装是因为node和npm被分开了打包)</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></pre></td><td class="code"><pre><span class="line"><span class="comment"># D系</span></span><br><span class="line">$ sudo apt-get install nodejs npm -y</span><br><span class="line"></span><br><span class="line"><span class="comment"># A系</span></span><br><span class="line">$ sudo pacman -S nodejs npm</span><br><span class="line"><span class="comment">#也可以使用aru助手paru -S nodejs npm/yay -S nodejs npm</span></span><br><span class="line"></span><br><span class="line"><span class="comment"># Centos</span></span><br><span class="line">$ sudo yum install nodejs npm</span><br></pre></td></tr></table></figure><p>2.安装hexo,和windows一样</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">$ sudo npm -g install hexo-cli</span><br><span class="line">$ heox -v</span><br></pre></td></tr></table></figure><p>3.完成安装</p><h2 id="普通部署"><a href="#普通部署" class="headerlink" title="普通部署"></a>普通部署</h2><h3 id="准备-1"><a href="#准备-1" class="headerlink" title="准备"></a>准备</h3><h4 id="1-在一个地方新建文件夹，或者在你的源码地址打开一个终端-cmd-termux"><a href="#1-在一个地方新建文件夹，或者在你的源码地址打开一个终端-cmd-termux" class="headerlink" title="1.在一个地方新建文件夹，或者在你的源码地址打开一个终端(cmd,termux)"></a>1.在一个地方新建文件夹，或者在你的源码地址打开一个终端(cmd,termux)</h4><p><img src="https://img.jinghuashang.cn/blog/4YYTE9LP.png" alt="如图"><br><img src="https://img.jinghuashang.cn/blog/Mig0ECYO.png" alt="如图"></p><h4 id="2-新建一个README-md文件，里面可以编辑你想要在github源码上显示的东西"><a href="#2-新建一个README-md文件，里面可以编辑你想要在github源码上显示的东西" class="headerlink" title="2.新建一个README.md文件，里面可以编辑你想要在github源码上显示的东西"></a>2.新建一个README.md文件，里面可以编辑你想要在github源码上显示的东西</h4><p><img src="https://img.jinghuashang.cn/blog/VVJzcwF9.png" alt="如图"><br><img src="https://img.jinghuashang.cn/blog/OKTMif8j.png" alt="如图"></p><h3 id="部署"><a href="#部署" class="headerlink" title="部署"></a>部署</h3><h4 id="1-打开github网页，新建一个库"><a href="#1-打开github网页，新建一个库" class="headerlink" title="1.打开github网页，新建一个库"></a>1.打开github网页，新建一个库</h4><p><img src="https://img.jinghuashang.cn/blog/tEsQXLL4.png" alt="新建库"></p><h4 id="2-填写库相关配置"><a href="#2-填写库相关配置" class="headerlink" title="2.填写库相关配置"></a>2.填写库相关配置</h4><p><img src="https://img.jinghuashang.cn/blog/8pyTO4Rr.png" alt="在1处填写仓库名字，第二处选择公共，不然你就不能部署到github papes"><br><img src="https://img.jinghuashang.cn/blog/6eZmRZgu.png" alt="选择创建"></p><h4 id="3-开始推送源码到github"><a href="#3-开始推送源码到github" class="headerlink" title="3.开始推送源码到github"></a>3.开始推送源码到github</h4><p><img src="https://img.jinghuashang.cn/blog/cP4zj6tH.png" alt="记住这几个"><br>因为我们已经创建了README文件，所以从第二步开始<br><img src="https://img.jinghuashang.cn/blog/lIT7avtd.png" alt="选择所有文件，并配置提交名"><br><img src="https://img.jinghuashang.cn/blog/EDifrLwV.png" alt="设置推送分支和推送库位置"><br><img src="https://img.jinghuashang.cn/blog/2dzF0aU3.png" alt="开始推送"></p><h4 id="4-完成推送"><a href="#4-完成推送" class="headerlink" title="4.完成推送"></a>4.完成推送</h4><p><img src="https://img.jinghuashang.cn/blog/am4bpPeq.png" alt="完成"></p><h3 id="部署github-pages环境"><a href="#部署github-pages环境" class="headerlink" title="部署github pages环境"></a>部署github pages环境</h3><p><img src="https://img.jinghuashang.cn/blog/CoTu4q3X.png" alt="选择设置"><br><img src="https://img.jinghuashang.cn/blog/UUHsjfwy.png" alt="选择环境"><br><img src="https://img.jinghuashang.cn/blog/bUQUPwc0.png" alt="点击None,选择main"><br><img src="https://img.jinghuashang.cn/blog/Y8Q77rjB.png" alt="点击保存"><br><img src="https://img.jinghuashang.cn/blog/YpsHz8Xf.png" alt="这时我们返回主页发现，正在部署"><br><img src="https://img.jinghuashang.cn/blog/aqi1TIyg.png" alt="等待一会后出现github-pages,点击他"><br><img src="https://img.jinghuashang.cn/blog/L6h5DTB5.png" alt="选择View deployment,就行访问"></p><h3 id="完成配置-1"><a href="#完成配置-1" class="headerlink" title="完成配置"></a>完成配置</h3><p><img src="https://img.jinghuashang.cn/blog/IZC3fXOh.png" alt="这里的域名因为我配置了，你们有域名也可以配置"></p><h2 id="Hexo-部署"><a href="#Hexo-部署" class="headerlink" title="Hexo 部署"></a>Hexo 部署</h2><h3 id="前言-1"><a href="#前言-1" class="headerlink" title="前言"></a>前言</h3><p>这种方式就是模板导入，然后自己小改</p><p>适合懒得自己写架构的人入坑</p><h3 id="开始"><a href="#开始" class="headerlink" title="开始"></a>开始</h3><p>选择一个地方存储你的Hexo库，并用终端打开</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><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></pre></td><td class="code"><pre><span class="line">$ <span class="built_in">pwd</span></span><br><span class="line">Path</span><br><span class="line">----</span><br><span class="line">C:\Users\34156\Desktop</span><br><span class="line"></span><br><span class="line"><span class="comment"># 第一种是自己创建一个文件夹</span></span><br><span class="line">windows: md &lt;文件夹&gt;</span><br><span class="line">linux: <span class="built_in">mkdir</span> &lt;文件夹&gt;</span><br><span class="line"></span><br><span class="line">$ <span class="built_in">cd</span> &lt;文件夹&gt;</span><br><span class="line">$ hexo init</span><br><span class="line"></span><br><span class="line"><span class="comment"># 第二种就是hexo直接创建</span></span><br><span class="line">$ hexo init hexo </span><br></pre></td></tr></table></figure>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;个人网站搭建教程&quot;&gt;&lt;a href=&quot;#个人网站搭建教程&quot; class=&quot;headerlink&quot; title=&quot;个人网站搭建教程&quot;&gt;&lt;/a&gt;个人网站搭建教程&lt;/h1&gt;&lt;h2 id=&quot;前言&quot;&gt;&lt;a href=&quot;#前言&quot; class=&quot;headerlink&quot; titl</summary>
      
    
    
    
    <category term="教程" scheme="https://jinghuashang.cn/categories/%E6%95%99%E7%A8%8B/"/>
    
    
    <category term="html" scheme="https://jinghuashang.cn/tags/html/"/>
    
    <category term="github" scheme="https://jinghuashang.cn/tags/github/"/>
    
  </entry>
  
  <entry>
    <title>misskey</title>
    <link href="https://jinghuashang.cn/posts/de31.html"/>
    <id>https://jinghuashang.cn/posts/de31.html</id>
    <published>2022-10-22T14:11:26.000Z</published>
    <updated>2026-08-16T16:35:55.600Z</updated>
    
    <content type="html"><![CDATA[<h1 id="Misskey-微博"><a href="#Misskey-微博" class="headerlink" title="Misskey 微博"></a>Misskey 微博</h1><h2 id="关于Misskey"><a href="#关于Misskey" class="headerlink" title="关于Misskey"></a>关于Misskey</h2><p>Misskey 是一个开源分布式微博平台项目。 开发始于2014年，由syuilo在日本开发。 它具有丰富的功能，如驱动器和反应，以及高度可自定义的 UI。</p><h2 id="历史"><a href="#历史" class="headerlink" title="历史"></a>历史</h2><p>在开发之初，公告板是主要服务，但随着用户发布短文并添加按时间顺序流动的时间线功能，它越来越受欢迎，并且开发逐渐成为主要服务。 它最初不是分布式的，但在 2018 年，ActivityPub 实现了分布式，成为更受人们认可和使用的服务，并一直持续到今天。</p><h2 id="我与Misskey的历程"><a href="#我与Misskey的历程" class="headerlink" title="我与Misskey的历程"></a>我与Misskey的历程</h2><p>其实我接触misskey也没多久，可以说是相爱相杀，毕竟咱喜欢搞新奇的东西，搭建这个东西也经历了波波折折</p><h2 id="体验站"><a href="#体验站" class="headerlink" title="体验站"></a>体验站</h2><p>我的 Misskey 实例已经重新上线啦，欢迎来玩：<a href="https://msk.jinghuashang.cn">点我前往</a>（屑殇小窝，Misskey v2026.7.0，注册开放，需要邮箱验证）</p><h2 id="搭建教程"><a href="#搭建教程" class="headerlink" title="搭建教程"></a>搭建教程</h2><h3 id="准备工作"><a href="#准备工作" class="headerlink" title="准备工作"></a>准备工作</h3><ol><li><strong>一个域名</strong>，并解析到你的服务器。分布式联邦靠域名识别实例，<strong>上线后域名不能改</strong>，想好再动手</li><li><strong>一台 Linux 服务器</strong>（Ubuntu/Debian 最佳），建议 2C4G 起步，内存不足时构建阶段会很难受（见 FAQ 的 swap 方案）</li><li>两种部署方式二选一：<ul><li><strong>Docker Compose</strong>：官方推荐，环境隔离、升级简单，下面方式一</li><li><strong>手动编译</strong>：不依赖 Docker、便于定制，需要自己装 Node.js/PostgreSQL/Redis，下面方式二</li></ul></li></ol><h3 id="方式一：Docker-Compose-部署（推荐）"><a href="#方式一：Docker-Compose-部署（推荐）" class="headerlink" title="方式一：Docker Compose 部署（推荐）"></a>方式一：Docker Compose 部署（推荐）</h3><h4 id="克隆与配置"><a href="#克隆与配置" class="headerlink" title="克隆与配置"></a>克隆与配置</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></pre></td><td class="code"><pre><span class="line">git <span class="built_in">clone</span> -b master https://github.com/misskey-dev/misskey.git</span><br><span class="line"><span class="built_in">cd</span> misskey</span><br><span class="line"><span class="built_in">cp</span> .config/docker_example.yml .config/default.yml</span><br><span class="line"><span class="built_in">cp</span> .config/docker_example.env .config/docker.env</span><br><span class="line"><span class="built_in">cp</span> ./compose_example.yml ./compose.yml</span><br></pre></td></tr></table></figure><p>编辑 <code>.config/default.yml</code>：<br><figure class="highlight yaml"><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></pre></td><td class="code"><pre><span class="line"><span class="comment"># 最终访问地址，必须改成你的域名（上线后不能改！）</span></span><br><span class="line"><span class="attr">url:</span> <span class="string">https://你的域名/</span></span><br><span class="line"><span class="comment"># 监听端口，反代指向这里</span></span><br><span class="line"><span class="attr">port:</span> <span class="number">3000</span></span><br><span class="line"><span class="comment"># db 和 redis 保持 host 为 db / redis（compose 服务名）</span></span><br><span class="line"><span class="attr">db:</span></span><br><span class="line">  <span class="attr">host:</span> <span class="string">db</span></span><br><span class="line">  <span class="attr">port:</span> <span class="number">5432</span></span><br><span class="line">  <span class="attr">db:</span> <span class="string">misskey</span></span><br><span class="line">  <span class="attr">user:</span> <span class="string">example-misskey-user</span></span><br><span class="line">  <span class="attr">pass:</span> <span class="string">example-misskey-pass</span></span><br><span class="line"><span class="attr">redis:</span></span><br><span class="line">  <span class="attr">host:</span> <span class="string">redis</span></span><br><span class="line">  <span class="attr">port:</span> <span class="number">6379</span></span><br></pre></td></tr></table></figure><br>编辑 <code>.config/docker.env</code>，把示例密码改成强密码，数据库连接会通过 <code>DATABASE_URL</code> 注入：<br><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></pre></td><td class="code"><pre><span class="line">POSTGRES_PASSWORD=换成你的强密码</span><br><span class="line">POSTGRES_USER=misskey</span><br><span class="line">POSTGRES_DB=misskey</span><br></pre></td></tr></table></figure></p><h4 id="构建、初始化、启动"><a href="#构建、初始化、启动" class="headerlink" title="构建、初始化、启动"></a>构建、初始化、启动</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></pre></td><td class="code"><pre><span class="line">sudo docker compose build          <span class="comment"># 首次构建比较久</span></span><br><span class="line">sudo docker compose run --<span class="built_in">rm</span> web pnpm run init   <span class="comment"># 初始化数据库</span></span><br><span class="line">sudo docker compose up -d</span><br></pre></td></tr></table></figure><p>浏览器访问 <code>http://服务器IP:3000</code> 看到 Misskey 页面就成功了（下一步配 HTTPS 反代）。</p><h3 id="方式二：手动编译部署"><a href="#方式二：手动编译部署" class="headerlink" title="方式二：手动编译部署"></a>方式二：手动编译部署</h3><h4 id="安装依赖"><a href="#安装依赖" class="headerlink" title="安装依赖"></a>安装依赖</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></pre></td><td class="code"><pre><span class="line"><span class="comment"># Ubuntu/Debian</span></span><br><span class="line">sudo apt update</span><br><span class="line">sudo apt install -y build-essential git ffmpeg postgresql postgresql-contrib redis-server</span><br></pre></td></tr></table></figure><p>Node.js 要求 <strong>v22.15.0+（v22 系列）或 v24.10.0+（v24 系列）</strong>，推荐用 nvm 安装：<br><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></pre></td><td class="code"><pre><span class="line">curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash</span><br><span class="line"><span class="built_in">source</span> ~/.bashrc</span><br><span class="line">nvm install 22</span><br></pre></td></tr></table></figure><br>pnpm 要求 <strong>v10.16.0+</strong>，用 corepack 启用：<br><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">corepack <span class="built_in">enable</span></span><br><span class="line">corepack prepare pnpm@latest --activate</span><br></pre></td></tr></table></figure><br>为 PostgreSQL 创建数据库和用户：<br><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">sudo -u postgres psql</span><br></pre></td></tr></table></figure><br><figure class="highlight sql"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line"><span class="keyword">CREATE</span> <span class="keyword">USER</span> misskey <span class="keyword">WITH</span> PASSWORD <span class="string">&#x27;你的强密码&#x27;</span>;</span><br><span class="line"><span class="keyword">CREATE</span> DATABASE misskey OWNER misskey;</span><br></pre></td></tr></table></figure></p><h4 id="安装-Misskey"><a href="#安装-Misskey" class="headerlink" title="安装 Misskey"></a>安装 Misskey</h4><p>Misskey 不允许 root 直接运行，创建独立用户：<br><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></pre></td><td class="code"><pre><span class="line">sudo adduser --disabled-password --disabled-login misskey</span><br><span class="line">sudo -iu misskey</span><br><span class="line">git <span class="built_in">clone</span> --recursive https://github.com/misskey-dev/misskey.git</span><br><span class="line"><span class="built_in">cd</span> misskey</span><br><span class="line">git checkout master</span><br><span class="line">git submodule update --init</span><br><span class="line">NODE_ENV=production pnpm install --frozen-lockfile</span><br></pre></td></tr></table></figure></p><h4 id="配置与初始化"><a href="#配置与初始化" class="headerlink" title="配置与初始化"></a>配置与初始化</h4><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line"><span class="built_in">cp</span> .config/example.yml .config/default.yml</span><br><span class="line">nano .config/default.yml</span><br></pre></td></tr></table></figure><figure class="highlight yaml"><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></pre></td><td class="code"><pre><span class="line"><span class="attr">url:</span> <span class="string">https://你的域名/</span>   <span class="comment"># 上线后不能改！</span></span><br><span class="line"><span class="attr">port:</span> <span class="number">3000</span></span><br><span class="line"><span class="attr">db:</span></span><br><span class="line">  <span class="attr">host:</span> <span class="string">localhost</span></span><br><span class="line">  <span class="attr">port:</span> <span class="number">5432</span></span><br><span class="line">  <span class="attr">db:</span> <span class="string">misskey</span></span><br><span class="line">  <span class="attr">user:</span> <span class="string">misskey</span></span><br><span class="line">  <span class="attr">pass:</span> <span class="string">你的强密码</span></span><br><span class="line"><span class="attr">redis:</span></span><br><span class="line">  <span class="attr">host:</span> <span class="string">localhost</span></span><br><span class="line">  <span class="attr">port:</span> <span class="number">6379</span></span><br><span class="line"><span class="comment"># 初始设置密码：部署完成后打开站点用它创建管理员账号</span></span><br><span class="line"><span class="attr">setupPassword:</span> <span class="string">用openssl</span> <span class="string">rand</span> <span class="string">-base64</span> <span class="number">32</span> <span class="string">生成一串</span></span><br></pre></td></tr></table></figure><p>构建并初始化数据库（首次构建较久）：<br><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">NODE_ENV=production pnpm run build</span><br><span class="line">pnpm run init</span><br></pre></td></tr></table></figure><br>启动验证：<br><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">NODE_ENV=production pnpm run start</span><br></pre></td></tr></table></figure></p><h4 id="systemd-托管"><a href="#systemd-托管" class="headerlink" title="systemd 托管"></a>systemd 托管</h4><p>Ctrl+C 停掉前台进程，创建服务文件让 Misskey 开机自启、崩溃自动重启：<br><figure class="highlight ini"><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"><span class="section">[Unit]</span></span><br><span class="line"><span class="attr">Description</span>=Misskey daemon</span><br><span class="line"></span><br><span class="line"><span class="section">[Service]</span></span><br><span class="line"><span class="attr">Type</span>=simple</span><br><span class="line"><span class="attr">User</span>=misskey</span><br><span class="line"><span class="attr">ExecStart</span>=/usr/bin/npm start</span><br><span class="line"><span class="attr">WorkingDirectory</span>=/home/misskey/misskey</span><br><span class="line"><span class="attr">Environment</span>=<span class="string">&quot;NODE_ENV=production&quot;</span></span><br><span class="line"><span class="attr">TimeoutSec</span>=<span class="number">60</span></span><br><span class="line"><span class="attr">StandardOutput</span>=journal</span><br><span class="line"><span class="attr">StandardError</span>=journal</span><br><span class="line"><span class="attr">SyslogIdentifier</span>=misskey</span><br><span class="line"><span class="attr">Restart</span>=always</span><br><span class="line"></span><br><span class="line"><span class="section">[Install]</span></span><br><span class="line"><span class="attr">WantedBy</span>=multi-user.target</span><br></pre></td></tr></table></figure><br><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></pre></td><td class="code"><pre><span class="line">sudo systemctl daemon-reload</span><br><span class="line">sudo systemctl <span class="built_in">enable</span> --now misskey</span><br><span class="line">systemctl status misskey</span><br></pre></td></tr></table></figure></p><h3 id="反向代理与-HTTPS（必做）"><a href="#反向代理与-HTTPS（必做）" class="headerlink" title="反向代理与 HTTPS（必做）"></a>反向代理与 HTTPS（必做）</h3><p>Misskey 页面和实时时间线依赖 <strong>WebSocket</strong>，反代必须支持 Upgrade 头，否则会出现”能打开页面但发帖不刷新”的怪问题。官方只建议反代 443 → 3000，不要在 Misskey 前面再叠一层反代。</p><h4 id="Nginx"><a href="#Nginx" class="headerlink" title="Nginx"></a>Nginx</h4><figure class="highlight nginx"><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"><span class="section">server</span> &#123;</span><br><span class="line">    <span class="attribute">listen</span> <span class="number">80</span>;</span><br><span class="line">    <span class="attribute">server_name</span> msk.example.com;</span><br><span class="line">    <span class="comment"># 媒体上传，默认限制 256M 以内足够</span></span><br><span class="line">    <span class="attribute">client_max_body_size</span> <span class="number">256m</span>;</span><br><span class="line"></span><br><span class="line">    <span class="section">location</span> / &#123;</span><br><span class="line">        <span class="attribute">proxy_pass</span> http://127.0.0.1:3000;</span><br><span class="line">        <span class="attribute">proxy_http_version</span> <span class="number">1</span>.<span class="number">1</span>;</span><br><span class="line">        <span class="attribute">proxy_set_header</span> Host <span class="variable">$host</span>;</span><br><span class="line">        <span class="attribute">proxy_set_header</span> X-Forwarded-For <span class="variable">$proxy_add_x_forwarded_for</span>;</span><br><span class="line">        <span class="attribute">proxy_set_header</span> X-Forwarded-Proto <span class="variable">$scheme</span>;</span><br><span class="line">        <span class="attribute">proxy_set_header</span> Upgrade <span class="variable">$http_upgrade</span>;</span><br><span class="line">        <span class="attribute">proxy_set_header</span> Connection <span class="string">&quot;upgrade&quot;</span>;</span><br><span class="line">        <span class="attribute">proxy_redirect</span> <span class="literal">off</span>;</span><br><span class="line">    &#125;</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure><p>用 certbot 一键签发 HTTPS 证书：<br><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">sudo apt install -y certbot python3-certbot-nginx</span><br><span class="line">sudo certbot --nginx -d msk.example.com</span><br></pre></td></tr></table></figure></p><h4 id="Caddy（更省事）"><a href="#Caddy（更省事）" class="headerlink" title="Caddy（更省事）"></a>Caddy（更省事）</h4><p>Caddy 自动申请并续期证书，配置只有一行：<br><figure class="highlight plaintext"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">msk.example.com &#123;</span><br><span class="line">    reverse_proxy 127.0.0.1:3000</span><br><span class="line">&#125;</span><br></pre></td></tr></table></figure></p><blockquote><p>如果反代和 Misskey 之间有 CDN（如 Cloudflare），需要在 default.yml 里配置 <code>trustProxy</code> 信任 CDN 回源 IP，否则限流会把反代 IP 当成用户 IP。</p></blockquote><h3 id="初始设置与日常管理"><a href="#初始设置与日常管理" class="headerlink" title="初始设置与日常管理"></a>初始设置与日常管理</h3><ul><li><strong>创建管理员</strong>：配置里设置了 <code>setupPassword</code> 的话，打开站点会引导你进入初始设置，输入该密码即可创建管理员账号。没有设置的话第一个注册的用户会成为管理员</li><li><strong>站点信息</strong>：管理员登录后在「控制台」里改站点名、描述、图标、主题色等</li><li><strong>注册与邮箱</strong>：控制台可开启注册审核、邮箱验证；要发验证邮件必须在 default.yml 配 SMTP：<figure class="highlight yaml"><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="attr">smtp:</span></span><br><span class="line">  <span class="attr">host:</span> <span class="string">smtp.example.com</span></span><br><span class="line">  <span class="attr">port:</span> <span class="number">465</span></span><br><span class="line">  <span class="attr">user:</span> <span class="string">your@mail.com</span></span><br><span class="line">  <span class="attr">pass:</span> <span class="string">your-password</span></span><br><span class="line">  <span class="attr">secure:</span> <span class="literal">true</span></span><br><span class="line">  <span class="attr">from:</span> <span class="string">your@mail.com</span></span><br></pre></td></tr></table></figure></li><li><strong>对象存储</strong>：默认媒体存在本地 <code>files</code> 目录，媒体量大之后建议接 S3 兼容存储（Cloudflare R2、Backblaze B2 等），控制台里直接配置</li></ul><h3 id="更新与备份"><a href="#更新与备份" class="headerlink" title="更新与备份"></a>更新与备份</h3><h4 id="更新"><a href="#更新" class="headerlink" title="更新"></a>更新</h4><p>升级前先看 <a href="https://github.com/misskey-dev/misskey/blob/master/CHANGELOG.md">CHANGELOG</a> 有没有额外步骤，然后：<br><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></pre></td><td class="code"><pre><span class="line"><span class="comment"># Docker 方式</span></span><br><span class="line">git stash</span><br><span class="line">git checkout master</span><br><span class="line">git pull</span><br><span class="line">git submodule update --init</span><br><span class="line">git stash pop</span><br><span class="line">sudo docker compose build</span><br><span class="line">sudo docker compose stop &amp;&amp; sudo docker compose up -d</span><br></pre></td></tr></table></figure><br><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></pre></td><td class="code"><pre><span class="line"><span class="comment"># 手动方式</span></span><br><span class="line">git checkout master</span><br><span class="line">git pull</span><br><span class="line">git submodule update --init</span><br><span class="line">NODE_ENV=production pnpm install --frozen-lockfile</span><br><span class="line">NODE_ENV=production pnpm run build</span><br><span class="line">pnpm run migrate</span><br><span class="line">sudo systemctl restart misskey</span><br></pre></td></tr></table></figure></p><blockquote><p>升级失败时可以试试 <code>pnpm run clean</code>（或 <code>pnpm run clean-all</code>）和 <code>pnpm rebuild</code> 再重新构建。</p></blockquote><h4 id="备份"><a href="#备份" class="headerlink" title="备份"></a>备份</h4><p>Misskey 的数据 = <strong>PostgreSQL 数据库</strong> + <strong>媒体文件目录</strong>，两个都要备份：<br><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"><span class="comment"># 数据库（压缩导出）</span></span><br><span class="line">pg_dump -U misskey -Fc misskey | gzip &gt; misskey-$(<span class="built_in">date</span> +%Y%m%d-%H%M).dump.gz</span><br><span class="line"><span class="comment"># 媒体文件（默认目录）</span></span><br><span class="line">tar -czf files-$(<span class="built_in">date</span> +%Y%m%d-%H%M).tar.gz files</span><br></pre></td></tr></table></figure><br>Docker 方式在容器里执行：<br><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">sudo docker compose <span class="built_in">exec</span> db pg_dump -U misskey -Fc misskey | gzip &gt; misskey-$(<span class="built_in">date</span> +%Y%m%d-%H%M).dump.gz</span><br></pre></td></tr></table></figure><br>建议用 cron 每天自动备份并同步到其他机器（异地备份防丢站）。</p><h3 id="常见问题-FAQ"><a href="#常见问题-FAQ" class="headerlink" title="常见问题 FAQ"></a>常见问题 FAQ</h3><ul><li><strong>构建或迁移时内存不足（OOM / killed）</strong><br>加 swap：<figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">sudo fallocate -l 4G /swapfile &amp;&amp; sudo <span class="built_in">chmod</span> 600 /swapfile</span><br><span class="line">sudo mkswap /swapfile &amp;&amp; sudo swapon /swapfile</span><br></pre></td></tr></table></figure></li><li><strong>页面能打开，但发帖/时间线不实时刷新</strong><br>反代没有配置 WebSocket Upgrade 头，对照上文 Nginx/Caddy 配置检查</li><li><strong>注册时验证邮件收不到</strong><br>SMTP 配置错误，或者云服务器厂商封了 25 端口（国内厂商默认封），改用 465/587 端口</li><li><strong>域名能改吗</strong><br>不能。上线联邦后改 url 会导致签名失效、联邦数据错乱，只能换新域名重新开始</li><li><strong>为什么显示用户来源 IP 不对 / 莫名被限流</strong><br>反代或 CDN 后面需要配置 <code>trustProxy</code></li><li><strong>升级后 500 错误</strong><br>先看日志，试试 <code>pnpm run clean</code> + 重新构建；Docker 方式重新 <code>docker compose build</code> 后再 <code>up -d</code></li></ul><p>如果上面的问题没能解决你的问题，欢迎在评论区留言提问。</p>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;Misskey-微博&quot;&gt;&lt;a href=&quot;#Misskey-微博&quot; class=&quot;headerlink&quot; title=&quot;Misskey 微博&quot;&gt;&lt;/a&gt;Misskey 微博&lt;/h1&gt;&lt;h2 id=&quot;关于Misskey&quot;&gt;&lt;a href=&quot;#关于Misskey&quot; c</summary>
      
    
    
    
    <category term="教程" scheme="https://jinghuashang.cn/categories/%E6%95%99%E7%A8%8B/"/>
    
    
    <category term="网站" scheme="https://jinghuashang.cn/tags/%E7%BD%91%E7%AB%99/"/>
    
    <category term="教程" scheme="https://jinghuashang.cn/tags/%E6%95%99%E7%A8%8B/"/>
    
  </entry>
  
  <entry>
    <title>Redmi K50</title>
    <link href="https://jinghuashang.cn/posts/943e.html"/>
    <id>https://jinghuashang.cn/posts/943e.html</id>
    <published>2022-08-14T15:07:01.000Z</published>
    <updated>2024-04-24T05:03:40.313Z</updated>
    
    <content type="html"><![CDATA[<p><img src="https://img.jinghuashang.cn/images/10723.webp" alt="K50 个人评价"></p><h2 id="价格"><a href="#价格" class="headerlink" title="价格"></a>价格</h2><p>说实话，k50这个价位是真的犯规，简直没有敌手<br>电竞版<em>2399</em>起步<br>标准版<em>2399</em>起步<br>pro<em>2999</em>起步<br>至尊版<em>2999</em><br>电竞版顶配<em>4199</em>(包括冠军版那个)<br>标准版顶配<em>3099</em><br>pro顶配<em>3999</em><br>至尊版顶配<em>4199</em>(包括冠军版那个)<br>可以说非常良心了</p><h2 id="外观"><a href="#外观" class="headerlink" title="外观"></a>外观</h2><p>这次k50(标准版)推出了5款颜色，分别是:<img src="https://img.jinghuashang.cn/images/sw2-3.webp" alt="幽茫色"><br><img src="https://img.jinghuashang.cn/images/sw2-4.webp" alt="银迹色"><br><img src="https://img.jinghuashang.cn/images/sw2-2.webp" alt="墨羽色"><br><img src="https://img.jinghuashang.cn/images/sw2-1.webp" alt="幻境色"><br><img src="https://img.jinghuashang.cn/images/sw2-5.webp" alt="晴雪色"><br>这么说，这次主推的墨羽没k40推的幻境好看<br>个人觉得银迹好看，况且我也是买的银迹12+256<br>别问为什么不是12+512，问就618被刺我</p><h2 id="卖点"><a href="#卖点" class="headerlink" title="卖点"></a>卖点</h2><h3 id="第一个是2k屏，在这个价位能看见2k真的不容易"><a href="#第一个是2k屏，在这个价位能看见2k真的不容易" class="headerlink" title="第一个是2k屏，在这个价位能看见2k真的不容易"></a>第一个是2k屏，在这个价位能看见2k真的不容易</h3><p><img src="https://img.jinghuashang.cn/images/11620.webp" alt="三星2k"><br><img src="https://img.jinghuashang.cn/images/13065.webp" alt=""><br><img src="https://img.jinghuashang.cn/images/13066.webp" alt=""></p><h3 id="第二个是天玑8100，一个能扛能打的CPU"><a href="#第二个是天玑8100，一个能扛能打的CPU" class="headerlink" title="第二个是天玑8100，一个能扛能打的CPU"></a>第二个是天玑8100，一个能扛能打的CPU</h3><p><img src="https://img.jinghuashang.cn/images/13150.webp" alt="天玑8100"></p><h3 id="5500毫安大电池，这个才是重磅炸弹"><a href="#5500毫安大电池，这个才是重磅炸弹" class="headerlink" title="5500毫安大电池，这个才是重磅炸弹"></a>5500毫安大电池，这个才是重磅炸弹</h3><p><img src="https://img.jinghuashang.cn/images/11622.webp" alt="67w+5500mAh"><br><img src="https://img.jinghuashang.cn/images/11206.webp" alt=""></p><h2 id="个人评价-标准版"><a href="#个人评价-标准版" class="headerlink" title="个人评价(标准版)"></a>个人评价(标准版)</h2><h3 id="硬件缺点"><a href="#硬件缺点" class="headerlink" title="硬件缺点"></a>硬件缺点</h3><h4 id="k50的拍照是一大痛点，没点技术都拍不出好看的照片"><a href="#k50的拍照是一大痛点，没点技术都拍不出好看的照片" class="headerlink" title="k50的拍照是一大痛点，没点技术都拍不出好看的照片"></a>k50的拍照是一大痛点，没点技术都拍不出好看的照片</h4><p><img src="https://img.jinghuashang.cn/images/9670.webp" alt="这个是小米官网的图"><br><img src="https://img.jinghuashang.cn/images/1660491734447.webp" alt="这个是我拍的图"></p><h4 id="塑料边框，这个我是没想到的，反正就是看着摸着都不舒服，颜值分被大打折扣"><a href="#塑料边框，这个我是没想到的，反正就是看着摸着都不舒服，颜值分被大打折扣" class="headerlink" title="塑料边框，这个我是没想到的，反正就是看着摸着都不舒服，颜值分被大打折扣"></a>塑料边框，这个我是没想到的，反正就是看着摸着都不舒服，颜值分被大打折扣</h4><h3 id="软件缺点"><a href="#软件缺点" class="headerlink" title="软件缺点"></a>软件缺点</h3><h4 id="MIU13续航"><a href="#MIU13续航" class="headerlink" title="MIU13续航"></a>MIU13续航</h4><p>这货是最让人头疼的一个版本，续航让5500毫安像假的一样，用不了多久就要充电了</p><h4 id="MIUI锁帧问题"><a href="#MIUI锁帧问题" class="headerlink" title="MIUI锁帧问题"></a>MIUI锁帧问题</h4><p>温度一高就锁到60帧，打完游戏退出来也是，以前以为是手机问题，后面问了好多人才知道是温控问题<br><img src="https://img.jinghuashang.cn/images/1660492187469.webp" alt="看看"></p><h4 id="MIUI杀后台问题"><a href="#MIUI杀后台问题" class="headerlink" title="MIUI杀后台问题"></a>MIUI杀后台问题</h4><p>k50的杀后台也是一绝，刚打完游戏，出去刷刷视频，切回来就得重新加载，包括锁屏也是</p><h3 id="END"><a href="#END" class="headerlink" title="END"></a>END</h3>]]></content>
    
    
      
      
    <summary type="html">&lt;p&gt;&lt;img src=&quot;https://img.jinghuashang.cn/images/10723.webp&quot; alt=&quot;K50 个人评价&quot;&gt;&lt;/p&gt;
&lt;h2 id=&quot;价格&quot;&gt;&lt;a href=&quot;#价格&quot; class=&quot;headerlink&quot; title=&quot;价格&quot;&gt;&lt;/a&gt;</summary>
      
    
    
    
    <category term="分享" scheme="https://jinghuashang.cn/categories/%E5%88%86%E4%BA%AB/"/>
    
    
    <category term="红米" scheme="https://jinghuashang.cn/tags/%E7%BA%A2%E7%B1%B3/"/>
    
    <category term="安卓" scheme="https://jinghuashang.cn/tags/%E5%AE%89%E5%8D%93/"/>
    
  </entry>
  
  <entry>
    <title>Minecraft Server</title>
    <link href="https://jinghuashang.cn/posts/cd7c.html"/>
    <id>https://jinghuashang.cn/posts/cd7c.html</id>
    <published>2022-04-01T03:28:57.000Z</published>
    <updated>2026-08-16T16:28:27.276Z</updated>
    
    <content type="html"><![CDATA[<h1 id="Minecraft-Server-搭建教程"><a href="#Minecraft-Server-搭建教程" class="headerlink" title="Minecraft Server 搭建教程"></a>Minecraft Server 搭建教程</h1><h2 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h2><p>本教程是给新手服主指路，老手就不要来这里喷了<br>若需要转载本文章，请联系我</p><h2 id="准备"><a href="#准备" class="headerlink" title="准备"></a>准备</h2><p>1.一颗有恒心的心，开服十分枯燥<br>2.有一台4G以上运行内存的电脑，笔记本、台式不限<br>3.计算机基本常识(网络、系统等)<br>4.英语基本功底（其实有翻译，汉化包也挺多的，不过技多不压身是吧）<br>5 .（可选）VPS（云）服务器</p><h2 id="环境部署"><a href="#环境部署" class="headerlink" title="环境部署"></a>环境部署</h2><h3 id="JAVA-必要"><a href="#JAVA-必要" class="headerlink" title="JAVA(必要)"></a>JAVA(必要)</h3><p>本篇是java mc服务器，所以java环境必要</p><h4 id="Windows"><a href="#Windows" class="headerlink" title="Windows"></a>Windows</h4><h5 id="下载"><a href="#下载" class="headerlink" title="下载"></a>下载</h5><p><a href="https://www.oracle.com/java/technologies/downloads/">点我</a>前往<br>根据自己服务器需要下载相应版本</p><h5 id="安装"><a href="#安装" class="headerlink" title="安装"></a>安装</h5><p>Windows下都是图形化安装，照着安装引导来就是，若有问题在下方评论</p><h4 id="ubuntu-debian系"><a href="#ubuntu-debian系" class="headerlink" title="ubuntu/debian系"></a>ubuntu/debian系</h4><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">sudo apt update</span><br><span class="line">sudo apt install openjdk-21-jdk</span><br></pre></td></tr></table></figure><h4 id="arch系"><a href="#arch系" class="headerlink" title="arch系"></a>arch系</h4><p>使用aur助手下载<br><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">paru jdk</span><br></pre></td></tr></table></figure><br>根据需要下载</p><h4 id="版本选择-重要"><a href="#版本选择-重要" class="headerlink" title="版本选择(重要)"></a>版本选择(重要)</h4><p>Java 版本必须和 MC 服务端版本匹配，装错会直接启动报错：</p><div class="table-container"><table><thead><tr><th>MC 版本</th><th>Java 版本</th></tr></thead><tbody><tr><td>1.20.5 及以上</td><td>Java 21</td></tr><tr><td>1.17 ~ 1.20.4</td><td>Java 17</td></tr><tr><td>1.16.5 及以下</td><td>Java 8</td></tr></tbody></table></div><p>Windows 下建议安装 Temurin（<a href="https://adoptium.net/temurin/releases/">点我</a>）而不是 Oracle JDK，无广告、开源免费，版本选择也更直观。</p><h2 id="下载服务端"><a href="#下载服务端" class="headerlink" title="下载服务端"></a>下载服务端</h2><p>新手推荐用 Paper 服务端：性能好、自带优化、社区活跃；想要最纯粹的体验用官方原版。</p><h3 id="原版服务端"><a href="#原版服务端" class="headerlink" title="原版服务端"></a>原版服务端</h3><p>前往<a href="https://www.minecraft.net/download/server">官方下载页</a>（需要登录 Mojang 账号），选择对应 MC 版本的 server.jar。</p><h3 id="Paper"><a href="#Paper" class="headerlink" title="Paper"></a>Paper</h3><p>前往 <a href="https://papermc.io/downloads">PaperMC 下载页</a>，选择你想要的 MC 版本下载 jar。</p><blockquote><p>下载的 jar 建议统一改名为 <code>server.jar</code> 并放在一个单独的文件夹里（比如 <code>D:\mc-server</code>），后面所有命令都按这个文件名写。</p></blockquote><h2 id="其他服务端-模组-混合端"><a href="#其他服务端-模组-混合端" class="headerlink" title="其他服务端(模组/混合端)"></a>其他服务端(模组/混合端)</h2><p>上面的原版和 Paper 是”插件服”，适合装 Bukkit 系插件。想玩<strong>模组</strong>（新增物品、机器、魔法等玩法）需要换模组端，常见选择如下。</p><h3 id="Forge-经典模组端"><a href="#Forge-经典模组端" class="headerlink" title="Forge(经典模组端)"></a>Forge(经典模组端)</h3><p>模组生态最老牌、最丰富，大部分整合包都基于 Forge。目前 Forge 主要支持 1.21.x 及以前的版本，1.20.1 是其模组数量最庞大的版本。</p><h4 id="安装-1"><a href="#安装-1" class="headerlink" title="安装"></a>安装</h4><ol><li>前往 <a href="https://files.minecraftforge.net/">Forge 官网</a>，选择 MC 版本 → 点击 Installer 下载（文件名按实际下载的替换）</li><li>在服务器文件夹里执行安装：<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">java -jar forge-1.20.1-47.3.0-installer.jar --installServer</span><br></pre></td></tr></table></figure></li><li>安装完成会生成 <code>run.sh</code> / <code>run.bat</code> 和 libraries 目录，以后用脚本启动：<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">./run.sh nogui</span><br></pre></td></tr></table></figure><blockquote><p>旧版本（1.12.2 及以前）没有 run 脚本，启动方式是 <code>java -Xmx4G -jar forge-xxx-universal.jar nogui</code>。</p></blockquote></li></ol><h4 id="装模组"><a href="#装模组" class="headerlink" title="装模组"></a>装模组</h4><p>把模组 jar 丢进服务器根目录的 <code>mods</code> 文件夹，重启生效。<strong>客户端和服务端的 mods 必须一致</strong>（服务端只留标明 server 端的模组，客户端装全部），否则进服会报”模组缺失 / 版本不符”。</p><h3 id="NeoForge-Forge-继任者"><a href="#NeoForge-Forge-继任者" class="headerlink" title="NeoForge(Forge 继任者)"></a>NeoForge(Forge 继任者)</h3><p>Forge 团队在 1.20.1 之后分裂出的新项目，新版本模组生态的默认选择。</p><ol><li>前往 <a href="https://neoforged.net/">NeoForge 官网</a>，下载对应 MC 版本的 installer</li><li>安装方式与 Forge 相同：<figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">java -jar neoforge-21.1.141-installer.jar --installServer</span><br><span class="line">./run.sh nogui</span><br></pre></td></tr></table></figure>mods 目录用法与 Forge 完全一致。</li></ol><h3 id="Sponge-海绵-插件-API-端"><a href="#Sponge-海绵-插件-API-端" class="headerlink" title="Sponge 海绵(插件 API 端)"></a>Sponge 海绵(插件 API 端)</h3><p>海绵不是模组端，是一套<strong>插件 API 服务端</strong>，插件用 Java 开发、扩展性极强，适合想自己写插件的服主。</p><ul><li><strong>SpongeVanilla</strong>：纯原版基础上跑海绵插件</li><li><strong>SpongeForge</strong>：在 Forge 上叠加海绵插件，模组 + 海绵插件共存</li></ul><p>下载：<a href="https://spongepowered.org/downloads">SpongePowered 下载页</a>，启动方式和原版一样（文件名按实际下载的替换）：<br><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">java -Xmx4G -jar spongevanilla-1.21.1-13.0.0.jar</span><br></pre></td></tr></table></figure><br>插件放进 <code>plugins</code> 文件夹（注意是 plugins 不是 mods），首次运行同样要先同意 eula。</p><h3 id="Fabric-Quilt-轻量模组端"><a href="#Fabric-Quilt-轻量模组端" class="headerlink" title="Fabric / Quilt(轻量模组端)"></a>Fabric / Quilt(轻量模组端)</h3><p>Fabric 启动快、生态活跃，模组数量增长迅速；Quilt 是其分叉，用法相同。</p><ol><li>下载 <a href="https://fabricmc.net/use/server/">Fabric installer</a></li><li>一条命令安装（版本按需填）：<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">java -jar fabric-installer.jar server -mcversion 1.20.1 -downloadMinecraft</span><br></pre></td></tr></table></figure></li><li>生成 <code>fabric-server-launch.jar</code>，启动：<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">java -Xmx4G -jar fabric-server-launch.jar nogui</span><br></pre></td></tr></table></figure>模组同样是丢 <code>mods</code> 文件夹，注意 <strong>Fabric 模组和 Forge 模组不通用</strong>。</li></ol><h3 id="混合端-插件-模组同跑"><a href="#混合端-插件-模组同跑" class="headerlink" title="混合端(插件 + 模组同跑)"></a>混合端(插件 + 模组同跑)</h3><p>想一个服同时跑 Bukkit 插件（地皮、经济、领地等）和 Forge 模组，可以用混合端：</p><ul><li><strong>Arclight</strong>：Forge + Bukkit/Spigot 兼容</li><li><strong>Mohist</strong>：Forge 混合端，国内社区活跃</li><li><strong>CatServer</strong>、<strong>Magma</strong> 等</li></ul><p>下载各自官网的 jar，启动方式与原版一致。注意混合端兼容性不如纯端，插件和模组冲突时需要逐个排查。</p><h3 id="模组服通用要点"><a href="#模组服通用要点" class="headerlink" title="模组服通用要点"></a>模组服通用要点</h3><ul><li><strong>内存</strong>：模组服比插件服吃内存，小模组服建议 6G，大型整合包建议 8G 以上（<code>-Xmx8G</code>）</li><li><strong>模组来源</strong>：<a href="https://www.curseforge.com/minecraft/mc-mods">CurseForge</a> 和 <a href="https://modrinth.com/mods">Modrinth</a> 是两大平台，下载时看清 MC 版本和模组加载器（Forge / NeoForge / Fabric）是否匹配</li><li><strong>客户端也要装模组</strong>：服务端装模组决定玩法，客户端必须安装相同模组才能进服，建议用 CurseForge 客户端或 Modrinth App 管理整合包</li><li><strong>升级成本高</strong>：模组服升级 MC 版本前要逐个确认模组兼容性，成本远高于插件服，务必先备份存档</li></ul><h2 id="初始化服务器"><a href="#初始化服务器" class="headerlink" title="初始化服务器"></a>初始化服务器</h2><p>在服务器文件夹里打开命令行（Windows 下在文件夹地址栏输入 <code>cmd</code> 回车，Ubuntu 下 <code>cd</code> 到目录），输入：</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">java -Xmx4G -Xms4G -jar server.jar nogui</span><br></pre></td></tr></table></figure><p>首次运行会生成 <code>eula.txt</code>、<code>server.properties</code>、<code>logs</code>、<code>world</code> 等文件，然后提示需要同意 EULA 并退出。用文本编辑器打开 <code>eula.txt</code>，把：</p><figure class="highlight text"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">eula=false</span><br></pre></td></tr></table></figure><p>改成：</p><figure class="highlight text"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">eula=true</span><br></pre></td></tr></table></figure><p>保存后再运行一次启动命令，世界开始生成，看到 <code>Done (x.xxx s)!</code> 就说明服务器启动成功了，默认监听 25565 端口。</p><h2 id="server-properties-配置"><a href="#server-properties-配置" class="headerlink" title="server.properties 配置"></a>server.properties 配置</h2><p>配置文件在服务器根目录，用文本编辑器打开即可修改，改完保存并重启服务器生效。常用项：</p><div class="table-container"><table><thead><tr><th>配置项</th><th>默认值</th><th>说明</th></tr></thead><tbody><tr><td>server-port</td><td>25565</td><td>服务器端口，改了就按新端口连</td></tr><tr><td>online-mode</td><td>true</td><td>正版验证。开离线服（盗版客户端也能进）改成 <code>false</code></td></tr><tr><td>max-players</td><td>20</td><td>最大同时在线人数</td></tr><tr><td>gamemode</td><td>survival</td><td>默认游戏模式：survival / creative / adventure</td></tr><tr><td>difficulty</td><td>easy</td><td>难度：peaceful / easy / normal / hard</td></tr><tr><td>motd</td><td>A Minecraft Server</td><td>服务器列表里显示的描述</td></tr><tr><td>white-list</td><td>false</td><td>白名单开关，配合 /whitelist 命令使用</td></tr><tr><td>view-distance</td><td>10</td><td>视距，调低可显著降低服务器负载</td></tr><tr><td>spawn-protection</td><td>16</td><td>出生点保护范围，服务器里建建筑前建议调成 0</td></tr><tr><td>enforce-secure-profile</td><td>true</td><td>1.19+ 的聊天签名验证，离线服需改成 <code>false</code>，否则客户端会报”聊天验证失败”</td></tr><tr><td>enable-command-block</td><td>false</td><td>是否开启命令方块，需要就改成 <code>true</code></td></tr></tbody></table></div><h2 id="启动脚本"><a href="#启动脚本" class="headerlink" title="启动脚本"></a>启动脚本</h2><p>每次手敲启动命令太麻烦，建议写成脚本。</p><h3 id="Windows-1"><a href="#Windows-1" class="headerlink" title="Windows"></a>Windows</h3><p>在服务器文件夹新建 <code>start.bat</code>，内容：</p><figure class="highlight bat"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br><span class="line">3</span><br></pre></td><td class="code"><pre><span class="line">@<span class="built_in">echo</span> off</span><br><span class="line">java -Xmx4G -Xms4G -jar server.jar nogui</span><br><span class="line"><span class="built_in">pause</span></span><br></pre></td></tr></table></figure><p>以后双击 <code>start.bat</code> 即可开服。</p><h3 id="ubuntu-debian系-1"><a href="#ubuntu-debian系-1" class="headerlink" title="ubuntu/debian系"></a>ubuntu/debian系</h3><p>新建 <code>start.sh</code>：</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line"><span class="meta">#!/bin/bash</span></span><br><span class="line">java -Xmx4G -Xms4G -jar server.jar nogui</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></pre></td><td class="code"><pre><span class="line"><span class="built_in">chmod</span> +x start.sh</span><br><span class="line">./start.sh</span><br></pre></td></tr></table></figure><blockquote><p>内存分配建议：<code>-Xmx</code> 是最大内存，1~3 人 2G，5~10 人 4G，20 人以上 8G。不要超过机器物理内存的一半，要留内存给系统。<br>配合 <code>screen</code> 或 <code>tmux</code> 可以把服务器挂后台，断开 SSH 也不会掉线：<br><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">screen -S mc ./start.sh</span><br></pre></td></tr></table></figure></p></blockquote><h2 id="让朋友连进来"><a href="#让朋友连进来" class="headerlink" title="让朋友连进来"></a>让朋友连进来</h2><h3 id="同一局域网"><a href="#同一局域网" class="headerlink" title="同一局域网"></a>同一局域网</h3><p>Windows 在命令行输入 <code>ipconfig</code>，Ubuntu 输入 <code>ip addr</code>，找到本机内网 IP（一般是 <code>192.168.x.x</code>）。朋友在多人游戏里直接输入 <code>内网IP:25565</code> 即可。</p><h3 id="云服务器（VPS）"><a href="#云服务器（VPS）" class="headerlink" title="云服务器（VPS）"></a>云服务器（VPS）</h3><p>在云服务商控制台找到<strong>安全组</strong>（阿里云叫安全组，腾讯云叫防火墙），添加一条入方向规则：放行 TCP 端口 25565（协议选 TCP，源地址 0.0.0.0/0）。默认的安全组一般只开 22 和 80，不开端口别人是连不进来的。</p><h3 id="家里电脑开服（端口映射）"><a href="#家里电脑开服（端口映射）" class="headerlink" title="家里电脑开服（端口映射）"></a>家里电脑开服（端口映射）</h3><ol><li>给电脑设置固定内网 IP（路由器 DHCP 绑定）</li><li>进路由器管理页（一般是 192.168.1.1），找到「端口映射 / 虚拟服务器 / NAT」功能</li><li>添加规则：外部端口 25565 → 内网 IP 的 25565，协议 TCP+UDP</li><li>朋友用你的<strong>公网 IP</strong> 连接</li></ol><p>注意：家用宽带大多是动态公网 IP，重启光猫就变了，可以用 DDNS（如花生壳、阿里云 DDNS）绑定域名解决。</p><h3 id="内网穿透（不想折腾路由器）"><a href="#内网穿透（不想折腾路由器）" class="headerlink" title="内网穿透（不想折腾路由器）"></a>内网穿透（不想折腾路由器）</h3><ul><li><strong>frp</strong>：自建 VPS 中转，免费可控，网上教程多</li><li><strong>Tailscale</strong>：组虚拟局域网，装好客户端后朋友直接用你的 Tailscale IP 连接，不需要任何端口映射，最省心</li><li>商业服务：花生壳、Sakura Frp 等</li></ul><h2 id="服务器日常管理"><a href="#服务器日常管理" class="headerlink" title="服务器日常管理"></a>服务器日常管理</h2><p>进服后在游戏内给自己 OP（管理员权限）：</p><figure class="highlight text"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">/op 你的游戏ID</span><br></pre></td></tr></table></figure><p>常用管理命令：</p><div class="table-container"><table><thead><tr><th>命令</th><th>作用</th></tr></thead><tbody><tr><td>/op <ID></td><td>给予管理员权限</td></tr><tr><td>/deop <ID></td><td>取消管理员权限</td></tr><tr><td>/whitelist add <ID></td><td>添加白名单（配合 white-list=true）</td></tr><tr><td>/ban <ID></td><td>封禁玩家</td></tr><tr><td>/kick <ID></td><td>踢出玩家</td></tr><tr><td>/save-all</td><td>立即保存世界</td></tr><tr><td>/stop</td><td>安全关闭服务器</td></tr></tbody></table></div><h3 id="备份"><a href="#备份" class="headerlink" title="备份"></a>备份</h3><p><strong>最稳妥的备份方式：停服后压缩 world 文件夹。</strong> 服务器运行中直接复制 world 容易备份到损坏的数据。</p><p>不停服备份可以用 Paper 的定时备份插件（如 SimpleBackup），或者自己写脚本定时打包：</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">tar -czf backup-$(<span class="built_in">date</span> +%Y%m%d-%H%M).tar.gz world</span><br></pre></td></tr></table></figure><p>Windows 下可以用 7-Zip 命令行 + 任务计划程序实现定时备份。</p><h3 id="更新服务端"><a href="#更新服务端" class="headerlink" title="更新服务端"></a>更新服务端</h3><p>停服 → 备份 world → 下载新版本 jar 替换 → 重新启动。注意：插件和模组要确认兼容新版本，<strong>存档大版本升级前务必先备份</strong>。</p><h2 id="常见问题-FAQ"><a href="#常见问题-FAQ" class="headerlink" title="常见问题 FAQ"></a>常见问题 FAQ</h2><ul><li><strong>连接超时 / 无法连接</strong><br>检查：端口映射或安全组是否放行 25565；Windows 防火墙是否放行 Java；<code>server-port</code> 是否和连接地址一致；客户端和服务端 MC 版本是否相同。</li><li><strong>正版验证失败 / Invalid session</strong><br>离线客户端连了 <code>online-mode=true</code> 的服务器。要么服务器关正版验证，要么客户端换正版登录。</li><li><strong>聊天验证失败（1.19+）</strong><br>离线服需要把 <code>enforce-secure-profile</code> 改成 <code>false</code>。</li><li><strong>UnsupportedClassVersionError</strong><br>Java 版本和 MC 不匹配，对照上文版本表安装对应 JDK。</li><li><strong>Failed to bind to port / 端口被占用</strong><br>有程序占了 25565，改 <code>server-port</code> 换个端口，或用 <code>netstat -ano | findstr 25565</code>（Windows）查看占用进程。</li><li><strong>OutOfMemoryError</strong><br><code>-Xmx</code> 给太小了，调大内存，或者服务器内存不足时加 swap。</li><li><strong>局域网里别人能进，自己进不去</strong><br>家用路由器大多不支持 NAT 回环，自己连自己要用内网 IP 而不是公网 IP。</li><li><strong>服务器很卡</strong><br>降低 <code>view-distance</code>，限制 <code>max-players</code>，检查是不是内存不足；人多的服务器建议换 Paper 并装优化插件。</li></ul><p>如果上面的问题没能解决你的问题，欢迎在评论区留言提问。</p>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;Minecraft-Server-搭建教程&quot;&gt;&lt;a href=&quot;#Minecraft-Server-搭建教程&quot; class=&quot;headerlink&quot; title=&quot;Minecraft Server 搭建教程&quot;&gt;&lt;/a&gt;Minecraft Server 搭建教程&lt;/</summary>
      
    
    
    
    <category term="教程" scheme="https://jinghuashang.cn/categories/%E6%95%99%E7%A8%8B/"/>
    
    
    <category term="计算机" scheme="https://jinghuashang.cn/tags/%E8%AE%A1%E7%AE%97%E6%9C%BA/"/>
    
    <category term="MC" scheme="https://jinghuashang.cn/tags/MC/"/>
    
    <category term="网络" scheme="https://jinghuashang.cn/tags/%E7%BD%91%E7%BB%9C/"/>
    
  </entry>
  
  <entry>
    <title>Arch Liunx (UEFI)</title>
    <link href="https://jinghuashang.cn/posts/38e9.html"/>
    <id>https://jinghuashang.cn/posts/38e9.html</id>
    <published>2022-02-25T06:34:59.000Z</published>
    <updated>2024-04-25T11:47:52.282Z</updated>
    
    <content type="html"><![CDATA[<h1 id="Arch-Linux安装教程-（以UEFI为例）-最后更新于2023年01月06日"><a href="#Arch-Linux安装教程-（以UEFI为例）-最后更新于2023年01月06日" class="headerlink" title="Arch Linux安装教程 （以UEFI为例） 最后更新于2023年01月06日"></a>Arch Linux安装教程 （以UEFI为例） 最后更新于2023年01月06日</h1><h2 id="1-Arch-Linux-amp-KDE-的安装及配置——"><a href="#1-Arch-Linux-amp-KDE-的安装及配置——" class="headerlink" title="1.Arch Linux &amp; KDE 的安装及配置——"></a>1.Arch Linux &amp; KDE 的安装及配置——</h2><h4 id="零、系统镜像的下载-amp-安装介质的制作-amp-BIOS-的设置"><a href="#零、系统镜像的下载-amp-安装介质的制作-amp-BIOS-的设置" class="headerlink" title="零、系统镜像的下载 &amp; 安装介质的制作 &amp; BIOS 的设置"></a>零、系统镜像的下载 &amp; 安装介质的制作 &amp; BIOS 的设置</h4><p><a href="https://mirrors.ustc.edu.cn/archlinux/iso/2023.01.01/archlinux-2023.01.01-x86_64.iso">点击此处下载系统镜像</a>并<a href="https://mirrors.ustc.edu.cn/archlinux/iso/2023.01.01/sha256sums.txt">校验SHA256</a>。校验无误后，使用<a href="https://www.ventoy.net/cn/download.html">Ventoy</a>制作安装介质。（如果是首次使用Ventoy，<a href="https://www.ventoy.net/cn/index.html">请点击此处</a>查看使用方法）然后进入BIOS，将安全启动和快速启动关闭并将安装介质（如U盘）设置为第一启动项，并按F10保存退出。进入ArchLinux安装盘即可。</p><h5 id="如果设备中包含NVIDIA显卡，请在进入liveCD的GRUB引导界面时按下键盘上的字母E-进入GRUB的编辑模式。在其linux行的末尾加入nouveau-modeset-0来屏蔽NVIDIA开源驱动。否则会出现加载nouveau模块报错和其他模块无法加载的问题。编辑完成后按CTRL-X退出。"><a href="#如果设备中包含NVIDIA显卡，请在进入liveCD的GRUB引导界面时按下键盘上的字母E-进入GRUB的编辑模式。在其linux行的末尾加入nouveau-modeset-0来屏蔽NVIDIA开源驱动。否则会出现加载nouveau模块报错和其他模块无法加载的问题。编辑完成后按CTRL-X退出。" class="headerlink" title="如果设备中包含NVIDIA显卡，请在进入liveCD的GRUB引导界面时按下键盘上的字母E,进入GRUB的编辑模式。在其linux行的末尾加入nouveau.modeset=0来屏蔽NVIDIA开源驱动。否则会出现加载nouveau模块报错和其他模块无法加载的问题。编辑完成后按CTRL+X退出。"></a>如果设备中包含NVIDIA显卡，请在进入liveCD的GRUB引导界面时按下键盘上的字母E,进入GRUB的编辑模式。在其linux行的末尾加入nouveau.modeset=0来屏蔽NVIDIA开源驱动。否则会出现加载nouveau模块报错和其他模块无法加载的问题。编辑完成后按CTRL+X退出。</h5><blockquote><p>如有疑问请参考Wiki以下章节：</p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E8%8E%B7%E5%8F%96%E5%AE%89%E8%A3%85%E6%98%A0%E5%83%8F">获取安装映像</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E5%87%86%E5%A4%87%E5%AE%89%E8%A3%85%E6%98%A0%E5%83%8F">准备安装映像</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E5%90%AF%E5%8A%A8%E5%88%B0_Live_%E7%8E%AF%E5%A2%83">启动到Live环境</a></p></blockquote><h4 id="一、验证引导模式-amp-联网-amp-换源："><a href="#一、验证引导模式-amp-联网-amp-换源：" class="headerlink" title="一、验证引导模式 &amp; 联网 &amp; 换源："></a>一、验证引导模式 &amp; 联网 &amp; 换源：</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><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><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br></pre></td><td class="code"><pre><span class="line">$ <span class="built_in">ls</span> /sys/firmware/efi/efivars</span><br><span class="line"><span class="comment">#验证引导模式（如果不报错，即为UEFI引导模式；反之，请使用隔壁以Legacy BIOS为例的教程）</span></span><br><span class="line"></span><br><span class="line">$ iwctl</span><br><span class="line"><span class="comment">#运行iwctl（如果是台式机，可直接跳到ping -c 5 archlinux.org这一步）</span></span><br><span class="line">[iwctl]<span class="comment"># device list</span></span><br><span class="line"><span class="comment">#列出WiFi设备（一般为wlan0；这里以wlan0为例）</span></span><br><span class="line">[iwctl]<span class="comment"># station wlan0 scan</span></span><br><span class="line"><span class="comment">#扫描网络</span></span><br><span class="line">[iwctl]<span class="comment"># station wlan0 get-networks</span></span><br><span class="line"><span class="comment">#列出可用网络</span></span><br><span class="line">[iwctl]<span class="comment"># station wlan0 connect X</span></span><br><span class="line"><span class="comment">#连接到X（X改成你可用的WiFi名称并在回车后输入密码且确保密码输入正确）</span></span><br><span class="line">[iwctl]<span class="comment"># exit</span></span><br><span class="line"><span class="comment">#退出iwctl</span></span><br><span class="line"></span><br><span class="line">$ ping -c 5 archlinux.org</span><br><span class="line"><span class="comment">#检查网络连接（如果有输出内容，即为联网成功）</span></span><br><span class="line"></span><br><span class="line">$ reflector --country China --save /etc/pacman.d/mirrorlist</span><br><span class="line"><span class="comment">#换源（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ systemctl stop reflector</span><br><span class="line"><span class="comment">#关闭reflector服务</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/pacman.d/mirrorlist</span><br><span class="line"><span class="comment">#编辑/etc/pacman.d/mirrorlist文件，保留自己需要的源（一般推荐使用中科大源或清华源）</span></span><br><span class="line"></span><br><span class="line">$ timedatectl status</span><br><span class="line"><span class="comment">#检查服务状态</span></span><br></pre></td></tr></table></figure><blockquote><p>如有疑问请参考Wiki以下章节：</p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E9%AA%8C%E8%AF%81%E5%BC%95%E5%AF%BC%E6%A8%A1%E5%BC%8F">验证引导模式</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E8%BF%9E%E6%8E%A5%E5%88%B0%E5%9B%A0%E7%89%B9%E7%BD%91">连接到因特网</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E9%80%89%E6%8B%A9%E9%95%9C%E5%83%8F">选择镜像</a>和<a href="https://wiki.archlinuxcn.org/wiki/Reflector?rdfrom=https%3A%2F%2Fwiki.archlinux.org%2Findex.php%3Ftitle%3DReflector_%28%25E7%25AE%2580%25E4%25BD%2593%25E4%25B8%25AD%25E6%2596%2587%29%26redirect%3Dno#%E7%A4%BA%E4%BE%8B">reflector</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E6%9B%B4%E6%96%B0%E7%B3%BB%E7%BB%9F%E6%97%B6%E9%97%B4">更新系统时间</a></p></blockquote><h4 id="二、分区-amp-挂载："><a href="#二、分区-amp-挂载：" class="headerlink" title="二、分区 &amp; 挂载："></a>二、分区 &amp; 挂载：</h4><p>以下分区和挂载相关步骤是以NVME协议硬盘为例，如果是SATA协议硬盘，请记住：nvme0n1等于sda；nvme0n1p1等于sda1；nvme0n1p2等于sda2；nvme0n1p3等于sda3。</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><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><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br></pre></td><td class="code"><pre><span class="line">$ lsblk</span><br><span class="line"><span class="comment">#查看硬盘名称（一般为sda或nvme0n1；这里以nvme0n1为例）</span></span><br><span class="line"></span><br><span class="line">$ gdisk /dev/nvme0n1</span><br><span class="line"><span class="comment">#使用gdisk对nvme0n1进行相关操作</span></span><br><span class="line"><span class="comment">#步骤如下：</span></span><br><span class="line">Command (? <span class="keyword">for</span> <span class="built_in">help</span>): x <span class="comment">#输入x进入高级选项</span></span><br><span class="line">Expert <span class="built_in">command</span> (? <span class="keyword">for</span> <span class="built_in">help</span>): z <span class="comment">#输入z删除所有分区</span></span><br><span class="line">About to wipe out GPT on /dev/nvme0n1. Proceed? (Y/N): Y <span class="comment">#输入Y确定删除</span></span><br><span class="line">Blank out MBR? (Y/N): Y <span class="comment">#输入Y清空MBR</span></span><br><span class="line"></span><br><span class="line">$ gdisk /dev/nvme0n1</span><br><span class="line"><span class="comment">#再次使用gdisk对nvme0n1进行相关操作</span></span><br><span class="line"><span class="comment">#步骤如下：</span></span><br><span class="line">Command (? <span class="keyword">for</span> <span class="built_in">help</span>): n <span class="comment">#输入n创建新分区</span></span><br><span class="line">Partition number (1-128, default 1): <span class="comment">#这里按Enter键</span></span><br><span class="line">First sector (34-X, default = 2048) or &#123;+-&#125;size&#123;KMGTP&#125;: <span class="comment">#这里按Enter键</span></span><br><span class="line">Last sector (2048-X, default = X) or &#123;+-&#125;size&#123;KMGTP&#125;: +512M <span class="comment">#输入+512M</span></span><br><span class="line">Hex code or GUID (L to show codees, Enter = 8300): ef00 <span class="comment">#输入ef00，创建efi分区</span></span><br><span class="line">Command (? <span class="keyword">for</span> <span class="built_in">help</span>): n <span class="comment">#输入n创建新分区</span></span><br><span class="line">Partition number (2-128, default 2): <span class="comment">#这里按Enter键</span></span><br><span class="line">First sector (34-X, default = 1050624) or &#123;+-&#125;size&#123;KMGTP&#125;: <span class="comment">#这里按Enter键</span></span><br><span class="line">Last sector (1050624-X, default = X) or &#123;+-&#125;size&#123;KMGTP&#125;: +10G <span class="comment">#输入+10G</span></span><br><span class="line">Hex code or GUID (L to show codees, Enter = 8300): 8200 <span class="comment">#输入8200，创建swap分区</span></span><br><span class="line">Command (? <span class="keyword">for</span> <span class="built_in">help</span>): n <span class="comment">#输入n创建新分区，然后一直按Enter键，把剩下的空间全部分配给/分区</span></span><br><span class="line">Command (? <span class="keyword">for</span> <span class="built_in">help</span>): w <span class="comment">#输入w写入</span></span><br><span class="line">Do you want to proceed? (Y/N): Y <span class="comment">#输入Y确定写入</span></span><br><span class="line"></span><br><span class="line">$ lsblk</span><br><span class="line"><span class="comment">#查看分区结构是否正确</span></span><br><span class="line"></span><br><span class="line">$ mkfs.vfat -F 32 -n BOOT /dev/nvme0n1p1</span><br><span class="line"><span class="comment">#将nvme0n1p1格式化为vfat（设置为FAT32格式），创建标签为BOOT（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ mkfs.btrfs -L ARCH /dev/nvme0n1p3</span><br><span class="line"><span class="comment">#将nvme0n1p3格式化为btrfs，创建标签为ARCH（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ mkswap -L SWAP /dev/nvme0n1p2</span><br><span class="line"><span class="comment">#将nvme0n1p2设置为swap，创建标签为SWAP（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ mount -t btrfs -o compress=zstd /dev/nvme0n1p3 /mnt</span><br><span class="line"><span class="comment">#将nvme0n1p3挂载到/mnt目录名创建btrfs子卷</span></span><br><span class="line"><span class="comment">#步骤如下：</span></span><br><span class="line">btrfs subvolume create /mnt/@ <span class="comment">#创建/目录的btrfs子卷</span></span><br><span class="line">btrfs subvolume create /mnt/@root <span class="comment">#创建/root目录的btrfs子卷</span></span><br><span class="line">btrfs subvolume create /mnt/@home <span class="comment">#创建/home目录的btrfs子卷</span></span><br><span class="line">umount /mnt <span class="comment">#卸载/mnt目录</span></span><br><span class="line">mount -t btrfs -o subvol=/@,compress=zstd /dev/nvme0n1p3 /mnt <span class="comment">#挂载/目录的btrfs子卷到/mnt目录</span></span><br><span class="line"><span class="built_in">mkdir</span> /mnt/root <span class="comment">#创建/mnt/root目录</span></span><br><span class="line">mount -t btrfs -o subvol=/@root,compress=zstd /dev/nvme0n1p3 /mnt/root <span class="comment">#挂载/root目录的btrfs子卷到/mnt/root目录</span></span><br><span class="line"><span class="built_in">mkdir</span> /mnt/home <span class="comment">#创建/mnt/home目录</span></span><br><span class="line">mount -t btrfs -o subvol=/@home,compress=zstd /dev/nvme0n1p3 /mnt/home <span class="comment">#挂载/home目录的btrfs子卷到/mnt/home目录</span></span><br><span class="line"></span><br><span class="line">$ <span class="built_in">mkdir</span> /mnt/boot</span><br><span class="line"><span class="comment">#创建/mnt/boot目录</span></span><br><span class="line"></span><br><span class="line">$ mount /dev/nvme0n1p1 /mnt/boot</span><br><span class="line"><span class="comment">#将nvme0n1p1挂载到/mnt/boot目录</span></span><br><span class="line"></span><br><span class="line">$ swapon /dev/nvme0n1p2</span><br><span class="line"><span class="comment">#激活nvme0n1p2为交换分区</span></span><br><span class="line"></span><br><span class="line">$ lsblk -f</span><br><span class="line"><span class="comment">#查看相应分区的文件系统及挂载是否正确</span></span><br></pre></td></tr></table></figure><p>在pacstrap之前，请再检查一下/etc/pacman.d/mirrorlist文件。例如：cat /etc/pacman.d/mirrorlist或vim /etc/pacman.d/mirrorlist。总之，检查一下这个文件即可。</p><blockquote><p>如有疑问请参考Wiki以下章节：</p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E5%BB%BA%E7%AB%8B%E7%A1%AC%E7%9B%98%E5%88%86%E5%8C%BA">建立硬盘分区</a>和<a href="https://wiki.archlinuxcn.org/wiki/GPT_fdisk?rdfrom=https%3A%2F%2Fwiki.archlinux.org%2Findex.php%3Ftitle%3DGPT_fdisk_%28%25E7%25AE%2580%25E4%25BD%2593%25E4%25B8%25AD%25E6%2596%2587%29%26redirect%3Dno#%E5%88%9B%E5%BB%BA%E5%88%86%E5%8C%BA%E8%A1%A8%E5%92%8C%E5%88%86%E5%8C%BA">GPT fdisk</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E6%A0%BC%E5%BC%8F%E5%8C%96%E5%88%86%E5%8C%BA">格式化分区</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E6%8C%82%E8%BD%BD%E5%88%86%E5%8C%BA">挂载分区</a></p></blockquote><h4 id="三、安装基本的包-amp-初步配置："><a href="#三、安装基本的包-amp-初步配置：" class="headerlink" title="三、安装基本的包 &amp; 初步配置："></a>三、安装基本的包 &amp; 初步配置：</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><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><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br></pre></td><td class="code"><pre><span class="line">$ pacstrap -K /mnt linux linux-firmware sof-firmware linux-headers base base-devel vim bash-completion networkmanager dosfstools btrfs-progs exfatprogs ntfs-3g pacman-contrib</span><br><span class="line"><span class="comment">#安装必要的软件包（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ genfstab -U /mnt &gt; /mnt/etc/fstab</span><br><span class="line"><span class="comment">#生成/mnt/etc/fstab文件（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ <span class="built_in">cat</span> /mnt/etc/fstab</span><br><span class="line"><span class="comment">#查看/mnt/etc/fstab文件是否正确（如果不正确，请重新分区、挂载、pacstrap）</span></span><br><span class="line"></span><br><span class="line">$ arch-chroot /mnt</span><br><span class="line"><span class="comment">#进入目标系统</span></span><br><span class="line"></span><br><span class="line">$ pacman -S grub efibootmgr amd-ucode intel-ucode</span><br><span class="line"><span class="comment">#安装grub &amp; efibootmgr &amp; amd-ucode或intel-ucode（AMD的CPU安装amd-ucode，intel的CPU安装intel-ucode）</span></span><br><span class="line"></span><br><span class="line">$ grub-install --target=x86_64-efi --efi-directory=/boot</span><br><span class="line"><span class="comment">#将grub写入/boot目录</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/default/grub</span><br><span class="line"><span class="comment">#编辑/etc/default/grub文件，将GRUB_CMDLINE_LINUX=&quot;&quot;修改为GRUB_CMDLINE_LINUX=&quot; nouveau.modeset=0&quot;（没有nvidia显卡可跳过）</span></span><br><span class="line"></span><br><span class="line">$ grub-mkconfig -o /boot/grub/grub.cfg</span><br><span class="line"><span class="comment">#生成/boot/grub/grub.cfg文件</span></span><br><span class="line"></span><br><span class="line">$ systemctl <span class="built_in">enable</span> NetworkManager</span><br><span class="line"><span class="comment">#开机自启NetworkManager服务（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ passwd root</span><br><span class="line"><span class="comment">#设置root密码（在回车后输入密码且密码不显示，输入完成后回车，再输入一遍且密码同样不显示，输入完成后再回车，即可完成密码设置）</span></span><br></pre></td></tr></table></figure><p>如果你打算将系统安装进U盘即插即用，推荐amd-ucode和intel-ucode都安装并且安装grub时，请在grub-install后加入—removable参数。</p><blockquote><p>如有疑问请参考Wiki以下章节：</p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E5%AE%89%E8%A3%85%E5%BF%85%E9%9C%80%E7%9A%84%E8%BD%AF%E4%BB%B6%E5%8C%85">安装必需的软件包</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#Fstab">Fstab</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#Chroot">Chroot</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E5%AE%89%E8%A3%85%E5%BC%95%E5%AF%BC%E7%A8%8B%E5%BA%8F">安装引导程序</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#Root_%E5%AF%86%E7%A0%81">Root密码</a></p></blockquote><h4 id="四、退出目标系统："><a href="#四、退出目标系统：" class="headerlink" title="四、退出目标系统："></a>四、退出目标系统：</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><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line">$ <span class="built_in">exit</span></span><br><span class="line"><span class="comment">#退出目标系统</span></span><br><span class="line"></span><br><span class="line">$ umount -R /mnt</span><br><span class="line"><span class="comment">#卸载/mnt目录</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启并登陆root</span></span><br></pre></td></tr></table></figure><h4 id="五、系统配置："><a href="#五、系统配置：" class="headerlink" title="五、系统配置："></a>五、系统配置：</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><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><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br><span class="line">80</span><br><span class="line">81</span><br><span class="line">82</span><br><span class="line">83</span><br><span class="line">84</span><br><span class="line">85</span><br><span class="line">86</span><br><span class="line">87</span><br></pre></td><td class="code"><pre><span class="line">$ nmtui</span><br><span class="line"><span class="comment">#运行nmtui（根据图形界面提示进行联网操作即可；台式机可跳过）</span></span><br><span class="line"></span><br><span class="line">$ ping -c 5 archlinux.org</span><br><span class="line"><span class="comment">#检查网络连接（如果有输出内容，即为联网成功）</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/hostname</span><br><span class="line"><span class="comment">#创建/etc/hostname文件，加入以下内容：</span></span><br><span class="line"><span class="built_in">arch</span></span><br><span class="line"><span class="comment">#将主机名设置为arch</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/hosts</span><br><span class="line"><span class="comment">#编辑/etc/hosts文件，在末尾加入以下内容：</span></span><br><span class="line">127.0.0.1 localhost</span><br><span class="line">::1 localhost</span><br><span class="line">127.0.1.1 arch.localdomain <span class="built_in">arch</span></span><br><span class="line"><span class="comment">#配置hosts文件，映射IP地址和主机名</span></span><br><span class="line"></span><br><span class="line">$ <span class="built_in">ln</span> -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime &amp;&amp; hwclock --systohc</span><br><span class="line"><span class="comment">#设置时区为上海（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/environment</span><br><span class="line"><span class="comment">#编辑/etc/environment文件，在开头加入以下内容：</span></span><br><span class="line"><span class="built_in">export</span> EDITOR=/bin/vim</span><br><span class="line"><span class="comment">#设置vim为默认文本编辑器（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启并登陆root</span></span><br><span class="line"></span><br><span class="line">$ useradd -m -G wheel <span class="built_in">arch</span></span><br><span class="line"><span class="comment">#添加普通用户，用户名为arch并将arch添加到wheel组中</span></span><br><span class="line"></span><br><span class="line">$ passwd <span class="built_in">arch</span></span><br><span class="line"><span class="comment">#设置arch密码（注意事项请参考第三阶段的设置root密码部分）</span></span><br><span class="line"></span><br><span class="line">$ <span class="built_in">id</span> <span class="built_in">arch</span></span><br><span class="line"><span class="comment">#查看用户组是否添加到相应的组中</span></span><br><span class="line"></span><br><span class="line">$ visudo</span><br><span class="line"><span class="comment">#设置用户权限，删除%wheel ALL=(ALL:ALL) ALL前面的#</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启并登陆root</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/locale.gen</span><br><span class="line"><span class="comment">#编辑/etc/locale.gen文件，删除en_US.UTF-8 UTF-8和zh_CN.UTF-8 UTF-8前面的#</span></span><br><span class="line"></span><br><span class="line">$ locale-gen</span><br><span class="line"><span class="comment">#生成语言</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/locale.conf</span><br><span class="line"><span class="comment">#创建/etc/locale.conf文件，加入以下内容（如果文件已经存在，则删除文件中原有的内容）：</span></span><br><span class="line">LANG=<span class="string">&quot;en_US.UTF-8&quot;</span></span><br><span class="line"><span class="comment">#设置语言为en_US.UTF-8，不要不要不要设置为zh_CN.UTF-8（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/pacman.conf</span><br><span class="line"><span class="comment">#编辑/etc/pacman.conf文件，删除[multilib]区域的所有#（开启32位支持）并在末尾加入以下内容：</span></span><br><span class="line">[archlinuxcn]</span><br><span class="line">Server = https://mirrors.ustc.edu.cn/archlinuxcn/<span class="variable">$arch</span></span><br><span class="line"><span class="comment">#添加archlinuxcn源（一般推荐使用中科大源；注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ pacman -Sy</span><br><span class="line"><span class="comment">#同步数据</span></span><br><span class="line"></span><br><span class="line">$ pacman -S archlinuxcn-keyring</span><br><span class="line"><span class="comment">#安装archlinuxcn-keyring</span></span><br><span class="line"></span><br><span class="line">$ <span class="built_in">rm</span> -rf /etc/pacman.d/gnupg &amp;&amp; pacman-key --init &amp;&amp; pacman-key --populate archlinux &amp;&amp; pacman-key --populate archlinuxcn</span><br><span class="line"><span class="comment">#生成新的密钥环并重新签署密钥（安装archlinuxcn-keyring不报错时可跳过）</span></span><br><span class="line"></span><br><span class="line">$ pacman -Sy</span><br><span class="line"><span class="comment">#再次同步数据</span></span><br><span class="line"></span><br><span class="line">$ pacman -S mesa xf86-video-amdgpu vulkan-radeon xf86-video-ati opencl-mesa opencl-headers</span><br><span class="line"><span class="comment">#安装AMD核显相关驱动</span></span><br><span class="line"></span><br><span class="line">$ pacman -S mesa xf86-video-intel vulkan-intel opencl-mesa opencl-headers</span><br><span class="line"><span class="comment">#安装intel核显相关驱动</span></span><br><span class="line"></span><br><span class="line">$ pacman -S pipewire pipewire-media-session pipewire-alsa pipewire-pulse pipewire-jack </span><br><span class="line"><span class="comment">#安装声音相关驱动</span></span><br><span class="line"></span><br><span class="line">$ systemctl <span class="built_in">enable</span> bluetooth</span><br><span class="line"><span class="comment">#开机自启bluetooth服务</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启并登陆root</span></span><br></pre></td></tr></table></figure><p>如果你打算将系统安装进U盘即插即用，推荐AMD核显和intel核显都安装。</p><p><del>So,Nvidia:FuckYou!</del></p><blockquote><p>如有疑问请参考Wiki以下内容：</p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E7%BD%91%E7%BB%9C%E9%85%8D%E7%BD%AE">网络配置</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E6%97%B6%E5%8C%BA">时区</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E6%9C%AC%E5%9C%B0%E5%8C%96">本地化</a></p></blockquote><h4 id="六、安装桌面环境："><a href="#六、安装桌面环境：" class="headerlink" title="六、安装桌面环境："></a>六、安装桌面环境：</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><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></pre></td><td class="code"><pre><span class="line">$ pacman -S ttf-dejavu ttf-liberation noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-emoji-blob noto-fonts-extra wqy-bitmapfont wqy-microhei wqy-microhei-lite wqy-zenhei ttf-arphic-extra ttf-arphic-ukai ttf-arphic-uming adobe-source-code-pro-fonts adobe-source-han-sans-jp-fonts adobe-source-han-sans-tw-fonts adobe-source-han-serif-jp-fonts adobe-source-han-serif-tw-fonts adobe-source-han-sans-cn-fonts adobe-source-han-sans-kr-fonts adobe-source-han-serif-cn-fonts adobe-source-han-serif-kr-fonts adobe-source-sans-fonts adobe-source-han-sans-hk-fonts adobe-source-han-sans-otc-fonts adobe-source-han-serif-hk-fonts adobe-source-han-serif-otc-fonts adobe-source-serif-fonts</span><br><span class="line"><span class="comment">#安装字体（请根据需要自行补充，这里只安装常用的包）</span></span><br><span class="line"></span><br><span class="line">$ pacman -S plasma-meta konsole dolphin</span><br><span class="line"><span class="comment">#安装KDE桌面及软件（这里只安装最必要的包，如果想完整使用KDE的各种功能请根据对应提示安装需要的包）</span></span><br><span class="line"></span><br><span class="line">$ systemctl <span class="built_in">enable</span> sddm</span><br><span class="line"><span class="comment">#开机自启sddm服务</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启</span></span><br></pre></td></tr></table></figure><h2 id="2-桌面中文环境的设置-amp-输入法的安装及配置——"><a href="#2-桌面中文环境的设置-amp-输入法的安装及配置——" class="headerlink" title="2.桌面中文环境的设置 &amp; 输入法的安装及配置——"></a>2.桌面中文环境的设置 &amp; 输入法的安装及配置——</h2><h4 id="一、中文环境的设置："><a href="#一、中文环境的设置：" class="headerlink" title="一、中文环境的设置："></a>一、中文环境的设置：</h4><p>System Settings&gt;&gt;Regional Settings&gt;&gt;Language&gt;&gt;Change Language，<strong>简体中文</strong>&gt;&gt;Apply。</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启</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><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></pre></td><td class="code"><pre><span class="line">$ vim .xprofile</span><br><span class="line"><span class="comment">#创建~/.xprofile文件，加入以下内容：</span></span><br><span class="line"><span class="built_in">export</span> LANG=zh_CN.UTF-8</span><br><span class="line"><span class="built_in">export</span> LANGUAGE=zh_CN:en_US</span><br><span class="line"><span class="comment">#设置X环境为中文（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启</span></span><br></pre></td></tr></table></figure><h4 id="二、Fcitx-5-输入法的安装："><a href="#二、Fcitx-5-输入法的安装：" class="headerlink" title="二、Fcitx 5 输入法的安装："></a>二、Fcitx 5 输入法的安装：</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><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></pre></td><td class="code"><pre><span class="line">$ sudo pacman -S fcitx5-im fcitx5-chinese-addons</span><br><span class="line"><span class="comment">#安装fcitx5软件包组及中文输入法模块</span></span><br><span class="line"></span><br><span class="line">$ sudo vim /etc/environment</span><br><span class="line"><span class="comment">#编辑/etc/environment文件，在末尾加入以下内容：</span></span><br><span class="line">GTK_IM_MODULE=fcitx</span><br><span class="line">QT_IM_MODULE=fcitx</span><br><span class="line">SDL_IM_MODULE=fcitx</span><br><span class="line">XMODIFIERS=@im=fcitx</span><br><span class="line"><span class="comment">#配置环境变量（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ sudo pacman -S fcitx5-pinyin-zhwiki fcitx5-pinyin-moegirl</span><br><span class="line"><span class="comment">#安装词库</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启</span></span><br></pre></td></tr></table></figure><h1 id="END（想再看一遍本教程吗？那就请在终端中输入sudo-rm-rf-，你会回来的。）"><a href="#END（想再看一遍本教程吗？那就请在终端中输入sudo-rm-rf-，你会回来的。）" class="headerlink" title="END（想再看一遍本教程吗？那就请在终端中输入sudo rm -rf /*，你会回来的。）"></a>END<del>（想再看一遍本教程吗？那就请在终端中输入sudo rm -rf /*，你会回来的。）</del></h1>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;Arch-Linux安装教程-（以UEFI为例）-最后更新于2023年01月06日&quot;&gt;&lt;a href=&quot;#Arch-Linux安装教程-（以UEFI为例）-最后更新于2023年01月06日&quot; class=&quot;headerlink&quot; title=&quot;Arch Linux</summary>
      
    
    
    
    <category term="教程" scheme="https://jinghuashang.cn/categories/%E6%95%99%E7%A8%8B/"/>
    
    
    <category term="计算机" scheme="https://jinghuashang.cn/tags/%E8%AE%A1%E7%AE%97%E6%9C%BA/"/>
    
    <category term="Arch Linux" scheme="https://jinghuashang.cn/tags/Arch-Linux/"/>
    
    <category term="系统" scheme="https://jinghuashang.cn/tags/%E7%B3%BB%E7%BB%9F/"/>
    
  </entry>
  
  <entry>
    <title>Arch Liunx (Legacy BIOS)</title>
    <link href="https://jinghuashang.cn/posts/b96d.html"/>
    <id>https://jinghuashang.cn/posts/b96d.html</id>
    <published>2022-02-25T06:34:59.000Z</published>
    <updated>2024-04-25T11:48:21.607Z</updated>
    
    <content type="html"><![CDATA[<h1 id="Arch-Linux安装教程-（以Legacy-BIOS为例）-最后更新于2023年01月06日"><a href="#Arch-Linux安装教程-（以Legacy-BIOS为例）-最后更新于2023年01月06日" class="headerlink" title="Arch Linux安装教程 （以Legacy BIOS为例） 最后更新于2023年01月06日"></a>Arch Linux安装教程 （以Legacy BIOS为例） 最后更新于2023年01月06日</h1><h2 id="1-Arch-Linux-amp-KDE-的安装及配置——"><a href="#1-Arch-Linux-amp-KDE-的安装及配置——" class="headerlink" title="1.Arch Linux &amp; KDE 的安装及配置——"></a>1.Arch Linux &amp; KDE 的安装及配置——</h2><h4 id="零、系统镜像的下载-amp-安装介质的制作-amp-BIOS-的设置"><a href="#零、系统镜像的下载-amp-安装介质的制作-amp-BIOS-的设置" class="headerlink" title="零、系统镜像的下载 &amp; 安装介质的制作 &amp; BIOS 的设置"></a>零、系统镜像的下载 &amp; 安装介质的制作 &amp; BIOS 的设置</h4><p><a href="https://mirrors.ustc.edu.cn/archlinux/iso/2023.01.01/archlinux-2023.01.01-x86_64.iso">点击此处下载系统镜像</a>并<a href="https://mirrors.ustc.edu.cn/archlinux/iso/2023.01.01/sha256sums.txt">校验SHA256</a>镜像的完整性。校验无误后，使用<a href="https://www.ventoy.net/cn/download.html">Ventoy</a>制作安装介质。（如果是首次使用Ventoy，<a href="https://www.ventoy.net/cn/index.html">请点击此处</a>查看使用方法）然后进入BIOS，将安全启动和快速启动关闭并将安装介质（如U盘）设置为第一启动项，并按F10保存退出。进入ArchLinux安装盘即可。</p><h5 id="如果设备中包含NVIDIA显卡，请在进入liveCD的GRUB引导界面时按下键盘上的字母E-进入GRUB的编辑模式。在其linux行的末尾加入nouveau-modeset-0来屏蔽NVIDIA开源驱动。否则会出现加载nouveau模块报错和其他模块无法加载的问题。编辑完成后按CTRL-X退出。"><a href="#如果设备中包含NVIDIA显卡，请在进入liveCD的GRUB引导界面时按下键盘上的字母E-进入GRUB的编辑模式。在其linux行的末尾加入nouveau-modeset-0来屏蔽NVIDIA开源驱动。否则会出现加载nouveau模块报错和其他模块无法加载的问题。编辑完成后按CTRL-X退出。" class="headerlink" title="如果设备中包含NVIDIA显卡，请在进入liveCD的GRUB引导界面时按下键盘上的字母E,进入GRUB的编辑模式。在其linux行的末尾加入nouveau.modeset=0来屏蔽NVIDIA开源驱动。否则会出现加载nouveau模块报错和其他模块无法加载的问题。编辑完成后按CTRL+X退出。"></a>如果设备中包含NVIDIA显卡，请在进入liveCD的GRUB引导界面时按下键盘上的字母E,进入GRUB的编辑模式。在其linux行的末尾加入nouveau.modeset=0来屏蔽NVIDIA开源驱动。否则会出现加载nouveau模块报错和其他模块无法加载的问题。编辑完成后按CTRL+X退出。</h5><blockquote><p>如有疑问请参考Wiki以下章节：</p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E8%8E%B7%E5%8F%96%E5%AE%89%E8%A3%85%E6%98%A0%E5%83%8F">获取安装映像</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E5%87%86%E5%A4%87%E5%AE%89%E8%A3%85%E6%98%A0%E5%83%8F">准备安装映像</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E5%90%AF%E5%8A%A8%E5%88%B0_Live_%E7%8E%AF%E5%A2%83">启动到Live环境</a></p></blockquote><h4 id="一、验证引导模式-amp-联网-amp-换源："><a href="#一、验证引导模式-amp-联网-amp-换源：" class="headerlink" title="一、验证引导模式 &amp; 联网 &amp; 换源："></a>一、验证引导模式 &amp; 联网 &amp; 换源：</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><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><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br></pre></td><td class="code"><pre><span class="line">$ <span class="built_in">ls</span> /sys/firmware/efi/efivars</span><br><span class="line"><span class="comment">#验证引导模式（如果目录不存在，即为Legacy BIOS引导模式；反之，请使用隔壁以UEFI为例的教程）</span></span><br><span class="line"></span><br><span class="line">$ iwctl</span><br><span class="line"><span class="comment">#运行iwctl（如果是台式机，可直接跳到ping -c 5 archlinux.org这一步）</span></span><br><span class="line">[iwctl]<span class="comment"># device list</span></span><br><span class="line"><span class="comment">#列出WiFi设备（一般为wlan0；这里以wlan0为例）</span></span><br><span class="line">[iwctl]<span class="comment"># station wlan0 scan</span></span><br><span class="line"><span class="comment">#扫描网络</span></span><br><span class="line">[iwctl]<span class="comment"># station wlan0 get-networks</span></span><br><span class="line"><span class="comment">#列出可用网络</span></span><br><span class="line">[iwctl]<span class="comment"># station wlan0 connect X</span></span><br><span class="line"><span class="comment">#连接到X（X改成你可用的WiFi名称并在回车后输入密码且确保密码输入正确）</span></span><br><span class="line">[iwctl]<span class="comment"># exit</span></span><br><span class="line"><span class="comment">#退出iwctl</span></span><br><span class="line"></span><br><span class="line">$ ping -c 5 archlinux.org</span><br><span class="line"><span class="comment">#检查网络连接（如果有输出内容，即为联网成功）</span></span><br><span class="line"></span><br><span class="line">$ reflector --country China --save /etc/pacman.d/mirrorlist</span><br><span class="line"><span class="comment">#换源（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ systemctl stop reflector</span><br><span class="line"><span class="comment">#关闭reflector服务</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/pacman.d/mirrorlist</span><br><span class="line"><span class="comment">#编辑/etc/pacman.d/mirrorlist文件，保留自己需要的源（一般推荐使用中科大源或清华源）</span></span><br><span class="line"></span><br><span class="line">$ timedatectl status</span><br><span class="line"><span class="comment">#检查服务状态</span></span><br></pre></td></tr></table></figure><blockquote><p>如有疑问请参考Wiki以下章节：</p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E9%AA%8C%E8%AF%81%E5%BC%95%E5%AF%BC%E6%A8%A1%E5%BC%8F">验证引导模式</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E8%BF%9E%E6%8E%A5%E5%88%B0%E5%9B%A0%E7%89%B9%E7%BD%91">连接到因特网</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E9%80%89%E6%8B%A9%E9%95%9C%E5%83%8F">选择镜像</a>和<a href="https://wiki.archlinuxcn.org/wiki/Reflector?rdfrom=https%3A%2F%2Fwiki.archlinux.org%2Findex.php%3Ftitle%3DReflector_%28%25E7%25AE%2580%25E4%25BD%2593%25E4%25B8%25AD%25E6%2596%2587%29%26redirect%3Dno#%E7%A4%BA%E4%BE%8B">reflector</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E6%9B%B4%E6%96%B0%E7%B3%BB%E7%BB%9F%E6%97%B6%E9%97%B4">更新系统时间</a></p></blockquote><h4 id="二、分区-amp-挂载："><a href="#二、分区-amp-挂载：" class="headerlink" title="二、分区 &amp; 挂载："></a>二、分区 &amp; 挂载：</h4><p>以下分区和挂载相关步骤是以SATA协议硬盘为例。</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><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><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br></pre></td><td class="code"><pre><span class="line">$ lsblk</span><br><span class="line"><span class="comment">#查看硬盘名称（一般为sda；这里以sda为例）</span></span><br><span class="line"></span><br><span class="line">$ fdisk /dev/sda</span><br><span class="line"><span class="comment">#使用fdisk对sda进行相关操作</span></span><br><span class="line"><span class="comment">#步骤如下：</span></span><br><span class="line">Command (m <span class="keyword">for</span> <span class="built_in">help</span>): o <span class="comment">#输入o新建MBR分区表</span></span><br><span class="line">Command (m <span class="keyword">for</span> <span class="built_in">help</span>): n <span class="comment">#输入n创建新分区</span></span><br><span class="line">Select (default p): p <span class="comment">#这里按Enter键创建主分区（如果想创建逻辑扩展分区请输入e）</span></span><br><span class="line">Partition number (1-4, default 1): <span class="comment">#这里按Enter键</span></span><br><span class="line">First sector (2048-X, default 2048): <span class="comment">#这里按Enter键</span></span><br><span class="line">Last sector, +/-sectors or +/-size&#123;K,M,G,T,P&#125; (2048-X, default X): +10G <span class="comment">#输入+10G</span></span><br><span class="line">Command (m <span class="keyword">for</span> <span class="built_in">help</span>): t <span class="comment">#输入t更改分区类型</span></span><br><span class="line">Hex code or <span class="built_in">alias</span> (<span class="built_in">type</span> L to list all): 82 <span class="comment">#输入82，创建swap分区</span></span><br><span class="line">Command (m <span class="keyword">for</span> <span class="built_in">help</span>): n <span class="comment">#输入n创建新分区，然后一直按Enter键，把剩下的空间全部分配给/分区</span></span><br><span class="line">Command (m <span class="keyword">for</span> <span class="built_in">help</span>): w <span class="comment">#输入w写入 </span></span><br><span class="line"></span><br><span class="line">$ lsblk</span><br><span class="line"><span class="comment">#查看分区结构是否正确</span></span><br><span class="line"></span><br><span class="line">$ mkfs.btrfs -L ARCH /dev/sda2</span><br><span class="line"><span class="comment">#将sda2格式化为btrfs，创建标签为ARCH（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ mkswap -L SWAP /dev/sda1</span><br><span class="line"><span class="comment">#将sda1设置为swap，创建标签为SWAP（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ mount -t btrfs -o compress=zstd /dev/sda2 /mnt</span><br><span class="line"><span class="comment">#将sda2挂载到/mnt目录并创建btrfs子卷</span></span><br><span class="line"><span class="comment">#步骤如下：</span></span><br><span class="line">btrfs subvolume create /mnt/@ <span class="comment">#创建/目录的btrfs子卷</span></span><br><span class="line">btrfs subvolume create /mnt/@root <span class="comment">#创建/root目录的btrfs子卷</span></span><br><span class="line">btrfs subvolume create /mnt/@home <span class="comment">#创建/home目录的btrfs子卷</span></span><br><span class="line">umount /mnt <span class="comment">#卸载/mnt目录</span></span><br><span class="line">mount -t btrfs -o subvol=/@,compress=zstd /dev/sda2 /mnt <span class="comment">#挂载/目录的btrfs子卷到/mnt目录</span></span><br><span class="line"><span class="built_in">mkdir</span> /mnt/root <span class="comment">#创建/mnt/root目录</span></span><br><span class="line">mount -t btrfs -o subvol=/@root,compress=zstd /dev/sda2 /mnt/root <span class="comment">#挂载/root目录的btrfs子卷到/mnt/root目录</span></span><br><span class="line"><span class="built_in">mkdir</span> /mnt/home <span class="comment">#创建/mnt/home目录</span></span><br><span class="line">mount -t btrfs -o subvol=/@home,compress=zstd /dev/sda2 /mnt/home <span class="comment">#挂载/home目录的btrfs子卷到/mnt/home目录</span></span><br><span class="line"></span><br><span class="line">$ swapon /dev/sda1</span><br><span class="line"><span class="comment">#激活sda1为交换分区</span></span><br><span class="line"></span><br><span class="line">$ lsblk -f</span><br><span class="line"><span class="comment">#查看相应分区的文件系统及挂载是否正确</span></span><br></pre></td></tr></table></figure><p>在pacstrap之前，请再检查一下/etc/pacman.d/mirrorlist文件。例如：cat /etc/pacman.d/mirrorlist或vim /etc/pacman.d/mirrorlist。总之，检查一下这个文件即可。</p><blockquote><p>如有疑问请参考Wiki以下章节：</p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E5%BB%BA%E7%AB%8B%E7%A1%AC%E7%9B%98%E5%88%86%E5%8C%BA">建立硬盘分区</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E6%A0%BC%E5%BC%8F%E5%8C%96%E5%88%86%E5%8C%BA">格式化分区</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E6%8C%82%E8%BD%BD%E5%88%86%E5%8C%BA">挂载分区</a></p></blockquote><h4 id="三、安装基本的包-amp-初步配置："><a href="#三、安装基本的包-amp-初步配置：" class="headerlink" title="三、安装基本的包 &amp; 初步配置："></a>三、安装基本的包 &amp; 初步配置：</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><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><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br></pre></td><td class="code"><pre><span class="line">$ pacstrap -K /mnt linux linux-firmware sof-firmware linux-headers base base-devel vim bash-completion networkmanager dosfstools btrfs-progs exfatprogs ntfs-3g pacman-contrib</span><br><span class="line"><span class="comment">#安装必要的软件包（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ genfstab -U /mnt &gt; /mnt/etc/fstab</span><br><span class="line"><span class="comment">#生成/mnt/etc/fstab文件（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ <span class="built_in">cat</span> /mnt/etc/fstab</span><br><span class="line"><span class="comment">#查看/mnt/etc/fstab文件是否正确（如果不正确，请重新分区、挂载、pacstrap）</span></span><br><span class="line"></span><br><span class="line">$ arch-chroot /mnt</span><br><span class="line"><span class="comment">#进入目标系统</span></span><br><span class="line"></span><br><span class="line">$ pacman -S grub amd-ucode intel-ucode</span><br><span class="line"><span class="comment">#安装grub &amp; amd-ucode或intel-ucode（AMD的CPU安装amd-ucode，intel的CPU安装intel-ucode）</span></span><br><span class="line"></span><br><span class="line">$ lsblk</span><br><span class="line"><span class="comment">#查看硬盘名称</span></span><br><span class="line"></span><br><span class="line">$ grub-install /dev/sda</span><br><span class="line"><span class="comment">#将grub写入sda</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/default/grub</span><br><span class="line"><span class="comment">#编辑/etc/default/grub文件，将GRUB_CMDLINE_LINUX=&quot;&quot;修改为GRUB_CMDLINE_LINUX=&quot; nouveau.modeset=0&quot;（没有nvidia显卡可跳过）</span></span><br><span class="line"></span><br><span class="line">$ grub-mkconfig -o /boot/grub/grub.cfg</span><br><span class="line"><span class="comment">#生成/boot/grub/grub.cfg文件</span></span><br><span class="line"></span><br><span class="line">$ systemctl <span class="built_in">enable</span> NetworkManager</span><br><span class="line"><span class="comment">#开机自启NetworkManager服务（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ passwd root</span><br><span class="line"><span class="comment">#设置root密码（在回车后输入密码且密码不显示，输入完成后回车，再输入一遍且密码同样不显示，输入完成后再回车，即可完成密码设置）</span></span><br></pre></td></tr></table></figure><blockquote><p>如有疑问请参考Wiki以下章节：</p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E5%AE%89%E8%A3%85%E5%BF%85%E9%9C%80%E7%9A%84%E8%BD%AF%E4%BB%B6%E5%8C%85">安装必需的软件包</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#Fstab">Fstab</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#Chroot">Chroot</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E5%AE%89%E8%A3%85%E5%BC%95%E5%AF%BC%E7%A8%8B%E5%BA%8F">安装引导程序</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#Root_%E5%AF%86%E7%A0%81">Root密码</a></p></blockquote><h4 id="四、退出目标系统："><a href="#四、退出目标系统：" class="headerlink" title="四、退出目标系统："></a>四、退出目标系统：</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><span class="line">7</span><br><span class="line">8</span><br></pre></td><td class="code"><pre><span class="line">$ <span class="built_in">exit</span></span><br><span class="line"><span class="comment">#退出目标系统</span></span><br><span class="line"></span><br><span class="line">$ umount -R /mnt</span><br><span class="line"><span class="comment">#卸载/mnt目录</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启并登陆root</span></span><br></pre></td></tr></table></figure><h4 id="五、系统配置："><a href="#五、系统配置：" class="headerlink" title="五、系统配置："></a>五、系统配置：</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><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><span class="line">18</span><br><span class="line">19</span><br><span class="line">20</span><br><span class="line">21</span><br><span class="line">22</span><br><span class="line">23</span><br><span class="line">24</span><br><span class="line">25</span><br><span class="line">26</span><br><span class="line">27</span><br><span class="line">28</span><br><span class="line">29</span><br><span class="line">30</span><br><span class="line">31</span><br><span class="line">32</span><br><span class="line">33</span><br><span class="line">34</span><br><span class="line">35</span><br><span class="line">36</span><br><span class="line">37</span><br><span class="line">38</span><br><span class="line">39</span><br><span class="line">40</span><br><span class="line">41</span><br><span class="line">42</span><br><span class="line">43</span><br><span class="line">44</span><br><span class="line">45</span><br><span class="line">46</span><br><span class="line">47</span><br><span class="line">48</span><br><span class="line">49</span><br><span class="line">50</span><br><span class="line">51</span><br><span class="line">52</span><br><span class="line">53</span><br><span class="line">54</span><br><span class="line">55</span><br><span class="line">56</span><br><span class="line">57</span><br><span class="line">58</span><br><span class="line">59</span><br><span class="line">60</span><br><span class="line">61</span><br><span class="line">62</span><br><span class="line">63</span><br><span class="line">64</span><br><span class="line">65</span><br><span class="line">66</span><br><span class="line">67</span><br><span class="line">68</span><br><span class="line">69</span><br><span class="line">70</span><br><span class="line">71</span><br><span class="line">72</span><br><span class="line">73</span><br><span class="line">74</span><br><span class="line">75</span><br><span class="line">76</span><br><span class="line">77</span><br><span class="line">78</span><br><span class="line">79</span><br><span class="line">80</span><br><span class="line">81</span><br><span class="line">82</span><br><span class="line">83</span><br><span class="line">84</span><br><span class="line">85</span><br><span class="line">86</span><br><span class="line">87</span><br></pre></td><td class="code"><pre><span class="line">$ nmtui</span><br><span class="line"><span class="comment">#运行nmtui（根据图形界面提示进行联网操作即可；台式机可跳过）</span></span><br><span class="line"></span><br><span class="line">$ ping -c 5 archlinux.org</span><br><span class="line"><span class="comment">#检查网络连接（如果有输出内容，即为联网成功）</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/hostname</span><br><span class="line"><span class="comment">#创建/etc/hostname文件，加入以下内容：</span></span><br><span class="line"><span class="built_in">arch</span></span><br><span class="line"><span class="comment">#将主机名设置为arch</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/hosts</span><br><span class="line"><span class="comment">#编辑/etc/hosts文件，在末尾加入以下内容：</span></span><br><span class="line">127.0.0.1 localhost</span><br><span class="line">::1 localhost</span><br><span class="line">127.0.1.1 arch.localdomain <span class="built_in">arch</span></span><br><span class="line"><span class="comment">#配置hosts文件，映射IP地址和主机名</span></span><br><span class="line"></span><br><span class="line">$ <span class="built_in">ln</span> -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime &amp;&amp; hwclock --systohc</span><br><span class="line"><span class="comment">#设置时区为上海（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/environment</span><br><span class="line"><span class="comment">#编辑/etc/environment文件，在开头加入以下内容：</span></span><br><span class="line"><span class="built_in">export</span> EDITOR=/bin/vim</span><br><span class="line"><span class="comment">#设置vim为默认文本编辑器（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启并登陆root</span></span><br><span class="line"></span><br><span class="line">$ useradd -m -G wheel <span class="built_in">arch</span></span><br><span class="line"><span class="comment">#添加普通用户，用户名为arch并将arch添加到wheel组中</span></span><br><span class="line"></span><br><span class="line">$ passwd <span class="built_in">arch</span></span><br><span class="line"><span class="comment">#设置arch密码（注意事项请参考第三阶段的设置root密码部分）</span></span><br><span class="line"></span><br><span class="line">$ <span class="built_in">id</span> <span class="built_in">arch</span></span><br><span class="line"><span class="comment">#查看用户组是否添加到相应的组中</span></span><br><span class="line"></span><br><span class="line">$ visudo</span><br><span class="line"><span class="comment">#设置用户权限，删除%wheel ALL=(ALL:ALL) ALL前面的#</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启并登陆root</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/locale.gen</span><br><span class="line"><span class="comment">#编辑/etc/locale.gen文件，删除en_US.UTF-8 UTF-8和zh_CN.UTF-8 UTF-8前面的#</span></span><br><span class="line"></span><br><span class="line">$ locale-gen</span><br><span class="line"><span class="comment">#生成语言</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/locale.conf</span><br><span class="line"><span class="comment">#创建/etc/locale.conf文件，加入以下内容（如果文件已经存在，则删除文件中原有的内容）：</span></span><br><span class="line">LANG=<span class="string">&quot;en_US.UTF-8&quot;</span></span><br><span class="line"><span class="comment">#设置语言为en_US.UTF-8，不要不要不要设置为zh_CN.UTF-8（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ vim /etc/pacman.conf</span><br><span class="line"><span class="comment">#编辑/etc/pacman.conf文件，删除[multilib]区域的所有#（开启32位支持）并在末尾加入以下内容：</span></span><br><span class="line">[archlinuxcn]</span><br><span class="line">Server = https://mirrors.ustc.edu.cn/archlinuxcn/<span class="variable">$arch</span></span><br><span class="line"><span class="comment">#添加archlinuxcn源（一般推荐使用中科大源；注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ pacman -Sy</span><br><span class="line"><span class="comment">#同步数据</span></span><br><span class="line"></span><br><span class="line">$ pacman -S archlinuxcn-keyring</span><br><span class="line"><span class="comment">#安装archlinuxcn-keyring</span></span><br><span class="line"></span><br><span class="line">$ <span class="built_in">rm</span> -rf /etc/pacman.d/gnupg &amp;&amp; pacman-key --init &amp;&amp; pacman-key --populate archlinux &amp;&amp; pacman-key --populate archlinuxcn</span><br><span class="line"><span class="comment">#生成新的密钥环并重新签署密钥（安装archlinuxcn-keyring不报错时可跳过）</span></span><br><span class="line"></span><br><span class="line">$ pacman -Sy</span><br><span class="line"><span class="comment">#再次同步数据</span></span><br><span class="line"></span><br><span class="line">$ pacman -S mesa xf86-video-amdgpu vulkan-radeon xf86-video-ati opencl-mesa opencl-headers</span><br><span class="line"><span class="comment">#安装AMD核显相关驱动</span></span><br><span class="line"></span><br><span class="line">$ pacman -S mesa xf86-video-intel vulkan-intel opencl-mesa opencl-headers</span><br><span class="line"><span class="comment">#安装intel核显相关驱动</span></span><br><span class="line"></span><br><span class="line">$ pacman -S pipewire pipewire-media-session pipewire-alsa pipewire-pulse pipewire-jack </span><br><span class="line"><span class="comment">#安装声音相关驱动</span></span><br><span class="line"></span><br><span class="line">$ systemctl <span class="built_in">enable</span> bluetooth</span><br><span class="line"><span class="comment">#开机自启bluetooth服务</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启并登陆root</span></span><br></pre></td></tr></table></figure><p><del>So,Nvidia:FuckYou!</del></p><blockquote><p>如有疑问请参考Wiki以下内容：</p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E7%BD%91%E7%BB%9C%E9%85%8D%E7%BD%AE">网络配置</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E6%97%B6%E5%8C%BA">时区</a></p><p><a href="https://wiki.archlinuxcn.org/wiki/%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97#%E6%9C%AC%E5%9C%B0%E5%8C%96">本地化</a></p></blockquote><h4 id="六、安装桌面环境："><a href="#六、安装桌面环境：" class="headerlink" title="六、安装桌面环境："></a>六、安装桌面环境：</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><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></pre></td><td class="code"><pre><span class="line">$ pacman -S ttf-dejavu ttf-liberation noto-fonts noto-fonts-cjk noto-fonts-emoji noto-fonts-emoji-blob noto-fonts-extra wqy-bitmapfont wqy-microhei wqy-microhei-lite wqy-zenhei ttf-arphic-extra ttf-arphic-ukai ttf-arphic-uming adobe-source-code-pro-fonts adobe-source-han-sans-jp-fonts adobe-source-han-sans-tw-fonts adobe-source-han-serif-jp-fonts adobe-source-han-serif-tw-fonts adobe-source-han-sans-cn-fonts adobe-source-han-sans-kr-fonts adobe-source-han-serif-cn-fonts adobe-source-han-serif-kr-fonts adobe-source-sans-fonts adobe-source-han-sans-hk-fonts adobe-source-han-sans-otc-fonts adobe-source-han-serif-hk-fonts adobe-source-han-serif-otc-fonts adobe-source-serif-fonts</span><br><span class="line"><span class="comment">#安装字体（请根据需要自行补充，这里只安装常用的包）</span></span><br><span class="line"></span><br><span class="line">$ pacman -S plasma-meta konsole dolphin</span><br><span class="line"><span class="comment">#安装KDE桌面及软件（这里只安装最必要的包，如果想完整使用KDE的各种功能请根据对应提示安装需要的包）</span></span><br><span class="line"></span><br><span class="line">$ systemctl <span class="built_in">enable</span> sddm</span><br><span class="line"><span class="comment">#开机自启sddm服务</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启</span></span><br></pre></td></tr></table></figure><h2 id="2-桌面中文环境的设置-amp-输入法的安装及配置——"><a href="#2-桌面中文环境的设置-amp-输入法的安装及配置——" class="headerlink" title="2.桌面中文环境的设置 &amp; 输入法的安装及配置——"></a>2.桌面中文环境的设置 &amp; 输入法的安装及配置——</h2><h4 id="一、中文环境的设置："><a href="#一、中文环境的设置：" class="headerlink" title="一、中文环境的设置："></a>一、中文环境的设置：</h4><p>System Settings&gt;&gt;Regional Settings&gt;&gt;Language&gt;&gt;Change Language，<strong>简体中文</strong>&gt;&gt;Apply。</p><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span class="line">2</span><br></pre></td><td class="code"><pre><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启</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><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></pre></td><td class="code"><pre><span class="line">$ vim .xprofile</span><br><span class="line"><span class="comment">#创建~/.xprofile文件，加入以下内容：</span></span><br><span class="line"><span class="built_in">export</span> LANG=zh_CN.UTF-8</span><br><span class="line"><span class="built_in">export</span> LANGUAGE=zh_CN:en_US</span><br><span class="line"><span class="comment">#设置X环境为中文（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启</span></span><br></pre></td></tr></table></figure><h4 id="二、Fcitx-5-输入法的安装："><a href="#二、Fcitx-5-输入法的安装：" class="headerlink" title="二、Fcitx 5 输入法的安装："></a>二、Fcitx 5 输入法的安装：</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><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></pre></td><td class="code"><pre><span class="line">$ sudo pacman -S fcitx5-im fcitx5-chinese-addons</span><br><span class="line"><span class="comment">#安装fcitx5主体、配置工具、输入法引擎及中文输入法模块</span></span><br><span class="line"></span><br><span class="line">$ sudo vim /etc/environment</span><br><span class="line"><span class="comment">#编辑/etc/environment文件，在末尾加入以下内容：</span></span><br><span class="line">GTK_IM_MODULE=fcitx</span><br><span class="line">QT_IM_MODULE=fcitx</span><br><span class="line">SDL_IM_MODULE=fcitx</span><br><span class="line">XMODIFIERS=@im=fcitx</span><br><span class="line"><span class="comment">#配置环境变量（注意大小写）</span></span><br><span class="line"></span><br><span class="line">$ sudo pacman -S fcitx5-pinyin-zhwiki fcitx5-pinyin-moegirl</span><br><span class="line"><span class="comment">#安装词库</span></span><br><span class="line"></span><br><span class="line">$ reboot</span><br><span class="line"><span class="comment">#重启</span></span><br></pre></td></tr></table></figure><h1 id="END（想再看一遍本教程吗？那就请在终端中输入sudo-rm-rf-，你会回来的。）"><a href="#END（想再看一遍本教程吗？那就请在终端中输入sudo-rm-rf-，你会回来的。）" class="headerlink" title="END（想再看一遍本教程吗？那就请在终端中输入sudo rm -rf /*，你会回来的。）"></a>END<del>（想再看一遍本教程吗？那就请在终端中输入sudo rm -rf /*，你会回来的。）</del></h1>]]></content>
    
    
      
      
    <summary type="html">&lt;h1 id=&quot;Arch-Linux安装教程-（以Legacy-BIOS为例）-最后更新于2023年01月06日&quot;&gt;&lt;a href=&quot;#Arch-Linux安装教程-（以Legacy-BIOS为例）-最后更新于2023年01月06日&quot; class=&quot;headerlink&quot; tit</summary>
      
    
    
    
    <category term="教程" scheme="https://jinghuashang.cn/categories/%E6%95%99%E7%A8%8B/"/>
    
    
    <category term="计算机" scheme="https://jinghuashang.cn/tags/%E8%AE%A1%E7%AE%97%E6%9C%BA/"/>
    
    <category term="Arch Linux" scheme="https://jinghuashang.cn/tags/Arch-Linux/"/>
    
    <category term="系统" scheme="https://jinghuashang.cn/tags/%E7%B3%BB%E7%BB%9F/"/>
    
  </entry>
  
  <entry>
    <title>Arknights</title>
    <link href="https://jinghuashang.cn/posts/a2cc.html"/>
    <id>https://jinghuashang.cn/posts/a2cc.html</id>
    <published>2021-08-27T13:27:45.000Z</published>
    <updated>2024-04-25T03:16:03.935Z</updated>
    
    <content type="html"><![CDATA[<h2 id="官网"><a href="#官网" class="headerlink" title="官网"></a>官网</h2><p>前往 <a href="https://ak.hypergryph.com/">明日方舟</a> 官网</p><h2 id="游戏介绍"><a href="#游戏介绍" class="headerlink" title="游戏介绍"></a>游戏介绍</h2><h3 id="背景"><a href="#背景" class="headerlink" title="背景"></a>背景</h3><p>起因不明并四处肆虐的天灾，席卷过的土地上出现了大量的神秘矿物——被人们称为“源石”。虽然源石的发现历史已久，但是依赖于技术的进步，其蕴含的能量使得文明顺利迈入现代，但与此同时，源石本身也催生出“感染者”的存在。</p><p>身俱力量与不幸的存在，如今他们中的一部分，妄图与源石整合为一，为大地带来新的秩序。这场战火阴谋是我们对抗天灾遇到的新的阻碍。</p><p>你将作为罗德岛的一员，与罗德岛公开领导人阿米娅一同，雇佣人员频繁进入天灾影响后的高危地区，救助受难人群，处理矿石争端，以及对抗整合运动——</p><p>“罗德岛”的战术头脑，你准备好了吗？</p><h3 id="tag"><a href="#tag" class="headerlink" title="tag"></a>tag</h3><p>策略 末世 二次元 </p><h3 id="详细信息"><a href="#详细信息" class="headerlink" title="详细信息"></a>详细信息</h3><p>游戏名称：明日方舟<br>平台版本：Android、iOS、PC<br>开发商：<br><img src="https://img.jinghuashang.cn/blog/R-C.png" alt="鹰角网络"></p><h3 id="游戏截图"><a href="#游戏截图" class="headerlink" title="游戏截图"></a>游戏截图</h3><figure class="fp-gallery" style="--fp-cols:2"><p><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190757.jpg" alt="登录界面"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190755.jpg" alt="登录界面"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190753.jpg" alt="主界面"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190723.jpg" alt="好友界面"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190733.jpg" alt="助战界面"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190749.jpg" alt="干员详细"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190750.jpg" alt="队伍配置"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190735.jpg" alt="公招界面"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190747.jpg" alt="干员寻访"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190743.jpg" alt="仓库界面"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190738.jpg" alt="基建系统"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190740.jpg" alt="作战终端"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190727.jpg" alt="皮肤商店"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190731.jpg" alt="作战"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190729.jpg" alt="作战队伍配置"><br><img src="https://img.jinghuashang.cn/blog/QQ%E5%9B%BE%E7%89%8720220815190706.jpg" alt="代理作战"></p></figure><p>多的就不再一一展示了</p><h1 id="三年游玩"><a href="#三年游玩" class="headerlink" title="三年游玩"></a>三年游玩</h1><p>从2021年入坑到现在有3年的样子了，到现在差不多是养老的玩法了，新活动抄作业，新限定抽抽抽。</p><p>那我来谈谈我对方舟的看法</p><p>这款游戏的设计巧妙地融合了二次元文化的元素，吸引了大量喜爱动漫风格的玩家。塔防玩法的策略性和互动性，使得游戏本身在玩家群体中拥有持续的热度。<br>不仅如此，游戏的美工设计同样令人赞叹，无论是角色设计、场景布局还是细节处理，都体现了高水平的艺术审美和技术实力。游戏中的角色各具特色，风格迥异，无论是喜欢可爱风、酷炫风还是传统和风的角色，玩家都能在这款游戏中找到自己的心头好。<br>这种多元化的角色设计，不仅丰富了游戏的世界观，也增强了玩家的沉浸感和归属感。总的来说，这款游戏在满足二次元玩家需求的同时，也凭借其精美的美工和深入人心的角色设计，赢得了广泛的玩家认可。</p><p>比如我就喜欢其中的 [年]</p><figure class="fp-gallery" style="--fp-cols:2"><p><img src="https://img.jinghuashang.cn/images/a2cc/239c306e0a0bfa62d074b1b883ec4494.webp" alt="乐逍遥"><br><img src="https://img.jinghuashang.cn/images/a2cc/6dedf1733b7a8f5b67dcf665f996865f.webp" alt="原皮"></p></figure><p>鹰角网络，以其在塔防游戏领域的杰出成就而知名，但其游戏音乐同样令人印象深刻，甚至被玩家们赞誉为“音角网络”。<br>这个别称不仅体现了玩家对鹰角网络音乐质量的认可，也反映了他们在音乐创作上的独到见解和广泛影响。<br>尽管这些音乐作品主要是为游戏服务的，但它们的风格和种类之丰富，几乎能满足所有玩家的音乐偏好。<br>从古典的旋律到现代的节奏，从轻松的背景音乐到激昂的战斗配乐，鹰角网络的音乐作品跨越了多种流派，展现了对音乐艺术的深刻理解和尊重。<br>因此，玩家们常常戏称鹰角网络不仅仅是一家游戏公司，更是一家被游戏事业耽误的音乐巨头。</p><p>鹰角网络的音乐部分为 —— <a href="https://monster-siren.hypergryph.com/">塞壬唱片</a></p><blockquote><p>塞壬唱片是上海鹰角网络科技有限公司旗下的一个音乐项目，它以其多样化和创新性的音乐作品而闻名。这个项目提供了一个平台，展示了一系列不同风格的音乐，从而反映了鹰角网络在游戏音乐领域的深厚实力和广泛影响力。塞壬唱片的音乐种类繁多，能够满足不同玩家的口味，这也是为什么许多网友戏称鹰角网络为“音角网络”，认为它是一个被游戏耽误的音乐公司。通过这个平台，鹰角网络不仅展示了其在音乐制作上的专业能力，还表达了对艺术多样性的尊重和推崇。</p></blockquote><div class="fp-site-group"><a class="fp-site-card" href="https://monster-siren.hypergryph.com/," target="_blank" rel="noopener"><span class="fp-site-card__shot" style="background-image:url('https://img.jinghuashang.cn/images/a2cc/hypergryph.webp,')"></span><span class="fp-site-card__body"><img class="fp-site-card__avatar" src="https://img.jinghuashang.cn/images/a2cc/share_logo.b11ee809.webp," alt=""><span class="fp-site-card__title">塞壬唱片,</span><span class="fp-site-card__desc">塞壬唱片</span></span></a></div>]]></content>
    
    
      
      
    <summary type="html">&lt;h2 id=&quot;官网&quot;&gt;&lt;a href=&quot;#官网&quot; class=&quot;headerlink&quot; title=&quot;官网&quot;&gt;&lt;/a&gt;官网&lt;/h2&gt;&lt;p&gt;前往 &lt;a href=&quot;https://ak.hypergryph.com/&quot;&gt;明日方舟&lt;/a&gt; 官网&lt;/p&gt;
&lt;h2 id=&quot;游戏介绍&quot;&gt;</summary>
      
    
    
    
    <category term="分享" scheme="https://jinghuashang.cn/categories/%E5%88%86%E4%BA%AB/"/>
    
    
    <category term="游戏" scheme="https://jinghuashang.cn/tags/%E6%B8%B8%E6%88%8F/"/>
    
    <category term="arknights" scheme="https://jinghuashang.cn/tags/arknights/"/>
    
  </entry>
  
  <entry>
    <title>关于本站</title>
    <link href="https://jinghuashang.cn/posts/c437.html"/>
    <id>https://jinghuashang.cn/posts/c437.html</id>
    <published>2021-02-14T14:36:22.000Z</published>
    <updated>2023-09-17T07:43:41.816Z</updated>
    
    <content type="html"><![CDATA[<h2 id="本站简介"><a href="#本站简介" class="headerlink" title="本站简介"></a>本站简介</h2><p>enm….<br>其实吧，也没啥简介的，就是一个咸鱼高中生的博客<br>平常没事分享分享好玩的，嘿嘿<br>不过作为一个arch教徒，咱也宣传宣传arch<br>对了，咱是个粥游人，官服Dr.悸#4104</p><h2 id="END"><a href="#END" class="headerlink" title="END"></a>END</h2><hr>]]></content>
    
    
      
      
    <summary type="html">&lt;h2 id=&quot;本站简介&quot;&gt;&lt;a href=&quot;#本站简介&quot; class=&quot;headerlink&quot; title=&quot;本站简介&quot;&gt;&lt;/a&gt;本站简介&lt;/h2&gt;&lt;p&gt;enm….&lt;br&gt;其实吧，也没啥简介的，就是一个咸鱼高中生的博客&lt;br&gt;平常没事分享分享好玩的，嘿嘿&lt;br&gt;不过作为一个ar</summary>
      
    
    
    
    <category term="生活" scheme="https://jinghuashang.cn/categories/%E7%94%9F%E6%B4%BB/"/>
    
    
  </entry>
  
</feed>
