# 浅谈Linux系统中的软件安装与卸载

- Link: https://www.xuepaijie.com/html/skill/coup/645.html
- Published: 2016-06-20T17:09:58+08:00
- Author: Admin

**软件的安装**

Linux下软件的安装主要有两种不同的形式。第一种安装文件名为xxx.tar.gz；另一种安装文件
名为xxx.i386.rpm。以第一种方式发行的软件多为以源码形式发送的；第二种方式则是直接
以二进制形式发送的。

先普及个知识。

**configure作用**

是源码安装软件时配置环境用的，根据你的配置选项和你的系统情况生成makefile文件，为
make 做准备。

最常用的参数： ./configure –prefix 作用：不指定prefix，则可执行文件默认放在/usr/
local/bin，库文件默认放在/usr/local/lib，配置文件默认放在/usr /local/etc。其它的
资源文件放在/usr/local/share。你要卸载这个程序，要么在原来的make目录下用一次make
uninstall（前提是make文件指定过uninstall），要么去上述目录里面把相关的文件一个个
手工删掉。指定prefix，直接删掉一个文 件夹就够了。

对于第一种，安装方法如下：

1 .首先，将安装文件拷贝至你的目录中。例如，如果你是以root身份登录上的，就将软件拷贝
至/root中。

#cp xxx.tar.gz /root

2 .由于该文件是被压缩并打包的，应对其解压缩。命令为：#tar xvzf filename.tar.gz 如果
是filename.tar.bz2格式的，应该是tar jxvf filename.tar.bz2来解压。

3. 执行该命令后，安装文件按路径，解压缩在当前目录下。用ls命令可以看到解压缩后的文件。
通常在解压缩后产生的文件中，有“Install”的文件。该文件为纯文本文件，详细讲述了该软件
包的安装方法。

4.执行解压缩后产生的一个名为configure的可执行脚本程序。它是用于检查系统是否有编译
时所需的库，以及库的版本是否满足编译的需要等安装所需要的系统信息。为随后的编译工作
做准备。命令为： #./configure如果您想把软件安装到指定目录，应该用#./configure –prefix
=/您自己指定的目录，比如我想把一个aa安装到/opt/aa目录中，应该如下输入#./configure–
prefix=/opt/aa。检查通过后，将生成用于编译的MakeFile文件。此时，可以开始进行编译
了。编译的过程视软件的规模和计算机性能的不同，所耗费的时间也不同。命令为： #make。

6.成功编译后，键入如下的命令开始安装：#make install

7.安装完毕，应清除编译过程中产生的临时文件和配置过程中产生的文件。键入如下命令：#
make clean#make distclean至此，软件的安装结束。

对于第二种，其安装方法要简单得多。

同第一种方式一样，将安装文件拷贝至你的目录中。然后使用rpm来安装该文件。命令如下：#
rpm -i filename.i386.rpmrpm将自动将安装文件解包，并将软件安装到缺省的目录下。并将
软件的安装信息注册到rpm的数据库中。参数i的作用是使rpm进入安装模式。

**软件的卸载**

1.软件的卸载主要是使用rpm来进行的。卸载软件首先要知道软件包在系统中注册的名称。键入
命令：#rpm -q -a即可查询到当前系统中安装的所有的软件包。

2. 确定了要卸载的软件的名称，就可以开始实际卸载该软件了。键入命令：#rpm -e [package
name]即可卸载软件。参数e的作用是使rpm进入卸载模式。对名为[package name]的软件包进行
卸载。由于系统中各个软件包之间相互有依赖关系。如果因存在依赖关系而不能卸载，rpm将
给予提示并停止卸载。你可以使用如下的命令来忽略依赖关系，直接开始卸载：#rpm -e [package
name] -nodeps忽略依赖关系的卸载可能会导致系统中其它的一些软件无法使用如果想知道rpm
包安装到哪里了呢？应该用 #rpm -ql [package name]。

3.如何卸载用源码包安装的软件？

最好是看README和INSTALL ；一般的情况下都有说，但大多软件没有提供源码包的卸载方法；
我们可以找到软件的安装点删除。主要看你把它安装在哪了。

比如：如果安装软件时，指定个目录。这个问题也不会难；比如用源码包安装gaim 的#./configure–
prefix=/opt/gaim#make#make install如果安装mlterm#./configure –prefix=/opt/mlterm#
make#make install把源码包安装的软件，都指定安装在 /opt目录中，这样不就知道了？

如果删除，就删除相应的软件目录；有些软件要在解压安装目录中执行 make uninstall ，
这样就卸载掉了。
