HI END


一种永不妥协,追求极致与完美的精神与态度。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Linux下源码方式安装的软件,如何干净卸载?(转)

Posted on 2012-07-12 19:58  HI END  阅读(4335)  评论(1编辑  收藏  举报

来源:http://hi.baidu.com/sy_wj/item/d5e64eebf31e06e0fb42babc

对于大家都知道的源码安装方式,我在这里不多说了,不明白的可以去问百度。我这里主要说的是源码方式安装的软件的卸载。

第一种方式:

在进入软件解压之后的目录执行./configure之后,执行命令make uninstall

第二种方式:

如果第一种方法行不通,比如出现“没有规则可以创建目标uninstall”这样的提示。

那么试一下查看解压后的目录中软件安装说明,比如很多软件都有README这个文件,里面可能会有这个软件的特定卸载方式。照着做就行。

第三种方式:

如果前两种都不行,试一下我从国外网站上找到的一种解决办法。(在国内的网站上找了好久,都找不到办法。是我笨还是国内其他人笨?还是这个问题大家都没遇到过?)

这是我参考的国外的网站链接:

http://stackoverflow.com/questions/1550226/python-setup-py-uninstall

我总结尝试后,找到的解决办法:

1、首先,你要进入解压之后的目录,./configure一下(可能这一步也不需要,因为我执行这一步时指定了安装路径,这个路径是/usr/local/,我喜欢安装在这里。或许默认就是安在这里,所以不确定这一步是否必须);

2、然后,以python2.7.2为例,在这个目录中有一个setup.py的文件,很显然这是安装程序,还是python写的(用python写python到安装程序,大开眼界了)。在这里,需要写一个shell脚本,把在重新安装中提到的安装位置全部删除,这不就是实现了卸载到目的吗?

脚本内容:

del.sh

 

view plain#!/bin/bash  for i in $(less files.txt)  do  rm -rf $i  done  脚本说明:

 

files.txt是需要事先在目录下创建的文件,目的是记录安装过程中提到到路径。脚本很简单,详细到就不说了,学过shell编程到肯定没问题,没学过到有其他语言编程基础的,仔细看看也可以看懂。

3、重新安装软件,在此过程中用files.txt记录安装的路径

比如安装python2.7.2,进入安装目录,执行命令python setup.py  install --record files.txt

在此过程中会向files.txt中写入很多路径

4、执行脚本./del.sh

5、在执行之后,可能只是删除了部分文件,毕竟有些位置可能没记录在里面(这是客观事实),但是核心的必须删掉的位置应该已经都删掉了,所以还是可以放心的。如果你有洁癖,不希望自己的爱机上有这些污点,那你可以去你的安装目录,把剩下的删除掉,比如我装python是装在了/usr/local/python2.7.2下面,那我把python2.7.2这个目录删除就好。

(注明:卸载的方法很多,我只说我用过的,还有其他方法的话欢迎跟贴补充,共同进步)