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

网友投稿 226 2022-11-05

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

一、YUM概述

1、YUM (Yellow dog Updater Modified)

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

2、准备安装源

(1)软件仓库的提供方式

网络源

FTP服务: ftp://…

HTTP服务: file://…

(2)RPM软件包的来源

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

(3)构建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

(4)在软件仓库中加入非官方RPM包组

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

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

3、访问YUM仓库

为客户机指定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

二、NFS 共享存储服务

1、相关概念

NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。 对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议。但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用。 NFS 服务的实现依赖于 RPC(Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程,所以需要安装 nfs-utils、rpcbind 软件包来提供 NFS共享服务。

nfs-utils用于 NFS 共享发布和访问 rpcbind用于 RPC 支持

2、NFS服务的配置文件

NFS 的配置文件为/etc/exports 格式为:共享的目录位置 客户机地址(权限选项)

三、NFS服务配置详情

1、在文件服务器中使用 NFS 发布共享资源

(1)安装 nfs-utils、rpcbind 软件包

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

mkdir -p /opt/share chmod 777 /opt/share/ vim /etc/exports /opt/share 192.168.163.0/24(rw,sync,no_root_squash) 客户机地址可以是主机名、IP 地址、网段地址,允许使用“*”、“?”通配符。 常用选项 “rw” 表示允许读写,“ro” 表示为只读; sync :表示同步写入到内存与硬盘中。 async :将数据先保存在内存缓冲区中,必要时才写入磁盘。 no_root_squash : 表示当客户机以root身份访问时赋予本地root权限(默认是root_squash)。 root_squash :表示客户机用root用户访问该共享目录时,将root用户映射成匿名用户。 all_squash :所有访问用户都映射为匿名用户或用户组。 subtree_check(默认):若输出目录是一个子目录,则nfs服务器将检查其父目录的权限。 no_subtree_check :即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率。 其他例子: /var/ftp/pub 192.168.163.11(ro) 192.168.163.110(rw) /share *(rw,sync)

systemctl start rpcbind systemctl start nfs systemctl enable rpcbind systemctl enable nfs netstat -anpt | grep 111 #查看rpcbind端口111是否开启, rpcbind默认使用tcp端口111

exportfs -rv #发布共享 showmount -e #查看共享

2、在客户机中访问 NFS 共享资源

(1) 安装 nfs-utils、rpcbind 软件包

rpm -q rpcbind nfs-utils yum -y install nfs-utils rpcbind systemctl start rpcbind systemctl enable rpcbind systemctl stop firewalld.service setenforce 0 #查看 NFS 服务器端共享了哪些目录 showmount -e 192.168.163.10

方法一:手动挂载 mkdir /myshare mount 192.168.163.10:/opt/share /myshare 方法二:自动挂载 vim /etc/fstab 192.168.163.10:/opt/share /myshare nfs defaults,_netdev 0 0 _netdev :表示挂载设备需要网络 mount -a #挂载 fstab 中的所有文件系统 df -Th #确认挂载结果

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

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:JAVA面向对象之继承 super入门解析
下一篇:#yyds干货盘点#K8S-DaemonSet/Job/CronJob 控制器
相关文章

 发表评论

暂时没有评论,来抢沙发吧~