第09章_软件管理

第一阶段:云计算基础

Linux系统配置及服务管理_第09章_软件管理

概述

RPM包

  • RPM(原Red Hat Package Manager,现在是一个递归缩写)
  • 由 Red Hat 公司提出,被众多 Linux 发行版所采用
  • 也称二进制( binary code)无需编译,可以直接使用
  • 无法设定个人设置,开关功能
  • 软件包示例(注意后缀):mysql-community-common-5.7.12-1.el7.x86_64.rpm
  • 认识RPM包

• zip-3.0-11.el7.x86_64.rpmwget-1.14-15.el7.x86_64.rpmtcpdump-4.9.0-5.el7.x86_64.rpm

• 注释

• zip  -  3.0-11.    el7.    x86_64.    rpm

• 软件包名

• zip

• 版本号(Version)

• 3.0-11

• 发布版本(Release5/6/7)

•  el7

• 系统平台(32/64)

• x86_64

• 文件后缀

• rpm

源码包

  • source code 需要经过GCC,C++编译环境编译才能运行
  • 可以设定个人设置,开关功能
  • 软件包示例:nginx-1.8.1.tar.gz
  • 认识源码包

• nginx

• 包名

• -1.8.1

• 版本号

• .tar.gz

• 压缩格式

RPM包管理

1.YUM工具

  • 简介

• Yum(全称为 Yellow dog Updater, Modified)

• 是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。

• 基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,

• 可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

  • 1.本地源:系统安装光盘

• 目的

• 通过系统光盘获得软件包,并安装软件

• 0.观察YUM核心配置目录

• 记住这个目录/etc/yum.repos.d/

• 打开一个*.repo

• 观察国外地址(下载速度慢)

• yum install -y wget

• 没有任何修改,即可安装软件。YUM默认是配置好的。

• 1 备份移除官方YUM库

• [root@localhost ~]#mv   /etc/yum.repos.d/*     /tmp

• 2编写本地YUM库配置文件

• [root@localhost ~]# vim /etc/yum.repos.d/dvd.repo [dvd] name=dvd baseurl=file:///mnt/cdromgpgcheck=0

• 注释

• /etc/yum.repos.d/是YUM下载地址库目录

• [dvd]某一个库的名称,中括号[]是必须的

• name=dvd是库的说明,name是必须的

• baseurl=file:///mnt/cdrom下载库的具体地址.重要

• gpgcheck=0是关闭校验

• 老铁多检查检查,很容易打错字

• 3 挂载安装光盘:

• 老铁千万记得要把光盘放到服务器上,通电

 

• [root@localhost ~]# mkdir  /mnt/cdrom

• [root@localhost ~]# vim /root/.bashrc

• 自启动文件,跟随用户启动运行的程序

• mount     /dev/cdrom     /mnt/cdrom

• mount挂载

• /dev/cdrom是光驱文件

• /mnt/cdrom是挂载点

• [root@localhost ~]# mount /dev/cdrom  /mnt/cdrom/

• 手动挂载光驱

• 重启后,使用ls  /mnt/cdrom,查看到光盘信息即可

• [root@localhost ~]# ls /mnt/cdrom/

• CentOS_BuildTag  GPL       LiveOS    RPM-GPG-KEY-CentOS-7

• EFI              images    Packages  RPM-GPG-KEY-CentOS-Testing-7

• EULA             isolinux  repodata  TRANS.TBL

• 4 使用YUM 安装和卸载程序

• [root@localhost ~]#yum install -y httpd

• 安装软件

• [root@localhost ~]#systemctl start httpd

• 启动软件

• [root@localhost ~]#systemctl stop firewalld

• 关闭防火墙

• [root@localhost ~]#systemctl disable firewalld

• 禁用防火墙开机自启

• 5.模拟客户机访问

• 打开浏览器,输入网站服务器的IP地址。http://127.0.0.1,验证网站程序部署成功。

• 6.观察仓库信息

• [root@localhost ~]# yum repolist

• 已加载插件:fastestmirror, langpacksLoading mirror speeds from cached hostfile源标识                                  源名称                                   状态dvd                                      dvd                                      4,067repolist: 4,067

• 说明我们使用的是本地光驱中 的软件包

• 报错锦集

  • 2.网络源:使用官方源

• 前提:联网

• 设置虚拟机网络为NAT

 

• 打开Linux网络设置

 

• 打开浏览器上网测试

 

• 目的

• 使用国内厂商提供的软件包地址(如:http://alibaba.com/.sadflsdjfjsdalkfdsa)作为YUM的仓库。

• 阿里云

• Base/Extras/Updates: 默认(国外源)1 清理原先YUM库yum  install   wgetmv     /etc/yum.repos.d/*    /tmp2 下载阿里源至yum库wget  http://mirrors.aliyun.com/repo/Centos-7.repo  -O /etc/yum.repos.d/CentOS-Base.repo 3 更新YUM源yum  repolistyum makecache

• wget -O或者curl -O

• 验证

• [root@localhost yum.repos.d]# yum repolist 已加载插件:fastestmirror, langpacksbase                                                                                                                                  | 3.6 kB  00:00:00     extras                                                                                                                                | 3.4 kB  00:00:00     updates                                                                                                                               | 3.4 kB  00:00:00     (1/4): extras/7/x86_64/primary_db                                                                                                     | 110 kB  00:00:00     (2/4): base/7/x86_64/group_gz                                                                                                         | 156 kB  00:00:01     (3/4): updates/7/x86_64/primary_db                                                                                                    | 2.7 MB  00:00:01     base/7/x86_64/primary_db       FAILED                                          http://mirrors.aliyuncs.com/centos/7/os/x86_64/repodata/0c34273ad0292747ee5e15c047d3e51c67ca59861a446972db45d71abacc7ad7-primary.sqlite.bz2: [Errno 12] Timeout on http://mirrors.aliyuncs.com/centos/7/os/x86_64/repodata/0c34273ad0292747ee5e15c047d3e51c67ca59861a446972db45d71abacc7ad7-primary.sqlite.bz2: (28, 'Connection timed out after 30001 milliseconds')正在尝试其它镜像。(4/4): base/7/x86_64/primary_db                                                                                                       | 5.7 MB  00:00:04     Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com源标识                                                          源名称                                                                                  状态base/7/x86_64                                                   CentOS-7 - Base - mirrors.aliyun.com                                                    9,591extras/7/x86_64                                                 CentOS-7 - Extras - mirrors.aliyun.com                                                    227updates/7/x86_64                                                CentOS-7 - Updates - mirrors.aliyun.com                                                   740repolist: 10,558

• 教程

• http://mirrors.aliyun.com/

• 课后作业:独立部署163yum源。(自学)

• EPEL

• EPEL

• EPEL (Extra Packages for Enterprise Linux,企业版Linux的额外软件包)

• 下载epel配置文件

• wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

• 重建缓存

• [root@localhost ~]# yum  makecache

• Nginx:(配置文件)

• 目的:通过查找官网了解构建官方源的原理。第一步:找到提示第二步:根据提示创建YUM配置文件第三步: 查看服务器是否已经具备软件官方源。

• 网站

• document文档》install安装》packet包说明

 

 

 

• 1 根据提示创建YUM配置文件2 根据提示替换关键字,centos和7

• 配置示例

• [root@localhost ~]# vim /etc/yum.repos.d/nginx.repo[nginx]name=nginx repobaseurl=http://nginx.org/packages/centos/7/$basearch/gpgcheck=0enabled=1

• 结果示例

 

• 提示:

• 系统的更新和升级,可以使用基础源(aliyun,163)。软件的使用建议使用官方源(nginx.com/mysql.com)

  • 3.使用YUM管理RPM包

• 安装

• 全新安装

• [root@localhost ~]# yum     -y    install     httpd     vsftpd

• yum 主命令

• -y  自动确认

• install 安装

• httpd 软件包1

• vsftpd 软件包2

• 软件包N

• 重新安装

• 当软件缺失文件,可尝试重新安装

• [root@localhost ~]# yum    -y     reinstall     httpd

• reinstall 重新安装

• 升级安装

• [root@localhost ~]# yum    -y     update     httpd

• 升级一个程序httpd

• [root@localhost ~]# yum    -y     update

• 查询

• 查询YUM源

• [root@localhost ~]# yum      repolist

• 查询HTTP程序

• [root@localhost ~]# yum list httpd

• 带@ 是已经安装的。

• 卸载

• 卸载程序

• [root@localhost ~]# yum -y remove  httpd

• remove移除,卸载软件包

• 查询工具和软件包的关系

• 1.当使用ifconfig命令失效时,却又不知道如何安装

• 2.使用provide查询命令的提供者进行安装。

• 3.查询

• [root@localhost ~]# yum provides    ifconfig

• [root@localhost ~]# yum provides    ifconfig已加载插件:fastestmirror, langpacksLoading mirror speeds from cached hostfile * base: mirrors.aliyun.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun.comnet-tools-2.0-0.25.20131004git.el7.x86_64 : Basic networking tools源    :@anaconda匹配来源:文件名    :/usr/sbin/ifconfig

• 4.安装对应工具

• [root@localhost ~]# yum install -y net-tools-2.0-0.25.20131004git.el7.x86_64

2.RPM工具

  • 前言

• 1.管理红帽系统/centos系统,rpm包的基本工具

• 2.YUM功能相同

• 3.优点不需要配置,直接使用

• 4.无法解决依赖关系

• 5.无法自行下载软件包

  • 安装(i)

• 安装

• 先找到安装包

• [root@localhost ~]# cd   /mnt/cdrom/Packages

• 检查软件包是否存在

• [root@localhost Packages]# ls wget-1.14-18.el7_6.1.x86_64.rpm

• wget-1.14-18.el7_6.1.x86_64.rpm

• [root@localhost Packages]# rpm -ivh wget-1.14-15.el7.x86_64.rpm

• -i  安装

• v  可视

• h  百分比

• 提示信息

• 警告:wget-1.14-15.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY

• 准备中...  ################################# [100%]

• 正在升级/安装...   1:wget-1.14-15.el7                 ################################# [100%]

  • 查询(q)

• [root@localhost Packages]# rpm -q wget

• -q 查询

• wget-1.14-15.el7.x86_64

• 看到软件包的名字,就说明rpm -q查询成功,已经安装软件。

  • 卸载(e)

• 卸载软件包

• [root@localhost Packages]# rpm -evh wget-1.14-15.el7.x86_64

• 输出信息

• 准备中...                          ################################# [100%]

• 正在清理/删除...

•    1:wget-1.14-15.el7                 ################################# [100%]

• 再次查询,发现已经卸载

• [root@localhost Packages]# rpm -q  wget-1.14-15.el7.x86_64

• 未安装软件包 wget-1.14-15.el7.x86_64

源码包管理

获得源码包

  • 官方网站,可以获得最新的软件包

• Apache: www.apache.org

• Nginx: www.nginx.org

• Tengine: tengine.taobao.org

实战案例

  • 下载tengine

 

  • 部署Tengine

• 下载源码包的命令

• [root@localhost ~]# wget   http://tengine.taobao.org/download/tengine-2.2.0.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.2.0.tar.gz

• [root@localhost ~]# cd tengine-2.2.0

• 配置

• [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的网页,说明部署成功。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值