锦书在线
80.52M · 2026-03-21
作者:吴佳浩
撰稿时间:2026-3-19
卸载之前花 30 秒看一下这个,省得后悔:
| 你想卸载的 | 会连带删掉什么 | 需要哪些步骤 |
|---|---|---|
| 只卸 OpenClaw | openclaw 命令、配置、workspace、桌面快捷方式 | Step 1 → 5 |
| 同时卸 Ollama | 本地所有模型文件(几十 GB!) | Step 1 → 5 → 6 |
| 完全清空,全部卸掉 | 包含 Node.js、scoop、uv 等全部工具链 | Step 1 → 9 |
flowchart TD
A[" 开始卸载"] --> B["Step 1n停止 Gateway 服务n移除开机自启"]
B --> C["Step 2nnpm uninstall -g openclawn移除命令行工具"]
C --> D["Step 3n清理配置目录n~/.openclawn~/clawd"]
D --> E["Step 4n清理环境变量n检查 PATH"]
E --> F{"还要继续卸?"}
F -- "是,连 Ollama 也卸掉" --> G["Step 5n卸载 Ollaman删除模型文件"]
F -- "是,连 Node.js 也卸掉" --> H["Step 6n卸载 Node.js"]
F -- "不了,够了" --> I[" 验证卸载完成"]
G --> H
H --> J["Step 7n可选:卸载 scoop/uv/gh"]
J --> I
style A fill:#1a1a2e,color:#fff
style I fill:#00aa55,color:#fff
style G fill:#c62828,color:#fff
这一步必须最先做,否则后续删文件时服务还在跑,会提示「文件被占用」。
如果你是在终端前台运行 openclaw gateway,直接按 Ctrl+C 终止即可。
如果你安装了系统服务(openclaw gateway install),用以下命令停止并删除:
# 停止服务
schtasks /End /TN "OpenClaw Gateway"
# 删除计划任务
schtasks /Delete /TN "OpenClaw Gateway" /F
# 查找占用 18789 端口的进程
netstat -ano | findstr :18789
# 假设输出的 PID 是 12345,杀掉它
taskkill /PID 12345 /F
# 或者直接批量杀掉所有 openclaw 相关的 node 进程
Get-Process node | Where-Object { $_.MainWindowTitle -like "*openclaw*" -or $_.CommandLine -like "*openclaw*" } | Stop-Process -Force
# 卸载全局包
npm uninstall -g openclaw
# 验证
openclaw --version
# 应该报:openclaw : 无法将"openclaw"项识别为 cmdlet... 说明卸载成功
这一步删除 OpenClaw 生成的所有配置、日志、会话记忆、workspace 等数据。
graph TD
A["OpenClaw 遗留文件"] --> B["~\.openclaw\n配置文件目录nopenclaw.jsonntokenn日志等"]
A --> C["~\clawd\n默认 workspacenAgent 工作文件"]
A --> D["桌面nOpenClaw.urln快捷方式"]
A --> E["临时 ModelfilenF:\Modelfilen或其他路径"]
style A fill:#1a1a2e,color:#fff
style B fill:#c62828,color:#fff
style C fill:#c62828,color:#fff
# 先看看里面有什么(可选,确认一下再删)
Get-ChildItem "$env:USERPROFILE.openclaw" -Force
# 删除整个配置目录
Remove-Item -Recurse -Force "$env:USERPROFILE.openclaw"
# 验证
Test-Path "$env:USERPROFILE.openclaw"
# 输出 False
# 默认 workspace 路径
Remove-Item -Recurse -Force "$env:USERPROFILEclawd"
# 如果你在 openclaw.json 里自定义了 workspace 路径,改成对应路径
# 比如 C:AIWorkspace
Remove-Item -Recurse -Force "C:AIWorkspace"
# 删除桌面快捷方式(如果建过的话)
Remove-Item -Force "$env:USERPROFILEDesktopOpenClaw.url" -ErrorAction SilentlyContinue
# 如果按教程在 F 盘创建了 Modelfile
Remove-Item -Force "F:Modelfile" -ErrorAction SilentlyContinue
大部分情况下 npm 全局包不会单独写环境变量,但安装脚本有时候会,检查一下:
# 查看用户级 PATH,确认没有 openclaw 相关路径
[System.Environment]::GetEnvironmentVariable("PATH", "User") -split ";" | Where-Object { $_ -like "*openclaw*" }
# 如果有输出,说明需要手动清理
# 打开系统环境变量编辑界面
rundll32 sysdm.cpl,EditEnvironmentVariables
在弹出的界面里,找到「用户变量」→「Path」,双击编辑,删掉包含 openclaw 的条目。
# 查看模型占用了多少空间
(Get-ChildItem "$env:USERPROFILE.ollamamodels" -Recurse | Measure-Object -Property Length -Sum).Sum / 1GB
# 输出单位为 GB,比如 78.3 表示占用 78.3 GB
ollama create 创建的自定义模型# 查看所有模型(包括自定义的 -32k 版本)
ollama list
# 删除自定义上下文版本(按教程创建的)
ollama rm qwen3.5-35b-32k
ollama rm qwen2.5-7b-32k
# ...其他 -32k 结尾的自定义模型
# 删除原始 pull 下来的模型(可选)
ollama rm qwen3.5:35b
ollama rm qwen2.5:7b
# 方法一:通过 winget 卸载
winget uninstall Ollama.Ollama
# 方法二:控制面板手动卸载
# 开始菜单 → 设置 → 应用 → 搜索 Ollama → 卸载
# 删除模型文件(这才是大头,几十 GB)
Remove-Item -Recurse -Force "$env:USERPROFILE.ollama"
# 验证
Test-Path "$env:USERPROFILE.ollama"
# 输出 False
flowchart LR
A["ollama rm 自定义模型"] --> B["ollama rm 原始模型"]
B --> C["winget uninstall Ollama"]
C --> D["删除 ~/.ollama 目录"]
D --> E[" Ollama 完全移除n释放 N GB 磁盘空间"]
style E fill:#00aa55,color:#fff
style D fill:#c62828,color:#fff
# 方法一:winget 卸载
winget uninstall OpenJS.NodeJS.LTS
# 方法二:控制面板
# 设置 → 应用 → 搜索 Node.js → 卸载
卸载后清理 npm 缓存和全局配置:
# 删除 npm 全局目录残留
Remove-Item -Recurse -Force "$env:APPDATAnpm" -ErrorAction SilentlyContinue
Remove-Item -Recurse -Force "$env:APPDATAnpm-cache" -ErrorAction SilentlyContinue
# 验证
node --version
# 应该报:node : 无法将"node"项识别为 cmdlet...
# 卸载 scoop 会连带删除所有通过 scoop 安装的工具(gh、ffmpeg 等)
scoop uninstall scoop
# 手动删除 scoop 目录(如果上面命令没完全清干净)
Remove-Item -Recurse -Force "$env:USERPROFILEscoop" -ErrorAction SilentlyContinue
# 如果 gh 不是通过 scoop 装的
winget uninstall GitHub.cli
# uv 没有独立的 uninstall 命令,直接删除
Remove-Item -Recurse -Force "$env:USERPROFILE.cargobinuv.exe" -ErrorAction SilentlyContinue
Remove-Item -Recurse -Force "$env:USERPROFILE.uv" -ErrorAction SilentlyContinue
# 或者通过 PowerShell 找到 uv 路径
(Get-Command uv).Source
# 拿到路径后删掉对应文件
运行以下命令,全部报「找不到命令」就说明卸干净了:
# 逐条运行,看看哪些还在
openclaw --version
ollama --version # 如果你选择了卸载 Ollama
node --version # 如果你选择了卸载 Node.js
# 确认目录已删除
Test-Path "$env:USERPROFILE.openclaw" # 应输出 False
Test-Path "$env:USERPROFILEclawd" # 应输出 False
Test-Path "$env:USERPROFILE.ollama" # 如卸载 Ollama,应输出 False
# 确认端口已释放
netstat -ano | findstr :18789
# 无输出 = 端口已释放
graph TD
A["验证清单"] --> B{"openclaw 命令?"}
B -- "找不到命令 " --> C{"~/.openclaw 目录?"}
B -- "还能运行 " --> B2["重新执行 Step 2"]
C -- "不存在 " --> D{"~/clawd 目录?"}
C -- "还存在 " --> C2["重新执行 Step 3"]
D -- "不存在 " --> E{"18789 端口?"}
D -- "还存在 " --> D2["重新执行 Step 3"]
E -- "无占用 " --> F[" 卸载完成!"]
E -- "还在 " --> E2["重新执行 Step 1n杀掉残留进程"]
style F fill:#00aa55,color:#fff
style B2 fill:#c62828,color:#fff
style C2 fill:#c62828,color:#fff
style D2 fill:#c62828,color:#fff
style E2 fill:#c62828,color:#fff
根据你的实际需求,快速找到需要执行哪些步骤:
| 场景 | 需要执行的步骤 | 预计释放空间 |
|---|---|---|
| 只卸 OpenClaw,保留 Ollama 和模型 | Step 1 → 2 → 3 → 4 | < 500 MB |
| 卸 OpenClaw + Ollama,保留模型文件 | Step 1 → 2 → 3 → 4 → 卸 Ollama 程序 | < 1 GB |
| 卸 OpenClaw + Ollama 全部(含模型) | Step 1 → 2 → 3 → 4 → 5 | 20 ~ 100 GB |
| 完全清空,什么都不留 | Step 1 → 2 → 3 → 4 → 5 → 6 → 7 | 全部 |
| 装坏了想重装(重置) | Step 1 → 2 → 3,然后重新安装 | 只删配置,保留工具 |
npm uninstall -g openclaw 报权限错误原因:npm 全局目录权限问题。
解决:以管理员身份运行 PowerShell:
# 管理员 PowerShell 中运行
npm uninstall -g openclaw
~/.openclaw 报「文件正在被使用」原因:Gateway 进程还在运行,占用了配置文件。
解决:先完整执行 Step 1,确认进程已杀掉,再删目录。
# 强制查找并杀掉所有相关 node 进程
taskkill /F /IM node.exe
# 然后再删
Remove-Item -Recurse -Force "$env:USERPROFILE.openclaw"
schtasks /Delete /TN "OpenClaw Gateway" 报「找不到指定的任务」原因:你可能没有用 openclaw gateway install 安装过服务,只是手动前台运行的。
解决:不用管,直接跳过,进行下一步即可。
node --version 还能运行原因:winget 卸载有时不会立即更新 PATH,需要重启终端。
解决:
# 关闭当前 PowerShell 窗口,重新打开一个新窗口
# 或者强制刷新环境变量
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")
# 先备份整个配置目录到桌面
Copy-Item -Recurse "$env:USERPROFILE.openclaw" "$env:USERPROFILEDesktopopenclaw_backup_$(Get-Date -Format 'yyyyMMdd')"
# 备份 workspace
Copy-Item -Recurse "$env:USERPROFILEclawd" "$env:USERPROFILEDesktopclawd_backup_$(Get-Date -Format 'yyyyMMdd')"
# 然后正常执行卸载流程
原因:Windows 资源管理器刷新延迟,或者有些碎片文件没删干净。
解决:
# 强制删除 .ollama 目录(如果 ollama rm 没删干净)
Remove-Item -Recurse -Force "$env:USERPROFILE.ollama"
# 再运行一次磁盘清理
cleanmgr /d C:
graph LR
A["卸载完成 "] --> B["端口 18789 已释放"]
A --> C["openclaw 命令已移除"]
A --> D["配置目录已清理"]
A --> E["可选:Ollama 已卸载n释放 N GB 空间"]
A --> F["可选:Node.js 已卸载"]
style A fill:#00aa55,color:#fff
卸载流程对比安装要简单不少,核心就三步:停服务 → 删包 → 删文件。Ollama 和模型文件那坨是最占地方的,要不要删自己决定。
如果后续想重装,按安装教程从头来就行,Ollama 和模型不用重新下载,只需要重跑 openclaw onboard 重新初始化配置就够了。