Linux网络之YUM仓库的补充和NFS共享服务

Posted 封玖FJ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux网络之YUM仓库的补充和NFS共享服务相关的知识,希望对你有一定的参考价值。

YUM仓库服务

YUM概述

1.基于RPM包构建的软件更新机制
2.可以自动解决依赖关系
3.所有软件包由集中的yum软件仓库提供

YUM配置文件

1.基本配置:/etc/yum.conf
2.仓库设置:/etc/yum.repos.d/*.repo
3.日志文件:/var/log/yum.log

软件仓库的提供方式

1.FTP服务:ftp://
2.HTTP服务:http://
3.本地目录:file://

RPM软件包的来源

1.CentOS发布的RPM包集合
2.第三方组织发布的RPM包集合
3.用户自定义的RPM包集合

yum常用命令

yum -y install 软件名                # ——安装、升级软件包,“-y”选项表示自动确认
yum -y remove 软件名                    # ——卸载软件包,可自动解决其依赖关系
yum groupremove                          # ——卸载软件  
yum -y update 软件名                    # ——升级软件包

yum list                            # ——查询软件包列表
yum list installed                    # ——查询系统中已安装的软件包
yum list available                    # ——查询仓库中尚未安装的软件包
yum list updates                    #  ——查询可以升级版本的软件包

yum info 软件名                        #    ——查询软件包的描述信息
yum info httpd

yum search [all] 关键词                # ——根据某个关键词来查找相关的软件包
yum search all httpd

yum whatprovides 命令                # ——查询命令属于哪个软件包
yum whatprovides netstat
yum grouplist 【包组名】                    #查询软件包组
yum groupinfo <包组名>

构建CentOS 7 软件仓库

  • RPM包来自CentOS 7 DVD光盘
  • 通过FTP方式提供给客户机 (安装并启用vsftpd服务)
    
    mkdir -p /var/ftp/CentOS7
    cp -rf /dev/cdrom/*  /var/ftp/CentOS7

rpm -ivh /dev/cdrom/Packages/vsftp-3.0.2-21.el7.x86_64.rpm
systemctl start vsftpd
systemctl enabled vsftpd

****
# 在软件仓库中加入非官方RPM包组
+ 一般以网络途径获取的
+ 包括存在依赖关系的所有其他RPM包
+ 需使用createrepo工具建立repodata 数据文件仓库
+ 安装包文件存放到 /var/ftp/other 目录下

mkdir -p /var/ftp/other
cd /var/ftp/other
createrepo -g /dev/cdrom/repodata/repomd.xml ./

****
# 为客户机指定YUM仓库位置

+ 配置文件位置: /etc/yum.repos.d/centos7.repo

vim /etc/yum.repos.d/centos7.repo
[base] #仓库类别,注意:方括号里面不能有空格。
name=CentOS 7 #仓库名称
baseurl=ftp:///192.168.4.254/CentOS7 #URL访问路径
enabled=1 #启用此软件仓库,默认该选项可以不写。如果值为0,则表示禁用这个软件源。
gpgcheck=1(或0:表示不验证公钥) #验证软件包的签名
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 (软件校验公钥) #GPG公钥文件的位置

[other]
name=Other RPM Packages
baseurl=ftp:///192.168.4.254/other
enabled=1
gpgcheck=0

*****

# 本地YUM仓库

+ 直接以CentOS 7光盘作软件仓库
+ 挂载镜像到仓库位置,URL地址为 file:///media/cdrom

vi /etc/yum.repos.d/local.repo
.....

[local]
name=name
baseurl=file:///media/cdrom
enabled=1
gpgcheck=0


*****
# 阿里云仓库

第一步:将创建的local.repo文件移动到repo.bak目录下(也可以是别的备份目录)
第二步:将可以连外网的系统打开,执行wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo 将阿里云镜像下载到/etc/yum.repos.d/目录下
第三步:刷新缓存, yum claen all && yum makecache #清理缓存并且生成新的缓存

+ 当既有本地yum源又有aliyun源的时候,我们在装软件包的时候当然希望先用本地的yum源去安装,
+ 本地找不到可用的包时再使用aliyun源去安装软件,这里就涉及到了优先级的问题,
+ yum提供的插件yum-plugin-priorities.noarch可以解决这个问题

**1.查看是否安装了yum-plugin优先级插件**

rpm -qa |grep yum-plugin-

**2.如果没有安装,就安装插件**

yum -y install yum-plugin-priorities.noarch

**3.查看插件是否启用**

cat /etc/yum/pluginconf.d/priorities.conf

[main]:
enabled = 1 # 1为启动,0 为禁止

**4.修改本地yum源优先使用**

vi local.repo
[local]
name=local
baseurl=file:///mnt/
enabled=1
gpgcheck=1
priority=1 #数字越小优先级越高

[epel]
baseurl=https://mirrors.aliyun.com/epel/7Server/x86_64/
enabled=1
gpgcheck=0
priority=2

**5.验证安装包的数量**

执行yum repolist all 可显示所有仓库包

//yum 命令仅下载安装包
方式一:
yum install --downloadonly mariadb
#下载下来的安装包都是放在 /var/cache/yum/x86_64/7/ 目录下

方式二:
yumdownloader --destdir=/opt mariadb mariadb-server
#yumdownloader 仅下载指定软件包,参数 --destdir 是用来指定存放下载的安装包的目录

以上是关于Linux网络之YUM仓库的补充和NFS共享服务的主要内容,如果未能解决你的问题,请参考以下文章

Linux中部署YUM仓库及NFS共享服务

linux --FTP服务器,部署YUM仓库,NFS共享服务

Linux系统部署YUM远程仓库及NFS共享服务

Linux不得不会的技能之FTP服务NFS服务及yum仓库

懂得分享 是一种美德 我有的 你也可以拥有 Linux 配置NFS共享服务

部署yum仓库及NFS共享服务