本人常用ubuntu系统,并且安装各类package以满足日常工作需要。有时也需要对已安装的package进行卸载操作,但是通过哪些指令可以卸载ubuntu上的已安装包,记性不好,经常需要谷歌。借此机会,把卸载package常用的命令在此做个总结。
常用卸载package命令
apt-get purge / apt-get --purge remove
删除已安装包(不保留配置文件)。
如软件包a,依赖软件包b,则执行该命令会删除a,而且不保留配置文件
apt-get autoremove
删除为了满足依赖而安装的,但现在不再需要的软件包(包括已安装包),保留配置文件。
apt-get remove
删除已安装的软件包(保留配置文件),不会删除依赖软件包,且保留配置文件。
apt-get autoclean
APT的底层包是dpkg, 而dpkg 安装Package时, 会将 *.deb 放在 /var/cache/apt/archives/中,apt-get autoclean 只会删除 /var/cache/apt/archives/ 已经过期的deb。
apt-get clean
使用 apt-get clean 会将 /var/cache/apt/archives/ 的 所有 deb 删掉,可以理解为 rm /var/cache/apt/archives/*.deb。`
实例-卸载本地的mysql
- 查看mysql依赖项
dpkg -l | grep mysql
ii mysql-client-8.0 8.0.30-0ubuntu0.20.04.2 amd64 MySQL database client binaries
ii mysql-client-core-8.0 8.0.30-0ubuntu0.20.04.2 amd64 MySQL database core client binaries
ii mysql-common 5.8+1.0.5ubuntu2 all MySQL database common files, e.g. /etc/mysql/my.cnf
ii mysql-server 8.0.30-0ubuntu0.20.04.2 all MySQL database server (metapackage depending on the latest version)
ii mysql-server-8.0 8.0.30-0ubuntu0.20.04.2 amd64 MySQL database server binaries and system database setup
ii mysql-server-core-8.0 8.0.30-0ubuntu0.20.04.2 amd64 MySQL database server binaries
- 卸载mysql-common
sudo apt remove mysql-common
- 卸载并清除mysql-8.0
sudo apt autoremove --purge mysql-server-8.0
- 清除残留数据
dpkg -l | grep ^rc | awk '{print$2}' | sudo xargs dpkg -P
- 检查依赖项,输入如下代码
dpkg --list | grep mysql
如果输出为空,那么表示mysql已经彻底卸载干净了,如果不为空那么我们还要继续进行删除卸载,继续输入如下代码:
sudo apt autoremove --purge mysql-apt-config