YUM仓库部署及NFS共享服务
一.YUM仓库部署
1.yum概述
2.仓库提供方式
3.软件包来源
4.不同系统的不同软件安装方式
RHEL Centos .rpm软件包 yum安装
Ubuntu Debian .deb apt安装
5.ftp源仓库安装
①步骤
1.关闭防火墙
systemctl stop firewalld.service
setenforce 0
2.查看是否挂载
lsblk df-hT
3.安装vsftpd程序
yum install -y vsftpd
4.启动vsftpd
systemctl start vsftpd
5.切换到/var/ftp目录 创建一个目录centos7 将这个目录挂载的/dev/sr0
cd /var/ftp
mkdir centos7
mount /dev/sr0 centos7
6.切换到/etc/yum.repos.d 目录
7.创建ftp.repo
8.vim ftp.repo
[ftp] #源仓库名称
name=ftp
baseurl=ftp://192.168.218.20/centos7
enabled=1
gpgcheck=1
gpgkey=ftp://192.168.218.20/centos7/RPM-GPG-KEY-CentOS-7
9.启动ftp源
make clean all && yum makecache
②实验
6.在线源仓库
baseurl=http://
①在线源下载链接
清华大学https://mirrors.tuna.tsinghua.edu.cn/centos/7/os/x86_64/
162源:
http://mirrors.163.com/.help/CentOS7-Base-163.repo
阿里源:http://mirrors.aliyun.com/repo/Centos-7.repo
下载方法
wget -O(大写) /etc/yum.repos.d/CentOS7-Base-163.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
7.ftp源和在线源优先级设置
①步骤
1.安装yum插件
yum install -y yum-plugin-priorities
2.在ftp.reo中添加在线源配置并设置ftp源优先级大于在线源 设置方法为数字越小,优先级越大。
vim ftp.repo
[ftp]
name=ftp
baseurl=ftp://192.168.218.20/centos7
enabled=1
gpgcheck=0
priority=1
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
baseurl=http://mirrors.aliyun.com/epel/7/$basearch
failovermethod=priority
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
priority=2
3.启用插件plugin-priorities
4.测试是否启用在线源
8.yum下载软件包
①开启缓存下载
vim /etc/yum.conf
keepcache=1 #1为开启缓存,0为关闭缓存
②命令操作下载软件包
yum install -y 软件 --downloadonly --downloaddir=下载目录
yumdownloader 软件 --destdir=下载目录 --resolve
createrepo 软件包目录 ---> 创建软件包依赖关系索引表
9.yum常用命令
10.总结
yum软件仓库类型
本地源 | baseurl=file:// | 一对一 | 安装快,但软件数量少,版本低 |
---|---|---|---|
ftp源 | baseurl=ftp:// | 一对多 | 安装快,但软件数量少,版本低 |
在线源 | baseurl=http:// baseurl=https:// | 一对多 | 软件数量多,版本新,但安装前需要更新缓存,安装速度较慢 |
二.NFS共享存储服务
1.NFS共享存储服务
·依赖于RPC远程调用
·需安装nfs-utils rpcbind软件包
·系统服务为nfs rpcbind
·共享配置文件为/etc/exports ------>共享配置文件为空需要手动添加配置
·rpcbind端口号为2049
·nfs端口号为111
共享配置文件修改格式/etc/exports
vim /etc/exports
共享目录 客户端地址/网段(共享参数选项)
·共享目录可以是一个或者多个
·客户端地址可以是IP地址、主机名、网段,可以使用‘*’及‘?’通配符
共享参数选项
参数选项 | 说明 |
---|---|
rw | 表示允许读写 |
ro | 表示为只读 |
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 |
sync | 表示同步写入到内存和硬盘中 |
2.NFS架构
n个用户可以透过nfs文件共享服务共享同一个硬盘中的文件或目录。
3.NFS工作原理
服务端
将已经格式化的磁盘挂载到目录上
开启rpcbind服务并打开111号端口,然后启动nfs服务,nfs向rpcbind注册端口信息,NFS通过配置文件/etc/exports把目录共享出来。
客户端
通过mount -t nfs 服务端IP:共享目录 本地挂载点
启动rpcbind服务,通过TCP/IP协议连接到服务端的rpcbind,查找到nfs注册的端口信息,然后获得共享目录或文件中的内容。
NFS共享服务为明文传输,安全性低,仅适用于内网。
4.操作步骤
服务端
1.安装nfs-utils rpcbind
rpm -q nfs-utils rpcbind
yum install -y nfs-utils rpcbind
2.启动服务 ---->一定要按顺序启动
systemctl start rpcbind
systemctl start nfs
3.修改配置文件 /etc/exports
vim/etc/exports
共享目录(绝对路径) 客户端IP地址/网段(共享参数 若有多个共享参数需要逗号隔开)
4.重启nfs服务
5.查看共享目录情况
showmount -e
客户端
1.安装rpcbind
rpm -q rpcbind
yum install -y nfs-utils rpcbind
2.启动服务
systemctl start rpcbind
3.查看共享目录情况
showmount -e 服务端IP
4.创建目录将共享目录挂载到本地使用
mkdir data
mount -t nfs 服务端IP:共享目录 本地挂载目录
如需要永久挂载
vim /etc/fstab
服务端IP:共享目录 本地挂载点 nfs defaults_netdev 0 0
mount -a 刷新
如客户端挂载目录卡死
umount -lf
实验
共享配置文件修改格式/etc/exports
vim /etc/exports
共享目录 客户端地址/网段(共享参数选项)
·共享目录可以是一个或者多个
·客户端地址可以是IP地址、主机名、网段,可以使用‘*’及‘?’通配符
共享参数选项
参数选项 | 说明 |
---|---|
rw | 表示允许读写 |
ro | 表示为只读 |
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 |
sync | 表示同步写入到内存和硬盘中 |
4.不同系统的共享存储服务
windows | 共享存储服务 | cifs |
---|---|---|
linux | 共享存储服务 | nfs |
5.存储类型
块存储 | 硬盘 LVM RAID |
---|---|
文件存储 | NFS |
对象存储 | OSS |