部署yum仓库及NFS共享服务
一、yum仓库服务
yum概述
- 基于RPM包构建的软件更新机制
- 可以自动解决依赖关系
- 所有软件包由集中的yum的软件仓库提供
源种类:
软件仓库的提供方式有:
- FTP://挂载目录
- HTTP服务:http://挂载目录
- 本地目录:file://挂载目录
PRM软件包的来源:
- centos发布的RPM包集合
- 第三方组织发布的RPM包集合
- 用户自定义的RPM包集合
二、安装源
安装ftp源
- 安装xsftpd软件包(yum或者rpm -ivh都可以)
- 开启服务
- 进入ftp默认的匿名地址创建文件(cd /var/ftp)
- 将光盘挂载到目录
- 指定FTPyum源
- 切换到Yum源配置文件目录(/etc/yum.repos.d)
- 创建ftp配置文件(vim ftp.repo)
- 剩下的步骤于yum本地源配置一样
安装在线源
可以使用官方默认的,不需要安装,联网即可使用,也可以使用其他的在线源
- 以阿里云为例
网址:https://mirrors.aliyun.com/repo/
可以下载然后拖进虚拟机也可以直接复制连接
不安装阿里云的话会使用默认官方的,安装了阿里云可以替换官方的,使用mv覆盖即可
本地源和在线源同时使用
- 安装一个插件,用来设置优先级
- 安装在线源扩展包
- 在配置文件里面设置,以ftp的配置文件为例
- 将所有的配置文件移走,将ftp的配置文件移出来
- 启用刚刚安装的插件
yum仓库类型:
本地仓库:baseurl=file://… 一对一的效果 安装快,但软件数量少,版本低
ftp仓库: f tp://… 一对多的效果 同上
在线源: http:// https:// 一对多的效果 软件数量多,版本新,但是安装前需要更新缓存,安装速度较慢
##yum缓存
使用yum claen all清除的时候,也是清除的这里的缓存
一般下载完软件之后,软件包是直接删除的,并没有保存下来,如果需要保存,就需要修改yum的主配置文件(/etc.yum.conf)
默认是不缓存,如果需要,可以将前两行注释掉,然后添加两行,第一行为缓存目录,第二行为是否缓存
上面是通过缓存的方式保留下载安装包,下面使用yum下载软件包方式
还可以使用其他方法
将软件包变成Yum源
使用createrepo命令
后面再使用yum安装的时候,根据这个依赖关系表来自动解决软件之间的依赖关系。
三、NFS共享存储服务
NFS:网路文件系统
- 依赖于RPC协议(远程调用协议,端口号111)
- 需安装nfs-utils、rpcbind软件包
- 系统服务:nfs(端口号2049)、rpcbind(端口号111)
- 共享配置文件:/etc/ports
NFS架构
都是在一起共享的,A也可以读取B等。可以设置不共享
NFS原理
rpcbind先启动,nfs后启动
解释:
服务器通过NFS服务共享出本地磁盘的本地文件,客户端使用rpcbind服务通过TCP协议连接客户端的rpcbind服务,从而读取到服务端通过nfs服务共享出来的文件。
四、NFS实操
- 先启动这两个服务
- 设置配置文件(/etc/exports)
客户机地址可以是主机名、IP地址、网段地址,允许使用"*”、"?"通配符。rw"表示允许读写,“ro”表示为只读。
sync :表示同步写入到内存与硬盘中。
no_root_squash :表示当客户机以root身份访问时赋予本地root权限(默认是root_squash)
no_root_squash :表示当客户机以root身份访问时赋予本地root权限(默认是root_squash)
其它常用选项:
all_squash :所有访问用户都映射为匿名用户或用户组。
async :将数据先保存在内存缓冲区中,必要时才写入磁盘。
subtree_check(默认):若输出目录是一个子目录,则nfs服务器将检查其父目录的权限。
no_subtree_check :即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率。
anonuid=xxx :指定NFs服务器/etc/passwd文件中匿名用户的UID
anongid=xxx :指定NFs服务器/etc/group文件中匿名用户的GID - 重启NFS服务
- 查看共享目录情况(showmount -e)
- 使用另一台虚拟机可以查看
- 挂载
服务端若重启服务,那么已连接客户端会有一段时间用不了,会进入卡死状态。
mount只是临时挂载,想要永久挂载需要去配置文件(/etc/fstab)