Qwen Code安装其他磁盘方案+配置阿里百炼

背景痛点

电脑安装了自动还原精灵,每次重启 C 盘都会恢复初始状态。按照官方文档安装 Qwen Code 后,发现:

  • Node.js 和 npm 默认装到 C 盘,重启后消失
  • Qwen Code 登录凭证保存在 C:\Users\Administrator\.qwen,重启后需重新认证
  • 环境变量配置在 C 盘,重启后失效

本文提供全盘 D 盘化方案,确保重启后无需任何重新配置,双击即用。


前置要求

  • Windows 10/11 系统
  • D 盘(或 E 盘)有 2GB 以上空间
  • 已购买阿里百炼 Coding Plan(含 API Key:sk-sp-xxxxx
  • 能使用 PowerShell(右键开始菜单 → Windows PowerShell)

避坑总览(必读)

坑点 现象 本文解决方案
SSL 下载失败 curl: (35) schannel: failed to receive handshake 改用 Invoke-WebRequest 下载 Node.js
目录创建语法错误 New-Item : 找不到接受实际参数的位置形式参数 使用 $dirs 数组 + foreach 循环
批处理中文乱码 此应用无法在你的电脑运行 使用 cmd /c "more > file.bat" 生成 ANSI 编码文件
配置保存到 C 盘 重启后要求重新 /auth 迁移配置到 D 盘 + Junction 软链接
环境变量被忽略 设置 QWEN_CONFIG_DIR 无效 使用 mklink /J 创建目录联接
权限拒绝 拒绝访问 警告 脚本中 suppress 错误输出,确保 Junction 创建

步骤一:创建目录结构(修正版)

坑点提醒:直接复制多路径会报错,必须使用数组循环。

打开 PowerShell,执行:

powershell 复制代码
# 创建所有必要目录(修正语法错误)
$dirs = @("D:\dev", "D:\dev\nodejs", "D:\dev\npm-global", "D:\dev\npm-cache", "D:\dev\qwen-config", "D:\dev\temp_nodejs")
foreach ($dir in $dirs) {
    New-Item -ItemType Directory -Force -Path $dir | Out-Null
}
Write-Host "Directories created" -ForegroundColor Green

步骤二:下载 Node.js(避开 SSL 错误)

坑点提醒 :Windows 自带 curl 有 SSL 握手问题,必须使用 Invoke-WebRequest

powershell 复制代码
# 使用 PowerShell 下载(避免 curl SSL 错误)
Invoke-WebRequest -Uri "https://nodejs.org/dist/v20.18.1/node-v20.18.1-win-x64.zip" -OutFile "D:\dev\nodejs.zip" -UseBasicParsing
Write-Host "Download completed" -ForegroundColor Green

步骤三:解压并配置 Node.js

powershell 复制代码
# 解压 Node.js(自动处理嵌套文件夹)
Expand-Archive -Path "D:\dev\nodejs.zip" -DestinationPath "D:\dev\temp_nodejs" -Force
Move-Item -Path "D:\dev\temp_nodejs\node-v20.18.1-win-x64\*" -Destination "D:\dev\nodejs\" -Force
Remove-Item -Path "D:\dev\temp_nodejs" -Recurse -Force
Write-Host "Node.js extracted" -ForegroundColor Green

# 验证 Node.js
Write-Host "Node.js version: " -NoNewline
& "D:\dev\nodejs\node.exe" -v

# 配置 npm 路径到 D 盘(关键!防止装到 C 盘)
& "D:\dev\nodejs\npm.cmd" config set prefix "D:\dev\npm-global"
& "D:\dev\nodejs\npm.cmd" config set cache "D:\dev\npm-cache"
& "D:\dev\nodejs\npm.cmd" config set registry "https://registry.npmmirror.com"
Write-Host "npm paths configured to D drive" -ForegroundColor Green

步骤四:安装 Qwen Code

powershell 复制代码
Write-Host "Installing Qwen Code (1-3 minutes)..." -ForegroundColor Yellow
& "D:\dev\nodejs\npm.cmd" install -g @qwen-code/qwen-code@latest
Write-Host "Qwen Code installed" -ForegroundColor Green

步骤五:创建启动脚本(防编码错误)

坑点提醒 :使用 Out-File 生成的批处理中文系统可能无法运行,必须使用 cmd /c "more >" 确保 ANSI 编码。

创建首次配置脚本(first-setup.bat):

powershell 复制代码
$firstSetup = @'
@echo off
title Qwen Code First Setup
cd /d D:\dev
set PATH=D:\dev\nodejs;D:\dev\npm-global;%PATH%
set QWEN_CONFIG_DIR=D:\dev\qwen-config
set QWEN_SOURCE=bailian
echo.
echo ===========================================
echo    Qwen Code First Setup Wizard
echo ===========================================
echo.
echo Steps:
echo 1. Type: /auth
echo 2. Select: Api-Key
echo 3. Select: coding-plan
echo 4. Enter your sk-sp-xxxxx API Key
echo.
pause
qwen.cmd
echo.
echo Setup complete! Auth saved to D:\dev\qwen-config
pause
'@
$firstSetup | cmd /c "more > D:\dev\first-setup.bat"

创建日常使用脚本(start-qwen.bat)------这是关键,防还原核心

powershell 复制代码
$startScript = @'
@echo off
title Qwen Code Portable

:: Switch to D drive
D:
cd \dev

:: Set PATH
set PATH=D:\dev\nodejs;D:\dev\npm-global;%PATH%
set NODE_HOME=D:\dev\nodejs

:: CRITICAL: Create Junction to trick Qwen Code into reading D drive config
:: Remove C drive .qwen if exists (might be empty after restore)
if exist "C:\Users\Administrator\.qwen" (
    rmdir /s /q "C:\Users\Administrator\.qwen" >nul 2>&1
)

:: Create Junction (soft link) from C:\Users\Administrator\.qwen to D:\dev\qwen-config
mklink /J "C:\Users\Administrator\.qwen" "D:\dev\qwen-config" >nul 2>&1

if not exist "C:\Users\Administrator\.qwen\settings.json" (
    echo ERROR: Config link failed or not initialized!
    echo Please run first-setup.bat first to complete initial auth.
    pause
    exit /b 1
)

:: Launch Qwen Code (it reads C:\Users\Administrator\.qwen which points to D drive)
qwen.cmd %*
'@
$startScript | cmd /c "more > D:\dev\start-qwen.bat"

原理说明

  • Qwen Code 强制读取 C:\Users\Administrator\.qwen(无法通过环境变量改变)
  • 我们创建 Junction(目录联接),让 C 盘路径指向 D 盘实际数据
  • 即使 C 盘还原,每次启动脚本都会重新建立 Junction

步骤六:首次配置(关键步骤)

  1. 双击运行 D:\dev\first-setup.bat
  2. 在打开的窗口中输入:/auth
  3. 选择:Api-Key
  4. 选择:coding-plan
  5. 输入你的 API Key(格式:sk-sp-xxxxx
  6. 看到 成功通过 阿里云百炼 Coding Plan 认证 即表示成功

坑点提醒 :此时配置会默认保存到 C:\Users\Administrator\.qwen\settings.json,我们需要迁移到 D 盘。


步骤七:迁移配置到 D 盘(防还原关键)

执行以下 PowerShell 命令,将配置从 C 盘迁移到 D 盘:

powershell 复制代码
# 迁移配置到 D 盘(防 C 盘还原)
$sourceDir = "C:\Users\Administrator\.qwen"
$targetDir = "D:\dev\qwen-config"

if (Test-Path $sourceDir) {
    Write-Host "Migrating config from C to D drive..." -ForegroundColor Yellow
    
    # 复制所有配置文件
    Copy-Item -Path "$sourceDir\*" -Destination $targetDir -Recurse -Force
    
    Write-Host "Migration complete!" -ForegroundColor Green
    
    # 可选:备份原始目录(如无法删除)
    Rename-Item -Path $sourceDir -NewName ".qwen.backup" -Force -ErrorAction SilentlyContinue
    Write-Host "Original config backed up to .qwen.backup" -ForegroundColor Gray
} else {
    Write-Host "Source not found, checking D drive..." -ForegroundColor Yellow
}

# 验证迁移结果
if (Test-Path "D:\dev\qwen-config\settings.json") {
    Write-Host "SUCCESS: Config is now on D drive!" -ForegroundColor Green
    Get-Content "D:\dev\qwen-config\settings.json" | Select-Object -First 5
} else {
    Write-Host "ERROR: Migration failed!" -ForegroundColor Red
}

步骤八:验证测试(模拟重启)

创建测试脚本验证 C 盘还原后是否能正常工作:

powershell 复制代码
$testScript = @'
@echo off
title Restart Simulation Test
echo === Simulating C Drive Reset ===
echo.

:: Step 1: Clear environment (simulating restart)
set PATH=C:\Windows\system32;C:\Windows
set QWEN_CONFIG_DIR=
set NODE_HOME=

echo [OK] Environment cleaned (like after restart)
echo.

:: Step 2: Start from D drive (this will recreate Junction)
echo [TEST] Starting Qwen Code from D drive...
call D:\dev\start-qwen.bat --version

if %ERRORLEVEL% == 0 (
    echo.
    echo === TEST PASSED ===
    echo Qwen Code works after restart!
    echo Config is safe on D drive.
) else (
    echo.
    echo === TEST FAILED ===
)
pause
'@
$testScript | cmd /c "more > D:\dev\test-restart.bat"

双击运行 D:\dev\test-restart.bat,如果显示版本号或成功启动,表示测试通过。


步骤九:日常使用流程

重启电脑后,只需要一步:

  1. 双击 D:\dev\start-qwen.bat
  2. 自动重建 Junction 链接,读取 D 盘配置
  3. 直接进入 Qwen Code,显示 Coding Plan | qwen3.5-plus
  4. 无需重新认证!

文件位置速查表

项目 路径 说明
Node.js D:\dev\nodejs\ 绿色版,不受还原影响
npm 全局包 D:\dev\npm-global\ Qwen Code 安装位置
配置文件 D:\dev\qwen-config\settings.json API Key 存储位置
启动脚本 D:\dev\start-qwen.bat 日常使用入口
Junction 点 C:\Users\Administrator\.qwenD:\dev\qwen-config 自动重建的软链接

常见问题 FAQ

Q: 为什么不用 QWEN_CONFIG_DIR 环境变量?

A: 实测 Qwen Code 会忽略此变量,强制读取用户目录下的 .qwen 文件夹。使用 Junction 是最可靠的方案。

Q: 提示 "拒绝访问" 怎么办?

A: 这是尝试删除旧文件夹时的权限提示,不影响功能。如想消除,确保以管理员身份运行一次 start-qwen.bat

Q: D 盘空间不足,能否移到 E 盘?

A: 可以。将 D:\dev 改为 E:\dev,同时修改 start-qwen.bat 中的所有路径即可。

Q: 如何备份我的登录状态?

A: 备份 D:\dev\qwen-config\settings.json 文件即可,其中包含你的 API Key。


总结

通过 全盘 D 盘化 + Junction 软链接 方案,我们实现了:

  • ✅ Node.js 和 Qwen Code 程序在 D 盘(不怕 C 盘还原)
  • ✅ 登录凭证保存在 D 盘(不怕 C 盘还原)
  • ✅ 每次启动自动重建 C 盘链接(适配 Qwen Code 的硬编码路径)
  • ✅ 重启后双击即用,无需重新安装或认证

适用场景:学校机房、公司办公机、网吧等安装有自动还原精灵的 Windows 环境以及需要将Qwen Code安装其他磁盘。

相关推荐
小毕超3 个月前
基于 Qwen Code Skills 实践构建自定义数据分析智能体
mysql·skills·qwen code
临界点oc10 个月前
SpringAI + DeepSeek大模型应用开发 - 进阶篇(上)
openai·springai·阿里百炼
SHIPKING3931 年前
【嵌入模型与向量数据库】
embedding·faiss·向量数据库·阿里百炼