分享

Linux下如何卸载软件

 思考的轨迹 2012-04-16

Linux下如何卸载软件

卸载Linux平台软件非常麻烦,而且提示不清(说简单的人天缘没见过),经常还会为路径问题煞费脑筋,因为有些源码编译安装的,所以路径一般不会使用默认路径,那么有依赖关系的软件就很容易出问题,找不到依赖执行或配置文件。而有一些又是系统默认安装的,路径一般比较分散,再加上平台多,卸载起来更是麻烦。天缘自己把常见几种卸载方式总结一下,不全面也没办法,实在不行就手动直接删除好了。

注:以下命令均在终端SHELL中进行。X-WINDOW也有对应的文件管理工具,但终究使用较少。安装和卸载软件前最好看看README,一般均有说明,国内软件就不说了,有时作者都不清楚如何卸载的软件都会往外发。

一、绿色软件

这类软件大多是以压缩包(*.tar.gz,...)形式发放的,跟下文的源码包类似,但是不需要编译,直接解压到某个目录即可运行。这类软件直接到对应目录下删除即可。不涉及相关系统变量修改,至多再加上相关启动选项修改或启动链接。

rm -rf softname_version

二、使用RPM包安装的软件

1、确定软件版本

rpm -qa|grep softname*

softname为软件名称,不确定部分可使用*通配符。接着就会有相关的软件包列表。

2、卸载软件包

rpm -e softname_version

softname_version为完整的软件包名称。

当卸载RPM安装包时,经常会遇到系统提示如下错误:

  • error: specifies multiple packages,出现该错误一般是因为有两个或多个同名包,(典型:是x86和x64包都安装),Linux无法区分卸载目标。这时可使用--allmatches参数,告诉卸载程序,只要匹配就卸载,相当于同名的同时都卸载。
  • 常见卸载错误xxx.so is needed by yyy时,说明这些库跟这些程序有依赖关系(运行需要),如果确认没有问题,可以 使用--nodeps 参数,不考虑依赖关系而直接卸载gd包,比如# rpm -e gd --allmatches --nodeps

3、定制的安装和卸载软件

这类软件很少了,但是某些商业软件则会提供,安装卸载会跟WINDOWS平台一样,一般只需运行一个脚本就可完成。

三、自编译安装的软件

这类软件有*.tar.gz,*.tar.bz,*.tar.bz2等,都是源程序,需要编译才能安装(当然也有上文的绿色解压安装的,但也使用tar.gz这样打包的,不在此列)。这类软件使用上文的rpm命令查不到任何信息。只有天知道(自己过些日子可能也不知道)安装到了哪里。

1、卸载自编译软件

make uninstall

注意该命令要在源码包目录下执行,使用此命令卸载软件,会比较彻底,而且各相关路径全部都会列出来。

但是,往往我们安装后,源码包会删除掉,只剩安装目标了,那么在找到安装时的配置就很麻烦(路径可能是默认路径,也可能指定路径)。而且也未必能够找到。安装LOG也未必能帮得上忙。

2、XXX卸载方法

如果遇到上面说的那种情况(其实是经常遇到),又找不到路径的,只能手动删除了,确保没有运行干扰的程序就可以了。

此外,还有*.src.rpm形式的源代码包,也需要编译安装,卸载方法同第二节。


天缘原创博客,转载或使用必须遵守署名、非商业用途和保持一致,未经许可严禁对本文去链接、去水印、去署名或伪原创等演绎行为,转载请注明:

转载自 天缘博客 及本文链接地址:http://www./archives/562.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多