部署YUM仓库及NFS共享服务
1.YUM仓库服务
(1)部署YUM软件仓库
YUM
基于RPM包构建的软件更新机制
可以自动解决依赖关系
所有软件包由集中的YUM软件仓库提供
(1)准备安装源
yum软件仓库的常用类型:
ftp源仓库:baseurl=ftp://
在线源仓库:baseurl=http:// 或https://
本地源仓库:baseurl=file://
RPM软件包的来源:
CentOS发布的RPM包集合
第三方组织发布的RPM包集合
用户自定义的RPM包集合
(2)构建CentOs7软件仓库
RPM包来自CentOS 7 DVD光盘
通过FTP方式提供给客户机
(3)在软件仓库中加入非官方RPM包组
包括存在依赖关系的所有RPM包
使用createrepq工具建立仓库数据文件
(3)如何搭建本地源仓库、ftp源仓库?
(1)在仓库主机的软件包目录中准备好软件包列表,并使用 createrepo <软件包目录>
命令建立仓库数据文件
(2)在客户机的/etc/yum.repos.d/目录中创建yum仓库源配置文件XXX.repo
(3)在XXX.repo yum仓库源配置文件使用
baseurl=file:// 指定本地的软件包目录
baseurl=ftp:// 指定ftp服务器地址及其子目录
(4)yum makecache 更新缓存,yum install -y 安装软件
2.NFS共享存储服务
(1)提供共享存储的组合:①+②
①真正提供存储能力的硬件设备
使用通用服务器制作的文件服务器或专用的企业级存储设备NAS
②Linux系统使用的共享存储服务—— NFS
Windows系统使用的共享存储服务—— CIFS
(2)NFS网络文件系统:
依赖于RPC(远端过程调用)
需安装nfs-utils、rpcbind软件包
系统服务:nfs(端口2049)、rpcbind(端口111)
共享配置文件:/etc/exports
(1)使用NFS发布共享资源
(1)服务端要安装软件包 rpcbind、nfs-utils 并启动服务 rpcbind(端口111)、nfs(端口2049)
客户端要安装 rpcbind 并启动服务
systemctl enable --now rpcbind nfs #要求先启动rpcbind,再启动nfs
(2)在服务端准备共享目录
准备好硬盘分区/LVM/RAID,格式化,挂载到共享目录,并设置相应的权限
chmod 777 <共享目录> #若客户端只读不写则省略
(3)设置共享配置文件
vim /etc/exports
共享目录 客户端地址或网段(共享参数选项,....)
共享参数选项 | |
---|---|
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/group文件中匿名用户的GID |
(4)发布共享目录
exportfs -arv #在线发布
showmount -e ##服务端检查
showmount -e 服务端IP ##客户端检查
(5)客户端挂载使用
mount [-t nfs] 服务端IP:共享目录 本地挂载点目录
自动挂载vim /etc/fstab
如客户端挂载目录卡死 :umount -lf 挂载目录