NFS文件共享
YUM概述
1、基于RPM包构建的软件更新机制
2、可以自动解决依赖关系
3、所有软件包由集中的YUM软件仓库提供
准备安装源
软件仓库的提供方式
FTP服务:ftp://……
HTTP服务:http://……
本地目录:file://……
RPM软件包的来源
1、Centos发布的RPM包集合
2、第三方组织发布的RPM包集合
3、用户自定义的RPM包集合
构建Centos7软件仓库
1、RPM包来自Centos7DVD光盘
2、通过FTP方式提供给客户机
在软件仓库中加入非官方RPM包组
1、包括存在依赖关系的所有RPM包
2、使用createrpo工具建立仓库数据文件
访问YUM仓库
为客户机指定YUM仓库位置
配置文件:/etc/yum.repos.d/centos7.repo
vim /etc/yum.repos.d/centos7.repo
[base] #仓库类别
name=CentOS 7.3 #仓库名称
baseurl=ftp:///192.168.4.254/CentOS7 #URL访问路径
enabled=1 #启用此软件仓库
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共享存储服务
NFS是一种基于rCP/IP传输的网络文件系统协议。通过使用xPs协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。
对于大多数负载均衡群集来说,使用NFs协议来共享数据存储是比较常见的做法, NFS也是NS存储设备必然支持的一种协议。但是由于NFs没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用。
NFS服务的实现依赖于 RPC(Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。
所以需要安装nfs-utils、rpabind 软件包来提供 NRS共享服务,前者用于NES 共享发布和访问,后者用于 RPC 支持。
NFS的配置文件为/etc/exports
格式为:
共享的目录位置 客户机地址(权限选项)
NFS共享服务步骤
1、查看是否安装nfs-utils、rpcbind软件包(本地yum源仓库默认安装)
2、在服务器上设置共享目录
mkdir -p /opt/wwwroot 递归创建共享目录
chmod 777 /opt/wwwroot 赋予这个目录所有权限
vim /etc/exports
vim /etc/exports
(格式一:共享给某个网段地址)
/opt/wwwroot 192.168.80.0/24 (rw, sync, no_root_squash) #/opt/wwwroot 是服务器中共享的资源的目录的绝对地址
或(格式二:共享给不同的客户机)
/var/ftp/pub 192.168.4.11 (ro) 192.168.4.110 (rw) #后面的地址是客户机的IP地址
或(格式三:允许所有客户机访问且允许读写权限)
/share *(rw, sync)
客户机地址可以是主机名、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服务器也不检查其父目录的权限,这样可以提高效率。
anonuid=xxx :指定NFS服务器 /etc/passwd文件中匿名用户的UID
anongid=xxx :指定NFS服务器 /etc/passwd文件中匿名用户的G/ID
3、在客户机上访问NFS共享资源
首先确保客户机上已经安装了nfs-utils、rpcbind软件包,并开启rpcbind和nfs服务
systemctl start rpcbind
systemctl start nfs 开启服务
systemctL enable rpcbind
systemctl enable nfs 开机自启
systemctl stop firewalld
setenforce 0 关闭防火墙
4、下面我在客户机上创建了一个/song的目录,并将服务器的共享文件挂载到客户机上的/song目录中
PS:解挂目录的时候遇到解挂不了或者卡死的情况直接强制解挂
umount -lf /opt