linux怎么卸载软件:按包管理器对应指令干净卸载残留文件
上次折腾本地虚拟机服务器,硬生生卡在linux怎么卸载软件这件事上,凭着网上零碎的短句瞎操作,看似把软件删干净了,实则留了一堆配置残留,隔三差五弹出报错弹窗,折腾了大半天才算摸透靠谱的卸载方式。
最开始犯的蠢,就是直接删文件夹。
当时以为Linux软件和Windows一样,找到安装目录直接用rm命令删除文件夹就彻底卸载了,对着虚拟机里的nginx安装目录一通暴力删除,看着终端界面干干净净没有报错,还以为问题彻底解决了。结果重启虚拟机之后才发现,系统后台依旧在偷偷运行nginx的残余进程,之前设置的开机自启项没有被清除,etc目录下还堆积着一大堆旧的配置文件和缓存数据。等到后面想重新安装新版nginx的时候,新旧配置直接冲突,安装程序反复报错终止,终端刷出一屏密密麻麻的代码,完全找不到问题根源,越折腾越烦躁。
后来才反应过来,Linux系统的软件安装和卸载,全部依托对应包管理器,手动删文件永远删不干净。
我日常用的是Ubuntu系统,适配的是apt包管理器,最基础的卸载指令是sudo apt remove 软件名。这条指令的作用很局限,只会删除软件的主体运行程序,用户自定义的配置、缓存文件、环境变量全部都会保留在系统里,适合后续大概率还要重装软件的场景。当时抱着试一试的心态输入指令,几秒就执行完成,后台残留的进程也随之关闭,临时解决了系统莫名报错的问题。
想彻底卸载不留任何痕迹,就得换专用指令。
sudo apt purge 软件名是真正意义上的完整卸载,不仅会清除软件本体,还会批量删除所有关联的配置文件、缓存数据、开机自启配置和环境残留,一次性清理干净,不会留下任何冗余垃圾。那次就是靠这条指令,彻底清掉了出错的nginx所有残留数据,之后重新安装新版本时全程顺畅,没有出现半点冲突报错。要是换成CentOS系统,逻辑也一样,只是包管理器换成yum,对应的卸载指令就是yum remove 软件名,不同系统的指令绝对不能混用,混用只会直接报错,完全无法执行。
中途还脑子一热跟风用了强制卸载参数,在指令后面加了-f,本以为能清理得更彻底,结果误删了系统自带的依赖组件,导致终端部分基础功能失效,又花了二十多分钟修复依赖、补全系统组件,纯属多此一举。
慢慢摸清规律才发现,Linux卸载软件根本没有花里胡哨的操作,不用找目录、不用手动清缓存,只要分清自己的系统版本,用对对应的包管理器指令,就能精准完成卸载,要么保留配置简易删除,要么彻底清空所有数据,按需选择就行。
关掉终端的日志窗口,保存好虚拟机的操作快照,随手熄了屏幕,这次折腾也算彻底改掉了手动删文件的坏习惯。