暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Linux如何安全卸载软件?一篇看懂所有方式(含 Docker & K8s)

464

安装软件容易,卸载干净才是王道。不论你是用包管理器、源码安装,还是用 Docker 或 Kubernetes 部署,本文都将带你逐一掌握“干净利落”的卸载技巧!

下面是整体卸载思路:


1 常规软件卸载方式

1.1  使用包管理器卸载

1.1.1 Debian/Ubuntu系列

主要是基于apt来管理软件包

sudo apt remove 软件包名         # 卸载软件,保留配置文件
sudo apt purge 软件包名          # 卸载软件及其配置文件
sudo apt autoremove              # 自动清除无用依赖

查看软件是否已卸载:

dpkg -l | grep 软件名

1.1.2 RedHat/CentOS系列

RedHat系列操作系统主要用dnf或yum管理软件包,下面操作同样适用于Fedora,麒麟V10,openEuler等操作系统

dnf remove 软件包名         # RHEL 8+/Fedora 推荐
yum remove 软件包名         # RHEL 7/CentOS 7 使用

查看软件是否已卸载:

rpm -qi 软件包名

1.2 源码安装的卸载

很多软件是通过编译方式 ./configure && make && make install
 安装的,并不被包管理器记录。这种情况下,卸载方法如下:

步骤一:找到源码目录(编译时的目录)

步骤二:执行卸载命令(如果 Makefile 支持)

make uninstall

温馨注意

  • 不是所有源码都有 uninstall 目标
  • 若没有,需根据 make install
     时复制的路径,手动删除对应文件,此步骤需要非常谨慎,删错了后果比较严重,尽量做到可控。

2 卸载Docker 安装的

Docker 的部署是容器化运行,卸载时要注意清理容器、镜像、网络和数据卷

2.1 查看容器和镜像

docker ps -a             # 查看所有容器
docker images            # 查看本地镜像

2.2 删除容器

docker stop 容器名或ID
docker rm 容器名或ID

# 可以强制删除正在运行的容器
docker rm -f 容器名或ID

2.3 删除镜像

docker rmi 镜像名或ID

镜像必须没有容器依赖,才能删除,有运行中的容器,需要加-f
强制删除,但要谨慎。

2.4 删除挂载卷(可选)

docker volume ls
docker volume rm 卷名

2.5 删除网络

如果是自定义容器网络,可以根据下面命令卸载

docker network ls
docker network rm 网络名

一键清理所有未使用资源(危险,需谨慎):

docker system prune -a

3 卸载K8S安装的软件

Kubernetes(K8s)是容器编排平台,卸载主要分为三种方式:

3.1 删除资源对象(最常见)

# 根据资源清单进行删除,会删除清单里面的所有资源对象
kubectl delete -f app.yaml
# 或根据名称:
kubectl delete deployment myapp
kubectl delete service myapp-service

3.2 使用 Helm 卸载(如果用 Helm 安装)

如果是用Helm安装的,可以直接使用helm卸载

helm list                  # 查看安装的应用
helm uninstall release名

Helm 会自动清理相关的 Deployment、Service、ConfigMap 等。

3.3 清理持久化存储(PVC)

kubectl delete pvc 数据卷名称

查看是否彻底清理干净:

kubectl get all -n your-namespace
kubectl get pvc

4 避免常见错误

错误操作
后果说明
删除共享依赖
可能破坏其他软件运行(如OpenSSL)
忘记清理配置文件
安装新版本后仍然加载旧配置,可能导致故障
盲目手动删除系统文件
可能导致系统无法启动或软件崩溃

总之,卸载需谨慎!

感谢点赞和关注!

如果需要提供技术支持或添加交流群,加V详聊:lige_linux

往期精彩文章:


K8S命令详解汇总【自用珍藏版】K8S集群部署 | K8S存储实战案例 |
K8S证书续签十年 | K8S部署Prometheus | Rancher部署并接管K8S |
Jenkins安装部署 | Gitlab安装部署 | 服务网格Istio安装及实战 |
搭建企业级Harbor仓库 | K8S对接Harbor仓库 | Docker常用命令汇总 |
Docker无法下载镜像解决办法 | 安装Docker的三种方法 | Docker基础概念汇总 |

Oralce19C RAC集群搭建 | Oracle集群管理命令汇总 | MySQL集群安装部署 |
MySQL一键备份脚本 | MySQL集群目录迁移 | Redis三主三从集群部署 |

150个Linux常用命令 |  8个有趣的Linux命令 | 主流Linux操作系统各版本网卡配置方法汇总,建议收藏!  |
Firewalld防火墙详细讲解 |  构建内部Yum源 | 超全的磁盘扩容方法 | 服务器带外管理知识
安装完操作系统后建议做这些优化工作!

文章转载自运维李哥不背锅,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论