部署YUM仓库及NFS共享服务
一、YUM概述
(一)YUM:Yellow dog Updater Modified
1.基于RPM包构建的软件更新机制
2.可以自动解决依赖关系
3.所有软件包由集中的YUM软件仓库提供
(二)准备安装源
1.源仓库的提供方式(重点)
- FTP服务:ftp://…
- HTTP服务:http://…
- 本地目录:file://…
2.RPM软件包的来源
- CentOS发布的RPM包集合
- 第三方组织发布的RPM包集合
- 用户自定义的RPM包集合
3.补充阿里云仓库当作yum源
第一步:将创建的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仓库里的软件,就需要将阿里云仓库下载到本地,占用空间较高
YUM的配置文件(重点)
- 基本设置:/etc/yum.conf
- 仓库设置:/etc/yum.repos.d/*.repo
- 日志文件:/var/log/yum.log
本地yum源仓库配置命令
mount /dev/cdrom /mnt/ 把光盘挂载到/mnt目录下
cd /etc/yum.repos.d/ 包含了一些安装包不建议删除,可以创建一个目录做备份
mkdir repos.bak 创建备份目录
mv *.repo repos.bak 移动所有以.repo为后缀的文件到备份目录中
vim local.repo[local] 仓库类别
name=local 仓库名称与所创建的文件名一致
baseurl=file:///mnt 指定URL 访问路径为光盘挂载目录,
file://(格式)/mnt(目录)
enabled=1 开启此yum源,此为默认项,可省略
gpgcheck=0 不验证软件包的签名
yum clean all && yum makecache 删除yum缓存并更新
可以拆分成两个步骤来进行
yum clean
yun makecache
二、NFS共享存储服务
概述
- NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源
- 对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议。但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用
- NFS 服务的实现依赖于 RPC(Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。所以需要安装 nfs-utils、rpcbind 软件包来提供 NFS共享服务,前者用于 NFS 共享发布和访问,后者用于 RPC 支持
工作原理
(一)NFS(Network File System)网络文件系统
依赖于RPC(远程过程调用)
- 需要安装nfs-utils、rpcbind软件包
- 系统服务:nfs、rpcbind
- 共享配置文件:/etc/exports
NFS配置文件 ==
NFS 的配置文件为/etc/exports(服务端进行配置)
== 格式为:
共享的目录位置 客户机地址(权限选项)
三、在文件服务器使用NFS 发布共享资源
(一)共享资源
1.安装 nfs-utils、rpcbind 软件包
rpm -q rpcbind nfs-utils
yum -y install nfs-utils rpcbind
2.设置共享目录
mkdir -p /opt/nfs.share
chmod 777 /opt/nfs.share
修改nfs配置文件
vim /etc/exports
/opt/nfs.share 192.168.71.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.关闭防火墙安全机制开启服务
systemctl stop firewalld
setenforce 0
systemctl start rpcbind
systemctl start nfs
systemctl enable rpcbind //开机自启动服务
systemctl enable nfs
4.查看本机发布的 NFS 共享目录
exportfs -rv //发布共享
showmount -e //查看共享
(二)在客户机中访问 NFS 共享资源
1.安装 nfs-utils、rpcbind 软件包
rpm -q rpcbind nfs-utils
yum -y install nfs-utils rpcbind
systemctl start rpcbind
systemctl enable rpcbind
2.查看 NFS 服务器端共享了哪些目录
showmount -e 192.168.71.20
mkdir /nfs_share //手动挂载 NFS 共享目录
mount 192.168.71.20:/opt/nfs.share //可以设置自动挂载
df -Th
3.在客户机上在共享资源上增加目录
4.在服务器上看否有怎加的内容
自动挂载 NFS 共享目录
vim /etc/fstab
92.168.153.10:/opt/share /share nfs defaults,_netdev 0 0
强制卸载 NFS
如果服务器端NFS服务突然间停掉了,而客户端正在挂载使用时,在客户端就会出现执行 df -h 命令卡死的现象。这个时候直接使用umount 命令是无法直接卸载的,需要加上 -lf 选项才能卸载。
umount -lf /nfs_share