Linux下是常规的软件安装方式除了二进制形式的软件分发,还有源代码形式的软件包,以下为两种式软件的安装与卸载方式
一、二进制分发软件包的安装与卸载
Linux软件的二进制分发是指事先已经编译好二进制形式的软件包的分发形式,其优点是安装使用容易,缺点则是缺乏灵活性,如果该软件包是为特定的硬件/操作系统平台编译的,那它就不能在另外的平台或环境下正确执行。
1、*.rpm形式的二进制软件包
说明:RPM(RedHat Packge Manager)是RedHat公司出的软件包管理器,使用它可以很容易地对rpm形式的软件包进行安装、升级、卸载、验证、查询等操作,安装简单,而卸载时也可以将软件安装在多处目录中的文件删除干净。.rpm是软件包的文件名(这里的.rpm特指*.src.rpm以外的以rpm为后缀的文件);
rpm常用参数:
-ivh:安装显示安装进度 [install--verbose—hash]
-Uvh:升级软件包 [Update];
-qpl:列出RPM软件包内的文件信息[Query Package list];
-qpi:列出RPM软件包的描述信息[Query Package install package(s)];
-qf:查找指定文件属于哪个RPM软件包[Query File];
-Va:校验所有的RPM软件包,查找丢失的文件[View Lost];
-e:删除包
2、.tar.gz/.tgz、*.bz2形式的二进制软件包
说明:.tar.gz/.bz2形式的二进制软件包是用tar工具来打包、用gzip/bzip2压缩的,安装时直接解包即可。对于解压后只有单一目录的软件,卸载时用命令“rm -rf 软件目录名”;如果解压后文件分散在目录中,则必须一一手动删除,想知道解压时向系统中安装了哪些文件,可以用命令“tar -ztvf .tar.gz”/“tar -jtvf .bz2”获取清单。tar的参数z是调用gzip解压,x是解包,v是校验,f是显示结果,j是调用bzip2解压,t是列出包的文件清单。
安装:tar -zxvf .tar.gz 或 tar -jxvf .bz2
卸载:手动删除
提供安装程序的软件包
这类软件包已经提供了安装脚本或二进制的安装向导程序(setup、install、install.sh等),只需运行它就可以完成软件的安装;而卸载时也相应地提供了反安装的脚本或程序。而且在软件安装后提供反安装的功能,目前这种类型的软件包还比较少。
二、源代码分发软件包的安装与卸载
Linux软件的源代码分发提供了软件所有程序源代码的发布形式,需要用户自己编译成可执行的二进制代码并进行安装,根据应用环境的不同进行编译安装。配置灵活,可以随意去掉或保留某些功能/模块,适应多种硬件/操作系统平台及编译环境,难度较大。
1、*.src.rpm形式的源代码软件包
安装:rpm -rebuild *.src.rpm
cd /usr/src/dist/RPMS
rpm -ivh *.rpm
卸载:rpm -e packgename
说明:rpm --rebuild *.src.rpm命令将源代码编译并在/usr/src/dist/RPMS下生成二进制的rpm包,然后再安装该二进制包即可。packgename如前所述,两种方法如下:
法1:
rpm -i your-package.src.rpm
cd /usr/src/redhat/SPECS
rpmbuild -bp your-package.specs #一个和你的软件包同名的specs文件
cd /usr/src/redhat/BUILD/your-package/ #一个和你的软件包同名的目录
./configure #这一步和编译普通的源码软件一样,可以加上参数
make
make instal
法2:
rpm -i you-package.src.rpm cd /usr/src/redhat/SPECS #前两步和方法一相同
rpmbuild -bb your-package.specs #一个和你的软件包同名的specs文件
这时在/usr/src/redhat/RPM/i386/(根据具体包的不同,也可能是i686,noarch等等)在这个目录下,有一个新的rpm包,这个是编译好的二进制文件。
rpm -i new-package.rpm即可安装完成。
2、.tar.gz/.tgz、*.bz2形式的源代码软件包
说明:建议解压后先阅读说明文件,可以了解安装有哪些需求,有必要时还需改动编译配置。有些软件包的源代码在编译安装后可以用make uninstall命令来进行卸载,如果不提供此功能,则软件的卸载必须手动删除。由于软件可能将文件分散地安装在系统的多个目录中,往往很难把它删除干净,那你应该在编译前进行配置,指定软件将要安装到目标路径:./configure --prefix=目录名,这样可以使用“rm -rf 软件目录名”命令来进行干净彻底的卸载。与其它安装方式相比,需要用户自己编译安装是最难的。
解压源码包:
[root@Mylinux ~]# tar -zxvf zip-2.3-27.tar.gz(或者tar -jzxf zip-2.3-27.tar.bz2)
进入已解压的源码包目录,进行安装:
[root@Mylinux ~]# cd zip-2.3-27
[root@Mylinux zip-2.3-27]# ./configure --prefix=.... && make && make install
卸载源码包:
[root@Mylinux zip]# make uninstall
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。