linux系统服务学习(二)linux下yum源配置实战

文章目录

Linux下yum源配置实战

一、Linux下软件包的管理

1、软件安装方式

① RPM包管理(需要单独解决依赖问题)

② YUM包管理(需要有网络及YUM仓库的支持,会自动从互联网下载软件,自动解决依赖)

③ 源码安装(安装过程比较复杂,源码安装三步走。优点:定制性很强)

软件:主线版(mainline),稳定版(stable)

2、源码安装的配置过程

在Linux系统中,源码安装一共分为三步(三步走):

第一步:配置过程(配置软件的安装路径)

第二步:编译过程(把软件由源代码编译成可以安装的程序)

第三步:安装过程(把编译后的程序进行安装)

powershell 复制代码
# ./configure && make && make install

3、详解源码安装的配置过程(定制)

powershell 复制代码
# cd 软件源码包
# ./configure [选项]
# ./configure --help

--prefix=... Directories to put files in /usr/local 软件家目录
--bindir=... $prefix/bin 	命令的目录
--etcdir=... $prefix/etc 	配置文件的目录 httpd => /etc/httpd/httpd.conf
--mandir=... $prefix/share/man man	文档路径
--locale=... $prefix/share/locale 	语言编码
...

4、详解编译过程

powershell 复制代码
# make

在Linux操作系统中,make主要功能就是将其他语言的源代码打包成Linux可以识别安装的程序。编译过程需要一个gcc软件(开发工具)的支持!如果没有请用 yum -y install gcc* 去安装一下

5、安装过程

powershell 复制代码
# make install

6、axel多线程下载软件源码安装

第一步:获取axel多线程下载软件

第二步:上传axel软件包到Linux系统中

第三步:安装axel软件(源码安装三步走=>配置+编译+安装)

① 对软件进行解压缩操作

powershell 复制代码
# tar -zxf axel-2.4.tar.gz
或
# tar -xf axel-2.4.tar.gz

② 使用cd命令切换到axel目录中

powershell 复制代码
# cd axel-2.4

③ 对axel软件进行配置(不采用默认配置)

powershell 复制代码
# ./configure --help
Usage: ./configure [OPTIONS]
Option          Description                             Default
--prefix=...    Directories to put files in             /usr/local
--bindir=...                                            $prefix/bin
--etcdir=...                                            $prefix/etc
--mandir=...                                            $sharedir/man
--locale=...                                            $sharedir/locale

设置axel软件的安装路径为/opt/axel

powershell 复制代码
# ./configure --prefix=/opt/axel

④ 对axel软件进行编译与安装

powershell 复制代码
# make
# make install
或
# make && make install
&& :逻辑与,如果make编译成功会立即执行右边的make install安装程序,如果make编译失败,则以上程序会停止执行,然后抛出错误。

第四步:测试与使用

powershell 复制代码
[root@yunwei ~]# axel http://mirrors.163.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7
bash: axel: command not found...

出现以上问题的主要原因在于:我们没有采用默认的安装方式,所以导致当我们执行axel命令时,其找不到对应的软件。

第五步:解决命令无法访问问题

powershell 复制代码
第一种方式:采用软链接形式(类似Windows中的快捷方式)
第二种方式:使用环境变量(重要,Linux中的环境变量)

7、使用软链接解决command not found

powershell 复制代码
# which axel
/usr/bin/which: no axel in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)

# ll /opt/axel/bin
axel

解决方案:给/opt/axel/bin/axel创建一个快捷方式到/usr/local/bin
# ln -s /opt/axel/bin/axel /bin/axel 

基本语法:
# ln -s  源文件路径 软链接路径

# axel http://mirrors.163.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7

8、使用环境变量解决command not found

环境变量

powershell 复制代码
终端 => 命令 => 系统的环境变量(PATH => /etc/profile) => 一些命令的存放路径

axel多线程下载软件,通过源码的方式安装成功后,由于没有使用默认的安装路径,导致axel这个命令没有出现在系统的环境变量中,所以其会出现command not found。

第一步:查询当前系统的环境变量

powershell 复制代码
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

第二步:把axel所在目录添加到环境变量

powershell 复制代码
① 使用vim编辑/etc/profile文件,追加到最后一行
# vim /etc/profile
...
export PATH=$PATH:/opt/axel/bin
# source /etc/profile			=>   		代表让以上配置立即生效

② 使用echo命令向/etc/profile文件中追加一行
# echo 'export PATH=$PATH:/opt/axel/bin' >> /etc/profile
# source /etc/profile

第三步:测试axel命令是否可以使用

powershell 复制代码
# axel http://mirrors.163.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7

9、解决源码安装软件手册找不到问题

问题重现:

powershell 复制代码
[root@localhost axel]# man axel
No manual entry for axel
原因:找不到指定的man文档

解决方案:

powershell 复制代码
[root@localhost axel]# vim /etc/man.config
...
增加如下内容:
MANPATH /opt/axel/share/man

二、YUM源概述

1、yum源作用

软件包管理器,类似360的软件管家

2、yum源优点

RPM安装(下载软件、单独安装、需要解决依赖关系)

源码安装(下载软件的源码包,解压,进入目录=>配置+编译+安装)

yum源:相当于rpm软件包管理的升级版

能够解决软件包之间的依赖关系,提高运维人员的工作效率。

yum源底层还是基于RPM进行软件安装操作的,所以yum安装软件后,我们也可以通过rpm -qa |grep 软件名称

3、yum源分类

☆ 本地yum源

yum仓库在本地(系统光盘/镜像文件) => 不需要网络的支持

☆ 网络yum源

yum仓库不在本地,在远程

三、本地YUM源配置

1、本地YUM配置

2、使用光盘镜像作为YUM源仓库

第一步:在VMware系统中装在CentOS7.6系统的光盘镜像

第二步:把光盘挂载到某个目录下

powershell 复制代码
# mount -o ro /dev/sr0 /mnt
选项说明:
-o :挂载方式,ro代表以readonly=>只读的方式进行挂载
              rw代表以read/write=>读写的方式进行挂载
# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part
  ├─centos-root 253:0    0   17G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sr0              11:0    1  4.3G  0 rom  /mnt

卸载或解挂可以使用umount /mnt

第三步:把光盘挂载添加到开机启动文件中

powershell 复制代码
# chmod +x /etc/rc.local
# echo 'mount -o ro /dev/sr0 /mnt' >> /etc/rc.local

/etc/rc.local,属于系统的开机启动文件。系统启动后,会自动加载并执行这个文件

第四步:编写本地YUM仓库文件

powershell 复制代码
# cd /etc/yum.repos.d/
创建一个以*.repo结尾的文件,名称任意
# vim CentOS-Media.repo
[c7-media]
name=local yum
baseurl=file:///mnt
gpgcheck=0
enabled=1

#基本源改名字

#mv CentOS-Base.repo CentOS-Base.repo.1

# yum clean all
# yum makecache
# yum repolist all

注:file://本地协议路径,后面跟仓库的具体路径

yum仓库的标准格式

[仓库标识名称],名称任意,在一个文件中可以拥有多个标识

name=仓库名称

baseurl=仓库的路径,支持多种格式,file://本地路径,ftp://,http://或https://

gpgcheck=gpg密钥,值可以是0(代表不检测),1(代表检测,如果是1,下方还要定义一个gpgkey=密钥连接)

enabled=是否启动当前仓库,值可以0,也可以是1,默认为1,代表启动仓库

第五步:测试本地YUM仓库是否可用

powershell 复制代码
# yum install httpd -y

3、扩展man 5

在Linux系统中,给定我们一个配置文件,怎么查询这个文件中每一个选项的作用呢?

powershell 复制代码
# man 命令

扩展:man 5 配置文件名称

powershell 复制代码
# man 5 yum.conf

四、网络YUM源配置

1、网络YUM源的分类

① 使用比较知名平台的YUM源(阿里云、腾讯、清华)

② 有些特定软件(如Nginx、MySQL、Zabbix等等)需要根据官网文档自定义网络YUM源

2、使用知名平台的YUM源

​ 阿里源:https://opsx.alibaba.com/mirror

​ 清华源:https://mirrors.tuna.tsinghua.edu.cn/

腾讯源、华为源...

百度搜索 => 华为 mirror镜像源

案例:配置阿里云的yum源

第一步:百度,搜索你想要的YUM源,进入官网,找到CentOS

第二步:根据官网提示,配置阿里云的YUM源

powershell 复制代码
# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

# yum clean all
# yum makecache

3、扩展:EPEL源配置

什么是EPEL源?

答:EPEL是对官网源的一个扩展。

CentOS-Base.repo文件 => 基础源(官方在带的YUM源)

epel.repo文件 => 扩展源,是对官方YUM源的一个补充

powershell 复制代码
# yum install epel-release -y

比如:会跑的小火车就是在epel源中

powershell 复制代码
# yum install sl -y
# sl

4、特定软件的YUM源配置

比如特殊的几个软件,如Nginx、MySQL、Zabbix

Nginx:http://www.nginx.org

MySQL:https://www.mysql.com/

Zabbix:https://www.zabbix.com/

找到官方文档,把YUM源配置,写入到一下文件中(repo文件)

powershell 复制代码
# cd /etc/yum.repos.d
# vim nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

清理缓存:

powershell 复制代码
# yum clean all
# yum makecache

安装Nginx:

powershell 复制代码
# yum install nginx -y

五、自建YUM源仓库

1、缓存安装软件包

什么时候需要缓存软件?

  • 下次还需要安装相同版本的软件包
  • 由于网络原因导致网络安装非常慢,将软件包缓存下来,配置本地仓库

2、如何缓存软件安装包

powershell 复制代码
# vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever	定义软件包的缓存路径
keepcache=1			1开启缓存;0关闭
debuglevel=2
logfile=/var/log/yum.log
...

3、把软件及依赖软件全部下载到某个路径

只下载不安装软件:

powershell 复制代码
# yum install --downloadonly --downloaddir=保存路径 软件名称

案例:下载samba软件及依赖软件

powershell 复制代码
# mkdir /soft
# yum install --downloadonly --downloaddir=/soft samba

4、自定义YUM仓库

第一步:在系统中安装createrepo制作仓库的软件

powershell 复制代码
# yum install createrepo -y

第二步:把/soft文件夹做成一个本地的自建仓库

powershell 复制代码
# createrepo /soft

第三步:在/etc/yum.repos.d目录中创建一个soft.repo的仓库

powershell 复制代码
# cd /etc/yum.repos.d/
# vim soft.repo
[soft]
name=soft yum
baseurl=file:///soft
gpgcheck=0
enabled=1

清理缓存+重建缓存:

powershell 复制代码
# yum clean all
# yum makecache

任务背景

公司之前计划将现有的MySQL数据库从云平台迁移到云下物理真机上,并且已经在相应的物理机上安装好相应的操作系统。现在需要运维人员协助在测试机Centos7.6上安装好MySQL-5.6.43版本用于前期迁移准备工作,同时配置好本地yum源和外网源方便后续软件包安装。

任务要求

  1. 配置本地yum源和网络yum源
  2. 安装MySQL软件,版本为5.6.43

任务拆解

  1. yum源配置
  2. MySQL数据库软件安装

课程目标

  • 了解yum源安装软件包的优点
  • 了解常见的外网yum源
  • 掌握本地和网络yum源的配置
  • 能够使用yum工具安装软件包

知识储备

一、yum源概述

㈠ yum源的作用

软件包管理器,类似360的软件管家

㈡ yum源的优点

能够解决软件包之间的依赖关系,提高运维人员的工作效率。

㈢ yum源的分类

1、本地yum源

yum仓库在本地(系统光盘/镜像文件)

2、网络yum源

yum仓库不在本地,在远程

二、yum源配置(重点)

㈠ 本地yum源配置

1、本地需要有仓库

① 虚拟光驱装载镜像文件
powershell 复制代码
② 将光盘挂载到本地目录
powershell 复制代码
/mnt	操作系统默认的挂载点

mount [挂载选项] 需要挂载的设备  挂载点

手动挂载光盘到/mnt
lsblk		查看当前系统所有的设备文件
mount -o ro /dev/sr0 /mnt
注意:手动挂载后,系统重启需要再次手动挂载
③ 开机自动挂载
powershell 复制代码
修改/etc/rc.local文件

/etc/rc.local	操作系统开机最后读取的一个文件
echo "mount -o ro /dev/sr0 /mnt" >> /etc/rc.local

2、修改配置文件指向本地仓库

① 知道配置文件存放路径
powershell 复制代码
[root@yunwei yum.repos.d]# pwd
/etc/yum.repos.d
② 修改配置文件
powershell 复制代码
注意:文件名必须以.repo结尾
[root@yunwei yum.repos.d]# vi local.repo
[local]					仓库的名字,不要有特殊符号(自定义)
name=local yum			仓库描述
baseurl=file:///mnt	指定yum仓库的路径(重要);file://表示本地仓库;ftp://或者http://
enabled=1			   启用仓库,1表示启用;0表示不启用
gpgcheck=0			   不用校验软件包的签名,0表示不校验;1表示校验

===================================================================
# man 5 yum.conf
[repositoryid]
name=Some name for this repository
baseurl=url://server1/path/to/repository/
        url://server2/path/to/repository/
        url://server3/path/to/repository/
enabled=1
gpgcheck=0

测试验证:
yum clean all		清空yum缓存
yum makecache 		创建yum缓存
yum list				查看仓库里的软件包

㈡ 网络yum源配置

1、主机需要访问互联网

说明:如果配置的是外网源,当前主机需要访问互联网。

2、修改配置文件指向网络仓库

① 特定软件网络源
powershell 复制代码
[root@yunwei yum.repos.d]# vi nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/6/x86_64/
gpgcheck=0
enabled=1
说明:
baseurl=http://nginx.org/packages/centos/6/$basearch/
$basearch表示当前系统cpu架构,如果系统是32位会找32位软件包;如果64位会找64位软件包
② 基础软件网络源
powershell 复制代码
[root@yunwei yum.repos.d]# vi 163.repo 
[163]
name=163 network yum
baseurl=http://mirrors.163.com/centos/6/os/x86_64/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/6/os/x86_64/RPM-GPG-KEY-CentOS-6

[root@yunwei yum.repos.d]# vi aliyun.repo 
[aliyun]
name=aliyun
baseurl=http://mirrors.aliyun.com/centos/6/os/x86_64/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/6/os/x86_64/RPM-GPG-KEY-CentOS-6

3、通过安装相应软件包直接配置

说明:该方法是通过安装软件包,自动在相应目录里创建.repo文件(自动配置)

powershell 复制代码
epel源:
https://mirrors.aliyun.com/epel/6/x86_64/epel-release-6-8.noarch.rpm
mysql源:
https://repo.mysql.com/mysql-community-release-el6.rpm
https://repo.mysql.com/mysql-community-release-el7.rpm

4、总结

yum配置(重点):

  1. 本地yum源配置核心
    • 本地需要有软件仓库------>光盘挂载到系统某个目录上(mount -o ro /dev/sr0 /mnt)
    • 告诉yum工具去哪个仓库找软件包------>修改配置(/etc/yum.repos.d/xxx.repo
  2. 网络yum源配置核心
    • 当前主机必须能够访问互联网(外网源)
    • 告诉yum工具去哪个仓库找软件包------>修改配置(/etc/yum.repos.d/xxx.repo
    • 配置方法2种:直接修改配置文件;下载rpm包,安装软件包自动帮我配置
  3. 如果多个仓库里有相同的软件包,高版本优先
  4. 多个yum源,可以指定优先级,但是需要安装插件,修改配置文件完成【参考扩展补充】

㈢ 缓存安装的软件包

1、什么时候需要缓存软包?

  • 下次还需要安装相同版本的软件包
  • 由于网络原因导致网络安装非常慢,将软件包缓存下来,配置本地仓库

2、如何缓存软包?

修改配置文件/etc/yum.conf

powershell 复制代码
# vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever	定义软件包的缓存路径
keepcache=1			1开启缓存;0关闭
debuglevel=2
logfile=/var/log/yum.log
...

㈣ 自建yum仓库

**思考1:**什么情况下需要自建yum仓库?

思路:

  1. 创建一个目录来保存相应的软件
  2. 需要在该目录下生成repodata目录
  3. 修改配置文件指向本地自建仓库

步骤:

  1. 创建一个目录来保存相应软件
powershell 复制代码
[root@yunwei soft]# mkdir /soft
  1. 将你准备的所有软件包拷贝到/soft目录里
powershell 复制代码
说明:以下只是演示举例,以后根据自己的实际情况,将你准备的软件包考到本地目录就行
[root@yunwei soft]# pwd
/soft
[root@yunwei soft]# cp /mnt/Packages/samba* /soft/
[root@yunwei soft]# cp /mnt/Packages/libtevent-0.9.26-2.el6_7.x86_64.rpm /soft
[root@yunwei soft]# cp /mnt/Packages/libtalloc-2.1.5-1.el6_7.x86_64.rpm /soft/
  1. 扫描软件包所在目录生成repodata目录
powershell 复制代码
[root@yunwei soft]# yum -y install createrepo
[root@yunwei soft]# createrepo /soft
验证是否多了repodata目录
[root@yunwei soft]# ls /soft
  1. 关闭本地仓库和所有网络仓库,配置自己创建的yum仓库
powershell 复制代码
1) 根据自己配置情况,打开本地和网络源的配置文件
将enabled=1修改为enabled=0
2) 创建自建源配置文件
[root@yunwei soft]# vim /etc/yum.repos.d/myself.repo
[myself]
name=myself yum
enabled=1
baseurl=file:///soft			路径就是自己之前创建的目录,里面有软件包也有repodata目录
gpgcheck=0
3) 清空yum缓存重新创建
[root@yunwei soft]# yum clean all
[root@yunwei soft]# yum makecache
  1. 测试验证安装samba软件
powershell 复制代码
[root@yunwei soft]# yum install samba
注意:安装samba软件包来自myself仓库,同时会自动安装其他依赖关系软件包

任务实施

一、配置本地yum源

㈠ 挂载镜像到本地

powershell 复制代码
手动挂载
[root@yunwei ~]# mount -o ro /dev/sr0 /mnt/
开机自动挂载
[root@yunwei ~]# echo "mount -o ro /dev/sr0 /mnt" >> /etc/rc.local

㈡ 修改配置文件指向本地仓库

powershell 复制代码
[root@yunwei ~]# cd /etc/yum.repos.d/
[root@yunwei yum.repos.d]# cat local.repo
[local]
name=local yum
baseurl=file:///mnt
enabled=1
gpgcheck=0

二、配置MySQL官方yum源

㈠ 下载官方提供的yum仓库软件包

powershell 复制代码
通过浏览器找到适合自己系统的软包下载
https://dev.mysql.com/downloads/repo/yum/

㈡ 安装软件包来自动配置yum源

powershell 复制代码
安装软件包
[root@yunwei ~]# rpm -ivh mysql80-community-release-el6-2.noarch.rpm
warning: mysql80-community-release-el6-2.noarch.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
Preparing...                ########################################### [100%]
   1:mysql80-community-relea########################################### [100%]

查看自动配置的mysql源仓库配置文件
[root@yunwei ~]# ls /etc/yum.repos.d/mysql-community*
/etc/yum.repos.d/mysql-community.repo  /etc/yum.repos.d/mysql-community-source.repo

注意:
1.默认情况下,官方提供最新版本的软件,我们需要根据自己的情况进行修改配置文件
2.我们需要安装mysql-5.6版本,所以关闭其他版本的仓库,只打开5.6的仓库

[root@yunwei ~]# cd /etc/yum.repos.d/
[root@yunwei yum.repos.d]# vim mysql-community.repo
# Enable to use MySQL 5.6
[mysql56-community]
name=MySQL 5.6 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.6-community/el/6/$basearch/
enabled=1				将0改为1,开启5.6版本仓库
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
....
[mysql80-community]
name=MySQL 8.0 Community Server
baseurl=http://repo.mysql.com/yum/mysql-8.0-community/el/6/$basearch/
enabled=0			将1改改为0,关闭默认的8.0版本仓库
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

以下两个仓库也关闭,暂时用不到
[mysql-connectors-community]
name=MySQL Connectors Community
baseurl=http://repo.mysql.com/yum/mysql-connectors-community/el/6/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

[mysql-tools-community]
name=MySQL Tools Community
baseurl=http://repo.mysql.com/yum/mysql-tools-community/el/6/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

㈢ 清空yum缓存重新创建缓存

powershell 复制代码
[root@yunwei yum.repos.d]# yum clean all
[root@yunwei yum.repos.d]# yum makecache

三、安装MySQL-5.6.43版本软件包

powershell 复制代码
[root@yunwei ~]# yum install mysql-community-server



说明:

  1. 通过网络安装,可能会由于网络原因安装不成功,多试几次即可
  2. 一台机器安装好后,如果另外一台也需要安装,可以通过开启缓存下载下来,做成本地仓库安装

任务总结

  1. 明白需求
  2. 拆解任务
  3. 知识储备
  4. 落地实现
  5. 总结验证

扩展补充

1、yum仓库优先级

:如果有多个仓库,是否可以设置yum源的优先级设定?

  • 可以设置,但是需要安装插件yum-plugin-priorities
  • 安装完插件后,只需要在yum源配置文件*.repo里指定优先级即可,如:
powershell 复制代码
添加priority=n的配置项,n值越小优先级越高,默认99.
[local]
name=local yum
baseurl=file:///mnt
enabled=1
gpgcheck=0
priority=1

2、yum缓存软件包

**问:**如果想把从网络源安装的软件包下载到本地方便后续使用,怎么做呢?

  • 只需要开启yum缓存功能即可
  • 通过修改配置文件开启yum缓存功能,如下:
powershell 复制代码
[root@yunwei ~]# vim /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever		软件包的缓存路径
keepcache=1			将0变成1,表示缓存安装软件包到本地
debuglevel=2
logfile=/var/log/yum.log
....

课后强化

  • rpm工具使用
powershell 复制代码
rpm -ivh	package
安装  
rpm -e package
卸载
rpm -Uvh
升级,如果已安装老版本,则升级;如果没安装,则直接安装
rpm -Fvh
升级,如果已安装老版本,则升级;如果没安装,则不安装
rpm -ivh --force
强制安装
rpm --nodeps
忽略依赖关系
rpm -ql
查看已经安装的软件的文件列表
rpm -qlp  package.rpm 
查看未安装的rpm包里的文件列表
rpm -qa  查看已经安装的所有rpm包
rpm -qd  查看软件的文档列表
rpm -qc  查看软件的配置文件
rpm -qi  查看软件的详细信息
rpm -qf  filename
查看文件来自哪个rpm包
rpm --import    key_file
导入公钥用于检查rpm文件的签名
rpm -checksig   package.rpm
检查rpm包的签名
  • yum工具使用
powershell 复制代码
# yum install package -y
默认是安装来自仓库里的软件,指定的是软件名字。多个包空格隔开;-y (取消交互)
# yum install ./xlockmore-5.31-2.el6.x86_64.rpm
或者
# yum localinstall ./xlockmore-5.31-2.el6.x86_64.rpm
安装来自本地指定路径下的rpm包,而不是来自仓库
# yum remove 或者 erase package
卸载软件包
# yum update
更新仓库里所有比本机已经安装过的软件要的软件	
# yum update package
指定升级的软件
# yum search mysql
搜索出所有软件名字或者软件描述包含"mysql"关键字的软件
# yum provides  "*libmysqlclient.so*"
找出模块由哪些软件包提供
# yum provides "*xeye*"
搜索一个包含xeye关键字的软件包
# yum clean all
清空之前的yum列表缓存
# yum makecache
创建新的缓存
# yum list
列出仓库里的所有软件包
# yum repolist
列出已配置的软件仓库
# yum list|tail
查看未安装的软件包
# yum list |grep 关键字
@代表已经安装成功
# yum list installed
查看已安装的包
# yum grouplist
查看包组
# yum groupinstall  "包组"
安装包组
# yum groupremove "包组"
# md5sum +包名
直接校验第三方提供的软件包 

课后实战

1. 需求1

Centos默认使用自带的国外源,由于网络问题请将其替换为国内的清华源、阿里云源,163源,sohu源其中之一

2. 需求2

开发人员需要安装某个软件包(epel源中有),发现现有yum源中没有,需要运维协助配置EPEL源(两种方式搭建EPEL源)

3. 需求3

给开发人员搭建能够提供指定软件包的安装源,如zabbix的yum源

powershell 复制代码
puppet:
http://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm
http://yum.puppetlabs.com/puppetlabs-release-el-7.noarch.rpm
http://yum.puppetlabs.com/puppetlabs-release-fedora-20.noarch.rpm

Zabbix:
http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
http://repo.zabbix.com/zabbix/4.1/rhel/7/x86_64/zabbix-release-4.1-1.el7.noarch.rpm 

"红帽系"的操作系统提供额外的软件包,适用于RHEL、CentOS等系统


相关推荐
IFTICing6 分钟前
【文献阅读】Attention Bottlenecks for Multimodal Fusion
人工智能·pytorch·python·神经网络·学习·模态融合
新手unity自用笔记19 分钟前
项目-坦克大战学习-子弹的移动与销毁
笔记·学习·c#
康熙38bdc20 分钟前
Linux 进程优先级
linux·运维·服务器
神一样的老师21 分钟前
讯飞星火编排创建智能体学习(四):网页读取
人工智能·学习·语言模型·自然语言处理
hhzz23 分钟前
Linux Shell编程快速入门以及案例(Linux一键批量启动、停止、重启Jar包Shell脚本)
android·linux·jar
只是有点小怂25 分钟前
parted是 Linux 系统中用于管理磁盘分区的命令行工具
linux·运维·服务器
韬. .36 分钟前
树和二叉树知识点大全及相关题目练习【数据结构】
数据结构·学习·算法
三枪一个麻辣烫1 小时前
linux基础命令
linux·运维·服务器
一尘之中1 小时前
CycleGAN图像风格迁移互换
人工智能·学习
我命由我123451 小时前
SSL 协议(HTTPS 协议的关键)
网络·经验分享·笔记·学习·https·ssl·学习方法