插件卸载后还显示已安装,是没卸干净还是页面残留?

有些插件卸载完,软件中心或 LuCI 菜单里还显示“已安装”。

点进去又可能提示页面不存在,或者入口还在、服务已经没了,看着就很像没卸干净。

遇到这种情况,不建议反复安装卸载,也不要直接去系统目录里乱删文件。

这类问题通常要分三层看:页面入口、软件包状态、后台服务和数据目录。

1. 只是页面入口残留

如果卸载后菜单还在,但点进去提示类似:

No page is registered at /admin/services/...

这种更像是 LuCI 页面入口或浏览器缓存没有刷新,不一定代表插件还在运行。

可以先做这几步:

  • 刷新后台页面,或者换无痕窗口打开
  • 清浏览器缓存后重新进后台
  • 重启 LuCI / Web 后台,或者重启一次设备
  • 回到软件中心看插件状态是否刷新

如果重启后台后入口消失,基本就是页面残留,不需要继续折腾插件目录。

2. 软件包本身还没卸干净

如果页面刷新后仍显示已安装,就要看包管理里到底还剩什么。

在 OpenWrt / iStoreOS 这类系统里,很多插件不只有一个包。常见会同时有:

  • luci-app-xxx
  • app-meta-xxx
  • 语言包或依赖包

所以只卸掉其中一个,页面可能还会判断它“装过”。

有 SSH 的话,可以按插件关键词搜一下已安装包:

opkg list-installed | grep -i 关键词

看到明确相关的包,再按包名卸载。比如 iStore 这类 meta 包和 LuCI 包同时存在时,就要一起看,别只删一个入口包。

华硕官改的软件中心不要直接套 OpenWrt 命令。更稳的是看软件中心里的卸载日志、插件日志和调试页状态。

3. 插件服务还在跑

还有一种情况是页面卸了,但后台进程或启动项还在。

表现可能是端口还被占用、服务还能访问,或者重启后某个脚本又把它拉起来。

这时要看:

  • 系统日志里有没有这个插件的启动记录
  • 进程里还有没有插件相关服务
  • 启动项里有没有残留脚本
  • 插件目录里是不是只剩数据,不是程序本体

服务还在跑的时候,不适合直接删目录。 先停服务,再处理包和启动项,最后再考虑数据目录。

4. 数据目录不等于没卸载

很多插件卸载时会故意保留数据,比如配置、数据库、下载目录、相册索引。

这不是坏事。直接清掉虽然看着干净,但可能会把历史数据一起删了。

比较稳的处理方式是:

  • 插件不用了:备份后再删数据目录
  • 以后可能重装:保留数据目录
  • 不确定目录用途:先改名观察,不要直接删除

简单判断

可以按这个顺序分:

  • 菜单还在但页面不存在:多半是入口或缓存残留
  • 包管理还能搜到插件包:说明软件包还没卸干净
  • 端口 / 服务还在:说明后台进程或启动项还没处理
  • 只剩配置和数据目录:不一定是卸载失败,可能是保留数据

插件卸载后还显示已安装,真正要避免的是把“页面还在”直接等同于“系统坏了”。

先分清是哪一层残留,再处理对应位置,通常比反复卸载重装更靠谱。