第11 章 软件管理

一、概述

1.软件的类型

A. 二进制包 已编译 mysql-community-common-5.7.12-1.el7.x86_64.rpm

B. 源码包 需要编译 nginx-1.8.1.tar.gz

   解释: RPM Package Manager(原Red Hat Package Manager,现在是一个递归缩写)


注意: 不管是源码包,还是二进制包,安装时都可能会有依赖关系!

常见的二进制包:系统平台;包类型;工具;在线安装(自动解决依赖关系)
RedHat/Centos;RPM;rpm,rpmbuild;yum
Ubuntu/Debian;DPKG;dpkg;apt

二、RPM包管理

     YUM管理RPM包

1.YUM源(YUM仓库)

(1)本地源:安装光盘 [了解]

 目的:通过系统光盘安装软件(90%都有)
   1 删除YUM库
[root@bjz ~]# rm    -rf    /etc/yum.repos.d/*
   2挂载安装光盘(临时):/dev/cdrom=/dev/sr0
[root@bjz ~]# mount /dev/cdrom   /mnt

    3编写配置文件。

[root@bjz ~]# vim /etc/yum.repos.d/dvd.repo
[dvd]
name=dvd
baseurl=file:///mnt/
gpgcheck=0
    4 使用YUM 安装和卸载程序即可。

[root@bjz ~]#yum install -y httpd


(2)使用官方源

目的:使用厂商提供的软件包作为YUM的仓库。

阿里云

Base/Extras/Updates: 默认(国外源)

1 删除原先YUM库
#rm    -rf   /etc/yum.repos.d/*
3 下载阿里源https://opsx.alibaba.com/mirror
#wget  http://mirrors.aliyun.com/repo/Centos-7.repo  -O /etc/yum.repos.d/CentOS-Base.repo
4 更新YUM源---- 将服务器上的软件包信息下载本地缓存,以提高搜索安装软件的速度
#yum makecache


EPEL(aliyun):

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


Nginx:(配置文件):

系统的更新和升级,可以使用基础源(aliyun,163)。

软件的使用建议使用官方源(nginx.com/mysql.com)


MySQL:

https://www.mysql.com/


Zabbix:

基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案

https://www.zabbix.com


OpenStack:

是一个开源的云计算管理平台项目

https://docs.openstack.org/queens/


2.使用YUM管理RPM包

(1)==查看可用仓库
[root@bjz ~]# yum clean all //清空缓存及其它文件(可以通过清理nginx.rpm观察)
[root@bjz ~]# yum makecache //重建缓存
[root@bjz ~]# yum repolist //查询可用的仓库

(2)安装

第一种:全新安装

#yum  -y  install  httpd  vsftpd  *vnc

#yum  -y install  https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm       //从互联网安装


第二种:重新安装

#yum  -y reinstall  httpd    (有损坏时才重新安装,重新部署修复)

第三种:升级安装

#yum  -y update  httpd

#yum  -y  update           //系统更新,请在安装系统后立即执行。

#yum  -y  update   kernal    //升级内核,重启后就能看到


第四种:组安装MariaDB(Mysql)

#yum  -y  groupinstall   mariadb

(3)查询

查询HTTP程序

# yum list httpd        -----------带@ 是已经安装的。

查询类似VNC程序

#yum  list  *vnc*

查询安装过程

#yum  list  installed

查询HTTP程序的详细信息

#yum  info  httpd


查询程序组

#yum  group  list

查询程序组的详细信息

#yum  groupinfo   mariadb     (mysql数据库组)

(4)卸载

卸载程序

#yum  -y  remove   mysql-server

卸载程序组

#yum  -y  groupremove  mysql-server

(5)yum  history  ----#查看yum操作的历史记录操作

#yum  history

#yum  history  info  4      //显示history中编号4的详细信息

#yum  history  undo  4     //将执行命令回滚根据Id可以用undo撤销指定的yum操作

#yum history redo  4        //将编号4命令重新执行


(6)扩展查询

例1:从描述中搜索软件包(search)

#yum  list  |  grep  chinese   //只能查询软件包的名字中包含chinese的软件包

#yum  search  chinese     //可以查询到软件包的名字或者描述中含有chinese的软件包

例2:查找文件输入哪个包(provides)

[root@server0 ~]# yum provides /etc/vsftpd/vsftpd.conf

[root@server0 ~]# yum provides */vsftpd.conf

例3:通过命令找包

如果遇到命令不支持的情况,就说明该命令的程序没有安装。

可以通过provides 来查询到程序的名称。

(1)没有发现命令
    [root@server0 ~]# gnuplot       //gnuplot是一种绘图工具

bash: gnuplot: command not found...

(2).查询命令属于哪个程序
    [root@server0 ~]# yum provides gnuplot
Loaded plugins: langpacks
gnuplot-4.6.2-3.el7.x86_64 : A program for plotting mathematical expressions and data

Repo : classroom_content_rhel7.0_x86_64_dvd

(3).安装并使用命令
    #yum  -y  install  gnuplot

   

      RPM默认管理RPM包

1.认识RPM包


软件包名 版本号(Version) 发布版本(Release5/6/7) 系统平台(32/64)

ntfs-3g-2011.4.12-5.el5.x86_64.rpm 套件名

ntfs-3g-2011.4.12-5.el6.i686.rpm 套件名

yum-utils-1.1.30-14.el6.noarch.rpm 套件名

php-5.6.20-1.fc23.ppc64p7.rpm // IBM 小型机CPU Power


2.RPM管理包的命令

(1)安装i     

概述:安装 -i -v  -h  --force  --nodeps  --nosignature


统一资源定位路径安装#rpm  -ivh  https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm

本地地址安装 (通过挂载的U盘或光盘)#rpm  -ivh  /mnt/Packages

-i  ---安装    -v ---显示安装信息     -h  ---显示进度条 

额外选项: (注意命令前面是两个小横杠)

--nodeps  ----发现这个程序安装时有依赖关系,放弃某些功能时用--nodeps忽略依赖关系


                   -- nosignature----不检验软件包的签名

(例子:[root@localhost Packages]# rpm -ivh wireshark-1.10.14-14.el7.x86_64.rpm  --nodeps)


                   --force  ------强制安装软件包 (rpm 无法将已经安装的软件包,重复安装。

比如你装过这个rpm的版本1,如果你想装这个rpm的版本2,就需要用--force强制安装)  


(2).查询q   

概述:查询 -q  -a所有  -l文件  -f所属包  -i包的信息  -c配置文件  -d帮助文件

[root@tianyun ~]# rpm -q  wireshark        //查询指定包是否安装
[root@tianyun ~]# rpm -qa |grep wireshark    //在所有已经安装的包中查询wireshark软件包
[root@tianyun ~]# rpm -ql wireshark        //查询已安装软件包安装到何处     
[root@localhost ~]# rpm -qf /usr/share/wireshark/ws.css  //查询该文件属于哪个rpm包(which)
[root@tianyun ~]#  rpm -qi wireshark         //查询一个已安装软件包的信息information
[root@tianyun ~]# rpm -qc httpd   //查看一下已安装软件的配置文件(-c configure)
[root@tianyun ~]# rpm -qd httpd     //查看一下已经安装软件的文档安装位置

(3).卸载e

[root@localhost ~]# rpm -q httpd
httpd-2.4.6-67.el7.centos.6.x86_64
[root@localhost ~]# rpm -e httpd
[root@localhost ~]# rpm -q httpd
未安装软件包 httpd


三、源码包管理

1.获取源码包的途径

官方网站,可以获得最新的软件包download
Apache: www.apache.org
Nginx: www.nginx.org
Tengine: tengine.taobao.org

2.安装源码包(编译安装)的步骤

(1)下载源码包,准备好下载的源码包   

------- tengine-2.2.0.tar.gz

(2)准备编译环境如编译器gcc、make 

  -------#yum  -y  install gcc  make  zlib-devel  pcre  pcre-devel openssl-devel

(3)解压 tar  xf   

#useradd  www

#tar  xvf  tengine-2.2.0.tar.gz

#cd tengine-2.2.0

(4)配置  (进入tengine-2.2.0目录后依次打下列命令)

./configure \
--user=www \
--group=www \
--prefix=/usr/local/nginx \    ------指定安装路径
--with-http_stub_status_module \   ------with配置和其它软件的关联
--with-http_sub_module \
--with-http_ssl_module \
--with-pcre 

(5)编译   make

# make

(6)安装   make  install

# make install

(7)启动测试
# /usr/local/nginx/sbin/nginx //启动nginx服务器
# systemctl stop firewalld
看到网页,说明部署成功。


猜你喜欢

转载自blog.csdn.net/bijingzhao123/article/details/79944377