Ubuntu 22.04 安装 CasaOS 0.4.15 指南

Ubuntu 22.04 从零安装 CasaOS v0.4.15:官方一键脚本与本地构建目录双方案、服务端口验证、WebUI 初始化、升级重装、/tmp noexec 与 CLI 502 排障实录、完整卸载,全部命令回显实测。

CasaOSCasaOSUbuntu 22.04Docker2026/10/21

Ubuntu 22.04 安装 CasaOS 0.4.15 指南

目标:在 Ubuntu 22.04 服务器上从零安装 CasaOS v0.4.15 家庭云系统,覆盖官方一键脚本在线安装与本地构建目录安装两种方案、服务与端口验证、WebUI 初始化、升级重装、排障实录与完整卸载。全部命令与回显均已在 Ubuntu 22.04.5 LTS(x86_64)环境实测通过。

一、环境信息

  • 操作系统:Ubuntu 22.04.5 LTS(x86_64)
  • 安装目标:CasaOS v0.4.15(官方最新稳定版,2024-12-20 发布,查询日期 2026-10-21)
  • 随装组件版本(安装日志实测):AppStore v0.4.5、App Management v0.4.10-alpha2、CLI v0.4.4-3-alpha1、Gateway v0.4.9-alpha4、Local Storage v0.4.4、Message Bus v0.4.4-3-alpha2、User Service v0.4.8、rclone v1.61.1
  • Docker 运行时:29.9.2(安装脚本自动部署)
  • WebUI 端口:80(casaos-gateway 监听,/etc/casaos/gateway.ini 可改)
  • 数据目录:/var/lib/casaos;配置目录:/etc/casaos;日志目录:/var/log/casaos;运行时目录:/var/run/casaos
  • 官方安装脚本:https://get.casaos.io(脚本版本 v0.4.16)
  • 官方支持的安装载体:Debian 12(推荐)、Ubuntu Server 20.04、Raspberry Pi OS;Ubuntu 22.04 属社区广泛使用版本,实测安装与运行正常

二、前置条件

CasaOS 是一组 systemd 托管的系统服务,安装前需确认以下条件:

  1. 一台装有 Ubuntu 22.04 的物理机或虚拟机,具有 sudo/root 权限。CasaOS 依赖 systemd 管理服务,⚠️ 目标系统必须是带 systemd 的 Linux 环境(Ubuntu 22.04 默认满足)。
  2. 网络可达外网(安装脚本需从 GitHub/CDN 下载发行包;国内环境下载慢可为 curl/wget 配置代理,例如 export https_proxy=http://<代理地址>:<端口> 后再执行安装命令)。
  3. 内存与磁盘满足脚本检测:脚本会执行 Memory capacity check 与 Disk capacity check,1GB 内存、几 GB 磁盘即可通过。
  4. 80 端口未被占用(WebUI 默认端口,ss -ltn | grep ':80 ' 确认;已占用时可先按第七章方法改端口或腾出端口)。
  5. Docker 运行时:CasaOS 应用以 Docker 应用形式运行。官方脚本会自动检测并在缺失时安装 Docker,也可提前自行安装(实测环境中为已预装 Docker 29.9.2,脚本检测回显见 4.3 节)。

💡 技术拓展:Linux 服务管理机制不止 systemd 一种,常见对比如下——

机制特点适用场景
systemd现代 Linux 标配,依赖树/自动重启/socket 激活Ubuntu 16.04+/Debian 8+/CentOS 7+
SysV init传统脚本式启动老旧发行版
OpenRC轻量级,Gentoo/Alpine 常用无 systemd 的轻量系统

CasaOS 官方脚本以 systemd 单元注册全部服务,本文环境 Ubuntu 22.04 实际采用 systemd,这也是官方推荐路径。

三、版本选型说明

安装前先确认要装的版本。查询官方最新稳定版的两种途径:

  1. GitHub Releases 页:https://github.com/IceWhaleTech/CasaOS/releases(查询日期 2026-10-21 时,最新稳定版为 v0.4.15,另有 Pre-release 版 v0.4.17-alpha1 引入 RISC-V 初始支持,生产环境不建议选用预发布版)。
  2. 安装后的本地 API 查询(装好后可用,含官方更新日志):
curl -s http://127.0.0.1/v1/sys/version

实测回显(节选,JSON 已格式化):

{
    "success": 200,
    "message": "ok",
    "data": {
        "current_version": "0.4.15",
        "need_update": false,
        "version": {
            "id": 63,
            "change_log": "# v0.4.15\n**Fixes**\n- Resolved issue with cloud drive not mounting correctly.\n- Fixed problem preventing retrieval of usernames on OneDrive.\n- Addressed bug causing inability to save avatars.\n- Corrected news stream not updating.\n\n**Changes**\n- Improved display layout for mobile devices.",
            "version": "0.4.15",
            "created_at": "2024-12-20T18:49:00Z",
            "updated_at": "0001-01-01T00:00:00Z"
        }
    }
}

关键差异解读:need_update: false 表示当前已是官方源的最新版;change_log 即 v0.4.15 官方更新内容(云盘挂载修复、OneDrive 用户名获取修复、头像保存修复、新闻流更新修复、移动端布局优化)。本文选择 v0.4.15(最新稳定版)作为安装版本,一键脚本默认安装的就是它。

四、方案 A:官方一键脚本在线安装(推荐)

4.1 方案说明

官方将安装动作收敛为一条管道命令:脚本从 get.casaos.io 下载后自动完成硬件/发行版检测、依赖安装、Docker 检测与 API 兼容性配置、发行包下载、systemd 服务注册与健康检查。适合绝大多数可联网的 Ubuntu 22.04 服务器,也是官方唯一推荐路径。

4.2 执行安装

以 root 身份执行(非 root 用户在命令前加 sudo):

wget -qO- https://get.casaos.io | sudo bash
# 或
curl -fsSL https://get.casaos.io | sudo bash

4.3 安装过程逐段解读(实测回显)

① 环境检测段:脚本先打印 ASCII 横幅,随后依次检测硬件架构、系统类型、发行版、内存与磁盘:

[  OK  ] Your hardware architecture is : x86_64
[  OK  ] Your System is : Linux
[  OK  ] Your Linux Distribution is : ubuntu
[  OK  ] Memory capacity check passed.
[  OK  ] Disk capacity check passed.

任一项不达标脚本会在此中断,无需自行预检。

② 依赖安装段:更新包管理器并安装磁盘/存储相关依赖(smartmontools、parted,连带 dmidecode、libparted2、ntfs-3g、net-tools 等)。实测回显节选:

[ INFO ] Updating package manager...
[  OK  ] Update package manager complete.
[ INFO ] Install the necessary dependencies: smartmontools
Selecting previously unselected package smartmontools.
Unpacking smartmontools (7.2-1ubuntu0.1_amd64.deb) ...
Setting up smartmontools (7.2-1ubuntu0.1) ...
Created symlink /etc/systemd/system/smartd.service → /lib/systemd/system/smartmontools.service.
Created symlink /etc/systemd/system/multi-user.target.wants/smartmontools.service → /lib/systemd/system/smartmontools.service.
[ INFO ] Install the necessary dependencies: parted

smartmontools 提供磁盘健康查询(smartd 服务),parted 提供磁盘分区能力,都是后续"磁盘管理"功能的基础。

③ Docker 检测与 API 兼容段:脚本检测 Docker 是否安装,缺失时自动安装;随后写入 Docker 的 systemd 配置覆盖,保证 CasaOS 能与新版 Docker API 对话。实测回显(Docker 已预装 29.9.2 的场景):

[  OK  ] Current Docker version is 29.9.2.
[ INFO ] Applying Docker API compatibility override for CasaOS...
[  OK  ] Docker API override written to /etc/systemd/system/docker.service.d/override.conf
[  OK  ] Docker restarted with API override. CasaOS should now be able to talk to newer Docker versions.

⚠️ 这一步会写入 /etc/systemd/system/docker.service.d/override.conf 并重启 Docker:若服务器上已有生产应用在跑,建议在维护窗口执行安装。

④ 发行包下载段:脚本按架构下载全部组件发行包并解包,实测下载清单(GitHub Release 资产):

[ INFO ] Extracting linux-all-appstore-v0.4.5.tar.gz...
[ INFO ] Extracting linux-all-casaos-v0.4.15.tar.gz...
[ INFO ] Extracting linux-amd64-casaos-app-management-v0.4.10-alpha2.tar.gz...
[ INFO ] Extracting linux-amd64-casaos-cli-v0.4.4-3-alpha1.tar.gz...
[ INFO ] Extracting linux-amd64-casaos-gateway-v0.4.9-alpha4.tar.gz...
[ INFO ] Extracting linux-amd64-casaos-local-storage-v0.4.4.tar.gz...
[ INFO ] Extracting linux-amd64-casaos-message-bus-v0.4.4-3-alpha2.tar.gz...
[ INFO ] Extracting linux-amd64-casaos-user-service-v0.4.8.tar.gz...
[ INFO ] Extracting linux-amd64-casaos-v0.4.15.tar.gz...

⑤ 服务注册与启动检查段:逐个注册并启动 systemd 服务、更新默认应用商店、安装 rclone,最后逐个健康检查。实测回显(结尾部分):

[ INFO ] Starting casaos-gateway.service...
[ INFO ] Starting casaos-message-bus.service...
[ INFO ] Starting casaos-user-service.service...
[ INFO ] Starting casaos-local-storage.service...
[ INFO ] Starting casaos-app-management.service...
[ INFO ] Starting rclone.service...
[ INFO ] Starting casaos.service...
[ INFO ] Checking casaos-gateway.service...
[  OK  ] casaos-gateway.service is running.
[ INFO ] Checking casaos-message-bus.service...
[  OK  ] casaos-message-bus.service is running.
[ INFO ] Checking casaos-user-service.service...
[  OK  ] casaos-user-service.service is running.
[ INFO ] Checking casaos-local-storage.service...
[  OK  ] casaos-local-storage.service is running.
[ INFO ] Checking casaos-app-management.service...
[  OK  ] casaos-app-management.service is running.
[ INFO ] Checking rclone.service...
[  OK  ] rclone.service is running.
[ INFO ] Checking casaos.service...
[  OK  ] casaos.service is running.
 ─────────────────────────────────────────────────────
 CasaOS v0.4.15 is running at:
 ─────────────────────────────────────────────────────

最后一屏会给出 WebUI 访问地址(即 http://<服务器IP>,默认 80 端口)。

💡 说明:管道执行时脚本首行可能提示 TERM environment variable not set.,这是脚本尝试交互式清屏的非致命提示,不影响安装,可忽略。

4.4 服务与端口验证

安装完成后逐项验证服务、端口与 WebUI。

验证一:7 个服务全部运行

systemctl list-units --type=service --state=running --no-pager --no-legend | grep -E 'casaos|rclone'

实测回显:

casaos.service                     loaded active running CasaOS Main Service
casaos-app-management.service      loaded active running CasaOS App Management Service
casaos-gateway.service             loaded active running CasaOS Gateway
casaos-local-storage.service       loaded active running CasaOS Local Storage Service
casaos-message-bus.service         loaded active running CasaOS Message Bus Service
casaos-user-service.service        loaded active running CasaOS User Service
rclone.service                     loaded active running rclone mount helper

验证二:端口监听(网关占用 80)

ss -ltnp | grep -E ':80 |casaos'

实测回显(各后端服务绑定 127.0.0.1 随机端口,网关统一对外):

LISTEN 0      4096       127.0.0.1:43857      0.0.0.0:*    users:(("casaos-user-ser",pid=8250,fd=7))
LISTEN 0      4096       127.0.0.1:42763      0.0.0.0:*    users:(("casaos-gateway",pid=8212,fd=12))
LISTEN 0      4096       127.0.0.1:33483      0.0.0.0:*    users:(("casaos-local-st",pid=8275,fd=8))
LISTEN 0      4096       127.0.0.1:33209      0.0.0.0:*    users:(("casaos-app-mana",pid=8312,fd=9))
LISTEN 0      4096       127.0.0.1:39965      0.0.0.0:*    users:(("casaos",pid=8335,fd=7))
LISTEN 0      4096       127.0.0.1:37873      0.0.0.0:*    users:(("casaos-gateway",pid=8212,fd=7))
LISTEN 0      4096       127.0.0.1:38871      0.0.0.0:*    users:(("casaos-message-",pid=8232,fd=7))
LISTEN 0      4096               *:80               *:*    users:(("casaos-gateway",pid=8212,fd=8))

解读:只有 casaos-gateway 对外监听 80 端口,其余服务全部绑定 127.0.0.1 的随机高端口(每次重启都会变化),由网关按 /var/run/casaos/ 下的路由注册动态转发——因此后端服务端口无需记忆,也不应对外开放。

验证三:WebUI HTTP 可达

curl -s -o /dev/null -w "HTTP %{http_code}\n" http://127.0.0.1/

实测回显:

HTTP 200

⚠️ 用 curl -I(HEAD 请求)验证会得到 405 Method Not Allowed(网关仅允许 GET/OPTIONS),请用 GET 验证。

4.5 WebUI 初始化

浏览器访问 http://<服务器IP>(本实验室环境映射后为 http://<主机IP>:8128),首次访问进入创建账户向导:

  1. 在"Welcome to CasaOS"页面输入用户名与密码(本文演示统一使用账户 root、密码 q1w2e3r4),点击"Create Account";
  2. 向导完成后进入仪表盘(Dashboard),可以看到系统资源卡片、应用商店入口与文件管理入口;
  3. 后续所有应用均可从应用商店一键安装,也可通过"自定义安装"导入 Docker Compose 配置。

初始化成功后,用户数据落盘在 /var/lib/casaos/conf/(目录此前不存在,首次创建账户时生成)。

五、方案 B:本地构建目录安装(离线/重装/修复)

5.1 方案说明

官方安装脚本支持 -p <build_dir> 参数,从一份已下载完成的本地构建目录直接安装,不再联网下载发行包。典型用途有三:断网/弱网环境的预下载安装、已装环境的修复性重装、以及把安装器与发行包整体拷贝到内网后落地。构建目录的标准结构为 scripts/(安装脚本集)+ sysroot/(全部二进制与发行文件),与在线安装时脚本解包到 /tmp/casaos-installer/ 下的内容一致。

5.2 准备构建目录

在能联网的机器上运行一次官方脚本(或直接下载 GitHub Release 的各发行包解包),脚本会把完整安装器保留在 /tmp/casaos-installer/tmp.XXXXXXXX/build/。将整个 build/ 目录拷贝到目标机的任意路径,例如 /opt/casaos-offline/build/。

⚠️ 该构建目录包含 amd64 架构发行件;跨架构安装需准备对应架构(arm64/armv7)的发行包。

5.3 执行本地安装

bash install.sh -p /opt/casaos-offline/build

实测回显(在已安装 v0.4.15 的环境中以本地构建目录重装,节选):

[  OK  ] Your hardware architecture is : x86_64
[  OK  ] Your System is : Linux
[  OK  ] Your Linux Distribution is : ubuntu
[  OK  ] Memory capacity check passed.
[  OK  ] Disk capacity check passed.
[ INFO ] Updating package manager...
[  OK  ] Update package manager complete.
[  OK  ] Current Docker version is 29.9.2.
[ INFO ] Applying Docker API compatibility override for CasaOS...
[  OK  ] Docker API override written to /etc/systemd/system/docker.service.d/override.conf
[ INFO ] Configuration CasaOS Addons
[ INFO ] Stopping casaos-gateway.service...
[ INFO ] Stopping casaos-message-bus.service...
[ INFO ] Stopping casaos-user-service.service...
[ INFO ] Stopping casaos-local-storage.service...
[ INFO ] Stopping casaos-app-management.service...
[ INFO ] Running .../build/scripts/migration/script.d/04-migrate-local-storage.sh...
[ INFO ] Running .../build/scripts/setup/script.d/04-setup-local-storage.sh...
🟩 Running setup-local-storage.sh...
✅ setup-local-storage.sh finished.
[ INFO ] Target version already installed.
[ INFO ] Starting casaos-gateway.service...
...
[ INFO ] Checking casaos.service...
[  OK  ] casaos.service is running.
 ─────────────────────────────────────────────────────
 CasaOS v0.4.15 is running at:
 ─────────────────────────────────────────────────────

解读:本地安装同样会执行环境检测与依赖/Docker 检查(这两段仍需 apt 与 Docker 可用),随后直接从构建目录落盘二进制;Target version already installed. 表示本地构建目录中的版本与当前已装版本一致(升级到更高版本时该行为替换为安装动作)。

5.4 验证

与方案 A 相同,重装后逐个确认服务运行与 WebUI 可达:

systemctl is-active casaos casaos-gateway

实测回显:

active
active
curl -s -o /dev/null -w "HTTP %{http_code}\n" http://127.0.0.1/

实测回显:

HTTP 200

六、方案对比与选择建议

维度方案 A:一键脚本在线安装方案 B:本地构建目录安装
联网要求需下载发行包(依赖外网或代理)仅 apt 依赖与 Docker 检查需本机源,发行包离线
版本控制固定为脚本内置最新版由构建目录决定,可固定任意版本
重复执行幂等,重复执行即升级幂等,重复执行即重装/修复
适用场景标准首次安装(官方推荐)弱网/内网落地、版本回退、修复性重装
操作复杂度一条命令需预先准备构建目录

选择建议:能联网直接用方案 A;机房隔离或要锁版本时用方案 B(先在联网机用官方脚本取得构建目录再拷入内网)。

七、配置说明

7.1 配置文件分布

安装后的配置与数据分布如下(详见《CasaOS 0.4.15 配置参数详解》):

/etc/casaos/          # 各服务配置(casaos.conf、gateway.ini 等)
/var/lib/casaos/      # 数据(应用商店、应用、用户数据、manifest)
/var/log/casaos/      # 各服务日志
/var/run/casaos/      # 运行时(服务注册 URL、网关路由、pid)

7.2 修改 WebUI 端口

默认 80 端口被占用或希望换端口时,编辑 /etc/casaos/gateway.ini 的 [gateway] 段 port 并重启网关。实测将 80 改为 8080 再还原的完整过程:

cp /etc/casaos/gateway.ini /tmp/gateway.ini.bak
sed -i 's/port=80/port=8080/' /etc/casaos/gateway.ini
systemctl restart casaos-gateway
ss -ltn | grep -E ':8080|:80 '

实测回显(改后):

LISTEN 0      4096               *:8080             *:*
curl -s -o /dev/null -w "port8080 HTTP %{http_code}\n" http://127.0.0.1:8080/

实测回显:

port8080 HTTP 200

还原(改回 80 并重启):

cp /tmp/gateway.ini.bak /etc/casaos/gateway.ini
systemctl restart casaos-gateway
ss -ltn | grep ':80 '

实测回显:

LISTEN 0      4096               *:80               *:*

7.3 防火墙放行

若启用 UFW,放行 WebUI 端口:

ufw allow 80/tcp

7.4 服务管理常用命令

systemctl status casaos          # 查看主服务状态
systemctl restart casaos-gateway # 重启网关(改配置后必须)
journalctl -u casaos -f          # 跟踪主服务日志
systemctl list-units 'casaos*'   # 列出全部 CasaOS 服务

八、升级、重装与版本管理

  1. 升级:重新执行官方一键脚本即可升级到脚本内置的最新稳定版,脚本对已装环境幂等(先停止旧服务 → 迁移 → 安装新版本 → 启动检查)。
  2. 指定版本回退:官方脚本不支持直接指定版本号;回退到旧版本使用方案 B——在联网机获取旧版本的构建目录(脚本变量或 Release 资产手工组装),再以 -p <build_dir> 安装。
  3. 查询当前版本与更新状态:
curl -s http://127.0.0.1/v1/sys/version | grep -o '"current_version":"[^"]*"'

实测回显:

"current_version":"0.4.15"
  1. WebUI 内升级:仪表盘检测到新版本时会在设置区提示一键升级,其内部同样调用脚本更新流程。

九、常见问题(FAQ)

9.1 安装报 Permission denied,迁移脚本执行失败

现象(实测完整回显):

[ INFO ] Running /tmp/casaos-installer/tmp.zZyq3RnIsL/build/scripts/migration/script.d/01-migrate-gateway.sh...
realpath: /usr/bin/casaos: No such file or directory
realpath: /usr/local/bin/casaos: No such file or directory
/tmp/casaos-installer/tmp.zZyq3RnIsL/build/scripts/migration/script.d/01-migrate-gateway.sh: line 96: /tmp/casaos-installer/tmp.zZyq3RnIsL/build/scripts/migration/script.d/../../../sysroot/usr/bin/casaos-gateway: Permission denied
[FAILED] Failed to run migration script

定位:脚本在 /tmp 下解包发行件并直接执行其中的二进制。安全加固的服务器常把 /tmp 挂载为 noexec(mount | grep ' /tmp ' 可确认),此时二进制无法执行,报 Permission denied。

解决:临时为 /tmp 恢复执行权限后重跑安装:

mount -o remount,exec /tmp
curl -fsSL https://get.casaos.io | sudo bash

实测按此处理后安装顺利完成。如安全策略不允许长期放开 /tmp 执行权限,安装完成后再改回(mount -o remount,noexec /tmp)。

9.2 casaos-cli 命令全部报 502 Bad Gateway

现象(实测回显):

$ casaos-cli healthcheck services
Error: 502 Bad Gateway -

定位:casaos-cli 默认经网关(80 端口)调用主服务 API(如 /v2/casaos/health/services)。502 说明网关转发失败,常见两类原因:

  1. 主服务不在运行或网关注册的路由指向了失效端口。查看运行时注册状态:cat /var/run/casaos/casaos.url 与 /var/run/casaos/routes.json,确认指向的端口存活(ss -ltnp 对照)。
  2. ⚠️ 禁止手动前台运行 casaos 主程序:casaos 不接受 version 等子命令,直接执行会以前台模式启动第二份主服务并覆盖网关注册(/var/run/casaos/casaos.url 被改写为该进程端口);进程退出后路由即失效,所有 CLI 请求 502。

解决:重启主服务让其重新注册路由:

systemctl restart casaos && sleep 5

实测重启后 casaos.url 更新为新端口且 v1 API 恢复:

http://127.0.0.1:33213

注意:casaos-cli healthcheck 系列调用的 /v2/casaos/* 接口在 v0.4.15 主服务上仍可能返回 502(CLI 版本 0.4.4-3-alpha1 与主服务版本脱节),属上游已知状态;版本查询、服务状态检查请用 curl http://127.0.0.1/v1/sys/version 与 systemctl 代替。

9.3 想查看 CasaOS 版本,直接运行 casaos 命令卡住

casaos 二进制无 version 子命令,直接运行会以前台模式启动主服务(终端被占住并输出请求日志),且会覆盖网关注册造成 9.2 的问题。按 Ctrl+C 退出后执行 systemctl restart casaos 恢复。查看版本的正确方式:

curl -s http://127.0.0.1/v1/sys/version
# 或查看 CLI 自身版本
casaos-cli version

实测回显:

0.4.4
(build time: 2023-11-20T09:52:33Z, commit: 51949f2cdc71eaec41db443fb93d8178ca6e5192)

9.4 casaos-uninstall 提示 TERM environment variable not set

官方卸载器是交互脚本,需要 TTY 与确认输入。在无交互终端的自动化场景(如通过管道执行)会停在确认提示甚至报 /dev/tty: No such device or address。解决:在真实终端中运行并按提示输入 y;自动化场景改用第十章的手动卸载步骤。

9.5 安装时 Docker 相关报错或已有业务被重启

脚本会对 Docker 写入 API 兼容性配置并重启 Docker(回显见 4.3 ③)。已有生产负载的服务器应选择维护窗口安装;如需彻底了解影响,检查 /etc/systemd/system/docker.service.d/override.conf 内容。

十、卸载与清理

10.1 官方卸载器(交互式)

sudo casaos-uninstall

脚本会先提示确认(实测回显):

[  OK  ] This script will delete the containers you no longer use, and the CasaOS configuration files.
         Do you want delete all containers? Y/n :

输入 y 后脚本依次:停止并禁用全部 CasaOS 服务与 rclone/devmon 辅助服务 → 删除 systemd 单元与 udev 挂载规则 → 删除 /etc/casaos、/var/run/casaos、/var/log/casaos、/usr/share/casaos → 按 /var/lib/casaos/manifest 清单删除发行文件 → 删除 /var/lib/casaos 数据目录。⚠️ "delete all containers" 确认后会把宿主机上全部 Docker 应用一并停止删除(CasaOS 视角的应用即 Docker 应用),有非 CasaOS 管理的业务时应答 n 并自行处理。

⚠️ 官方卸载器为交互式脚本,需要真实终端(TTY);纯管道/无终端环境无法完成确认,走 10.2 手动卸载。

10.2 手动卸载(自动化场景)

按官方卸载器的清理清单逐步执行(每行一个单元,禁止批量合并):

systemctl stop casaos-gateway.service
systemctl stop casaos-message-bus.service
systemctl stop casaos-user-service.service
systemctl stop casaos-local-storage.service
systemctl stop casaos-app-management.service
systemctl stop rclone.service
systemctl stop casaos.service
systemctl disable casaos-gateway.service
systemctl disable casaos-message-bus.service
systemctl disable casaos-user-service.service
systemctl disable casaos-local-storage.service
systemctl disable casaos-app-management.service
systemctl disable rclone.service
systemctl disable casaos.service
systemctl daemon-reload

清理文件(manifest 是发行文件清单,逐行记录了官方落盘的全部路径):

rm -rf /lib/systemd/system/casaos*.service /etc/systemd/system/multi-user.target.wants/casaos*.service
rm -rf /etc/systemd/system/multi-user.target.wants/rclone.service
cat /var/lib/casaos/manifest | while read -r line; do rm -rf "$line"; done
rm -rf /etc/casaos /var/run/casaos /var/log/casaos /usr/share/casaos /var/lib/casaos
rm -rf /usr/bin/casaos /usr/bin/casaos-* /usr/bin/casaos-uninstall

验证卸载结果:

systemctl is-active casaos
ls /etc/casaos
ls /var/lib/casaos
which casaos

实测回显(全部确认已清理):

inactive
ls: cannot access '/etc/casaos': No such file or directory
ls: cannot access '/var/lib/casaos': No such file or directory

(which casaos 无输出,二进制已删除。)

⚠️ 若卸载后 systemctl list-units | grep casaos 出现 loaded failed 的残留单元(如 casaos-user-service.service),执行 systemctl reset-failed casaos-user-service 清除失败状态记录即可。

💡 说明:安装脚本写入的 /etc/systemd/system/docker.service.d/override.conf(Docker API 兼容配置)不在卸载清理清单内;不需要时手动删除并 systemctl daemon-reload && systemctl restart docker。

十一、参考链接

  1. CasaOS 官方安装文档(Get Started):https://wiki.casaos.io/en/get-started
  2. 官方安装脚本入口:https://get.casaos.io
  3. CasaOS Releases(版本发行件):https://github.com/IceWhaleTech/CasaOS/releases
  4. CasaOS 主仓库:https://github.com/IceWhaleTech/CasaOS
  5. 本专栏相关文档:《CasaOS 介绍与选型指南》、《CasaOS 0.4.15 配置参数详解》、《CasaOS 0.4.15 常用 CLI 命令与工具详解》