linux软件管理

linux软件管理

linux最常见的四种安装方式:

  • 源码安装
  • RPM安装
  • 二进制安装
  • yum安装

1、源码安装

1.1 是什么

开源软件基本都提供源码下载,源码安装的方式;

优点:源码安装的好处是用户可以自己定制软件功能,安装需要的模块,不需要的功能可以不用安装,此外,用户还可以自己选择安装路径,方便管理,卸载软件也很方便,只需删除对应的安装目录即可。

1.2 怎么做

过程源码安装软件一般有以下几个步骤组成:下载解压源码、分析安装平台环境(ifconfigure)、编译安装软件(make,make install)

1、下载解压源码
2、分析安装平台环境(ifconfigure)

在软件包解压完毕之后,我们进入源码目录,一般都会存在configure和README这么两个文件:

  • README是对软件的介绍和安装说明文件;
  • configure是检测当前系统是否拥有安装软件所需的所有文件和工具,如果系统缺少某个文件,就给出提示,直到满足软件的所有需求为止。同时指定需要编译的模块

3、编译安装软件(make,make install)

  • make:是源码编译的工具,最主要的功能就是通过makefile文件来实现的,makefile文件是按照某种语法来进行编写的,文件中定义了各个源文件之间的依赖关系,并说明了如何编译源文件并生成可执行文件,它通过描述各个源程序之间的关系让make工具自动完成编译工作。在执行configure通过后,就会在当前目录下生成Makefile文件,一般情况下在命令行输入make时,make命令会默认去寻找当前目录下的Makefile文件。
  • make install:是安装软件的工具。开始安装软件,安装进程会首先创建安装目录,如果我们没有指定安装的目录,安装程序默认会安装在系统的/usr/local目录下创建安装目录,然后将相应的文件和可执行程序从源码目录拷贝到安装目录下,这样安装就完毕了

1.3 案例:源码安装apache

1、下载源码
# mkdir /apache  #在根目录下创建一个apache目录
# cd /apache  #切换到apache目录
# wget http://apache.mirror.phpchina.com/httpd/httpd-2.2.9.tar.bz2
# tar -jxvf httpd-2.2.9.tar.bz2 #解压apache源码

2、测试安装环境
# cd httpd-2.2.9  // 切换到httpd-2.2.9目录下
# ./configure  --prefix=/opt/apache2.2.9 \
>--enable-so \
>--enable-mods-shared=most \
>--enable-proxy-balancer=shared \
>--enable-proxy-http=shared \
>--enable-proxy-ajp \
>--enable-rewrite

3.编译安装软件
[root@WEBServer httpd-2.2.9]# make
[root@WEBServer httpd-2.2.9]# make install

2、二进制安装

1.1 是什么

Linux下二进制格式的软件是指事先已经在各种平台编译安装好相关软件,然后压缩打包,在安装时只需解压或者执行安装可执行文件即可。

二进制软件包提供了很多类型的打包方式,最常见的就是我们上节讲到的RPM格式的包,还有以“.tar.gz、.tgz、*.bz2“等形式的二进制软件包

优缺点: 二进制软件包的优点是安装简单、容易,缺点是缺乏灵活性,相应的软件包只能在对应平台下安装,离开这个环境软件就无法运行。

3、RPM安装

1.1 是什么

RPM是Red Hat Package Manager的缩写,是最先由Redhat公司开发出来的linux下软件包管理工具,由于这种软件管理方式非常方便,逐渐被其它linux发行商所借用,现在已经成为linux平台下通用的软件包管理方式。

其实就是将软件源码文件进行编译安装,然后进行封装成了RPM文件。

优缺点:安装简单方便,因为软件已经被编译安装完毕,安装只是个验证环境和解压的过程。此外通过RPM方式安装的软件,RPM工具都会记录软件的安装信息,这样方便了软件日后的查询,升级和卸载。
RPM包管理方式的缺点是对操作系统环境的依赖很大,它要求RPM包的安装环境必须与RPM包封装时的环境相一致或相当。还需要满足安装时与系统某些软件包的依赖关系,例如需要安装A软件,但是A软件需要系统有B和C软件的支持,那么就必须先安装B和C软件,然后才能安装A软件。这也是我们在用RPM包方式安装软件需要特别注意的地方。

1.2 怎么做

RPM工具的使用分为安装、查询、验证、更新、删除等操作

命令格式:rpm [选项] file1.rpm file2.rpm…..fileN.rpm  


主选项说明:
 必选参数:
 -i:安装软件 
 -q:查询
 -U:upgrade的意思,更新
 -e:erase的意思,删除
 辅助参数:
  安装类:
	  -v:显示附加信息。
	  -h:安装时输出标记“#”。
	  --test:只对安装进行测试,并不实际安装。
	  --nodeps:不检查软件之间的依赖关系。加入此选项可能会导致软件不可用。
	  --force:忽略软件包以及软件冲突。
	  --replacepkgs:强制重新安装已经安装的软件包。
	  --prefix:将软件包安装到由指定的路径下。
	  --percent:以百分比的形式输出安装的进度。
	  --excludedocs:不安装软件包中的说明文件
	  --includedocs:安装软件包,包含说明文件。
	 
  查询类:
  	  -a: 所有软件包
	  -f:查询操作系统中某个文件属于哪个对应的rpm软件包
	  -p:查询以“.rpm”为后缀的软件包安装后对应的包名称
  	  -l:显示软件包中的所有文件列表
  	  -i:显示软件包的概要信息
  
  更新类:
  	  --oldpackage 表示允许"升级"到一个老版本,即软件版本降级

  删除类:
  	  --test:只执行删除的测试。
 	  --nodeps:不检查依赖性。

常见用法:
1、安装
# rpm -ivh file1.rpm
2、删除
# rpm -e file1.rpm
3、查询
# rpm -qa |grep 关键字
4、更新
# rpm  -Uvh rsh-0.17-37.el5.i386.rpm

4、yum安装

1.1 是什么

yum是rpm包的管理工具

通过yum进行系统升级实质是yum命令去下载指定的远程互联网 主机上的RPM软件包,然后自动进行安装,同时解决各个软件之间的依赖关系。

优点:方便管理,可以解决依赖关系

1.2 怎么做

(1) 基本使用
yum [options] [command] [package ...]

options:可选
	-h(帮助)
	-y(当安装过程提示选择全部为 "yes")
	-q(不显示安装的过程)

command:
	check-update:列出所有可更新的软件清单

	update: 更新指定软件(不指定则更新所有)

	install:仅安装指定的软件

	list:列出所有可安裝的软件清单

	remove:删除软件包

	search:查找软件包
	
	clean:清除缓存(yum clean all 清除缓存目录下的软件包及旧的 headers)

(2) yum源管理

yum默认从官方源获取软件资源,也可自行配置,一般使用国内源下载更加快速

yum源文件目录:/etc/yum.repos.d/

案例:切换阿里源

1、备份 (官方的基础YUM源)
[root@newrain ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup    //改文件名,相当于备份,不是以repo结尾无法使用,达到切换目的

2、切换基础yum源
[root@newrain ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

3、切换扩展yum源  (如果已有,看情况是否要备份)
[root@newrain ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo  //安装aliyun的epel源

4、清除旧的yum缓存
[root@newrain ~]# yum clean all 

5、创建元数据缓存
[root@newrain ~]# yum makecache 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值