赞
踩
这篇文章列举三种方式卸载 ubuntu 中已经安装好的 package 。
如果安装的 package 是通过 apt-get install package-name
的的方式安装的,可以使用 下面两个命令卸载:
apt-get remove package-name
: 卸载包。apt-get purge package-name
: 卸载包以及配置文件(彻底卸载)。至于要卸载的包是不是通过 apt-get install
命令安装的,可以使用apt-get list --installed
命令查看通过 apt-get 已安装过的所有包。
更多的 apt-get 命令可以通过 apt-get --help 命令查看。
Ubuntu 上有好些包是通过源码安装的,比如从 github 上下载 Repository 的某个 release 。源码的安装方式一般都是:
cd source-code-root-dir
./config
make
make install
通过源码手动安装包如果使用 apt-get remove/purge package-name
的方式卸载,系统会提示 package-name 没有安装,不需要卸载。(其实是 apt-get 不知道这个包被安装了)。
如果我们想卸载,应该这样做:
# 进入源码根目录
cd source-code-root-dir
# 重新执行一遍 config 文件
./config
# 执行卸载命令
make uninstall
第二种方式还有个条件:必须在源码根目录下,才可以卸载 package。但很多时候开发者都是前脚安装完成,测试没问题,后脚就把源码删了。这样等卸载的时候尴尬了,如果能找到源码在哪,重新下载下来,再按照第二种方式操作,依旧还是可以卸载的。
如果找不见源码在哪呢?
也是有办法的~~~
可以使用locate package-name
命令 :
root@master-aliyun:~# locate lxcfs
/usr/local/bin/lxcfs
/usr/local/etc/init/lxcfs.conf
/usr/local/etc/rc.d/init.d/lxcfs
/usr/local/lib/lxcfs
/usr/local/lib/lxcfs/liblxcfs.la
/usr/local/lib/lxcfs/liblxcfs.so
/usr/local/share/lxcfs
/usr/local/share/lxc/config/common.conf.d/00-lxcfs.conf
/usr/local/share/lxcfs/lxc.mount.hook
/usr/local/share/lxcfs/lxc.reboot.hook
/var/lib/lxcfs
找到与package 相关的文件都有哪些, 删掉这些文件就可以卸载了。不过这种方式适合体积较小的 package,如果找出来的文件数目过多,那删起来也是很麻烦的事情。
那有没有更简单的办法呢?
也是有的!!!
package 安装后,会生成一个可执行文件存放在某个路径下(一般都在 ..../bin
路径下),使用 which
命令找到这个可执行文件,删掉就可以了。
root@worker2-aliyun:~# which lxcfs
/usr/local/bin/lxcfs
root@worker2-aliyun:~# rm -rf /usr/local/bin/lxcfs
很粗鲁的删除方式,这种卸载方式会留下一些配置文件,但是不影响其他功能的使用,就是相当于在电脑里存了一些没用的文件。不要介意占存储什么的,一是现在电脑的存储都很大,二是电脑上没用的文件也不差多这么一个。当然,如果开发者能找打这些没用的文件并且删除,那当然是很不错啦。
我自己测试过,直接删可执行文件卸载软件,再换版本重新安装,是可以 work 的~~~。
上面介绍了几种办法,这里有个开源项目,可以拿来练练手~~~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。