<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <id>https://moyuspace.icu/</id>
  <title type="text">沫雨的小窝</title>
  <subtitle type="text">一个记录生活的小站</subtitle>
  <updated>2026-10-17T00:00:00.000Z</updated>
  <author><name>沫雨</name></author>
  <link rel="alternate" href="https://moyuspace.icu/"/>
  <link rel="self" href="https://moyuspace.icu/atom.xml"/>
  <generator uri="https://github.com/CuteLeaf/Firefly">Firefly v6.16.8</generator>
    <entry>
      <id>https://moyuspace.icu/posts/oc-design/</id>
      <title type="text">OC 设定卡 · 沫雨</title>
      <published>2026-10-15T00:00:00.000Z</published>
      <updated>2026-10-15T00:00:00.000Z</updated>
      <author><name>沫雨</name></author>
      <link rel="alternate" href="https://moyuspace.icu/posts/oc-design/"/>
      <summary type="text">OC 设定卡 · 沫雨，一个非常有特点的 OC 设定卡。</summary>
      <content type="html"><![CDATA[<section><h1>OC 设定卡 · 沫雨<a href="#oc-设定卡--沫雨"><span>#</span></a></h1><section><h2>1. 基本信息<a href="#1-基本信息"><span>#</span></a></h2>

<table><thead><tr><th>项</th><th>内容</th></tr></thead><tbody><tr><td>姓名</td><td>沫雨</td></tr><tr><td>性别</td><td>女</td></tr><tr><td>年龄</td><td>17岁</td></tr><tr><td>身高体重</td><td>158cm；48kg；</td></tr><tr><td>星座</td><td>她不知道，也没有人告诉过她</td></tr><tr><td>名字来由</td><td>「沫」= 水之末、浮沫；「雨」= 落下的水。合起来是一种雨的名字——细到像浮沫，落在人身上不湿衣服。</td></tr><tr><td></td><td></td></tr></tbody></table></section><section><h2>2. 外观与记忆点<a href="#2-外观与记忆点"><span>#</span></a></h2><section><h3>头发<a href="#头发"><span>#</span></a></h3><ul>
<li>半透明的浅青蓝色短发，齐耳、发尾微翘；</li>
<li><strong>左耳后方一小撮翘起、永远干着的呆毛</strong></li>
</ul></section><section><h3>眼睛<a href="#眼睛"><span>#</span></a></h3><ul>
<li><strong>左眼「贝眼」</strong>：瞳孔是珍珠母虹彩（暗银白底，斜光下浮出贝壳内壁的蓝紫—粉绿游色）。<strong>对光敏感</strong></li>
<li><strong>右眼「雨眼」</strong>：瞳孔积雨云灰。<strong>哭前会先变成米白色</strong></li>
</ul></section><section><h3>服装<a href="#服装"><span>#</span></a></h3><p>第一原则是<strong>防水</strong>：米白色短雨披（披肩式）；内穿黑色背带短裙</p><p>脚下是一双<strong>不合脚、大一码的雨靴</strong></p></section><section><h3>配色<a href="#配色"><span>#</span></a></h3><p>头发</p><p><code>#A8C6C9</code>头发颜色 ；#98b8c4头发颜色 ；#bacdd4头发颜色 ；</p><p>左眼</p><p>#8570a0左眼颜色；#e7d8f8 左眼颜色 ；#8575b9左眼颜色；</p><p>右眼</p><p>#b0c1db右眼颜色；#c7ddec右眼颜色；#6691c8右眼颜色；</p></section><section><h3>标志性元素<a href="#标志性元素"><span>#</span></a></h3><ol>
<li><strong>贝壳</strong>——大小不一的贝壳</li>
</ol></section></section><section><h2>性格<a href="#性格"><span>#</span></a></h2></section></section>]]></content>
    </entry>
    <entry>
      <id>https://moyuspace.icu/posts/oc-design-guide/</id>
      <title type="text">OC 设定全流程指南</title>
      <published>2026-10-17T00:00:00.000Z</published>
      <updated>2026-10-17T00:00:00.000Z</updated>
      <author><name>沫雨</name></author>
      <link rel="alternate" href="https://moyuspace.icu/posts/oc-design-guide/"/>
      <summary type="text">从一句话概念到完整角色档案的 16 步流程，覆盖用途边界、世界观定位、外貌、性格结构、欲望与恐惧、经历、能力限制到关系网，并附可复制的设定模板与避坑清单。按章节从上往下做即可，不必一次填满。</summary>
      <content type="html"><![CDATA[<section><h1>OC（原创角色）设定全流程指南<a href="#oc原创角色设定全流程指南"><span>#</span></a></h1><blockquote><p>适用范围：原创角色创作、个人
OC、小说/漫画/游戏角色、世界观角色、角色立绘委托与长期设定维护。
使用方式：按章节从上到下完成；不必一次填满。先做”能行动、能选择、会变化”的角色，再逐步补充外观、经历与细节。</p></blockquote><hr /><section><h2>目录<a href="#目录"><span>#</span></a></h2><ol>
<li>OC 设定的核心原则</li>
<li>全流程总览</li>
<li>第一步：确定角色用途与创作边界</li>
<li>第二步：一句话概念与核心卖点</li>
<li>第三步：世界观与角色位置</li>
<li>第四步：身份档案</li>
<li>第五步：外貌与视觉设计</li>
<li>第六步：性格结构</li>
<li>第七步：欲望、需求、恐惧与矛盾</li>
<li>第八步：背景经历与关键事件</li>
<li>第九步：能力、技能与限制</li>
<li>第十步：关系网与互动逻辑</li>
<li>第十一步：日常习惯、偏好与细节</li>
<li>第十二步：角色弧光与剧情功能</li>
<li>第十三步：台词、语气与表达方式</li>
<li>第十四步：视觉参考与立绘需求</li>
<li>第十五步：一致性检查与压力测试</li>
<li>第十六步：整理成正式角色档案</li>
<li>可复制的 OC 设定模板</li>
<li>示例：从概念到完整角色</li>
<li>常见问题与避坑清单</li>
<li>最终检查表</li>
</ol><hr /></section><section><h2>1. OC 设定的核心原则<a href="#1-oc-设定的核心原则"><span>#</span></a></h2><p>OC 是 Original
Character（原创角色）的简称。设定不只是”长什么样、喜欢什么、有什么能力”，更重要的是：<strong>这个角色为什么会这样想、这样做，以及在不同情境下会怎样选择。</strong></p><p>一个容易写活的角色，通常具备以下几层：</p><ul>
<li><strong>辨识度</strong>：别人能用一两个特征记住 TA。</li>
<li><strong>内在逻辑</strong>：行为背后有原因，性格不是随机拼贴。</li>
<li><strong>欲望与阻碍</strong>：TA 想得到某样东西，但并非轻易就能得到。</li>
<li><strong>矛盾性</strong>：角色可能嘴硬心软、渴望亲近却害怕依赖，或理性却会为某件事失控。</li>
<li><strong>限制与代价</strong>：能力不是万能的，选择也会付出代价。</li>
<li><strong>可变化性</strong>：经历会影响 TA，角色可以成长、退步、妥协或彻底改变。</li>
<li><strong>可持续创作</strong>：设定能支持日常互动、剧情、关系发展或视觉创作，而不只是一个漂亮的简介。</li>
</ul><section><h3>先记住三条<a href="#先记住三条"><span>#</span></a></h3><ol>
<li><strong>先定核心，再补细节。</strong>
不要一开始就花几个小时决定袜子的颜色，却不知道角色最想要什么。</li>
<li><strong>设定服务于表达。</strong>
每个细节不必都有深层含义，但重要细节最好能帮助塑造角色。</li>
<li><strong>留白是允许的。</strong>
不知道的地方可以标为”待定”，不要为了填满表格而硬编。</li>
</ol><hr /></section></section><section><h2>2. 全流程总览<a href="#2-全流程总览"><span>#</span></a></h2><p>建议按以下顺序推进：</p><ol>
<li>明确创作用途和题材。</li>
<li>写出一句话概念。</li>
<li>确定角色在世界中的位置。</li>
<li>建立基础身份档案。</li>
<li>设计外貌、配色、服装和标志物。</li>
<li>建立性格结构和行为逻辑。</li>
<li>确定目标、需求、恐惧和内在矛盾。</li>
<li>设计背景经历与关键事件。</li>
<li>设定能力、弱点、资源和限制。</li>
<li>建立关系网。</li>
<li>补充日常习惯、偏好和小动作。</li>
<li>规划角色弧光或长期变化。</li>
<li>写出台词样本。</li>
<li>整理视觉参考或立绘需求。</li>
<li>进行一致性与场景测试。</li>
<li>整理成正式档案，并保留版本记录。</li>
</ol><p><strong>推荐做法：</strong>
第一轮只完成每一项的核心答案；第二轮再扩充细节；第三轮通过具体场景验证设定是否成立。</p><hr /></section><section><h2>3. 第一步：确定角色用途与创作边界<a href="#3-第一步确定角色用途与创作边界"><span>#</span></a></h2><p>先问自己：这个 OC 是为哪一种创作而存在的？</p><section><h3>3.1 用途选择<a href="#31-用途选择"><span>#</span></a></h3><ul>
<li> 主要用于画图、立绘、头像或视觉展示</li>
<li> 主要用于小说、漫画或剧本</li>
<li> 主要用于跑团、游戏或互动叙事</li>
<li> 主要用于角色扮演、聊天或关系互动</li>
<li> 主要用于世界观设定</li>
<li> 主要是个人喜好与长期陪伴型 OC</li>
<li> 其他：__________</li>
</ul><p>用途会影响设定重点。例如，视觉展示型 OC
需要明确的轮廓、配色和标志物；剧情型 OC
需要清楚的目标、冲突和选择逻辑；互动型 OC
则要有稳定的表达习惯与关系边界。</p></section><section><h3>3.2 题材与基调<a href="#32-题材与基调"><span>#</span></a></h3><p>填写：</p><ul>
<li>题材：现代 / 奇幻 / 科幻 / 校园 / 悬疑 / 恐怖 / 末世 / 古风 / 其他</li>
<li>整体基调：轻松 / 治愈 / 日常 / 浪漫 / 阴郁 / 残酷 / 荒诞 / 史诗</li>
<li>现实程度：现实主义 / 轻度超现实 / 高幻想 / 完全架空</li>
<li>受众与尺度：全年龄 / 青少年向 / 成人向（涉及敏感内容时需谨慎处理）</li>
<li>角色在故事中的地位：主角 / 配角 / 反派 / 对照角色 / 独立设定</li>
<li>创作边界：哪些内容不想涉及？哪些内容可以探索？</li>
</ul></section><section><h3>3.3 定义创作目标<a href="#33-定义创作目标"><span>#</span></a></h3><p>用一到三句话回答：</p><ul>
<li>我为什么想创作这个角色？</li>
<li>我希望别人看到 TA 时，首先感受到什么？</li>
<li>我最想画、写或体验 TA 的哪一面？</li>
</ul><p><strong>产出物：</strong> 一张”创作方向卡”。</p><hr /></section></section><section><h2>4. 第二步：一句话概念与核心卖点<a href="#4-第二步一句话概念与核心卖点"><span>#</span></a></h2><p>在扩写之前，先用一句话说清楚角色。</p><section><h3>4.1 一句话公式<a href="#41-一句话公式"><span>#</span></a></h3><p>可以套用：</p><blockquote><p>一个【身份/处境】的【角色类型】，因为【核心欲望或问题】，不得不【行动或面对冲突】；TA
最特别的地方是【反差/独特机制】。</p></blockquote><p>示例：</p><blockquote><p>一个能听见旧物记忆的年轻修复师，为了找回失踪姐姐的线索不断修复遗物，却唯独不敢触碰姐姐留下的最后一件物品。</p></blockquote><p>这句话包含身份、能力、目标、阻碍和情绪钩子，比”神秘、温柔、强大”更能支持后续创作。</p></section><section><h3>4.2 核心卖点拆解<a href="#42-核心卖点拆解"><span>#</span></a></h3><p>从以下维度选出最重要的 1---3 项：</p><ul>
<li>外观卖点：浅青绿短发、旧式耳机、总带着透明雨伞。</li>
<li>性格卖点：礼貌疏离，却会记住别人随口提过的小事。</li>
<li>能力卖点：能听见旧物的片段记忆，但无法判断记忆是否真实。</li>
<li>关系卖点：与某人互相依赖，却都不愿承认。</li>
<li>主题卖点：记忆、告别、身份、自由、责任、归属。</li>
<li>反差卖点：外表冷静，遇到小动物就手足无措。</li>
</ul></section><section><h3>4.3 角色关键词<a href="#43-角色关键词"><span>#</span></a></h3><p>选 3 个主要关键词、2 个反差关键词：</p><ul>
<li>主要关键词：__________ / __________ /
__________</li>
<li>反差关键词：__________ / __________</li>
</ul><p>避免只写”温柔、强大、神秘、善良”等泛化词。尽量写成可观察的表现，例如”很少主动安慰，但会默默解决对方的问题”。</p><p><strong>产出物：</strong> 一句话概念 + 五个关键词。</p><hr /></section></section><section><h2>5. 第三步：世界观与角色位置<a href="#5-第三步世界观与角色位置"><span>#</span></a></h2><p>角色必须存在于某种环境中。环境决定什么是正常、危险、稀有、违法或值得追求的。</p><section><h3>5.1 世界观基础<a href="#51-世界观基础"><span>#</span></a></h3><ul>
<li>时间与地点：__________</li>
<li>社会结构：__________</li>
<li>科技/魔法水平：__________</li>
<li>日常生活方式：__________</li>
<li>主要规则：__________</li>
<li>禁忌与危险：__________</li>
<li>普通人如何看待角色的身份或能力：__________</li>
</ul><p>不需要先创造完整宇宙。只要写清楚会影响角色生活的规则即可。</p></section><section><h3>5.2 角色在社会中的位置<a href="#52-角色在社会中的位置"><span>#</span></a></h3><ul>
<li>TA 属于哪个群体？</li>
<li>TA 有什么身份、权限或社会资源？</li>
<li>TA 受到什么制度、传统或环境限制？</li>
<li>TA 是否被误解、被需要、被排斥或被崇拜？</li>
<li>如果 TA 离开当前环境，会失去什么？</li>
</ul></section><section><h3>5.3 设定规则要能被验证<a href="#53-设定规则要能被验证"><span>#</span></a></h3><p>例如，若世界中的能力需要付出代价，就要回答：</p><ul>
<li>代价是什么？</li>
<li>谁知道这个规则？</li>
<li>规则有没有例外？</li>
<li>角色能否规避代价？</li>
<li>规避代价会产生什么后果？</li>
</ul><p><strong>产出物：</strong> 一页以内的世界观摘要，以及角色在其中的位置。</p><hr /></section></section><section><h2>6. 第四步：身份档案<a href="#6-第四步身份档案"><span>#</span></a></h2><p>基础档案用于快速查阅，不必把所有信息都写成故事。</p><section><h3>6.1 基本资料<a href="#61-基本资料"><span>#</span></a></h3><ul>
<li>姓名：__________</li>
<li>别名 / 绰号：__________</li>
<li>姓名含义与来源：__________</li>
<li>年龄或外表年龄：__________</li>
<li>生日：__________</li>
<li>性别 / 性别表达（如有需要）：__________</li>
<li>代词 / 称呼习惯：__________</li>
<li>种族 / 物种：__________</li>
<li>身高：__________</li>
<li>常住地：__________</li>
<li>职业 / 身份：__________</li>
<li>所属组织：__________</li>
<li>语言：__________</li>
<li>社会身份：__________</li>
<li>当前状态：__________</li>
</ul></section><section><h3>6.2 名字怎么取<a href="#62-名字怎么取"><span>#</span></a></h3><p>可以从这些方向寻找灵感：</p><ol>
<li><strong>语义</strong>：名字是否与主题、愿望或家族有关？</li>
<li><strong>音感</strong>：名字听起来是柔和、锐利、古典还是现代？</li>
<li><strong>文化背景</strong>：名字是否符合角色所在地区与时代？</li>
<li><strong>辨识度</strong>：是否容易与其他角色混淆？</li>
<li><strong>使用情境</strong>：不同人物会如何称呼
TA？全名、昵称、代号是否带有关系差异？</li>
</ol><p>不必强行让名字暗示命运。名字也可以来自家人偏好、时代流行或偶然事件。</p></section><section><h3>6.3 档案中的”确定度”<a href="#63-档案中的确定度"><span>#</span></a></h3><p>为设定标记状态：</p><ul>
<li><strong>确定</strong>：已经决定，后续尽量保持一致。</li>
<li><strong>暂定</strong>：目前可用，未来可能调整。</li>
<li><strong>待定</strong>：还没想好，不影响当前创作。</li>
<li><strong>秘密</strong>：角色或读者暂时不知道，但作者有答案。</li>
<li><strong>开放</strong>：刻意不定义，留给互动或剧情发展。</li>
</ul><p><strong>产出物：</strong> 基础身份表。</p><hr /></section></section><section><h2>7. 第五步：外貌与视觉设计<a href="#7-第五步外貌与视觉设计"><span>#</span></a></h2><p>视觉设计的目标不是把所有喜欢的元素堆在一起，而是让外貌传达角色的身份、气质与故事。</p><section><h3>7.1 从整体轮廓开始<a href="#71-从整体轮廓开始"><span>#</span></a></h3><p>先不画细节，只用几句话描述剪影：</p><ul>
<li>远远看过去，TA 的轮廓是什么样？</li>
<li>身形偏轻盈、厚重、挺拔、松弛还是不对称？</li>
<li>最容易被认出的部位是什么？</li>
<li>角色站立时习惯挺直、缩肩、重心偏移，还是随时准备行动？</li>
</ul></section><section><h3>7.2 面部与身体特征<a href="#72-面部与身体特征"><span>#</span></a></h3><ul>
<li>脸型：圆、长、窄、方、柔和、棱角分明</li>
<li>眼型与眼神：上挑、下垂、圆润、疲惫、锐利、游离</li>
<li>瞳色：主色、辅色、特殊纹理或变化条件</li>
<li>眉毛：浓淡、形状、是否常皱眉</li>
<li>鼻口：整体风格与表情特征</li>
<li>肤色与质感：自然、苍白、雀斑、伤痕、纹路等</li>
<li>发型：长度、层次、发量、刘海、发尾形状</li>
<li>身形：高矮、比例、体态、肌肉量（根据风格需要）</li>
<li>特殊特征：角、尾巴、耳朵、义肢、胎记、纹身、伤疤等</li>
</ul><p>每一个特殊特征最好有设计理由，哪怕只是审美理由。若特征影响生活或行动，也要考虑其实际后果。</p></section><section><h3>7.3 配色方案<a href="#73-配色方案"><span>#</span></a></h3><p>建议先用 3---5 个颜色建立配色系统：</p><ul>
<li>主色：__________</li>
<li>辅色：__________</li>
<li>强调色：__________</li>
<li>中性色：__________</li>
<li>特殊光效色（如适用）：__________</li>
</ul><p>可用 60/30/10 的粗略比例帮助控制画面：主色约占 60%，辅色约占
30%，强调色约占 10%。这不是硬规则，只是避免颜色互相争抢注意力的起点。</p><p>配色时检查：</p><ul>
<li>缩小成头像后是否仍有辨识度？</li>
<li>黑白剪影或灰度下是否能分清主要区域？</li>
<li>发色、眼睛、服装是否互相竞争？</li>
<li>配色是否符合角色生活环境与维护条件？</li>
</ul></section><section><h3>7.4 服装与装备<a href="#74-服装与装备"><span>#</span></a></h3><p>不要只写”黑色外套、白色衬衫”。补充服装如何服务角色：</p><ul>
<li>服装风格：__________</li>
<li>主要材质：__________</li>
<li>常穿搭配：__________</li>
<li>工作 / 战斗 / 正式 / 居家服装：__________</li>
<li>穿着习惯：整齐、随意、层叠、偏好宽松或贴身？</li>
<li>服装来源：购买、制服、继承、自己制作、任务配发？</li>
<li>实用性：是否方便移动、隐藏物品、抵御天气？</li>
<li>维护方式：是否会清洗、修补、替换？</li>
<li>标志性配件：__________</li>
</ul></section><section><h3>7.5 标志物与象征元素<a href="#75-标志物与象征元素"><span>#</span></a></h3><p>选择 1---3 个反复出现的视觉元素即可：</p><ul>
<li>物件：耳机、钥匙、旧相机、怀表、纸鹤</li>
<li>图形：水滴、裂纹、月相、羽毛、几何符号</li>
<li>自然意象：雨、雾、海、苔藓、星光、枯枝</li>
<li>质感：玻璃、磨损金属、旧纸、针织布、陶瓷</li>
</ul><p>问自己：它是纯装饰、个人喜好、身份标记、纪念物，还是剧情道具？不同答案都可以，但不要让每件饰品都承载沉重秘密。</p></section><section><h3>7.6 外貌设计简报<a href="#76-外貌设计简报"><span>#</span></a></h3><p>可以这样写给未来的自己或画师：</p><blockquote><p>整体印象：__________<br />
轮廓重点：__________<br />
面部重点：__________<br />
发型与发色：__________<br />
配色：__________<br />
服装结构：__________<br />
标志物：__________<br />
不希望出现的元素：__________<br />
必须保留的特征：__________</p></blockquote><p><strong>产出物：</strong> 外貌描述、配色表、服装方案和至少一个可辨识的视觉锚点。</p><hr /></section></section><section><h2>8. 第六步：性格结构<a href="#8-第六步性格结构"><span>#</span></a></h2><p>性格不只是形容词。更有效的写法是说明角色在什么情况下会怎么做。</p><section><h3>8.1 表层性格与内在性格<a href="#81-表层性格与内在性格"><span>#</span></a></h3><p>分别回答：</p><ul>
<li>初次见面时，别人会如何评价 TA？</li>
<li>熟悉之后，别人会发现什么？</li>
<li>TA 自己认为自己是什么样的人？</li>
<li>TA 最不愿承认的性格缺点是什么？</li>
</ul><p>表层和内在不一定相反。例如，一个人可以表里都温柔，但表面礼貌与真正愿意承担责任，是两回事。</p></section><section><h3>8.2 性格维度<a href="#82-性格维度"><span>#</span></a></h3><p>按需要选择，不必每项都写：</p><ul>
<li>外向 / 内向：__________</li>
<li>冲动 / 谨慎：__________</li>
<li>理性 / 感性：__________</li>
<li>直接 / 委婉：__________</li>
<li>信任他人 / 保持戒备：__________</li>
<li>计划型 / 即兴型：__________</li>
<li>竞争型 / 合作型：__________</li>
<li>情绪表达：外露 / 克制 / 延迟爆发 / 难以识别</li>
<li>冲突处理：回避 / 争辩 / 解决问题 / 冷处理 / 寻求第三方</li>
</ul><p>这些维度不是诊断，也不是固定分类，只是帮助观察角色的倾向。</p></section><section><h3>8.3 把形容词转成行为<a href="#83-把形容词转成行为"><span>#</span></a></h3><p>抽象形容词   可观察的行为</p><hr /><p>温柔         会记住他人的需求，但不一定擅长安慰
冷淡         很少主动开启话题，却会认真回应具体问题
聪明         能快速发现规律，但可能忽略情绪因素
骄傲         不愿求助，失败后更倾向独自练习
胆小         会预先规划退路，但在关键时刻仍可能行动
善良         即使没有回报，也会在某些底线上帮助别人
控制欲强     习惯提前安排细节，面对不确定性时容易焦躁</p></section><section><h3>8.4 性格的边界<a href="#84-性格的边界"><span>#</span></a></h3><p>为角色设定：</p><ul>
<li>TA 可以接受什么？</li>
<li>TA 会对什么生气？</li>
<li>什么事情会让 TA 感到羞耻？</li>
<li>TA 在压力下会变得怎样？</li>
<li>TA 对陌生人、朋友、亲密对象、敌人分别有什么表现？</li>
<li>哪种行为会让 TA 彻底失去信任？</li>
<li>TA 有什么优点会在过度使用时变成缺点？</li>
</ul><p><strong>产出物：</strong> 3---5 个主要性格特征，每个特征都配一个行为例子。</p><hr /></section></section><section><h2>9. 第七步：欲望、需求、恐惧与矛盾<a href="#9-第七步欲望需求恐惧与矛盾"><span>#</span></a></h2><p>这是让角色有动力的核心章节。</p><section><h3>9.1 外在目标与内在需求<a href="#91-外在目标与内在需求"><span>#</span></a></h3><ul>
<li><strong>外在目标</strong>：角色明确想完成的事，例如找到某个人、赢得比赛、偿还债务。</li>
<li><strong>内在需求</strong>：角色真正需要学会或接受的事，例如信任他人、承认自己的脆弱、放下控制。</li>
<li><strong>错误信念</strong>：角色因为过去经历而相信的某种规则，例如”只要不依赖别人，就不会被抛弃”。</li>
<li><strong>真实问题</strong>：这个信念如何限制 TA 的生活？</li>
</ul><p>示例：</p><ul>
<li>外在目标：找到失踪的姐姐。</li>
<li>内在需求：接受自己无法控制所有人的去留。</li>
<li>错误信念：只要收集到足够多的线索，就能避免再次失去亲人。</li>
<li>代价：TA 不愿与活着的人建立关系，把全部时间投入过去。</li>
</ul></section><section><h3>9.2 恐惧与防御机制<a href="#92-恐惧与防御机制"><span>#</span></a></h3><p>恐惧不一定是”怕黑、怕虫”。也可以是害怕失去自主权、被看穿、成为负担、被遗忘、无法证明自己。</p><p>填写：</p><ul>
<li>TA 最害怕发生什么？</li>
<li>TA 会用什么方式保护自己？</li>
<li>这种保护方式曾经帮过 TA 什么？</li>
<li>现在它又造成了什么问题？</li>
<li>在什么情况下，防御机制会失效？</li>
</ul></section><section><h3>9.3 内在矛盾公式<a href="#93-内在矛盾公式"><span>#</span></a></h3><blockquote><p>TA 想要【A】，却相信【B】，因此总是做出【C】，结果反而失去【D】。</p></blockquote><p>示例：</p><blockquote><p>TA
想要被理解，却相信暴露弱点会被利用，因此总是假装什么都能处理，结果让真正关心
TA 的人无法靠近。</p></blockquote></section><section><h3>9.4 道德底线与取舍<a href="#94-道德底线与取舍"><span>#</span></a></h3><ul>
<li>TA 绝不会做什么？</li>
<li>如果为了目标必须越过底线，TA 会怎么选？</li>
<li>TA 可以原谅别人什么？</li>
<li>TA 最不能原谅自己什么？</li>
<li>当两种重要价值发生冲突时，TA 优先保护哪一个？</li>
</ul><p>不要只用”善良”或”邪恶”定义角色。更有意思的是角色在利益、责任、亲情、自由和生存之间如何取舍。</p><p><strong>产出物：</strong> 外在目标、内在需求、错误信念、恐惧、防御机制、底线。</p><hr /></section></section><section><h2>10. 第八步：背景经历与关键事件<a href="#10-第八步背景经历与关键事件"><span>#</span></a></h2><p>背景不是把角色从出生到现在的每一天都写出来，而是找出哪些经历真正塑造了现在的
TA。</p><section><h3>10.1 时间线结构<a href="#101-时间线结构"><span>#</span></a></h3><p>可以按以下阶段写：</p><ol>
<li><strong>早期环境</strong>：家庭、照顾者、成长地点、生活资源。</li>
<li><strong>形成期</strong>：第一次建立重要信念或习惯的经历。</li>
<li><strong>转折事件</strong>：改变生活方向的事件。</li>
<li><strong>后果</strong>：事件带来了什么损失、能力、关系或误解？</li>
<li><strong>当前处境</strong>：角色现在在追求什么、逃避什么？</li>
<li><strong>未解决的问题</strong>：过去仍在影响什么？</li>
</ol></section><section><h3>10.2 关键事件的五个问题<a href="#102-关键事件的五个问题"><span>#</span></a></h3><p>每个重要事件至少回答：</p><ul>
<li>发生了什么？</li>
<li>角色当时想要什么？</li>
<li>TA 做了什么选择？</li>
<li>这个选择造成了什么后果？</li>
<li>TA 因此形成了什么信念或习惯？</li>
</ul><p>重点在于”选择和后果”，而不是单纯堆叠悲惨经历。</p></section><section><h3>10.3 背景与性格之间要有连接<a href="#103-背景与性格之间要有连接"><span>#</span></a></h3><p>不要写成：</p><blockquote><p>小时候发生了悲剧，所以 TA 很冷漠。</p></blockquote><p>试着具体化：</p><blockquote><p>童年时，TA
多次发现求助并不能及时解决问题，于是习惯先独自处理麻烦。这个习惯让 TA
在紧急情况下很可靠，却也让朋友误以为 TA 不需要帮助。</p></blockquote><p>同一段经历可以产生不同结果。人物的性格还会受到天生气质、后续环境、社会文化和主动选择的影响。</p></section><section><h3>10.4 避免”创伤清单”<a href="#104-避免创伤清单"><span>#</span></a></h3><ul>
<li>不是每个角色都需要悲惨过去。</li>
<li>创伤不应只是让角色更酷、更强或更有魅力的装饰。</li>
<li>不同经历的影响应有差异，不要把所有问题都归因于一个事件。</li>
<li>角色可以记错、回避、重新理解过去，但要明确这是叙事安排。</li>
<li>给角色留下普通的、快乐的、无关紧要的回忆。</li>
</ul><p><strong>产出物：</strong> 3---7 个真正重要的关键事件，以及每件事对当前行为的影响。</p><hr /></section></section><section><h2>11. 第九步：能力、技能与限制<a href="#11-第九步能力技能与限制"><span>#</span></a></h2><p>能力可以是魔法、战斗、知识、社交、观察、修理、烹饪或某种现实技能。非超能力角色同样需要能力设计。</p><section><h3>11.1 能力说明卡<a href="#111-能力说明卡"><span>#</span></a></h3><p>每项重要能力都回答：</p><ul>
<li>能力名称：__________</li>
<li>能做到什么：__________</li>
<li>做不到什么：__________</li>
<li>使用条件：__________</li>
<li>使用成本：__________</li>
<li>风险与副作用：__________</li>
<li>对抗方式：__________</li>
<li>需要怎样训练：__________</li>
<li>角色为什么拥有它：__________</li>
<li>这项能力如何影响日常生活：__________</li>
</ul></section><section><h3>11.2 用限制创造故事<a href="#112-用限制创造故事"><span>#</span></a></h3><p>限制不等于削弱角色，而是创造选择。例如：</p><ul>
<li>能力需要触碰目标，因此远距离行动困难。</li>
<li>能力使用后会失去短期记忆，因此必须记录信息。</li>
<li>角色非常擅长分析，却无法轻易判断他人的真实意图。</li>
<li>角色有丰富知识，但缺乏实际经验。</li>
<li>角色身体素质很好，却不擅长团队协作。</li>
</ul></section><section><h3>11.3 平衡检查<a href="#113-平衡检查"><span>#</span></a></h3><p>如果角色很强，问：</p><ul>
<li>为什么问题还没有解决？</li>
<li>对手能利用什么弱点？</li>
<li>能力是否有使用条件或代价？</li>
<li>强大的能力是否带来责任、孤独、误解或伦理困境？</li>
<li>角色是否仍需要别人？</li>
</ul><p>如果角色很弱，也问：</p><ul>
<li>TA 有什么独特价值？</li>
<li>TA 能靠什么解决问题？</li>
<li>TA 是否有主动性，而不是只等待别人拯救？</li>
</ul><p><strong>产出物：</strong> 1---3 项核心能力，以及明确的边界和代价。</p><hr /></section></section><section><h2>12. 第十步：关系网与互动逻辑<a href="#12-第十步关系网与互动逻辑"><span>#</span></a></h2><p>关系能让角色的不同面向显现出来。一个人在朋友、家人、竞争对手和陌生人面前，可能表现得完全不同。</p><section><h3>12.1 关系角色类型<a href="#121-关系角色类型"><span>#</span></a></h3><ul>
<li>家人或养育者</li>
<li>朋友与同伴</li>
<li>导师、前辈或学生</li>
<li>竞争对手</li>
<li>敌人或对立阵营</li>
<li>欣赏的人</li>
<li>不愿面对的人</li>
<li>曾经亲近、现在疏远的人</li>
<li>与角色有利益交换的人</li>
</ul><p>这些类型可以重叠。最重要的不是数量，而是每段关系都有不同的互动逻辑。</p></section><section><h3>12.2 关系表<a href="#122-关系表"><span>#</span></a></h3><p>对象   角色对 TA 的感受   对方想要什么       冲突点               关系变化的可能</p><hr /><p>A      信任但依赖         希望角色坦诚       角色总是隐瞒问题     学会求助
B      尊敬又嫉妒         希望获得认可       双方竞争同一目标     合作或决裂
C      表面敌对           希望保护某个秘密   双方掌握的信息不同   揭露真相</p></section><section><h3>12.3 关系设计的关键问题<a href="#123-关系设计的关键问题"><span>#</span></a></h3><ul>
<li>为什么这两个人会相遇？</li>
<li>为什么他们没有立刻离开彼此？</li>
<li>双方分别从关系中得到什么？</li>
<li>双方各自误解了什么？</li>
<li>谁更主动？谁更依赖？这种状态是否会变化？</li>
<li>他们最容易因什么事争吵？</li>
<li>如果关系破裂，真正的原因是什么？</li>
<li>如果关系改善，必须发生什么？</li>
</ul></section><section><h3>12.4 关系不是单向标签<a href="#124-关系不是单向标签"><span>#</span></a></h3><p>“挚友""宿敌""恋人”只是关系名称，不是关系内容。要进一步写出双方如何表达关心、如何争吵、如何道歉、如何试探边界。</p><p><strong>产出物：</strong> 至少 3 段不同类型的关系；如果是独立展示型 OC，可先留空。</p><hr /></section></section><section><h2>13. 第十一步：日常习惯、偏好与细节<a href="#13-第十一步日常习惯偏好与细节"><span>#</span></a></h2><p>小细节能让角色从设定表里走出来，但不必把所有内容都写得很有象征意义。</p><section><h3>13.1 日常偏好<a href="#131-日常偏好"><span>#</span></a></h3><ul>
<li>喜欢的食物：__________</li>
<li>不喜欢的食物：__________</li>
<li>常喝的饮品：__________</li>
<li>喜欢的天气：__________</li>
<li>喜欢的声音 / 音乐：__________</li>
<li>讨厌的气味或触感：__________</li>
<li>休息方式：__________</li>
<li>兴趣爱好：__________</li>
<li>睡眠习惯：__________</li>
<li>整理物品的方式：__________</li>
<li>消费习惯：__________</li>
<li>手机 / 随身物品里常有什么：__________</li>
</ul></section><section><h3>13.2 行为小动作<a href="#132-行为小动作"><span>#</span></a></h3><ul>
<li>思考时会做什么？</li>
<li>紧张时会怎样？</li>
<li>说谎时会有什么变化？</li>
<li>开心时如何表现？</li>
<li>生气时是沉默、提高音量还是变得异常礼貌？</li>
<li>面对喜欢的人时会不会改变习惯？</li>
<li>独处时与在人前有什么不同？</li>
</ul></section><section><h3>13.3 细节的三种用途<a href="#133-细节的三种用途"><span>#</span></a></h3><ol>
<li><strong>生活感</strong>：让角色像一个真实的人。</li>
<li><strong>辨识度</strong>：形成容易记住的习惯或物件。</li>
<li><strong>剧情用途</strong>：让习惯在关键时刻产生影响。</li>
</ol><p>不要让每一个爱好都和主线有关。角色也可以只是喜欢某种甜点，没什么特别理由。</p><p><strong>产出物：</strong> 5---10 个日常细节，其中 1---2 个可以成为视觉或互动标志。</p><hr /></section></section><section><h2>14. 第十二步：角色弧光与剧情功能<a href="#14-第十二步角色弧光与剧情功能"><span>#</span></a></h2><p>如果 OC 会参与故事，考虑 TA
是否会发生变化。若只是用于立绘或日常互动，可以把这一章当作可选项。</p><section><h3>14.1 角色弧光结构<a href="#141-角色弧光结构"><span>#</span></a></h3><p>一个简单的变化路径：</p><ol>
<li>当前信念：角色相信什么？</li>
<li>现有策略：TA 如何按照这个信念生活？</li>
<li>遭遇挑战：什么事件证明旧方法不够用？</li>
<li>抵抗变化：为什么 TA 不愿改变？</li>
<li>关键选择：TA 必须放弃或承担什么？</li>
<li>新的理解：TA 学到了什么？</li>
<li>新行动：TA 之后会如何不同地行动？</li>
</ol><p>角色弧光不一定是”变好”。也可以是堕落、固执、重新理解旧信念，或在悲剧中坚持某种价值。</p></section><section><h3>14.2 三种常见弧光<a href="#142-三种常见弧光"><span>#</span></a></h3><ul>
<li><strong>成长型</strong>：放下限制自己的错误信念，形成更成熟的选择方式。</li>
<li><strong>堕落型</strong>：为了目标不断合理化越界行为，最终失去原本珍视的东西。</li>
<li><strong>稳定型</strong>：角色的核心信念没有改变，但通过行动影响周围人或挑战不合理的环境。</li>
</ul></section><section><h3>14.3 角色在故事里的功能<a href="#143-角色在故事里的功能"><span>#</span></a></h3><ul>
<li>推动事件发生</li>
<li>让主角面对自己的问题</li>
<li>提供不同价值观</li>
<li>揭示世界规则</li>
<li>作为情绪支点</li>
<li>作为对照或镜像</li>
<li>承担喜剧、悬疑、恐怖或其他叙事功能</li>
</ul><p>角色可以有多个功能，但最好先明确最主要的一个。</p><p><strong>产出物：</strong> 角色起点、关键挑战、最终选择与可能的变化。</p><hr /></section></section><section><h2>15. 第十三步：台词、语气与表达方式<a href="#15-第十三步台词语气与表达方式"><span>#</span></a></h2><p>台词能检验性格是否具体。不要只写”说话温柔”，试着写出句子本身。</p><section><h3>15.1 语言特征<a href="#151-语言特征"><span>#</span></a></h3><ul>
<li>说话速度：快 / 慢 / 有停顿</li>
<li>句子长度：简短 / 绕弯 / 喜欢解释</li>
<li>语气：礼貌 / 直接 / 讽刺 / 平淡 / 热情</li>
<li>常用称呼：__________</li>
<li>口头禅：__________</li>
<li>是否使用俚语、敬语或专业术语：__________</li>
<li>情绪激动时会怎样变化：__________</li>
<li>不擅长表达什么：__________</li>
</ul></section><section><h3>15.2 同一场景下的台词测试<a href="#152-同一场景下的台词测试"><span>#</span></a></h3><p>请写出角色在以下情境中的反应：</p><ul>
<li>被陌生人夸奖：__________</li>
<li>发现朋友在隐瞒事情：__________</li>
<li>自己犯错：__________</li>
<li>被误解：__________</li>
<li>想向别人求助：__________</li>
<li>试图安慰一个人：__________</li>
<li>遇到讨厌的人：__________</li>
<li>真正开心时：__________</li>
</ul></section><section><h3>15.3 台词示例对比<a href="#153-台词示例对比"><span>#</span></a></h3><p>普通台词：</p><blockquote><p>“我很担心你。”</p></blockquote><p>更有角色感的表达可能是：</p><ul>
<li>克制型：“你下次至少留个消息。”</li>
<li>直率型：“你吓死我了！下次不许这样。”</li>
<li>逃避型：”…先把伤口处理了，其他的之后再说。”</li>
<li>嘴硬型：“我只是刚好路过。坐好，别动。”</li>
</ul><p>同一句话可以有多种表达方式。选择最符合角色行为逻辑的版本，而不是一味追求酷或独特。</p><p><strong>产出物：</strong> 6---8 句代表性台词。</p><hr /></section></section><section><h2>16. 第十四步：视觉参考与立绘需求<a href="#16-第十四步视觉参考与立绘需求"><span>#</span></a></h2><p>如果准备画图、委托画师或用图像工具生成视觉稿，建议准备一份清晰的视觉简报。</p><section><h3>16.1 参考图分类<a href="#161-参考图分类"><span>#</span></a></h3><ul>
<li>轮廓 / 身形参考</li>
<li>发型参考</li>
<li>服装结构参考</li>
<li>材质参考</li>
<li>配色参考</li>
<li>表情参考</li>
<li>姿势与动作参考</li>
<li>场景与光线参考</li>
<li>道具参考</li>
</ul><p>参考图最好标明”参考什么”，例如只参考外套结构，不是要求复制整张图。避免把多个风格完全冲突的参考拼在一起却不说明优先级。</p></section><section><h3>16.2 立绘需要哪些内容<a href="#162-立绘需要哪些内容"><span>#</span></a></h3><p>根据预算和用途选择：</p><ul>
<li> 正面全身</li>
<li> 侧面 / 背面设定</li>
<li> 面部特写</li>
<li> 表情差分</li>
<li> 服装拆解</li>
<li> 道具细节</li>
<li> 配色表</li>
<li> 身高对比</li>
<li> 动作或姿势稿</li>
<li> 不同服装版本</li>
</ul></section><section><h3>16.3 给画师的简报结构<a href="#163-给画师的简报结构"><span>#</span></a></h3><ol>
<li>角色一句话概念</li>
<li>必须保留的视觉特征</li>
<li>外貌与服装描述</li>
<li>配色与材质</li>
<li>表情和姿势</li>
<li>氛围与光线</li>
<li>参考图及每张图的用途</li>
<li>不希望出现的元素</li>
<li>交付尺寸、背景、格式与用途</li>
<li>可自由发挥的部分</li>
</ol><p><strong>产出物：</strong> 一份可以直接交给自己、合作伙伴或画师阅读的视觉设计说明。</p><hr /></section></section><section><h2>17. 第十五步：一致性检查与压力测试<a href="#17-第十五步一致性检查与压力测试"><span>#</span></a></h2><p>写完设定后，不要只检查有没有填满栏目。让角色进入场景，看看 TA
是否会自然地做出符合逻辑的选择。</p><section><h3>17.1 五种压力测试<a href="#171-五种压力测试"><span>#</span></a></h3><p><strong>测试 A：日常场景</strong></p><p>角色一个人度过休息日，会做什么？这能检验生活习惯是否具体。</p><p><strong>测试 B：冲突场景</strong></p><p>重要的人误解了 TA，TA 会怎么反应？这能检验情绪表达与关系模式。</p><p><strong>测试 C：诱惑场景</strong></p><p>TA 可以轻松获得目标，但必须违背底线。TA 会怎样选择？这能检验价值观。</p><p><strong>测试 D：失败场景</strong></p><p>能力失效、计划失败或被拒绝后，TA 会责怪谁、采取什么补救方式？</p><p><strong>测试 E：陌生环境</strong></p><p>当角色失去资源、身份或熟悉的人时，哪些特征仍然成立？</p></section><section><h3>17.2 一致性检查表<a href="#172-一致性检查表"><span>#</span></a></h3><ul>
<li> 外貌与职业、生活方式相符，或有合理解释</li>
<li> 能力边界明确，没有在需要时突然变成万能</li>
<li> 性格特征能转化为具体行为</li>
<li> 背景经历与当前习惯之间有可理解的联系</li>
<li> 角色有自己的目标，而不是只围绕另一个角色存在</li>
<li> 关系中的双方都有动机和选择</li>
<li> 优点与缺点会在不同情境下产生不同后果</li>
<li> 角色犯错后会承担一定后果</li>
<li> 重要设定之间没有互相矛盾</li>
<li> 不需要解释的日常细节仍然自然</li>
</ul></section><section><h3>17.3 发现矛盾时怎么办<a href="#173-发现矛盾时怎么办"><span>#</span></a></h3><p>不要急着删掉其中一项。先判断它属于哪一种：</p><ul>
<li><strong>真正矛盾</strong>：同一时间、同一条件下无法同时成立。</li>
<li><strong>情境差异</strong>：角色对不同的人有不同表现。</li>
<li><strong>内在矛盾</strong>：角色言行不一致，这可能正是人物特色。</li>
<li><strong>信息差</strong>：角色或读者尚不知道真相。</li>
<li><strong>设定未定</strong>：作者还没做最终决定。</li>
</ul><p>只有真正矛盾才必须修正；其他情况可以成为角色层次或剧情伏笔。</p><p><strong>产出物：</strong> 一份修订清单，记录要修改、保留或暂时开放的问题。</p><hr /></section></section><section><h2>18. 第十六步：整理成正式角色档案<a href="#18-第十六步整理成正式角色档案"><span>#</span></a></h2><p>当核心内容稳定后，把零散笔记整理成方便查阅的文档。</p><section><h3>18.1 推荐文档结构<a href="#181-推荐文档结构"><span>#</span></a></h3><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>OC名称/</span></div></div><div><div><div>2</div></div><div><span>├── 00_角色总览.md</span></div></div><div><div><div>3</div></div><div><span>├── 01_外貌与服装.md</span></div></div><div><div><div>4</div></div><div><span>├── 02_性格与心理.md</span></div></div><div><div><div>5</div></div><div><span>├── 03_背景时间线.md</span></div></div><div><div><div>6</div></div><div><span>├── 04_能力与限制.md</span></div></div><div><div><div>7</div></div><div><span>├── 05_关系网.md</span></div></div><div><div><div>8</div></div><div><span>├── 06_台词样本.md</span></div></div><div><div><div>9</div></div><div><span>├── 07_视觉参考/</span></div></div><div><div><div>10</div></div><div><span>└── 08_修改记录.md</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>轻量 OC 不需要拆成这么多文件，一个 Markdown
文档就足够。只有设定量逐渐变大时再拆分。</p></section><section><h3>18.2 总览页写什么<a href="#182-总览页写什么"><span>#</span></a></h3><p>总览页只放最常用的信息：</p><ul>
<li>一句话概念</li>
<li>角色立绘或代表图</li>
<li>基础身份</li>
<li>3---5 个核心关键词</li>
<li>核心欲望与矛盾</li>
<li>主要能力与限制</li>
<li>最重要的关系</li>
<li>当前剧情状态</li>
<li>设定版本与更新时间</li>
</ul></section><section><h3>18.3 版本管理<a href="#183-版本管理"><span>#</span></a></h3><p>记录重大变更：</p><p>版本   修改内容                 修改原因</p><hr /><p>v0.1   确定核心概念与外观方向   建立初版
v0.2   调整能力限制             避免能力过于万能
v1.0   核心设定稳定             可以开始正式创作</p><p>修改时区分”补充细节”和”推翻核心”。如果更改年龄、背景、能力规则或关系史等重要内容，要检查其他章节是否受到影响。</p><hr /></section></section><section><h2>19. 可复制的 OC 设定模板<a href="#19-可复制的-oc-设定模板"><span>#</span></a></h2><p>下面的模板可以直接复制到新的 Markdown
文件中。可以先填最有把握的项目，其他项目写”待定”。</p><div><div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span># 【OC 名称】</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>&gt; 一句话概念：</span></div></div><div><div><div>4</div></div><div><span>&gt; 设定状态：暂定 / 稳定 / 持续更新</span></div></div><div><div><div>5</div></div><div><span>&gt; 最后更新：YYYY-MM-DD</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span>## 01. 角色总览</span></div></div><div><div><div>8</div></div><div><span><span>-</span><span> 核心卖点：</span></span></div></div><div><div><div>9</div></div><div><span><span>-</span><span> 主要关键词：</span></span></div></div><div><div><div>10</div></div><div><span><span>-</span><span> 反差关键词：</span></span></div></div><div><div><div>11</div></div><div><span><span>-</span><span> 创作用途：</span></span></div></div><div><div><div>12</div></div><div><span><span>-</span><span> 题材与基调：</span></span></div></div><div><div><div>13</div></div><div><span><span>-</span><span> 角色在故事中的功能：</span></span></div></div><div><div><div>14</div></div><div>
</div></div><div><div><div>15</div></div><div><span>## 02. 基础身份</span></div></div><div><div><div>16</div></div><div><span><span>-</span><span> 姓名：</span></span></div></div><div><div><div>17</div></div><div><span><span>-</span><span> 别名 / 绰号：</span></span></div></div><div><div><div>18</div></div><div><span><span>-</span><span> 名字含义：</span></span></div></div><div><div><div>19</div></div><div><span><span>-</span><span> 年龄：</span></span></div></div><div><div><div>20</div></div><div><span><span>-</span><span> 生日：</span></span></div></div><div><div><div>21</div></div><div><span><span>-</span><span> 性别 / 称呼：</span></span></div></div><div><div><div>22</div></div><div><span><span>-</span><span> 种族 / 物种：</span></span></div></div><div><div><div>23</div></div><div><span><span>-</span><span> 身高：</span></span></div></div><div><div><div>24</div></div><div><span><span>-</span><span> 职业 / 身份：</span></span></div></div><div><div><div>25</div></div><div><span><span>-</span><span> 所属组织：</span></span></div></div><div><div><div>26</div></div><div><span><span>-</span><span> 常住地：</span></span></div></div><div><div><div>27</div></div><div><span><span>-</span><span> 当前状态：</span></span></div></div><div><div><div>28</div></div><div>
</div></div><div><div><div>29</div></div><div><span>## 03. 外貌设计</span></div></div><div><div><div>30</div></div><div><span><span>-</span><span> 整体印象：</span></span></div></div><div><div><div>31</div></div><div><span><span>-</span><span> 轮廓与体态：</span></span></div></div><div><div><div>32</div></div><div><span><span>-</span><span> 脸型与五官：</span></span></div></div><div><div><div>33</div></div><div><span><span>-</span><span> 眼睛：</span></span></div></div><div><div><div>34</div></div><div><span><span>-</span><span> 发型与发色：</span></span></div></div><div><div><div>35</div></div><div><span><span>-</span><span> 肤色与特殊特征：</span></span></div></div><div><div><div>36</div></div><div><span><span>-</span><span> 主色：</span></span></div></div><div><div><div>37</div></div><div><span><span>-</span><span> 辅色：</span></span></div></div><div><div><div>38</div></div><div><span><span>-</span><span> 强调色：</span></span></div></div><div><div><div>39</div></div><div><span><span>-</span><span> 常穿服装：</span></span></div></div><div><div><div>40</div></div><div><span><span>-</span><span> 其他服装：</span></span></div></div><div><div><div>41</div></div><div><span><span>-</span><span> 标志物：</span></span></div></div><div><div><div>42</div></div><div><span><span>-</span><span> 必须保留的视觉特征：</span></span></div></div><div><div><div>43</div></div><div><span><span>-</span><span> 不希望出现的元素：</span></span></div></div><div><div><div>44</div></div><div>
</div></div><div><div><div>45</div></div><div><span>## 04. 性格结构</span></div></div><div><div><div>46</div></div><div><span><span>-</span><span> 初见印象：</span></span></div></div><div><div><div>47</div></div><div><span><span>-</span><span> 熟悉后的真实一面：</span></span></div></div><div><div><div>48</div></div><div><span><span>-</span><span> 自我认知：</span></span></div></div><div><div><div>49</div></div><div><span><span>-</span><span> 主要优点：</span></span></div></div><div><div><div>50</div></div><div><span><span>-</span><span> 主要缺点：</span></span></div></div><div><div><div>51</div></div><div><span><span>-</span><span> 情绪表达：</span></span></div></div><div><div><div>52</div></div><div><span><span>-</span><span> 压力反应：</span></span></div></div><div><div><div>53</div></div><div><span><span>-</span><span> 冲突处理：</span></span></div></div><div><div><div>54</div></div><div><span><span>-</span><span> 对陌生人：</span></span></div></div><div><div><div>55</div></div><div><span><span>-</span><span> 对朋友：</span></span></div></div><div><div><div>56</div></div><div><span><span>-</span><span> 对亲密对象：</span></span></div></div><div><div><div>57</div></div><div><span><span>-</span><span> 对敌人：</span></span></div></div><div><div><div>58</div></div><div><span><span>-</span><span> 不能接受的事：</span></span></div></div><div><div><div>59</div></div><div>
</div></div><div><div><div>60</div></div><div><span>## 05. 内在驱动力</span></div></div><div><div><div>61</div></div><div><span><span>-</span><span> 外在目标：</span></span></div></div><div><div><div>62</div></div><div><span><span>-</span><span> 内在需求：</span></span></div></div><div><div><div>63</div></div><div><span><span>-</span><span> 最大恐惧：</span></span></div></div><div><div><div>64</div></div><div><span><span>-</span><span> 错误信念：</span></span></div></div><div><div><div>65</div></div><div><span><span>-</span><span> 防御机制：</span></span></div></div><div><div><div>66</div></div><div><span><span>-</span><span> 内在矛盾：</span></span></div></div><div><div><div>67</div></div><div><span><span>-</span><span> 道德底线：</span></span></div></div><div><div><div>68</div></div><div><span><span>-</span><span> 最珍视的东西：</span></span></div></div><div><div><div>69</div></div><div><span><span>-</span><span> 最不愿承认的事：</span></span></div></div><div><div><div>70</div></div><div>
</div></div><div><div><div>71</div></div><div><span>## 06. 背景经历</span></div></div><div><div><div>72</div></div><div><span><span>-</span><span> 成长环境：</span></span></div></div><div><div><div>73</div></div><div><span><span>-</span><span> 重要照顾者 / 家庭：</span></span></div></div><div><div><div>74</div></div><div><span><span>-</span><span> 早期关键事件：</span></span></div></div><div><div><div>75</div></div><div><span><span>-</span><span> 转折事件：</span></span></div></div><div><div><div>76</div></div><div><span><span>-</span><span> 重要选择：</span></span></div></div><div><div><div>77</div></div><div><span><span>-</span><span> 造成的后果：</span></span></div></div><div><div><div>78</div></div><div><span><span>-</span><span> 形成的信念或习惯：</span></span></div></div><div><div><div>79</div></div><div><span><span>-</span><span> 当前处境：</span></span></div></div><div><div><div>80</div></div><div><span><span>-</span><span> 未解决的问题：</span></span></div></div><div><div><div>81</div></div><div>
</div></div><div><div><div>82</div></div><div><span>## 07. 能力与限制</span></div></div><div><div><div>83</div></div><div><span><span>-</span><span> 核心能力：</span></span></div></div><div><div><div>84</div></div><div><span><span>-</span><span> 擅长的技能：</span></span></div></div><div><div><div>85</div></div><div><span><span>-</span><span> 不擅长的技能：</span></span></div></div><div><div><div>86</div></div><div><span><span>-</span><span> 使用条件：</span></span></div></div><div><div><div>87</div></div><div><span><span>-</span><span> 使用代价：</span></span></div></div><div><div><div>88</div></div><div><span><span>-</span><span> 明确限制：</span></span></div></div><div><div><div>89</div></div><div><span><span>-</span><span> 弱点：</span></span></div></div><div><div><div>90</div></div><div><span><span>-</span><span> 可被怎样克制：</span></span></div></div><div><div><div>91</div></div><div><span><span>-</span><span> 能力对日常生活的影响：</span></span></div></div><div><div><div>92</div></div><div>
</div></div><div><div><div>93</div></div><div><span>## 08. 人际关系</span></div></div><div><div><div>94</div></div><div><span>### 关系 A</span></div></div><div><div><div>95</div></div><div><span><span>-</span><span> 对方是谁：</span></span></div></div><div><div><div>96</div></div><div><span><span>-</span><span> 角色对对方的感受：</span></span></div></div><div><div><div>97</div></div><div><span><span>-</span><span> 对方想要什么：</span></span></div></div><div><div><div>98</div></div><div><span><span>-</span><span> 关系中的冲突：</span></span></div></div><div><div><div>99</div></div><div><span><span>-</span><span> 双方的误解：</span></span></div></div><div><div><div>100</div></div><div><span><span>-</span><span> 未来可能的变化：</span></span></div></div><div><div><div>101</div></div><div>
</div></div><div><div><div>102</div></div><div><span>### 关系 B</span></div></div><div><div><div>103</div></div><div><span><span>-</span><span> 对方是谁：</span></span></div></div><div><div><div>104</div></div><div><span><span>-</span><span> 角色对对方的感受：</span></span></div></div><div><div><div>105</div></div><div><span><span>-</span><span> 对方想要什么：</span></span></div></div><div><div><div>106</div></div><div><span><span>-</span><span> 关系中的冲突：</span></span></div></div><div><div><div>107</div></div><div><span><span>-</span><span> 双方的误解：</span></span></div></div><div><div><div>108</div></div><div><span><span>-</span><span> 未来可能的变化：</span></span></div></div><div><div><div>109</div></div><div>
</div></div><div><div><div>110</div></div><div><span>## 09. 日常生活</span></div></div><div><div><div>111</div></div><div><span><span>-</span><span> 喜欢的食物：</span></span></div></div><div><div><div>112</div></div><div><span><span>-</span><span> 不喜欢的食物：</span></span></div></div><div><div><div>113</div></div><div><span><span>-</span><span> 喜欢的天气：</span></span></div></div><div><div><div>114</div></div><div><span><span>-</span><span> 音乐 / 声音偏好：</span></span></div></div><div><div><div>115</div></div><div><span><span>-</span><span> 兴趣爱好：</span></span></div></div><div><div><div>116</div></div><div><span><span>-</span><span> 休息方式：</span></span></div></div><div><div><div>117</div></div><div><span><span>-</span><span> 睡眠习惯：</span></span></div></div><div><div><div>118</div></div><div><span><span>-</span><span> 常带物品：</span></span></div></div><div><div><div>119</div></div><div><span><span>-</span><span> 思考时的小动作：</span></span></div></div><div><div><div>120</div></div><div><span><span>-</span><span> 紧张时的表现：</span></span></div></div><div><div><div>121</div></div><div><span><span>-</span><span> 开心时的表现：</span></span></div></div><div><div><div>122</div></div><div><span><span>-</span><span> 生气时的表现：</span></span></div></div><div><div><div>123</div></div><div><span><span>-</span><span> 一个无特殊含义的小习惯：</span></span></div></div><div><div><div>124</div></div><div>
</div></div><div><div><div>125</div></div><div><span>## 10. 语言与台词</span></div></div><div><div><div>126</div></div><div><span><span>-</span><span> 说话速度与句式：</span></span></div></div><div><div><div>127</div></div><div><span><span>-</span><span> 常用称呼：</span></span></div></div><div><div><div>128</div></div><div><span><span>-</span><span> 口头禅：</span></span></div></div><div><div><div>129</div></div><div><span><span>-</span><span> 情绪激动时的变化：</span></span></div></div><div><div><div>130</div></div><div><span><span>-</span><span> 不擅长表达的内容：</span></span></div></div><div><div><div>131</div></div><div><span><span>-</span><span> 代表台词 1：</span></span></div></div><div><div><div>132</div></div><div><span><span>-</span><span> 代表台词 2：</span></span></div></div><div><div><div>133</div></div><div><span><span>-</span><span> 代表台词 3：</span></span></div></div><div><div><div>134</div></div><div>
</div></div><div><div><div>135</div></div><div><span>## 11. 角色变化（可选）</span></div></div><div><div><div>136</div></div><div><span><span>-</span><span> 故事开始时相信什么：</span></span></div></div><div><div><div>137</div></div><div><span><span>-</span><span> 旧有应对方式：</span></span></div></div><div><div><div>138</div></div><div><span><span>-</span><span> 迫使 TA 改变的挑战：</span></span></div></div><div><div><div>139</div></div><div><span><span>-</span><span> TA 最抗拒的变化：</span></span></div></div><div><div><div>140</div></div><div><span><span>-</span><span> 关键选择：</span></span></div></div><div><div><div>141</div></div><div><span><span>-</span><span> 可能的成长 / 堕落 / 坚守：</span></span></div></div><div><div><div>142</div></div><div><span><span>-</span><span> 故事结束时的状态：</span></span></div></div><div><div><div>143</div></div><div>
</div></div><div><div><div>144</div></div><div><span>## 12. 设定检查</span></div></div><div><div><div>145</div></div><div><span><span>-</span><span> [ ] 核心概念清晰</span></span></div></div><div><div><div>146</div></div><div><span><span>-</span><span> [ ] 外貌有辨识度</span></span></div></div><div><div><div>147</div></div><div><span><span>-</span><span> [ ] 性格可以通过行为表现</span></span></div></div><div><div><div>148</div></div><div><span><span>-</span><span> [ ] 目标和恐惧明确</span></span></div></div><div><div><div>149</div></div><div><span><span>-</span><span> [ ] 背景经历影响当前行为</span></span></div></div><div><div><div>150</div></div><div><span><span>-</span><span> [ ] 能力有限制</span></span></div></div><div><div><div>151</div></div><div><span><span>-</span><span> [ ] 关系双方都有动机</span></span></div></div><div><div><div>152</div></div><div><span><span>-</span><span> [ ] 台词符合性格</span></span></div></div><div><div><div>153</div></div><div><span><span>-</span><span> [ ] 重要设定没有冲突</span></span></div></div><div><div><div>154</div></div><div><span><span>-</span><span> [ ] 仍有可探索的空间</span></span></div></div><div><div><div>155</div></div><div>
</div></div><div><div><div>156</div></div><div><span>## 13. 待定问题</span></div></div><div><div><div>157</div></div><div><span>-</span></div></div><div><div><div>158</div></div><div><span>-</span></div></div><div><div><div>159</div></div><div><span>-</span></div></div><div><div><div>160</div></div><div>
</div></div><div><div><div>161</div></div><div><span>## 14. 修改记录</span></div></div><div><div><div>162</div></div><div><span>| 日期 | 修改内容 | 原因 |</span></div></div><div><div><div>163</div></div><div><span>|---|---|---|</span></div></div><div><div><div>164</div></div><div><span>| YYYY-MM-DD | 创建初版 | |</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><hr /></section><section><h2>20. 示例：从概念到完整角色<a href="#20-示例从概念到完整角色"><span>#</span></a></h2><p>以下是一个虚构示例，只用于演示如何把抽象想法落地。</p><section><h3>20.1 初始概念<a href="#201-初始概念"><span>#</span></a></h3><blockquote><p>一个浅青绿色短发、总在雨天出现的旧物修复师，能够听见物品残留的记忆，却无法确认听见的内容是否真实。</p></blockquote><p>这个概念包含了视觉锚点、职业、能力和不确定性。</p></section><section><h3>20.2 核心设定<a href="#202-核心设定"><span>#</span></a></h3><ul>
<li><strong>姓名</strong>：雨森澄（暂定）</li>
<li><strong>年龄</strong>：22 岁</li>
<li><strong>职业</strong>：旧物修复师</li>
<li><strong>关键词</strong>：安静、敏锐、固执</li>
<li><strong>反差</strong>：不擅长安慰人，却会认真修好别人舍不得丢弃的小物件</li>
<li><strong>外在目标</strong>：找到一件与失踪姐姐有关的旧物</li>
<li><strong>内在需求</strong>：接受记忆并不等于事实，也无法替代真正的告别</li>
<li><strong>错误信念</strong>：只要把过去拼完整，就能避免再次失去重要的人</li>
</ul></section><section><h3>20.3 外貌方向<a href="#203-外貌方向"><span>#</span></a></h3><ul>
<li>浅青绿色短发，发尾略微凌乱。</li>
<li>眼睛偏灰绿，眼神常像在观察很远的地方。</li>
<li>服装以灰白、深蓝绿和少量银色为主。</li>
<li>常穿防水外套，随身携带修复工具与旧耳机。</li>
<li>标志物是一把透明伞，但伞柄有明显的修补痕迹。</li>
</ul><p>视觉设计并非每一项都必须象征创伤。透明伞可以只是角色习惯在雨天出门的实用物件；修补痕迹则能自然呼应职业。</p></section><section><h3>20.4 性格如何落到行动<a href="#204-性格如何落到行动"><span>#</span></a></h3><ul>
<li>安静：不急着接话，会先观察对方是否真的需要回应。</li>
<li>敏锐：能发现物件的磨损、修补痕迹和摆放变化。</li>
<li>固执：一旦开始修复，就很难接受”差不多就行”。</li>
<li>不擅长安慰：面对哭泣的人会显得僵硬，但会递纸巾、倒热水，或替对方处理实际问题。</li>
</ul></section><section><h3>20.5 能力与限制<a href="#205-能力与限制"><span>#</span></a></h3><ul>
<li>能力：触摸旧物时，会听见与它有关的片段声音。</li>
<li>条件：物件必须留有明显使用痕迹；全新物品几乎没有信息。</li>
<li>限制：听到的片段缺乏完整上下文，也可能混入持有者的误解。</li>
<li>代价：长时间使用会让 TA 难以分辨自己的回忆与物品留下的声音。</li>
<li>对抗方式：不同来源的物件可能产生相互矛盾的信息；角色必须通过现实证据验证。</li>
</ul><p>这使能力可以提供线索，却不能直接替代调查。</p></section><section><h3>20.6 关系冲突<a href="#206-关系冲突"><span>#</span></a></h3><p>姐姐失踪前留下了一台损坏的录音机。角色迟迟不肯修复它，因为 TA
害怕听到的内容会推翻自己珍藏的记忆。</p><p>朋友认为角色是在逃避真相，角色却认为朋友不懂得”有些东西一旦确认，就再也无法挽回”。</p><p>双方都不是单纯的对或错：朋友重视事实，角色依靠记忆维持生活。冲突来自价值观差异，而不只是误会。</p></section><section><h3>20.7 角色弧光<a href="#207-角色弧光"><span>#</span></a></h3><ul>
<li>起点：相信收集过去的碎片就能恢复失去的一切。</li>
<li>挑战：听到的记忆与现实证据互相矛盾。</li>
<li>关键选择：继续相信自己最愿意相信的版本，或接受不确定性并面对现实。</li>
<li>可能的变化：角色不再把修复理解为”让一切恢复原样”，而是学会让受损之物带着痕迹继续存在。</li>
</ul></section><section><h3>20.8 代表台词<a href="#208-代表台词"><span>#</span></a></h3><ul>
<li>“我可以修好它，但不能保证它会变回原来的样子。”</li>
<li>“那段声音不一定是真的。至少，不一定是完整的。”</li>
<li>“伞给你。我不急着回去。”</li>
</ul></section><section><h3>20.9 示例的重点<a href="#209-示例的重点"><span>#</span></a></h3><p>这个角色不是靠”浅青绿头发 + 雨天 +
神秘能力”就完成了。真正让设定连贯的是：职业、能力限制、错误信念、关系冲突与角色变化彼此呼应。外观有记忆点，内在也有可持续展开的问题。</p><hr /></section></section><section><h2>21. 常见问题与避坑清单<a href="#21-常见问题与避坑清单"><span>#</span></a></h2><section><h3>21.1 设定太多，角色却不鲜明<a href="#211-设定太多角色却不鲜明"><span>#</span></a></h3><p><strong>原因：</strong> 细节很多，但没有核心目标或行为逻辑。<br />
<strong>解决：</strong> 用一句话概念、三个关键词和一个内在矛盾重新归纳。</p></section><section><h3>21.2 角色全能、没有代价<a href="#212-角色全能没有代价"><span>#</span></a></h3><p><strong>原因：</strong> 能力只负责解决问题，不会制造新问题。<br />
<strong>解决：</strong> 明确条件、限制、成本、失败可能与对抗方式。</p></section><section><h3>21.3 角色只有缺点或只有优点<a href="#213-角色只有缺点或只有优点"><span>#</span></a></h3><p><strong>原因：</strong> 性格被写成标签，而不是情境中的选择。<br />
<strong>解决：</strong> 让优点在过度使用时产生代价，也让缺点在某些情境中有合理来源。</p></section><section><h3>21.4 用悲惨经历替代人物塑造<a href="#214-用悲惨经历替代人物塑造"><span>#</span></a></h3><p><strong>原因：</strong> 背景事件很多，却没有说明角色如何理解和应对它们。<br />
<strong>解决：</strong> 每个重要事件都补上选择、后果和当前行为之间的联系。</p></section><section><h3>21.5 为了”有深度”而让所有东西都象征某种创伤<a href="#215-为了有深度而让所有东西都象征某种创伤"><span>#</span></a></h3><p><strong>原因：</strong> 角色没有轻松、普通或单纯喜欢的东西。<br />
<strong>解决：</strong> 保留无特殊含义的偏好与习惯，让角色有普通生活。</p></section><section><h3>21.6 角色只有外观，没有行动动力<a href="#216-角色只有外观没有行动动力"><span>#</span></a></h3><p><strong>原因：</strong> 设定更像一张服装清单。<br />
<strong>解决：</strong> 至少回答”TA 想要什么、害怕什么、会为此做什么”。</p></section><section><h3>21.7 角色总是围绕另一个角色存在<a href="#217-角色总是围绕另一个角色存在"><span>#</span></a></h3><p><strong>原因：</strong> 角色没有独立目标。<br />
<strong>解决：</strong> 即使 TA 很在乎某个人，也要为 TA
设定自己的生活、价值观和选择。</p></section><section><h3>21.8 为了反差而强行矛盾<a href="#218-为了反差而强行矛盾"><span>#</span></a></h3><p><strong>原因：</strong> 特征之间没有情境或心理连接。<br />
<strong>解决：</strong>
解释反差出现的条件。例如，角色不是”忽冷忽热”，而是”在工作中高度冷静，面对亲密关系时却害怕失控”。</p></section><section><h3>21.9 一次就想把设定写完<a href="#219-一次就想把设定写完"><span>#</span></a></h3><p><strong>原因：</strong> 把”完整”误解成”每一格都填满”。<br />
<strong>解决：</strong> 先写可用版本，再通过画图、写场景和互动逐步发现角色。</p><hr /></section></section><section><h2>22. 最终检查表<a href="#22-最终检查表"><span>#</span></a></h2><p>完成第一版时，逐项检查：</p><section><h3>核心<a href="#核心"><span>#</span></a></h3><ul>
<li> 我能用一句话介绍这个 OC。</li>
<li> 我知道自己为什么想创作 TA。</li>
<li> TA 有至少一个鲜明的辨识点。</li>
<li> TA 不只是几个形容词的组合。</li>
</ul></section><section><h3>内在<a href="#内在"><span>#</span></a></h3><ul>
<li> TA 想得到某样东西。</li>
<li> TA 有恐惧、限制或难以解决的问题。</li>
<li> TA 的选择会产生后果。</li>
<li> TA 至少存在一组有意义的内在矛盾。</li>
</ul></section><section><h3>外在<a href="#外在"><span>#</span></a></h3><ul>
<li> 外貌和配色有清晰的重点。</li>
<li> 服装与生活方式基本相符。</li>
<li> 重要道具或标志物容易识别。</li>
<li> 角色在不同姿势和表情下仍然容易辨认。</li>
</ul></section><section><h3>关系与剧情<a href="#关系与剧情"><span>#</span></a></h3><ul>
<li> TA 有独立于他人的目标。</li>
<li> 重要关系有双方动机。</li>
<li> 能力与资源并非无限。</li>
<li> TA 在压力下会做出符合逻辑的选择。</li>
</ul></section><section><h3>可持续创作<a href="#可持续创作"><span>#</span></a></h3><ul>
<li> 我能想出至少三个适合 TA 的场景。</li>
<li> 我能写出几句符合 TA 语气的台词。</li>
<li> 我知道哪些设定已经确定，哪些仍可修改。</li>
<li> 我保留了继续探索的空间。</li>
</ul><hr /></section></section><section><h2>建议的实际创作节奏<a href="#建议的实际创作节奏"><span>#</span></a></h2><p>如果不知道从哪里开始，可以按这个顺序分阶段完成：</p><ul>
<li><strong>第 1 轮（15---30 分钟）</strong>：用途、题材、一句话概念、三个关键词。</li>
<li><strong>第 2 轮（30---60 分钟）</strong>：身份、外貌、配色、标志物。</li>
<li><strong>第 3 轮（30---60 分钟）</strong>：性格、目标、恐惧、内在矛盾。</li>
<li><strong>第 4 轮（30---60 分钟）</strong>：背景、能力限制、关系网。</li>
<li><strong>第 5 轮（20---40 分钟）</strong>：日常习惯、台词、场景测试。</li>
<li><strong>第 6 轮（持续更新）</strong>：根据创作反馈修订档案。</li>
</ul><p>时间只是参考，不是任务指标。最重要的是先得到一个能被画出来、写出行动、放进场景中测试的角色。</p><p><strong>最后记住：OC
不需要一开始就完美。一个有明确欲望、独特选择和可继续探索空间的角色，比一份填得满满当当却没有行动逻辑的设定表，更容易真正活起来。</strong></p></section></section>]]></content>
    </entry>
    <entry>
      <id>https://moyuspace.icu/posts/wsl-install-guide/</id>
      <title type="text">Windows 如何装 WSL 教程指南</title>
      <published>2026-10-17T00:00:00.000Z</published>
      <updated>2026-10-17T00:00:00.000Z</updated>
      <author><name>沫雨</name></author>
      <link rel="alternate" href="https://moyuspace.icu/posts/wsl-install-guide/"/>
      <summary type="text">从零开始，在 Windows 上装一个真正的 Linux。不需要双系统、不需要虚拟机、不需要 U 盘，重启一次就能用。全程照着复制粘贴命令即可，每一步都标了在哪运行。</summary>
      <content type="html"><![CDATA[<p>从零开始，在 Windows 上装一个真正的 Linux。不需要双系统、不需要虚拟机、不需要 U 盘，重启一次就能用。</p>
<p>全文照着复制粘贴命令即可，每一步都标了<strong>在哪运行</strong>。</p>
<section><h2>在开始之前：WSL 是什么？<a href="#在开始之前wsl-是什么"><span>#</span></a></h2><p>WSL（Windows Subsystem for Linux）是微软官方在 Windows 里内建的 Linux 环境。</p><p>你可以把它理解成：<strong>Windows 桌面上开了一扇门，门后是一个完整的 Linux 系统</strong>。</p><ul>
<li>它能跑真正的 Linux 程序（gcc、python、nginx、docker……）</li>
<li>它能直接读写你 Windows 上的文件</li>
<li>它和 Windows 共享剪贴板、网络、端口</li>
<li>开机即用，几秒启动，不吃多少资源</li>
</ul><section><h3>你为什么需要它？<a href="#你为什么需要它"><span>#</span></a></h3>

<table><thead><tr><th>场景</th><th>在 Windows 上的痛苦</th><th>在 WSL 里</th></tr></thead><tbody><tr><td>学 Python / AI</td><td>装包一堆报错、路径各种坑</td><td>和服务器环境一模一样</td></tr><tr><td>前端开发</td><td>npm 依赖在 Windows 上经常出问题</td><td>原生 Linux 环境，零折腾</td></tr><tr><td>学 Linux 命令</td><td>得先装虚拟机</td><td>直接就有</td></tr><tr><td>部署 / 运维</td><td>本地和服务器不一致</td><td>完全一致的环境</td></tr><tr><td>跑 Docker</td><td>Docker Desktop 又重又慢</td><td>直接原生跑</td></tr></tbody></table><div><div><div></div><div>Tip</div></div><div><p>一句话：如果你要跟服务器、开源项目、编程打交道，WSL 是目前 Windows 上最舒服的方案。</p></div></div></section></section>
<section><h2>第 0 步：确认你的电脑能装<a href="#第-0-步确认你的电脑能装"><span>#</span></a></h2><section><h3>检查 Windows 版本<a href="#检查-windows-版本"><span>#</span></a></h3><p>按 <code>Win + R</code>，输入 <code>winver</code>，回车。</p><ul>
<li><strong>Windows 11</strong>（任何版本）→ 可以装</li>
<li><strong>Windows 10</strong> → 需要版本号 <strong>2004 或更高</strong>（内部版本 19041+）</li>
<li>Windows 10 1909 及更早 → 太老，建议先升级系统</li>
</ul><p>也可以按 <code>Win + R</code> → 输入 <code>cmd</code> → 回车，执行：</p><div><figure><figcaption><span>CMD</span></figcaption><pre><code><div><div><div>1</div></div><div><span>ver</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>看到 <code>10.0.19041</code> 以上的数字就行。</p></section><section><h3>检查虚拟化是否开启<a href="#检查虚拟化是否开启"><span>#</span></a></h3><p>任务管理器（<code>Ctrl + Shift + Esc</code>）→ 点「性能」→ 点「CPU」→ 右下角看：</p><p><strong>虚拟化：已启用</strong> ✅</p><p>如果是”已禁用”，需要进 BIOS 开启（开机狂按 <code>F2</code> / <code>Del</code> / <code>F10</code>，找 <code>Intel Virtualization Technology</code> 或 <code>SVM Mode</code>，设为 Enable）。</p><div><div><div></div><div>Note</div></div><div><p>2015 年后的电脑基本都默认开着虚拟化，大概率你不用管这一步。</p></div></div></section></section>
<section><h2>第 1 步：安装（一条命令）<a href="#第-1-步安装一条命令"><span>#</span></a></h2><section><h3>1.1 打开管理员终端<a href="#11-打开管理员终端"><span>#</span></a></h3><ol>
<li>点开始菜单（或按 <code>Win</code>）</li>
<li>输入 <code>PowerShell</code></li>
<li>在搜索结果上<strong>右键</strong> → 点「<strong>以管理员身份运行</strong>」</li>
</ol><p>会弹出一个蓝色窗口。<strong>这一步很重要</strong> —— 不管理员运行会权限不足。</p></section><section><h3>1.2 执行安装命令<a href="#12-执行安装命令"><span>#</span></a></h3><p>在蓝色窗口里<strong>复制粘贴</strong>下面这行，然后回车：</p><div><figure><figcaption><span>PowerShell（管理员）</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>wsl </span><span>--</span><span>install</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><div><div></div><div>Tip</div></div><div><p>在 PowerShell 窗口里直接右键即可粘贴（或者 <code>Ctrl + V</code>）。</p></div></div><p>它会自动做三件事：</p><ol>
<li>开启「适用于 Linux 的 Windows 子系统」功能</li>
<li>开启「虚拟机平台」功能</li>
<li>下载并安装 <strong>Ubuntu</strong>（默认发行版，最适合新手）</li>
</ol><p>过程大概几分钟，取决于网速。你会看到进度条。</p></section><section><h3>1.3 重启电脑<a href="#13-重启电脑"><span>#</span></a></h3><p>装完它通常会提示重启。<strong>必须重启</strong>，功能才生效。</p><div><figure><figcaption><span>PowerShell（管理员）</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>shutdown </span><span>/</span><span>r </span><span>/</span><span>t </span></span><span>0</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>如果没自动重启，就手动执行上面这行，或者正常重启一次。</p></section><section><h3>1.4 想装别的发行版？<a href="#14-想装别的发行版"><span>#</span></a></h3><p>默认装的是 Ubuntu。想看看还有哪些可选：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>wsl </span><span>--</span><span>list </span><span>--</span><span>online</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>会列出 Debian、Kali、openSUSE 等。指定安装：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>wsl </span><span>--</span><span>install </span><span>-</span><span>d Ubuntu</span><span>-</span></span><span>24.04</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><div><div></div><div>Important</div></div><div><p>推荐新手用 <strong>Ubuntu</strong>，教程最多、遇到问题最好搜。Debian 更精简，Kali 是安全测试专用，不适合日常开发。</p></div></div></section></section>
<section><h2>第 2 步：第一次启动，创建账号<a href="#第-2-步第一次启动创建账号"><span>#</span></a></h2><p>重启之后，<strong>Ubuntu 会自动弹出一个黑色窗口</strong>（如果没有，就去开始菜单找 Ubuntu 点开）。</p><p>第一次启动会初始化，然后让你设置账号：</p><div><figure><figcaption><span>Ubuntu</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Installing, this may take a few minutes...</span></div></div><div><div><div>2</div></div><div><span>Please create a default UNIX user account.</span></div></div><div><div><div>3</div></div><div><span>Enter new UNIX username: _</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>输入用户名</strong>（小写字母，别用中文和空格）：</p><div><figure><figcaption><span>Ubuntu</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Enter new UNIX username: w</span></div></div><div><div><div>2</div></div><div><span>New password: _</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>输入密码</strong> —— 然后你会慌，因为<strong>屏幕上什么都不显示</strong>。</p><div><div><div></div><div>Warning</div></div><div><p>这是 Linux 的传统：输密码时故意不显示任何字符（连 <code>*</code> 都没有），防止别人看到长度。
<strong>你照常输入就行，输完按回车。</strong> 别以为键盘坏了。</p></div></div><p>输两遍确认后，看到类似这样的提示符，就成功了：</p><div><figure><figcaption><span>Ubuntu</span></figcaption><pre><code><div><div><div>1</div></div><div><span>w@moyu:~$</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>🎉 <strong>恭喜，你现在有一个 Linux 了。</strong></p><p>这个提示符的含义：</p><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>w      @  moyu   :  ~    $</span></div></div><div><div><div>2</div></div><div><span>│         │        │    └─ $ 表示普通用户（# 表示管理员）</span></div></div><div><div><div>3</div></div><div><span>│         │        └─ ~ 表示当前在家目录</span></div></div><div><div><div>4</div></div><div><span>│         └─ 主机名（你的电脑名）</span></div></div><div><div><div>5</div></div><div><span>└─ 用户名</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>第 3 步：换国内软件源（必做）<a href="#第-3-步换国内软件源必做"><span>#</span></a></h2><p>Linux 装软件靠 <code>apt</code>，默认从<strong>国外服务器</strong>下载 —— 在国内会非常慢甚至连不上。换成国内镜像，速度能快几十倍。</p><p><strong>在 WSL 的黑色窗口里</strong>执行：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>sudo</span><span> </span><span>cp</span><span> </span><span>/etc/apt/sources.list.d/ubuntu.sources</span><span> </span><span>/etc/apt/sources.list.d/ubuntu.sources.bak</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span>sudo</span><span> </span><span>sed</span><span> </span><span>-i</span><span> </span><span>'s|http://archive.ubuntu.com|https://mirrors.aliyun.com|g; s|http://security.ubuntu.com|https://mirrors.aliyun.com|g'</span><span> </span><span>/etc/apt/sources.list.d/ubuntu.sources</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><div><div></div><div>Note</div></div><div><p>输入 <code>sudo</code> 开头的命令会要你输密码 —— 就是刚才设的那个，同样不显示，输完回车。</p></div></div><p>然后更新软件列表：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>sudo</span><span> </span><span>apt</span><span> </span><span>update</span><span> &amp;&amp; </span><span>sudo</span><span> </span><span>apt</span><span> </span><span>upgrade</span><span> </span><span>-y</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>看到一串下载、最后回到提示符，就 OK 了。</p><p><strong>其他可选镜像</strong>（挑一个用就行）：</p>

<table><thead><tr><th>镜像</th><th>地址</th></tr></thead><tbody><tr><td>阿里云</td><td><code>https://mirrors.aliyun.com/ubuntu</code></td></tr><tr><td>清华</td><td><code>https://mirrors.tuna.tsinghua.edu.cn/ubuntu</code></td></tr><tr><td>中科大</td><td><code>https://mirrors.ustc.edu.cn/ubuntu</code></td></tr></tbody></table></section>
<section><h2>第 4 步：搞懂文件系统（新手最容易踩的坑）<a href="#第-4-步搞懂文件系统新手最容易踩的坑"><span>#</span></a></h2><div><div><div></div><div>Important</div></div><div><p>这是<strong>最重要的一节</strong>，很多人在这里浪费时间。</p></div></div><section><h3>两套文件系统<a href="#两套文件系统"><span>#</span></a></h3>

<table><thead><tr><th>位置</th><th>路径</th><th>说明</th></tr></thead><tbody><tr><td><strong>Linux 自己的地盘</strong></td><td><code>/home/w/</code>、<code>~/</code></td><td>速度快，权限正常</td></tr><tr><td><strong>Windows 的盘</strong></td><td><code>/mnt/c/</code>、<code>/mnt/d/</code></td><td>就是你的 C 盘、D 盘</td></tr></tbody></table><p>比如你的 Windows 桌面，在 WSL 里是：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>cd</span><span> </span><span>/mnt/c/Users/你的用户名/Desktop</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>反过来，在 Windows 上访问 Linux 的文件：</p><ul>
<li>打开「此电脑」，左侧会看到一个 <strong>Linux</strong> 图标（企鹅 🐧），点进去就是</li>
<li>或者地址栏输入 <code>\\wsl$\Ubuntu-24.04</code></li>
</ul></section><section><h3>铁律：项目文件放在 Linux 自己的目录里<a href="#铁律项目文件放在-linux-自己的目录里"><span>#</span></a></h3><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span># ✅ 正确 —— 放这里，速度快、权限正常</span></div></div><div><div><div>2</div></div><div><span>cd</span><span> </span><span>~</span></div></div><div><div><div>3</div></div><div><span>mkdir</span><span> </span><span>myproject</span></div></div><div><div><div>4</div></div><div><span>cd</span><span> </span><span>myproject</span></div></div><div><div><div>5</div></div><div>
</div></div><div><div><div>6</div></div><div><span># ❌ 错误 —— 别把项目放 /mnt/c 下跑</span></div></div><div><div><div>7</div></div><div><span>cd</span><span> </span><span>/mnt/c/Users/w/myproject</span><span>    </span><span># 慢很多，还会遇到文件权限 bug</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><div><div></div><div>Warning</div></div><div><p><strong>为什么？</strong> <code>/mnt/c</code> 是网络共享的方式访问 Windows 文件的，大量小文件读写（比如 <code>npm install</code>、编译代码）会慢 5~10 倍，还可能出诡异的权限问题。</p><p>日常用法：<strong>代码放 Linux 里，用 VS Code 编辑，需要时再复制回 Windows。</strong></p></div></div></section></section>
<section><h2>第 5 步：装常用工具<a href="#第-5-步装常用工具"><span>#</span></a></h2><p>一条命令装上开发中常用的东西：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>sudo</span><span> </span><span>apt</span><span> </span><span>install</span><span> </span><span>-y</span><span> </span><span>build-essential</span><span> </span><span>git</span><span> </span><span>curl</span><span> </span><span>wget</span><span> </span><span>vim</span><span> </span><span>unzip</span><span> </span><span>zip</span><span> </span><span>htop</span><span> </span><span>net-tools</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>分别是：</p>

<table><thead><tr><th>软件</th><th>用途</th></tr></thead><tbody><tr><td><code>build-essential</code></td><td>C/C++ 编译器，很多软件装的时候要用到</td></tr><tr><td><code>git</code></td><td>版本管理，必装</td></tr><tr><td><code>curl</code> / <code>wget</code></td><td>下载文件、测试接口</td></tr><tr><td><code>vim</code></td><td>终端里的文本编辑器</td></tr><tr><td><code>unzip</code> / <code>zip</code></td><td>压缩解压</td></tr><tr><td><code>htop</code></td><td>任务管理器（比 Windows 的还好看）</td></tr><tr><td><code>net-tools</code></td><td><code>ifconfig</code> 等网络命令</td></tr></tbody></table><p>试试 <code>htop</code>：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>htop</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>按 <code>q</code> 退出。</p><section><h3>装 Python 环境（可选但推荐）<a href="#装-python-环境可选但推荐"><span>#</span></a></h3><p>Ubuntu 自带 Python 3。验证一下：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>python3</span><span> </span><span>--version</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>推荐再装个现代的包管理工具 <code>uv</code>（比 pip 快 10~100 倍）：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>curl</span><span> </span><span>-LsSf</span><span> </span><span>https://astral.sh/uv/install.sh</span><span> | </span><span>sh</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>装完重启终端，就可以用 <code>uv</code> 管理 Python 包了。</p></section></section>
<section><h2>第 6 步：让 WSL 能上网、能用代理<a href="#第-6-步让-wsl-能上网能用代理"><span>#</span></a></h2><section><h3>6.1 网络模式（新手可以先跳过）<a href="#61-网络模式新手可以先跳过"><span>#</span></a></h3><p>WSL 默认的 <strong>NAT 模式已经能用</strong> —— WSL 有自己的 IP，能正常上网、装软件包。这一节你可以先跳过去，等确实需要时再回来调。</p><div><div><div></div><div>Warning</div></div><div><p>网上很多教程推荐开「镜像模式」（<code>networkingMode=mirrored</code>）。
<strong>但如果你装了 Clash / v2ray 这类本地代理软件，千万别开。</strong>
镜像模式的网络初始化依赖 Windows 代理状态，开关一次梯子就可能导致下次启动报错
<code>0x8007054f</code> 并退化成”无网卡”。踩过这个坑的完整记录见<a href="/posts/wsl-troubleshooting">排障篇</a>。</p></div></div><p>如果要用，先建配置文件。<strong>在 Windows 上</strong>打开「此电脑」→ 地址栏输入 <code>%USERPROFILE%</code> → 回车，在这个文件夹里新建文件 <strong><code>.wslconfig</code></strong>（注意开头有个点）。</p><div><div><div></div><div>Tip</div></div><div><p>如果提示”必须输入文件名”，用记事本新建：右键 → 新建 → 文本文档 → 重命名为 <code>.wslconfig.</code>（首尾各一个点，Windows 会自动去掉末尾的点）。</p></div></div><p>稳妥的推荐配置：</p><div><div><div><figure><figcaption><span>.wslconfig</span><span>展开</span><span>收起</span></figcaption><pre><code><div><div><div>1</div></div><div><span>[wsl2]</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span># NAT 是默认模式，写不写都一样；关键是别开 autoProxy</span></div></div><div><div><div>4</div></div><div><span>networkingMode</span><span><span>=</span><span>nat</span></span></div></div><div><div><div>5</div></div><div><span>autoProxy</span><span><span>=</span><span>false</span></span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span># 通过 Windows 解析 DNS（NAT 下有效，能修不少奇怪的解析失败）</span></div></div><div><div><div>8</div></div><div><span>dnsTunneling</span><span><span>=</span><span>true</span></span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span># 资源限制（按你的电脑配置调整）</span></div></div><div><div><div>11</div></div><div><span>memory</span><span><span>=</span><span>8GB</span></span></div></div><div><div><div>12</div></div><div><span>processors</span><span><span>=</span><span>8</span></span></div></div><div><div><div>13</div></div><div><span>swap</span><span><span>=</span><span>4GB</span></span></div></div><div><div><div>14</div></div><div>
</div></div><div><div><div>15</div></div><div><span>[experimental]</span></div></div><div><div><div>16</div></div><div>
</div></div><div><div><div>17</div></div><div><span># 空闲时把内存还给 Windows</span></div></div><div><div><div>18</div></div><div><span>autoMemoryReclaim</span><span><span>=</span><span>gradual</span></span></div></div><div><div><div>19</div></div><div>
</div></div><div><div><div>20</div></div><div><span># 防止虚拟磁盘只增不减</span></div></div><div><div><div>21</div></div><div><span>sparseVhd</span><span><span>=</span><span>true</span></span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p>保存后<strong>在 PowerShell 里执行</strong>（让配置生效）：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>wsl </span><span>--</span><span>shutdown</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>然后重新打开 Ubuntu，配置就生效了。</p></section><section><h3>6.2 让 WSL 用上梯子<a href="#62-让-wsl-用上梯子"><span>#</span></a></h3><p>NAT 模式下 WSL 有独立 IP，<code>127.0.0.1</code> 指的是它自己，够不到 Windows 上的代理。所以要两步：</p><ol>
<li><strong>在你的代理软件里打开「允许局域网连接 / Allow LAN」</strong>，让它监听 <code>0.0.0.0:7897</code> 而不只是 <code>127.0.0.1</code></li>
<li><strong>WSL 里放一段自动探测脚本</strong>：</li>
</ol><div><div><div><figure><figcaption><span>WSL</span><span>展开</span><span>收起</span></figcaption><pre><code><div><div><div>1</div></div><div><span>cat</span><span> &gt;&gt; </span><span>~/.bashrc</span><span> </span><span>&lt;</span><span>&lt;</span><span>'EOF'</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span># ---- WSL proxy (auto-detect) ----</span></div></div><div><div><div>4</div></div><div><span>wsl_proxy</span><span>() {</span></div></div><div><div><div>5</div></div><div><span>    </span><span>GW</span><span><span>=</span><span>$(</span></span><span>ip</span><span> </span><span>route</span><span> </span><span>show</span><span> </span><span>default</span><span> </span><span>2&gt;/dev/null</span><span> | </span><span>awk</span><span> </span><span>'{print $3}'</span><span>)</span></div></div><div><div><div>6</div></div><div><span>    </span><span>if</span><span><span> [ </span><span>-n</span><span> </span></span><span>"</span><span>$GW</span><span>"</span><span> ] &amp;&amp; </span><span>timeout</span><span> </span><span>1</span><span> </span><span>bash</span><span> </span><span>-c</span><span> </span><span>"&lt;/dev/tcp/</span><span>$GW</span><span>/7897"</span><span> </span><span>2&gt;/dev/null</span><span>; </span><span>then</span></div></div><div><div><div>7</div></div><div><span>        </span><span>export</span><span> </span><span>http_proxy</span><span>=</span><span>"http://</span><span>$GW</span><span>:7897"</span></div></div><div><div><div>8</div></div><div><span>        </span><span>export</span><span> </span><span>https_proxy</span><span>=</span><span>"http://</span><span>$GW</span><span>:7897"</span></div></div><div><div><div>9</div></div><div><span>        </span><span>export</span><span> </span><span>no_proxy</span><span>=</span><span>"localhost,127.0.0.1,192.168.*,10.*,172.16.*,172.17.*,172.18.*,</span><span>\</span></div></div><div><div><div>10</div></div><div><span>172.19.*,172.20.*,172.21.*,172.22.*,172.23.*,172.24.*,172.25.*,172.26.*,172.27.*,</span><span>\</span></div></div><div><div><div>11</div></div><div><span>172.28.*,172.29.*,172.30.*,172.31.*,mirrors.aliyun.com,mirrors.tuna.tsinghua.edu.cn"</span></div></div><div><div><div>12</div></div><div><span>        </span><span>echo</span><span> </span><span>"[proxy] on -&gt; </span><span>$GW</span><span>:7897"</span></div></div><div><div><div>13</div></div><div><span>    </span><span>else</span></div></div><div><div><div>14</div></div><div><span>        </span><span>unset</span><span> </span><span>http_proxy</span><span> </span><span>https_proxy</span><span> </span><span>no_proxy</span></div></div><div><div><div>15</div></div><div><span>        </span><span>echo</span><span> </span><span>"[proxy] off (梯子没开，国内源直连)"</span></div></div><div><div><div>16</div></div><div><span>    </span><span>fi</span></div></div><div><div><div>17</div></div><div><span>}</span></div></div><div><div><div>18</div></div><div><span>wsl_proxy</span></div></div><div><div><div>19</div></div><div><span>EOF</span></div></div><div><div><div>20</div></div><div>
</div></div><div><div><div>21</div></div><div><span>source</span><span> </span><span>~/.bashrc</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p>这段脚本会探测网关的 7897 端口是否可达，<strong>梯子开着才启用代理，关了就自动取消</strong>。好处是关梯子不会让 WSL 变残废 —— 国内镜像源本来就不需要代理。</p><p>验证：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>$</span><span> </span><span>curl</span><span> </span><span>-sI</span><span> </span><span>https://github.com</span><span> </span><span>--max-time</span><span> </span><span>10</span><span> | </span><span>head</span><span> </span><span>-1</span></div></div><div><div><div>2</div></div><div><span>HTTP/1.1</span><span> </span><span>200</span><span> </span><span>Connection</span><span> </span><span>established</span><span>     </span><span># 梯子开着时</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><div><div></div><div>Note</div></div><div><p>不确定你的代理端口？Windows 上「设置 → 网络和 Internet → 代理」里能看到，一般是 <code>7890</code> 或 <code>7897</code>。脚本里的 <code>7897</code> 换成你自己的端口即可。</p></div></div><div><div><div></div><div>Note</div></div><div><p>如果启动时报 <code>0x8007054f</code> 或”无法配置网络”，说明 Windows 网络栈有问题，管理员 PowerShell 执行 <code>netsh winsock reset</code> + 重启即可。详见<a href="/posts/wsl-troubleshooting">排障篇</a>。</p></div></div></section></section>
<section><h2>第 7 步：装个好用的终端<a href="#第-7-步装个好用的终端"><span>#</span></a></h2><p>系统自带的终端比较朴素。推荐装 <strong>Windows Terminal</strong>：</p><ol>
<li>打开 Microsoft Store</li>
<li>搜 <code>Windows Terminal</code></li>
<li>点安装（免费）</li>
</ol><p>装好后它会自动识别你的 Ubuntu，<strong>一次开启多个标签页</strong>（PowerShell、Ubuntu 并存），支持分屏、主题、字体美化。</p><div><div><div></div><div>Note</div></div><div><p>Windows 11 其实自带 Windows Terminal，开始菜单搜一下可能已经有了。</p></div></div></section>
<section><h2>第 8 步：用 VS Code 写代码（强烈推荐）<a href="#第-8-步用-vs-code-写代码强烈推荐"><span>#</span></a></h2><p>这是 WSL 最爽的用法之一。</p><ol>
<li>Windows 上正常安装 <a href="https://code.visualstudio.com/" target="_blank">VS Code</a></li>
<li>打开 VS Code，装扩展 <strong>WSL</strong>（搜 <code>WSL</code>，微软官方那个）</li>
<li>在 WSL 终端里，进入你的项目目录，执行：</li>
</ol><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>cd</span><span> </span><span>~/myproject</span></div></div><div><div><div>2</div></div><div><span>code</span><span> </span><span>.</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>第一次会自动在 WSL 里装 VS Code 服务端</strong>，之后就能：</p><ul>
<li>用 Windows 的 VS Code 界面</li>
<li>编辑 Linux 里的文件</li>
<li>终端、调试、Git 全都在 Linux 环境里跑</li>
</ul><div><div><div></div><div>Tip</div></div><div><p>这是目前 Windows 上做开发最舒服的组合，强烈建议试试。</p></div></div></section>
<section><h2>第 9 步：开启 systemd（想跑服务的话）<a href="#第-9-步开启-systemd想跑服务的话"><span>#</span></a></h2><p>如果你想在 WSL 里跑 Docker、数据库、SSH 之类的<strong>常驻服务</strong>，需要开 systemd。</p><p><strong>在 WSL 里</strong>执行：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>sudo</span><span> </span><span>tee</span><span> </span><span>/etc/wsl.conf</span><span> &gt; </span><span>/dev/null</span><span> &lt;&lt;</span><span>'EOF'</span></div></div><div><div><div>2</div></div><div><span>[boot]</span></div></div><div><div><div>3</div></div><div><span>systemd=true</span></div></div><div><div><div>4</div></div><div><span>EOF</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>然后<strong>在 PowerShell 里</strong>：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>wsl </span><span>--</span><span>shutdown</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>重新打开 Ubuntu，验证：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>systemctl</span><span> </span><span>status</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>能正常显示就说明开了。</p></section>
<section><h2>常用命令速查<a href="#常用命令速查"><span>#</span></a></h2><section><h3>Windows 端（PowerShell）<a href="#windows-端powershell"><span>#</span></a></h3>

<table><thead><tr><th>命令</th><th>作用</th></tr></thead><tbody><tr><td><code>wsl</code></td><td>进入默认的 Linux</td></tr><tr><td><code>wsl ~</code></td><td>进入并定位到家目录</td></tr><tr><td><code>wsl -l -v</code></td><td>列出所有发行版及状态</td></tr><tr><td><code>wsl --shutdown</code></td><td>关闭所有 WSL（改配置后必做）</td></tr><tr><td><code>wsl --update</code></td><td>更新 WSL 内核</td></tr><tr><td><code>wsl --status</code></td><td>查看 WSL 状态</td></tr><tr><td><code>wsl --list --online</code></td><td>查看可安装的发行版</td></tr><tr><td><code>wsl --unregister Ubuntu-24.04</code></td><td><strong>彻底删除</strong>某个发行版（数据全没）</td></tr><tr><td><code>wsl --export Ubuntu-24.04 backup.tar</code></td><td>备份</td></tr><tr><td><code>wsl --import Ubuntu-24.04 D:\wsl backup.tar</code></td><td>从备份恢复</td></tr></tbody></table></section><section><h3>Linux 端（Ubuntu 窗口）<a href="#linux-端ubuntu-窗口"><span>#</span></a></h3>

<table><thead><tr><th>命令</th><th>作用</th></tr></thead><tbody><tr><td><code>pwd</code></td><td>我在哪个目录</td></tr><tr><td><code>ls</code></td><td>列出当前目录内容</td></tr><tr><td><code>ls -la</code></td><td>详细列出（含隐藏文件）</td></tr><tr><td><code>cd 目录名</code></td><td>进入目录</td></tr><tr><td><code>cd ..</code></td><td>返回上一级</td></tr><tr><td><code>cd ~</code></td><td>回家目录</td></tr><tr><td><code>mkdir 名字</code></td><td>新建文件夹</td></tr><tr><td><code>rm -rf 名字</code></td><td><strong>强制删除</strong>（慎用，不进回收站）</td></tr><tr><td><code>cp a b</code> / <code>mv a b</code></td><td>复制 / 移动</td></tr><tr><td><code>cat 文件名</code></td><td>查看文件内容</td></tr><tr><td><code>sudo 命令</code></td><td>以管理员身份执行</td></tr><tr><td><code>apt install 软件名</code></td><td>装软件</td></tr><tr><td><code>history</code></td><td>看历史命令</td></tr><tr><td><code>clear</code></td><td>清屏（<code>Ctrl + L</code> 同效）</td></tr><tr><td><code>explorer.exe .</code></td><td><strong>用 Windows 资源管理器打开当前目录</strong></td></tr><tr><td><code>code .</code></td><td>用 VS Code 打开当前目录</td></tr></tbody></table></section></section>
<section><h2>常见问题 FAQ<a href="#常见问题-faq"><span>#</span></a></h2><section><h3>输密码时屏幕没反应，是不是卡了？<a href="#输密码时屏幕没反应是不是卡了"><span>#</span></a></h3><p>没有，正常输入即可。Linux 输密码<strong>故意不显示任何字符</strong>，防止别人看到密码长度。输完回车就行。</p></section><section><h3><code>sudo</code> 提示 “user is not in the sudoers file”？<a href="#sudo-提示-user-is-not-in-the-sudoers-file"><span>#</span></a></h3><p>说明你用的是 root 或者账号权限有问题。正常创建的账号都能 sudo。如果进了 root（提示符是 <code>#</code>），用 <code>adduser 用户名</code> 再 <code>usermod -aG sudo 用户名</code> 建个新号。</p></section><section><h3>想改默认登录账号？<a href="#想改默认登录账号"><span>#</span></a></h3><p>在 PowerShell 里：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span>ubuntu2404.exe</span><span><span> config </span><span>--</span><span>default</span><span>-</span><span>user 你的用户名</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>WSL 太占内存怎么办？<a href="#wsl-太占内存怎么办"><span>#</span></a></h3><p><code>.wslconfig</code> 里加 <code>memory=4GB</code>（按需要调）。另外 <code>autoMemoryReclaim=gradual</code> 会让空闲内存自动还给 Windows。</p><p>不用 WSL 时在 PowerShell 执行 <code>wsl --shutdown</code> 可以完全释放内存。</p></section><section><h3>怎么卸载 WSL？<a href="#怎么卸载-wsl"><span>#</span></a></h3><div><figure><figcaption><span>PowerShell（管理员）</span></figcaption><pre><code><div><div><div>1</div></div><div><span># 删除某个发行版（数据一并删除）</span></div></div><div><div><div>2</div></div><div><span><span>wsl </span><span>--</span><span>unregister Ubuntu</span><span>-</span></span><span>24.04</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span># 完全移除 WSL 功能</span></div></div><div><div><div>5</div></div><div><span><span>wsl </span><span>--</span><span>shutdown</span></span></div></div><div><div><div>6</div></div><div><span>dism.exe</span><span><span> </span><span>/</span><span>online </span><span>/</span></span><span>disable-feature</span><span><span> </span><span>/</span><span>featurename:Microsoft</span><span>-</span><span>Windows</span><span>-</span><span>Subsystem</span><span>-</span><span>Linux</span></span></div></div><div><div><div>7</div></div><div><span>dism.exe</span><span><span> </span><span>/</span><span>online </span><span>/</span></span><span>disable-feature</span><span><span> </span><span>/</span><span>featurename:VirtualMachinePlatform</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>然后去「设置 → 应用」卸载 Ubuntu 应用。</p></section><section><h3>WSL 里的虚拟硬盘太大，能瘦身吗？<a href="#wsl-里的虚拟硬盘太大能瘦身吗"><span>#</span></a></h3><p>能。<code>.wslconfig</code> 加 <code>sparseVhd=true</code> 后，再用：</p><div><figure><figcaption><span>PowerShell（管理员）</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>wsl </span><span>--</span><span>shutdown</span></span></div></div><div><div><div>2</div></div><div><span>Optimize-VHD</span><span><span> </span><span>-</span><span>Path </span></span><span><span>"</span><span>$</span></span><span>env:LOCALAPPDATA</span><span>\Packages\*Ubuntu*\LocalState\ext4.vhdx"</span><span><span> </span><span>-</span><span>Mode Full</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div></section><section><h3>能跑 Linux 图形界面程序吗？<a href="#能跑-linux-图形界面程序吗"><span>#</span></a></h3><p><strong>Windows 11 可以。</strong> 直接装了就能用，WSL 会自动转发到 Windows 桌面：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>sudo</span><span> </span><span>apt</span><span> </span><span>install</span><span> </span><span>-y</span><span> </span><span>gedit</span></div></div><div><div><div>2</div></div><div><span>gedit</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>会弹出一个真正的 Linux 窗口应用在 Windows 桌面上。这叫 WSLg。</p></section><section><h3>能跑 Docker 吗？<a href="#能跑-docker-吗"><span>#</span></a></h3><p>两种方案：</p><ol>
<li><strong>装 Docker Desktop</strong>，设置里开启 “Use the WSL 2 based engine”（最省事）</li>
<li>在 WSL 里直接装 <code>docker-ce</code>（需要先开 systemd）</li>
</ol><p>新手推荐方案 1。</p></section><section><h3>命令在 PowerShell 里报错”无法识别”？<a href="#命令在-powershell-里报错无法识别"><span>#</span></a></h3><div><div><div></div><div>Caution</div></div><div><p><strong>你大概把 Linux 命令粘到 Windows 里了。</strong> <code>ls</code>、<code>cat</code>、<code>grep</code>、<code>head</code>、<code>env</code> 这些在 PowerShell 里不存在。</p><ul>
<li>蓝色窗口（PowerShell）→ 跑 <code>wsl</code>、<code>dism</code>、<code>netsh</code> 这些</li>
<li>黑色窗口（Ubuntu）→ 跑 <code>apt</code>、<code>cd</code>、<code>ls</code>、<code>curl</code> 这些</li>
</ul><p>这是新手最常见的错误，没有之一。</p></div></div></section></section>
<section><h2>下一步<a href="#下一步"><span>#</span></a></h2><p>现在你有一个能用的 Linux 了。推荐按这个顺序玩下去：</p><ol>
<li><strong>熟悉命令行</strong> —— 试试 <code>ls</code>、<code>cd</code>、<code>pwd</code>、<code>mkdir</code>，别怕，删不坏系统</li>
<li><strong>装 VS Code + WSL 扩展</strong> —— 体验真正的开发环境</li>
<li><strong>跑一个 Python / Node 项目</strong> —— 感受和 Windows 原生开发的差别</li>
<li><strong>学 Git</strong> —— <code>git clone</code> 一个开源项目下来跑跑看</li>
</ol><p>遇到问题别慌，<strong>错误信息复制去搜</strong>，WSL 用户量大，基本都有人踩过。</p><p>装不上或者网络出问题？看<a href="/posts/wsl-troubleshooting">排障篇</a>，那里记录了六个坑的完整排查过程。</p></section>]]></content>
    </entry>
    <entry>
      <id>https://moyuspace.icu/posts/wsl-troubleshooting/</id>
      <title type="text">WSL 3.0.3 安装排障实录：从 MSI 损坏到网络崩溃</title>
      <published>2026-10-17T00:00:00.000Z</published>
      <updated>2026-10-17T00:00:00.000Z</updated>
      <author><name>沫雨</name></author>
      <link rel="alternate" href="https://moyuspace.icu/posts/wsl-troubleshooting/"/>
      <summary type="text">一次装 WSL，踩了六个坑、绕了五条弯路。真正的原因只有一个，但前面五个&quot;疑似凶手&quot;每一个都看起来很像。本文记录完整排查链路、每个阶段的判断依据，以及最后那条一击致命的命令。</summary>
      <content type="html"><![CDATA[<p>一次装 WSL，踩了六个坑、绕了五条弯路。真正的原因只有一个，但前面五个”疑似凶手”每一个都看起来很像。</p>
<p>本文记录完整的排查链路、每个阶段的判断依据，以及最后那条一击致命的命令。</p>
<div><div><div></div><div>Note</div></div><div><p>如果你只是想装 WSL 还没开始，先看<a href="/posts/wsl-install-guide">安装教程</a>。这篇是装不上 / 网络不通时的救命文档。</p></div></div>
<section><h2>一、环境与目标<a href="#一环境与目标"><span>#</span></a></h2>

<table><thead><tr><th>项目</th><th>值</th></tr></thead><tbody><tr><td>系统</td><td>Windows 11 Build 26200（25H2）</td></tr><tr><td>CPU</td><td>13th Gen Intel Core i7-13700H</td></tr><tr><td>内存</td><td>16 GB</td></tr><tr><td>网卡</td><td>Intel Wi-Fi 6 AX201（无线连接）</td></tr><tr><td>目标</td><td>WSL 3.0.3 + Ubuntu 24.04 LTS</td></tr><tr><td>初始状态</td><td>已装 Store 版 <code>WindowsSubsystemForLinux 2.5.9.0</code>，未装任何发行版</td></tr></tbody></table><p>先做体检，确认硬件层面没问题：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span>(</span><span>Get-ComputerInfo</span><span>).HyperVisorPresent                      </span><span># True</span></div></div><div><div><div>2</div></div><div><span>Get-Service</span><span> AppXSVC                                        </span><span># Running</span></div></div><div><div><div>3</div></div><div><span>Get-AppxPackage</span><span> MicrosoftCorporationII.WindowsSubsystemForLinux</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>虚拟化开着、AppX 部署服务正常、WSL 内核包已存在 —— <strong>只差一个发行版</strong>。看起来是顺手的事。</p></section>
<section><h2>二、坑 1：<code>Wsl/CallMsi/REGDB_E_CLASSNOTREG</code><a href="#二坑-1wslcallmsiregdb_e_classnotreg"><span>#</span></a></h2><section><h3>现象<a href="#现象"><span>#</span></a></h3><div><figure><figcaption><span>PowerShell（管理员）</span></figcaption><pre><code><div><div><div>1</div></div><div><span>wsl --install</span></div></div><div><div><div>2</div></div><div><span>wsl: WSL 安装似乎已损坏 (错误代码： Wsl/CallMsi/Install/REGDB_E_CLASSNOTREG)。</span></div></div><div><div><div>3</div></div><div><span>按任意键修复 WSL，或 CTRL-C 取消。</span></div></div><div><div><div>4</div></div><div><span>此提示将在 60 秒后超时。</span></div></div><div><div><div>5</div></div><div><span>正在更新适用于 Linux 的 Windows 子系统: 3.0.3。</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><code>REGDB_E_CLASSNOTREG</code> 即 COM 类未注册，发生在 Store 版 WSL 从 2.5.9 升级到 3.0.3 的 MSI 环节。</p><div><div><div></div><div>Warning</div></div><div><p><strong>别按任意键。</strong> 它的自动修复基本不会成功，只会让你多等 60 秒。直接 <code>CTRL-C</code> 取消。</p></div></div></section><section><h3>排查<a href="#排查"><span>#</span></a></h3><p><code>AppXSVC</code>（AppX Deployment Service）状态正常，<code>msiserver</code> 是 Manual 按需启动也属正常。所以问题不在服务，而在<strong>这条升级链路本身</strong>。</p></section><section><h3>解决：绕过 Store，用独立 MSI 安装<a href="#解决绕过-store用独立-msi-安装"><span>#</span></a></h3><p>微软在 GitHub Release 上提供完整的离线安装包 —— <a href="https://github.com/microsoft/WSL/releases" target="_blank">microsoft/WSL/releases</a>。最新版是 <code>wsl.3.0.3.0.x64.msi</code>（约 351 MB）。</p><div><div><div></div><div>Note</div></div><div><p>国内直连 GitHub Release 经常中断（<code>curl: (56) schannel: server closed abruptly</code>）。用浏览器或下载工具通常更稳，下载完校验一下大小，351 MB 才完整。</p></div></div><p>管理员 PowerShell 里执行这套组合拳：</p><div><div><div><figure><figcaption><span>PowerShell（管理员）</span><span>展开</span><span>收起</span></figcaption><pre><code><div><div><div>1</div></div><div><span># 1. 停掉 WSL 进程</span></div></div><div><div><div>2</div></div><div><span>Get-Process</span><span><span> wsl, wslservice </span><span>-</span><span>ErrorAction SilentlyContinue | </span></span><span>Stop-Process</span><span><span> </span><span>-</span><span>Force</span></span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span># 2. 卸载损坏的 Store 包（此时未装任何发行版，删它零风险）</span></div></div><div><div><div>5</div></div><div><span>Get-AppxPackage</span><span> MicrosoftCorporationII.WindowsSubsystemForLinux | </span><span>Remove-AppxPackage</span></div></div><div><div><div>6</div></div><div>
</div></div><div><div><div>7</div></div><div><span># 3. 清掉失效的 wsl.exe 别名</span></div></div><div><div><div>8</div></div><div><span>Remove-Item</span><span> </span><span>'HKCU:\Software\Microsoft\Windows\CurrentVersion\App Paths\wsl.exe'</span><span><span> </span><span>-</span><span>Recurse </span><span>-</span><span>Force</span></span></div></div><div><div><div>9</div></div><div>
</div></div><div><div><div>10</div></div><div><span># 4. 用本地 MSI 安装（/passive 显示进度条，/norestart 不自动重启）</span></div></div><div><div><div>11</div></div><div><span><span>msiexec </span><span>/</span><span>i </span></span><span>"C:\Users\w\Downloads\wsl.3.0.3.0.x64.msi"</span><span><span> </span><span>/</span><span>passive </span><span>/</span><span>norestart</span></span></div></div><div><div><div>12</div></div><div>
</div></div><div><div><div>13</div></div><div><span># 5. 确保两个 Windows 功能开着</span></div></div><div><div><div>14</div></div><div><span>dism.exe</span><span><span> </span><span>/</span><span>online </span><span>/</span></span><span>enable-feature</span><span><span> </span><span>/</span><span>featurename:Microsoft</span><span>-</span><span>Windows</span><span>-</span><span>Subsystem</span><span>-</span><span>Linux </span><span>/</span><span>all </span><span>/</span><span>norestart</span></span></div></div><div><div><div>15</div></div><div><span>dism.exe</span><span><span> </span><span>/</span><span>online </span><span>/</span></span><span>enable-feature</span><span><span> </span><span>/</span><span>featurename:VirtualMachinePlatform </span><span>/</span><span>all </span><span>/</span><span>norestart</span></span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p><code>msiexec</code> 返回 <code>0</code> 或 <code>3010</code> 都算成功（3010 表示需要重启）。</p></section></section>
<section><h2>三、坑 2：<code>localhost</code> 代理未镜像<a href="#三坑-2localhost-代理未镜像"><span>#</span></a></h2><p>重启后装发行版，这次很顺利：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span>wsl --install -d Ubuntu-24.04</span></div></div><div><div><div>2</div></div><div><span>已成功安装分发。可以通过"wsl.exe -d Ubuntu-24.04"启动它</span></div></div><div><div><div>3</div></div><div><span>wsl: 检测到 localhost 代理配置，但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理。</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>创建了 UNIX 用户后进入系统。但那行警告埋下伏笔 —— <strong>本机 Windows 开着系统代理 <code>127.0.0.1:7897</code></strong>，而默认的 NAT 模式里 WSL 是独立 IP，够不到 Windows 的 <code>127.0.0.1</code>。</p><section><h3>第一反应：切镜像模式<a href="#第一反应切镜像模式"><span>#</span></a></h3><p>镜像模式（mirrored）让 WSL 直接共用 Windows 的网络栈，<code>127.0.0.1</code> 就是 Windows 的 <code>127.0.0.1</code>：</p><div><figure><figcaption><span>.wslconfig</span></figcaption><pre><code><div><div><div>1</div></div><div><span>[wsl2]</span></div></div><div><div><div>2</div></div><div><span>networkingMode</span><span><span>=</span><span>mirrored</span></span></div></div><div><div><div>3</div></div><div><span>autoProxy</span><span><span>=</span><span>true</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>然后就是长达一个小时的噩梦开始。</p></section></section>
<section><h2>四、坑 3：<code>0x8007054f</code>，WSL 直接退化成无网卡<a href="#四坑-30x8007054fwsl-直接退化成无网卡"><span>#</span></a></h2><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span>wsl ~</span></div></div><div><div><div>2</div></div><div><span>wsl: 出现了内部错误。</span></div></div><div><div><div>3</div></div><div><span>错误代码： CreateInstance/CreateVm/ConfigureNetworking/0x8007054f</span></div></div><div><div><div>4</div></div><div><span>wsl: 无法配置网络 (networkingMode Mirrored)，回退到 networkingMode None。</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><div><div></div><div>Caution</div></div><div><p>注意最后那句：<strong>回退到 <code>networkingMode None</code></strong> —— 这不是降级，是<strong>这台虚拟机连网卡都没有了</strong>。后面所有的”网络不通”都源于此。</p></div></div><section><h3>误判一：以为是 VMware 的锅<a href="#误判一以为是-vmware-的锅"><span>#</span></a></h3><p>本机装了 VMware，有两张虚拟网卡 <code>VMnet1</code> / <code>VMnet8</code>：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Get-NetAdapter</span><span> | </span><span>Where-Object</span><span> { $_</span><span>.InterfaceDescription</span><span><span> </span><span>-match</span><span> </span></span><span>'TUN|TAP|VMware|Hyper-V'</span><span> }</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>VMware 的虚拟交换机确实会跟 Hyper-V 抢网络配置，是 mirrored 失败的常见原因。先禁用网卡试：</p><div><figure><figcaption><span>PowerShell（管理员）</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Get-NetAdapter</span><span><span> </span><span>-</span><span>Name </span></span><span>"VMware Network Adapter VMnet1"</span><span>,</span><span>"VMware Network Adapter VMnet8"</span><span> | </span><span>Disable-NetAdapter</span><span><span> </span><span>-</span><span>Confirm:</span></span><span>$false</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>仍然报 <code>0x8007054f</code>。</strong></p><p>再把 VMware 整个卸载、重启：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Get-Service</span><span> | </span><span>Where-Object</span><span> { $_</span><span>.Name</span><span><span> </span><span>-match</span><span> </span></span><span>'VMnet|VMWARE|VMAuthd'</span><span> }   </span><span># 空，确认清干净</span></div></div><div><div><div>2</div></div><div><span>Get-NetAdapter</span><span><span> </span><span>-</span><span>IncludeHidden                                           </span></span><span># VMnet 已消失</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>还是报 <code>0x8007054f</code>。</strong></p><div><div><div></div><div>Important</div></div><div><p>到这里可以确认：VMware 是无辜的。但它背了最久的锅，因为它”看起来最像”。</p></div></div></section></section>
<section><h2>五、坑 4：NAT 模式下的 IPv6 陷阱<a href="#五坑-4nat-模式下的-ipv6-陷阱"><span>#</span></a></h2><p>先回退到 NAT 保命：</p><div><figure><figcaption><span>.wslconfig</span></figcaption><pre><code><div><div><div>1</div></div><div><span>[wsl2]</span></div></div><div><div><div>2</div></div><div><span>networkingMode</span><span><span>=</span><span>nat</span></span></div></div><div><div><div>3</div></div><div><span>dnsTunneling</span><span><span>=</span><span>true</span></span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>网络起来了：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>$</span><span> </span><span>ip</span><span> </span><span>-4</span><span> </span><span>addr</span><span> </span><span>show</span><span> </span><span>eth0</span><span> | </span><span>grep</span><span> </span><span>inet</span></div></div><div><div><div>2</div></div><div><span>inet</span><span> </span><span>172.30.7.40/20</span><span> </span><span>brd</span><span> </span><span>172.30.15.255</span><span> </span><span>scope</span><span> </span><span>global</span><span> </span><span>eth0</span></div></div><div><div><div>3</div></div><div><span>$</span><span> </span><span>cat</span><span> </span><span>/etc/resolv.conf</span><span> | </span><span>grep</span><span> </span><span>nameserver</span></div></div><div><div><div>4</div></div><div><span>nameserver</span><span> </span><span>10.255.255.254</span><span>          </span><span># dnsTunneling 的隧道地址，正常</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>换清华源后 <code>apt update</code>，<strong>索引文件全部下载成功</strong>，但 deb 包集体失败：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Get:1 https://mirrors.tuna.tsinghua.edu.cn/ubuntu noble InRelease [256 kB]   ← 成功</span></div></div><div><div><div>2</div></div><div><span>Err:1 ... libgssapi-krb5-2_1.20.1-6ubuntu2.10_amd64.deb</span></div></div><div><div><div>3</div></div><div><span><span>  </span></span><span>Cannot initiate the connection to mirrors.tuna.tsinghua.edu.cn:443 (2402:f000:1:400::2).</span></div></div><div><div><div>4</div></div><div><span><span>  </span></span><span>- connect (101: Network is unreachable)</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p><strong>关键线索是那个 IPv6 地址 <code>2402:f000:1:400::2</code></strong>。清华源有 AAAA 记录，apt 优先走 IPv6，而 WSL 的 NAT 网络没有 IPv6 路由 → 直接不可达。</p><p>强制 IPv4 即可：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>echo</span><span> </span><span>'Acquire::ForceIPv4 "true";'</span><span> | </span><span>sudo</span><span> </span><span>tee</span><span> </span><span>/etc/apt/apt.conf.d/99force-ipv4</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>同理，<code>curl</code> 在 WSL 里没输出也是这个原因，加 <code>-4</code> 验证：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>curl</span><span> </span><span>-4</span><span> </span><span>-sI</span><span> </span><span>https://mirrors.tuna.tsinghua.edu.cn</span><span> </span><span>--max-time</span><span> </span><span>10</span><span> | </span><span>head</span><span> </span><span>-1</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>六、坑 5：IPv6 修好了还是连不上<a href="#六坑-5ipv6-修好了还是连不上"><span>#</span></a></h2><p>加了 <code>ForceIPv4</code> 之后，错误里的 IPv6 地址确实消失了，但换成了：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>E: Failed to fetch ... libcurl3t64-gnutls_8.5.0-2ubuntu10.16_amd64.deb</span></div></div><div><div><div>2</div></div><div><span><span>  </span></span><span>Unable to connect to mirrors.tuna.tsinghua.edu.cn:https:</span></div></div></code></pre><div><div></div><div></div></div></figure></div><section><h3>判断依据<a href="#判断依据"><span>#</span></a></h3><p>这一段值得单独说：</p><ul>
<li><code>dists/</code> 下的 InRelease（126 ~ 256 KB）<strong>全部成功</strong></li>
<li><code>pool/</code> 下的 deb 包（几百 KB ~ 几十 MB）<strong>大量失败</strong></li>
<li>报错是 <code>Unable to connect</code>（连接建立失败），不是传输中断</li>
</ul><p>如果是 MTU 问题，小文件一样会挂；所以不是 MTU。结合”索引通、包不通”，更像是<strong>连接层被掐</strong> —— 后来证实这其实是网络栈损坏的连带症状，而不是源的问题。</p></section><section><h3>又排除了一个：代理软件<a href="#又排除了一个代理软件"><span>#</span></a></h3><p>把梯子整个关掉重跑，<code>apt update</code> 照样失败。<strong>代理软件无辜。</strong></p><div><div><div></div><div>Note</div></div><div><p>顺带一个易忽略的点：只退出梯子软件、但 Windows 的”系统代理”开关还开着（<code>ProxyEnable=1</code> 指向 <code>127.0.0.1:7897</code>），会让 Windows 处于半断网状态，WSL 的 <code>dnsTunneling</code> 也会跟着遭殃。关梯子要连开关一起关。</p></div></div></section></section>
<section><h2>七、阶段性突破：重置 Windows 网络栈<a href="#七阶段性突破重置-windows-网络栈"><span>#</span></a></h2><p>查 <code>0x8007054f</code> 时确认了两件事：</p><ol>
<li>该错误由 <strong>Hyper-V 虚拟交换机与主机物理网卡驱动初始化冲突</strong> 触发</li>
<li>社区验证有效的解法是<strong>重置 Windows 网络栈</strong></li>
</ol><p>有个低成本试法：<strong>先断网（关 Wi-Fi / 拔网线）→ <code>wsl --shutdown</code> → 启动 WSL → 再连网</strong>。断网状态下没有物理网卡可绑定，交换机能干净建起来。</p><p>但更彻底、一步到位的是这个（管理员 PowerShell，需重启）：</p><div><figure><figcaption><span>PowerShell（管理员）</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>wsl </span><span>--</span><span>shutdown</span></span></div></div><div><div><div>2</div></div><div><span>net stop hns</span></div></div><div><div><div>3</div></div><div><span>net start hns</span></div></div><div><div><div>4</div></div><div><span>netsh winsock reset</span></div></div><div><div><div>5</div></div><div><span>netsh int ip reset</span></div></div><div><div><div>6</div></div><div><span><span>shutdown </span><span>/</span><span>r </span><span>/</span><span>t </span></span><span>0</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>重启后再进 WSL —— <strong>报错消失了。</strong></p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>$</span><span> </span><span>hostname</span><span> </span><span>-I</span></div></div><div><div><div>2</div></div><div><span>192.168.1.112</span><span> </span><span>fd8e:133f:b5f7:0:bd12:a5a:7ee2:e51d</span><span> </span><span>...</span><span>   </span><span># 与 Windows 同网段 + IPv6 都回来了</span></div></div><div><div><div>3</div></div><div><span>$</span><span> </span><span>sudo</span><span> </span><span>apt</span><span> </span><span>update</span></div></div><div><div><div>4</div></div><div><span>Fetched</span><span> </span><span>3227</span><span> </span><span>kB</span><span> </span><span>in</span><span> </span><span>1s</span><span> (4548 </span><span>kB/s</span><span>)                        </span><span># 一次成功</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>镜像模式正常，代理自动同步，IPv6 可用，apt 跑满速。</p><p>当时以为故事到此结束。<strong>并没有</strong> —— 第二天它又崩了，而且崩得一模一样。</p></section>
<section><h2>八、反转：真凶其实是代理软件<a href="#八反转真凶其实是代理软件"><span>#</span></a></h2><p>复现规律是用户自己发现的：</p><blockquote><p>使用途中如果<strong>开了代理再关掉</strong>，就会弹窗提示重启 WSL，<strong>重启之后还是报 <code>0x8007054f</code></strong>。</p></blockquote><p>这条线索一下子把前面所有矛盾都解释了 —— 那天 <code>winsock reset</code> 之后之所以成功，是因为<strong>那次启动代理还没打开</strong>。</p><section><h3>证据<a href="#证据"><span>#</span></a></h3><p>查进程确认本机跑的是 <strong>Clash Verge</strong>：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Get-Process</span><span> | </span><span>Where-Object</span><span> { $_</span><span>.ProcessName</span><span><span> </span><span>-match</span><span> </span></span><span>'clash|mihomo|verge|sing|v2ray'</span><span> }</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span><span> </span></span><span>3532 clash-verge         D:\Program Files\Clash Verge\clash-verge.exe</span></div></div><div><div><div>2</div></div><div><span>27320 verge-mihomo        D:\Program Files\Clash Verge\verge-mihomo.exe</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>再看网卡，<strong>WSL 的那张 <code>vEthernet (WSL (Hyper-V firewall))</code> 不见了</strong>，多出来一对陌生组件：</p><div><figure><figcaption><span>PowerShell</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Get-NetAdapter</span><span><span> </span><span>-</span><span>IncludeHidden | </span></span><span>Where-Object</span><span> { $_</span><span>.InterfaceDescription</span><span><span> </span><span>-match</span><span> </span></span><span>'Hyper-V|WSL'</span><span> }</span></div></div></code></pre><div><div></div><div></div></div></figure></div><div><figure><figcaption></figcaption><pre><code><div><div><div>1</div></div><div><span>Name                     InterfaceDescription                       Status</span></div></div><div><div><div>2</div></div><div><span>----                     --------------------                       ------</span></div></div><div><div><div>3</div></div><div><span>vEthernet (FSE HostVnic) Hyper-V Virtual Ethernet Container Adapter Up</span></div></div><div><div><div>4</div></div><div><span>vSwitch (FSE Switch)     Hyper-V Virtual Switch Extension Adapter   Up</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>代理软件运行时会改 Windows 代理状态、并往 Hyper-V 网络栈里插入自己的组件。
<strong>而镜像模式的网络初始化恰恰依赖这份状态</strong> —— 开关一次，状态就不一致了，下次 WSL 起不来。</p><div><div><div></div><div>Warning</div></div><div><p><strong>结论：只要 Windows 上装了本地代理客户端，镜像模式就不稳定。</strong>
这不是配置问题，是架构冲突。查资料时其实早就看到这句话
（“只要你在 Windows 开了本地代理，WSL Mirrored 网络就极易报这个错”），当时没当回事。</p></div></div></section><section><h3>最终架构：NAT + 自动探测代理<a href="#最终架构nat--自动探测代理"><span>#</span></a></h3><p>既然会频繁开关梯子，那就<strong>彻底不用镜像模式</strong>。NAT 不读 Windows 代理状态，开关梯子对它毫无影响。</p><p>代价是 NAT 下 <code>127.0.0.1</code> 够不到 Windows 的代理，得绕一下：</p><ol>
<li><strong>Clash Verge 里打开「允许局域网连接 / Allow LAN」</strong>，让它监听 <code>0.0.0.0:7897</code> 而不只是 <code>127.0.0.1</code></li>
<li><strong>WSL 里放一段自动探测脚本</strong>，梯子开着才走代理，关了自动降级：</li>
</ol><div><div><div><figure><figcaption><span>WSL</span><span>展开</span><span>收起</span></figcaption><pre><code><div><div><div>1</div></div><div><span>cat</span><span> &gt;&gt; </span><span>~/.bashrc</span><span> </span><span>&lt;</span><span>&lt;</span><span>'EOF'</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span># ---- WSL proxy (auto-detect) ----</span></div></div><div><div><div>4</div></div><div><span>wsl_proxy</span><span>() {</span></div></div><div><div><div>5</div></div><div><span>    </span><span>GW</span><span><span>=</span><span>$(</span></span><span>ip</span><span> </span><span>route</span><span> </span><span>show</span><span> </span><span>default</span><span> </span><span>2&gt;/dev/null</span><span> | </span><span>awk</span><span> </span><span>'{print $3}'</span><span>)</span></div></div><div><div><div>6</div></div><div><span>    </span><span>if</span><span><span> [ </span><span>-n</span><span> </span></span><span>"</span><span>$GW</span><span>"</span><span> ] &amp;&amp; </span><span>timeout</span><span> </span><span>1</span><span> </span><span>bash</span><span> </span><span>-c</span><span> </span><span>"&lt;/dev/tcp/</span><span>$GW</span><span>/7897"</span><span> </span><span>2&gt;/dev/null</span><span>; </span><span>then</span></div></div><div><div><div>7</div></div><div><span>        </span><span>export</span><span> </span><span>http_proxy</span><span>=</span><span>"http://</span><span>$GW</span><span>:7897"</span></div></div><div><div><div>8</div></div><div><span>        </span><span>export</span><span> </span><span>https_proxy</span><span>=</span><span>"http://</span><span>$GW</span><span>:7897"</span></div></div><div><div><div>9</div></div><div><span>        </span><span>export</span><span> </span><span>no_proxy</span><span>=</span><span>"localhost,127.0.0.1,192.168.*,10.*,172.16.*,172.17.*,172.18.*,</span><span>\</span></div></div><div><div><div>10</div></div><div><span>172.19.*,172.20.*,172.21.*,172.22.*,172.23.*,172.24.*,172.25.*,172.26.*,172.27.*,</span><span>\</span></div></div><div><div><div>11</div></div><div><span>172.28.*,172.29.*,172.30.*,172.31.*,mirrors.aliyun.com,mirrors.tuna.tsinghua.edu.cn"</span></div></div><div><div><div>12</div></div><div><span>        </span><span>echo</span><span> </span><span>"[proxy] on -&gt; </span><span>$GW</span><span>:7897"</span></div></div><div><div><div>13</div></div><div><span>    </span><span>else</span></div></div><div><div><div>14</div></div><div><span>        </span><span>unset</span><span> </span><span>http_proxy</span><span> </span><span>https_proxy</span><span> </span><span>no_proxy</span></div></div><div><div><div>15</div></div><div><span>        </span><span>echo</span><span> </span><span>"[proxy] off (梯子没开，国内源直连)"</span></div></div><div><div><div>16</div></div><div><span>    </span><span>fi</span></div></div><div><div><div>17</div></div><div><span>}</span></div></div><div><div><div>18</div></div><div><span>wsl_proxy</span></div></div><div><div><div>19</div></div><div><span>EOF</span></div></div><div><div><div>20</div></div><div>
</div></div><div><div><div>21</div></div><div><span>source</span><span> </span><span>~/.bashrc</span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p>脚本用 <code>/dev/tcp</code> 探测网关的 7897 是否可达：<strong>开着就 export，关着就 unset</strong>。
这样就不会出现”关了梯子导致 WSL 半瘫”的情况 —— 国内源本来也不需要代理。</p><div><div><div></div><div>Tip</div></div><div><p>不想开 Allow LAN 的话，Windows 侧改用端口转发也行（管理员 PowerShell）：</p><div><figure><figcaption><span></span><span>Terminal window</span></figcaption><pre><code><div><div><div>1</div></div><div><span><span>netsh interface portproxy add v4tov4 listenaddress</span><span>=</span><span>&lt;WSL网关IP&gt; listenport</span><span>=</span></span><span>7897</span><span><span> connectaddress</span><span>=</span></span><span>127.0</span><span>.</span><span>0.1</span><span><span> connectport</span><span>=</span></span><span>7897</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>只监听网关地址，比 <code>0.0.0.0</code> 安全，代价是 WSL 网段变了要重配。</p></div></div></section></section>
<section><h2>九、最终配置<a href="#九最终配置"><span>#</span></a></h2><p><code>C:\Users\&lt;你&gt;\.wslconfig</code>：</p><div><div><div><figure><figcaption><span>.wslconfig</span><span>展开</span><span>收起</span></figcaption><pre><code><div><div><div>1</div></div><div><span>[wsl2]</span></div></div><div><div><div>2</div></div><div>
</div></div><div><div><div>3</div></div><div><span># --- 为什么不用 mirrored ---</span></div></div><div><div><div>4</div></div><div><span># 镜像模式初始化网络时依赖 Windows 代理状态，本机跑 Clash Verge，</span></div></div><div><div><div>5</div></div><div><span># 每次开关梯子都会让下一次 WSL 启动报 0x8007054f 并回退 None。</span></div></div><div><div><div>6</div></div><div><span># 结论：有本地代理客户端时，镜像模式不可用。</span></div></div><div><div><div>7</div></div><div><span>networkingMode</span><span><span>=</span><span>nat</span></span></div></div><div><div><div>8</div></div><div>
</div></div><div><div><div>9</div></div><div><span># 必须关：NAT 模式下读取 Windows 代理只会每启动一次的无效警告</span></div></div><div><div><div>10</div></div><div><span>autoProxy</span><span><span>=</span><span>false</span></span></div></div><div><div><div>11</div></div><div>
</div></div><div><div><div>12</div></div><div><span># 通过 Windows 解析 DNS，而不是走 NAT 网关</span></div></div><div><div><div>13</div></div><div><span>dnsTunneling</span><span><span>=</span><span>true</span></span></div></div><div><div><div>14</div></div><div>
</div></div><div><div><div>15</div></div><div><span># 资源限制（i7-13700H / 16GB），按需调整</span></div></div><div><div><div>16</div></div><div><span># 不设的话 WSL 会吃掉约一半内存和全部核心</span></div></div><div><div><div>17</div></div><div><span>memory</span><span><span>=</span><span>8GB</span></span></div></div><div><div><div>18</div></div><div><span>processors</span><span><span>=</span><span>8</span></span></div></div><div><div><div>19</div></div><div><span>swap</span><span><span>=</span><span>4GB</span></span></div></div><div><div><div>20</div></div><div>
</div></div><div><div><div>21</div></div><div><span>[experimental]</span></div></div><div><div><div>22</div></div><div>
</div></div><div><div><div>23</div></div><div><span># 空闲时把缓存内存还给 Windows</span></div></div><div><div><div>24</div></div><div><span>autoMemoryReclaim</span><span><span>=</span><span>gradual</span></span></div></div><div><div><div>25</div></div><div>
</div></div><div><div><div>26</div></div><div><span># 阻止 ext4.vhdx 只增不减</span></div></div><div><div><div>27</div></div><div><span>sparseVhd</span><span><span>=</span><span>true</span></span></div></div></code></pre><div><div></div><div></div></div></figure><div></div></div><span>展开</span><span>收起</span></div></div><p>apt 源（<code>/etc/apt/sources.list.d/ubuntu.sources</code>）：</p><div><figure><figcaption><span>/etc/apt/sources.list.d/ubuntu.sources</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Types: deb</span></div></div><div><div><div>2</div></div><div><span>URIs: https://mirrors.aliyun.com/ubuntu</span></div></div><div><div><div>3</div></div><div><span>Suites: noble noble-updates noble-backports noble-security</span></div></div><div><div><div>4</div></div><div><span>Components: main restricted universe multiverse</span></div></div><div><div><div>5</div></div><div><span>Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>梯子开着时验证（注意这里是<strong>网关 IP</strong> 而不是 <code>127.0.0.1</code>，NAT 下 WSL 是独立 IP）：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>$</span><span> </span><span>ip</span><span> </span><span>route</span><span> </span><span>show</span><span> </span><span>default</span><span> | </span><span>awk</span><span> </span><span>'{print $3}'</span></div></div><div><div><div>2</div></div><div><span>172.30.0.1</span></div></div><div><div><div>3</div></div><div>
</div></div><div><div><div>4</div></div><div><span>$</span><span> </span><span>env</span><span> | </span><span>grep</span><span> </span><span>-i</span><span> </span><span>proxy</span></div></div><div><div><div>5</div></div><div><span>http_proxy</span><span>=</span><span>http://172.30.0.1:7897</span></div></div><div><div><div>6</div></div><div><span>https_proxy</span><span>=</span><span>http://172.30.0.1:7897</span></div></div><div><div><div>7</div></div><div><span>no_proxy</span><span>=</span><span>localhost,127.0.0.1,192.168.*,10.*,...,mirrors.aliyun.com</span><span>   </span><span># 内网自动绕过</span></div></div><div><div><div>8</div></div><div>
</div></div><div><div><div>9</div></div><div><span>$</span><span> </span><span>curl</span><span> </span><span>-sI</span><span> </span><span>https://github.com</span><span> </span><span>--max-time</span><span> </span><span>10</span><span> | </span><span>head</span><span> </span><span>-1</span></div></div><div><div><div>10</div></div><div><span>HTTP/1.1</span><span> </span><span>200</span><span> </span><span>Connection</span><span> </span><span>established</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>梯子关掉后重开一个终端：</p><div><figure><figcaption><span>WSL</span></figcaption><pre><code><div><div><div>1</div></div><div><span>[proxy] off (</span><span>梯子没开，国内源直连</span><span>)</span></div></div><div><div><div>2</div></div><div><span>$</span><span> </span><span>curl</span><span> </span><span>-sI</span><span> </span><span>https://mirrors.aliyun.com</span><span> </span><span>--max-time</span><span> </span><span>10</span><span> | </span><span>head</span><span> </span><span>-1</span></div></div><div><div><div>3</div></div><div><span>HTTP/2</span><span> </span><span>200</span><span>                            </span><span># 国内源照常能通，只是 GitHub 不通而已</span></div></div></code></pre><div><div></div><div></div></div></figure></div></section>
<section><h2>十、速查表：错误码 → 处置<a href="#十速查表错误码--处置"><span>#</span></a></h2>

<table><thead><tr><th>错误</th><th>含义</th><th>处置</th></tr></thead><tbody><tr><td><code>Wsl/CallMsi/REGDB_E_CLASSNOTREG</code></td><td>Store 版升级时 MSI 注册失败</td><td>下载独立 MSI 手动装；先卸 Appx 包</td></tr><tr><td><code>CreateInstance/CreateVm/ConfigureNetworking/0x8007054f</code></td><td>本机是代理客户端所致；其他机器多为网络栈损坏</td><td><strong>装了 Clash 类软件就直接切 NAT</strong>；否则 <code>netsh winsock reset</code></td></tr><tr><td><code>回退到 networkingMode None</code></td><td>虚拟机无网卡，一切网络问题的根源</td><td>见上</td></tr><tr><td><code>connect (101: Network is unreachable)</code> + IPv6 地址</td><td>NAT 下无 IPv6 路由</td><td><code>Acquire::ForceIPv4 "true"</code></td></tr><tr><td><code>Temporary failure resolving 'xxx'</code></td><td>DNS 不通</td><td>多为上层问题的表象，别只改 DNS</td></tr><tr><td><code>检测到 localhost 代理配置，但未镜像</code></td><td>NAT 下用不了 Windows 代理</td><td>无害。要代理就开 Allow LAN + 网关 IP，或 portproxy 转发</td></tr></tbody></table><div><div><div></div><div>Tip</div></div><div><p><strong>推荐排查顺序</strong>（能省两小时）：</p><ol>
<li><strong>装了本地代理客户端（Clash / v2ray 类）就别用 mirrored</strong>，直接改 NAT</li>
<li><code>netsh winsock reset</code> + <code>netsh int ip reset</code> + 重启</li>
<li><code>net stop hns</code> / <code>net start hns</code></li>
<li>再怀疑 VMware / VPN / 杀毒软件的 NDIS 驱动</li>
<li>最后才去换源、调 apt 参数</li>
</ol></div></div></section>
<section><h2>十一、复盘<a href="#十一复盘"><span>#</span></a></h2>

<table><thead><tr><th>怀疑对象</th><th>处置</th><th>结论</th></tr></thead><tbody><tr><td>WSL 安装包损坏</td><td>独立 MSI 重装</td><td>✅ 确实是问题，已解决</td></tr><tr><td>IPv6 路由缺失</td><td><code>ForceIPv4</code></td><td>⚠️ 只是表象</td></tr><tr><td>清华源 / 并发连接</td><td>换阿里云源</td><td>⚠️ 只是表象</td></tr><tr><td>VMware 虚拟网卡</td><td>禁用 → 卸载 → 重启</td><td>❌ 全部无效</td></tr><tr><td>Windows 网络栈损坏</td><td><code>winsock reset</code></td><td>⚠️ 暂时有效，第二天复发</td></tr><tr><td><strong>本地代理客户端（Clash Verge）</strong></td><td>切 NAT + 自动探测代理</td><td>✅ <strong>真凶</strong></td></tr></tbody></table><p>四条教训：</p><ol>
<li>
<p><strong>表象会骗人。</strong> IPv6、镜像源、并发数 —— 每一个都能自圆其说，但都不是根因。真正有效的判断方式是看<strong>哪些成功、哪些失败</strong>：索引能下、包不能下，这个组合指向底层网络栈而非应用层配置。</p>
</li>
<li>
<p><strong>“修好了”不等于”修对了”。</strong> <code>winsock reset</code> 之后一切正常，我当场下了结论。区别在哪？那次启动<strong>代理还没开</strong>。一个修复恰好绕开了真正的触发条件，看起来就像是修好了 —— 这种假成功最危险。</p>
</li>
<li>
<p><strong>复现规律比日志值钱。</strong> 最后破案靠的是用户一句话：“开关代理之后就会崩”。这条规律直接指向了因果关系，比任何错误码都准确。所以排查时要多问一句：<strong>什么情况下会出现？什么情况下不会？</strong></p>
</li>
<li>
<p><strong>分清楚命令在哪边跑。</strong> 全程最大的低级失误是把 <code>curl ... | head -1</code>、<code>env | grep</code> 之类的 Linux 命令粘进了 PowerShell。<code>head</code>、<code>env</code>、<code>grep</code> 在 Windows 上不存在 —— 给命令时务必标注「Windows 端」还是「WSL 端」。</p>
</li>
</ol></section>
<section><h2>附：一键修复脚本<a href="#附一键修复脚本"><span>#</span></a></h2><p><code>fix-wsl.ps1</code>（管理员运行），处理坑 1 的 MSI 损坏：</p><div><figure><figcaption><span>PowerShell（管理员）</span></figcaption><pre><code><div><div><div>1</div></div><div><span>Set-ExecutionPolicy</span><span><span> </span><span>-</span><span>Scope </span></span><span>Process</span><span><span> Bypass </span><span>-</span><span>Force</span></span></div></div><div><div><div>2</div></div><div><span>&amp; </span><span>".\fix-wsl.ps1"</span><span><span> </span><span>-</span><span>MsiPath </span></span><span>"C:\Users\w\Downloads\wsl.3.0.3.0.x64.msi"</span></div></div></code></pre><div><div></div><div></div></div></figure></div><p>脚本依次执行：停进程 → 卸载损坏 Appx → 清 wsl.exe 别名 → 本地 MSI 安装 → 启用 Windows 功能 → 提示重启。</p><hr /><p>环境：Windows 11 Build 26200 / WSL 3.0.3 / Ubuntu 24.04 LTS</p><p>还没装上？看<a href="/posts/wsl-install-guide">安装教程</a>从零开始。</p></section>]]></content>
    </entry>
</feed>
