linux 部署YUM仓库及NFS共享服务

目录

简介

一、YUM仓库服务

1.1 YUM概述

1.2 linux系统各家厂家用的安装源

1.3 yum命令

1.4 yum下载方式

1.5 部署YUM软件仓库

二、NFS共享存储服务

2.1 NFS共享存储服务概念

2.2 NFS配置环境

2.3 使用NFS发布共享资源

2.4 在客户端访问NFS共享


简介

yum,全称“Yellow dog Updater, Modified”,
是一个专门为了解决包的依赖关系而存在的软件包管理器。
类似于windows系统的中电脑软件关键,
可以一键下载,一键安装和卸载。yum 是改进型的 RPM 软件管理器,
它很好的解决了 RPM 所面临的软件包依赖问题。yum 在服务器端存有所有的 RPM 包,
并将各个包之间的依赖关系记录在文件中,当管理员使用 yum 安装 RPM 包时,
yum 会先从服务器端下载包的依赖性文件,通过分析此文件从服务器端一次性下载所有相关的 RPM 包并进行安装。

一、YUM仓库服务

1.1 YUM概述

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

1.2 linux系统各家厂家用的安装源

  • centos7和rhel7默认使用的时yum仓库源 ,软件包的结尾是".rpm"
  • centos8和rhel 8可以使用dhf (是yum的衍生产品)
  • Ubuntu debian使用的是apt 软件包是以“.deb”结尾

1.3 yum命令

选项说明
yum list显示所有可用包(可以后跟包名,显示具体的软件包)
yum info显示所有可用包的信息(后跟包名,显示单个包的相关信息)
yum search模糊查找所有的相关信息
yum whatprovides精确查找
yum install安装具体软件包
yum update具体软件升级
yum upgrade具体软件更新17
yum remove卸载具体软件
yum history查看当前yum操作历史
yum history info加序号列出某次事务的详细信息
yum history undo加序号卸载序号里安装的软件(比yum remove 软件名,清除的更加彻底)
yum history redo加序号重新执行序号里的操作
yum grouplist显示所有可用包组(后跟包组名,可以显示具体)
yum groupinfo显示具体的包组的具体信息
yum groupinstall安装具体软件包组
yum group update具体包组升级
yum groupremove卸载具体包组软件

1.4 yum下载方式

方法一:

yum install --downloadonly mariadb         #下载下来的安装包都是放                                       在/var/cache/yum/x86_64/7/ 目录下

方法二:

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

方法三:

yum的缓存功能:默认情况下,yum会在安装完软件之后,自动清理掉安装包。但是也可以通过设置,让yum不清楚安装后的安装包。

vim  /etc/yum.conf 将配置中的keepcache=o  修改为 keepcache=1

此时下载好的软件包默认安置在:/var/cache/yum/x86_64/7/base(epel、extras、updates)四个文件其中

yum相关的日志文件
/var/log/yum.log

1.5 部署YUM软件仓库

yum仓库源的三种搭建方式

  • 本地源的地址可以修改成在线源

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

  • 搭建本地源仓库

mount /dev/cdrom /mnt

>>/etc/yum.repos.d目录下的 *.repo的 文件

mkdir repos.bak         #备份

mv * repos.bak         #备份

vim local.repo

[local]                                   #文件名(仓库名)

name=local                          #描述(仓库门)

baseurl=file:///mnt                #指定光盘挂载目录作为软件仓库源

enabled=1                            #开启此yum源,此为默认项,可省略 是否启用

gpgcheck=0                         #不去检查软件序列号

priority=1                                 #优先级,数字越小,优先级越高

  • 搭建ftp yum仓库

准备两台虚拟机,一台用作服务端,提供下载库,一台作为客户端,建立yum仓库获取下载库的资源

第一步:服务端安装vsftpd服务

yum install -y vsftpd

第二步:服务端在/var/ftp/ 下创建一个文件,并且挂载
该步骤涉及到ftp原理,用户远程访问时的,根目录就在 /var/ftp上,所以在此创建挂载目录

[root@localhost ~]# cd /var/ftp
[root@localhost ftp]# mkdir centos7
[root@localhost ftp]# mount /dev/sdrom  /var/ftp/centos7/
[root@localhost ftp]# systemctl start vsftpd                 #开启服务

第三步:客户端搭建ftp  yum仓库

[root@localhost ~]# cd  /etc/yum.repos.d
[root@localhost yum.repos.d]# mkdir repo.bak
[root@localhost yum.repos.d]# mv *.repo  ./repo.bak/
[root@localhost yum.repos.d]# vim local.repo

vim local.repo

[local]
name=local
baseurl=ftp://192.168.23.40/centos7    #指向路径ftp服务端地址以及挂载点位置,因为ftp原理原因,用户远程访问时,根目录就在/var/ftp上  所以直接指定挂载点相对路径就可以
enabled=1
gpgcheck=0

注意:三种方式搭建完yum仓库后都要执行下 yum clean all && yum makecache 命令清理重建yum源

扩展:搭建阿里云仓库

第一步:将我们创建的local.repo文件移动到repo.bak目录下(也可以是别的备份目录)
第二步:将可以连外网的系统打开,下载镜像

wget -O /etc/yum.repos.d/CentOS-Base.repo

#如果没有wget命令 可以先  yum install -y  wget  先安装一下

安装完成后会有新的镜像文件出现

二、NFS共享存储服务

2.1 NFS共享存储服务概念

NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。
对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议。但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用。

NFS 服务的实现依赖于 RPC(Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。
所以需要安装 nfs-utils、rpcbind 软件包来提供 NFS共享服务,前者用于 NFS 共享发布和访问,后者用于 RPC 支持。

2.2 NFS配置环境

  • NFS 的配置文件为/etc/exports

格式为:

共享的目录位置 客户机地址(权限选项)

软件包(包括服务器端和客户端):

nfs-utils (nfs端口号 2049/tcp):共享服务
rpcbind (RPC端口号 111/tcp):远程共享调用

2.3 使用NFS发布共享资源

1 安装nfs-utils、rpcbind 软件包

rpm -q rpcbind nfs-utils 
yum -y install nfs-utils rpcbind

2 设置共享目录

mkdir -p /opt/wwwroot            #创建一个空目录做共享目录
chmod 777 /opt/wwwroot           #给与共享目录一个最低权限方便实验

vim /etc/exports                 #进入配置文件
/opt/wwwroot 192.168.23.0/24(rw,sync,no_root_squash)
#共享目录地址   允许访问的地址段     权限限制


客户机地址可以是主机名、IP 地址、网段地址,允许使用“*”、“?”通配符。
“rw” :表示允许读写,“ro” 表示为只读。
sync :表示同步写入到内存与硬盘中。
no_root_squash : 表示当客户机以root身份访问时赋予本地root权限(默认是root_squash)。
root_squash :    表示客户机用root用户访问该共享目录时,将root用户映射成匿名用户。

其它常用选项
all_squash :所有访问用户都映射为匿名用户或用户组。
async : 将数据先保存在内存缓冲区中,必要时才写入磁盘。
subtree_check(默认):若输出目录是一个子目录,则nfs服务器将检查其父目录的权限。
no_subtree_check :即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率。

3 启动 NFS 服务程序

手动加载NFS共享服务时,应该先启动rpcbind,再启动nfs

systemctl start rpcbind
systemctl start nfs
systemctl enable rpcbind
systemctl enable nfs

4 查看本机发布的 NFS 共享目录

showmount -e

2.4 在客户端访问NFS共享

1.安装 nfs-utils、rpcbind 软件包

rpm -q rpcbind nfs-utils 
yum -y install nfs-utils rpcbind
systemctl start rpcbind
systemctl enable rpcbind

查看 NFS 服务器端共享了哪些目录

showmount  -e  192.168.23.40

2.  手动挂载 NFS 共享目录

mkdir /myshare    #创建一个空目录用作共享目录挂载点
mount 192.168.23.40:/opt/wwwroot /myshare    #挂载共享目录到此挂载点

3. 设置自动(永久)挂载 

vim /etc/fstab


#
# /etc/fstab
# Created by anaconda on Wed Aug 14 22:31:17 2024
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=a5146261-b9f5-4fad-b1f6-4b931198939a /boot                   xfs     defaults        0 0
/dev/mapper/centos-home /home                   xfs     defaults        0 0
/dev/mapper/centos-swap swap                    swap    defaults        0 0
192.168.23.40:/opt/wwwroot /myshare             nfs     defaults,_netdev 0 0
                                                       
#_netdev:表示挂载设备需要网络

永久挂载设置完后 要重启系统或者使用 mount -a 刷新文件才能生效

4. 强制卸载 NFS

如果服务器端NFS服务突然间停掉了,而客户端正在挂载使用时,在客户端就会出现执行 df -h 命令卡死的现象。这个时候直接使用umount 命令是无法直接卸载的,需要加上 -lf 选项才能卸载。

umount -lf /myshare

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值