部署YUM仓库及NFS共享服务
一.YUM(Yellow dog Updater Modified)仓库服务
系统类型 | 文件类型 | 所用程序 |
---|---|---|
RHEL、CentOS | .rpm | yum |
Ubuntu、Debian | .deb | apt |
1.部署YUM软件仓库
-
基于RPM包构建的软件更新机制
-
可以自动解决依赖关系
-
所有软件包集中的YUM软件仓库提供
准备安装源
(1)软件仓库的提供方式:
类型 | 方式 | 支持访问 | 说明 |
---|---|---|---|
FTP源 | ftp://…… | 一对多 | 安装快,软件数量少,版本低 |
HTTP在线源 | http://……(https安全性更高) | 一对多 | 软件数量多,版本新,但安装前需要更新缓存,安装速度较慢 |
本地源 | file//…… | 一对一 | 安装快,软件数量少,版本低 |
(2)RPM软件包的来源
- CentOS发布的RPM包集合
- 第三方组织发布的RPM包集合
- 用户自定义的RPM包集合
(3)构建CentOS 7软件仓库
- RPM包来自CentOS 7 DVD光盘
- 通过FTP方式提供给客户机
(4)在软件仓库中加入非官方RPM包组
- 包括存在依赖关系的所有RPM包
- 使用createrepo工具建立仓库数据文件(创建软件包依赖关系索引表)(-g指定软件包依赖关系索引表文件的所在目录)
(5)访问YUM仓库:为客户机指定YUM仓库位置:配置文件:/etc/yum.repos.d/centos7.repo
2.使用YUM工具管理软件包
yum操作常用命令 | 说明 |
---|---|
yum -y install | 安装、升级软件包,“-y” 选项表示自动确认 |
yum -y remove | 卸载软件包,可自动解决其依赖关系(只删除软件包,不删除其配置文件) |
yum -y erase | 卸载软件包,可自动解决其依赖关系(删除软件包的同时删除其配置文件) |
yum -y update | 升级软件包 |
yum list | 查询软件包列表 |
yum list installed | 查询系统中已安装的软件包 |
yum list available | 查询仓库中尚未安装的软件包 |
yum list updates | 查询可以升级版本的软件包 |
yum info 软件名 | 查询软件包的描述信息 |
yum search [all] 关键词 | 根据某个关键词来查找相关的软件包 |
yum whatprovides 命令 | 查询命令属于哪个软件包 |
3.ftp源
(1)关闭防火墙与selinux核心防护
(2)安装并启动vsftpd服务
(3)在/var/ftp下创建一个用来挂载的目录,解挂本地/mnt目录
(4)FTP优点可只需要配置一台主机,之后就可使用scp 用户名@FTP主机IP:FTP配置目录 存放复制过来的配置文件目录位置就同样可以使用FTP源了
4.在线源
国内推荐yum源
网易云
阿里云
5.yum下载软件包的方式
(1)开启缓存下载
yum下载软件包时会自动下载依赖包以保证正常安装所需软件包,但依赖包会在安装完后自动删除,可以通过修改配置文件:/etc/yum.conf让依赖包不会被自动删除,即可得到所有下载的软件包
(2)yum -y install 软件 --downloadonly --downloaddir=下载目录
–downloadonly:下载该软件时,仅下载软件包,不进行安装(默认自动安装)
–downloaddir:指定软件包的下载目录
(3)yumdownloader 软件 --destdir=下载目录 --resolve
--destdir:指定软件包下载目录
–resolve:自动解决依赖关系,连同依赖包一起下载
6.查看优先级插件区分本地源和在线源的优先级
yum -y install yum-plugin-priorities
配置文件:/etc/yum/pluginconf.d/priorities.conf
7.设置yum源优先级
未安装前
安装后
二.NFS共享存储服务
存储类型 | |
---|---|
块存储 | 硬盘、LVM、RAID |
文件存储 | NFS |
对象存储 | OSS |
1.使用NFS发布共享资源
NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源
对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议,但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用
-
Windows共享存储服务使用:cifs协议
-
Linux共享存储服务使用:nfs协议
NFS(Nwtwork File System)网络文件系统
- 依赖RPC(Remote Process Call远端过程调用机制)以完成远程到本地的映射过程
- 需安装nfs-utils、rpcbind软件包来提供NFS共享服务
- 系统服务:nfs(端口号2049)、rpcbind(端口号111)
- 共享配置文件:/etc/exports(空文件需自行添加所需配置)
2.在客户端访问NFS共享
(1)安装软件(yum -y install nfs-utils rpcbind)启动服务
(2)准备共享目录
先准备硬盘/LVM/RAID,格式化后挂载到需要共享的目录,并设置相应的权限(如果无需客户端写入文件则省略)
(3)修改共享配置文件:vim /etc/exports并发布共享目录
格式:共享目录的绝对路径 客户端地址或网段(共享参数)
注:若需多条共享参数可以逗号相隔
参数选项 | 说明 |
---|---|
ro | 该主机对该共享目录有只读权限 |
rw | 该主机对该共享目录有读写权限 |
root_squash | 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户(默认) |
no_root_squash | 客户机用root访问该共享文件夹时,不映射root用户 |
all_squash | 客户机上的任何用户访问该共享目录时都映射成匿名用户 |
anonuid= | 将客户机上的用户映射成指定的本地用户ID的用户 |
anongid= | 将客户机上的用户映射成属于指定的本地用户组ID |
sync | 资料同步写入到内存与硬盘中(占用大量的I/O) |
async | 资料会先暂存于内存中,在必要时写入硬盘 |
insecure | 允许从这台机器过来的非授权访问 |
subtree_check | 如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认) |
no_subtree_check | 和上面相对,不检查父目录权限,这样可以提高效率 |
wdelay | 如果多个用户要写入NFS目录,则归组写入(默认) |
no_wdelay | 如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置 |
hide | 在NFS共享目录中不共享其子目录 |
no_hide | 共享NFS目录的子目录 |
secure | NFS通过1024以下的安全TCP/IP端口发送 |
insecure | NFS通过1024以上的端口发送 |
注:exportfs -avr #发布新的nfs共享目录配置类似于刷新
(5)客户端挂载使用(如客户端挂载目录出现卡死现象:umount -lf:强制解除挂载)
注:若将服务器端共享配置文件:/etc/exports中的共享参数rw修改为ro
注:系统与程序两者权限皆要满足,比如共享参数为rw,而没有给共享目录写入权限也将无法实行任何写入操作
注:若需要永久挂载,修改:vim /etc/fstab即可