Linux软件管理RPM包(YUM工具,RPM工具)和源码包
一、 概述
RPM包
RPM(原Red Hat Package Manager,现在是缩写)由 Red Hat 公司提出,被众多 Linux 发行版所采用,也称二进制( binary code)无需编译,可以直接使用,无法设定个人设置,开关功能软件包。
示例:
zip - 3.0-11. el7. x86_64. rpm
软件包名 版本号 发布版本 系统平台 文件后缀
源码包
源码包就是一大堆源代码程序,是由程序员按照特定的格式和语法编写出来的。source code 需要经过GCC,C++编译环境编译才能运行,可以设定个人设置,开关功能,但安装时间可能长。
示例: Nginx(包名)-1.8.1(版本号).tar.gz (压缩格式)
二、 RPM包管理
1. YUM工具
介绍
yum,全称“Yellow dog Updater, Modified”,是一个专门为了解决包的依赖关系而存在的软件包管理器。它很好的解决了 RPM 所面临的软件包依赖问题。yum 在服务器端存有所有的 RPM 包,并将各个包之间的依赖关系记录在文件中,当管理员使用 yum 安装 RPM 包时,yum 会先从服务器端下载包的依赖性文件,通过分析此文件从服务器端一次性下载所有相关的 RPM 包并进行安装。
“yum list”可以查看已安装和可安装的软件包
“yum list+包名”可以查询执行软件包的安装情况。(版本号之类)
“yum search+关键字” 从 yum 源服务器上查找与关键字相关的所有软件包。
“yum info+包名” 查询执行软件包的详细信息。
“yum reinstall+包名”重新安装
yum安装命令
语法:yum install -y 包名
示例:
yum卸载命令
语法:yum remove 包名
yum升级命令
语法:yum update -y 包名
2. RPM工具
安装 RPM 的命令格式为:
[root@localhost ~]# rpm -ivh 目录及包全名
注意一定是包全名。涉及到包全名的命令,一定要注意路径,可能软件包在光盘中,因此需提前做好设备的挂载工作。直到出现两个 100% 才是真正的安装成功,第一个 100% 仅表示完成了安装准备工作。
使用如下命令即可实现 RPM 包的升级:
[root@localhost ~]# rpm -Uvh 包全名
-U(大写)选项的含义是:如果该软件没安装过则直接安装;若没安装则升级至最新版本。
[root@localhost ~]# rpm -Fvh 包全名
-F(大写)选项的含义是:如果该软件没有安装,则不会安装,必须安装有较低版本才能升级。
RPM 软件包的卸载很简单,使用如下命令即可:
[root@localhost ~]# rpm -e 包名
-e 选项表示卸载,也就是 erase 的首字母。
三、 源码包管理
获得源码包
官方网站,可以获得最新的软件包
Apache: www.apache.org
Nginx: www.nginx.org
Tengine: tengine.taobao.org
下载tengine
下载源码包的命令
[root@localhost ~]# wget http://tengine.taobao.org/download/tengine-2.3.2.tar.gz
准备编译环境如编译器
[root@localhost ~]# yum -y install gcc make zlib-devel pcre pcre-devel openssl-devel
我已经安装过所以显示如此
解压
[root@localhost ~]# useradd www
[root@localhost ~]# tar xvf tengine-2.3.2.tar.gz
[root@localhost ~]# cd tengine-2.3.2
配置
[root@localhost tengine-2.2.0]#./configure --user=www --group=www --prefix=/usr/local/nginx
编译
[root@localhost tengine-2.2.0]# make
安装
[root@localhost tengine-2.2.0]# make install
启动测试
可能之前的实验,安装过httpd服务。如果直接启动nginx会有冲突。请确保关闭httpd
# systemctl stop httpd
[root@localhost tengine-2.2.0]# /usr/local/nginx/sbin/nginx
[root@localhost tengine-2.2.0]# systemctl stop firewalld
使用浏览器访问本机的IP,http://127.0.0.1,如果能看到NGINX的网页,说明部署成功。