Linux YUM仓库及NFS共享服务方式
作者:活老鬼
YUM(Yellowdog Updater Modified)是基于RPM包的软件包管理器,专门用于解决软件包的依赖关系,支持通过FTP、HTTP服务或本地目录从集中的YUM软件仓库获取软件包,YUM能够自动处理包依赖问题,简化了软件安装和更新过程
一、YUM概述
1.YUM简介
YUM(Yellow dog Updater Modified)是一个专门为了解决包的依赖关系而存在的软件包管理器。
- 基于RPM包构建的软件更新机制
- 可以自动解决依赖关系
- 所有软件包由集中的YUM软件仓库提供
2.软件仓库的提供方式
- FTP服务:ftp://......
- HTTP服务:http://......
- 本地目录:file://......
3.RPM软件包的来源
- CentOS发布的RPM包集合
- 第三方组织发布的RPM包集合
- 用户自定义的RPM包集合
4. yum 命令的运用
命令 | 解释 |
---|---|
yum list | 显示所有可用包(可以后跟包名,显示具体的软件包) |
yum info | 显示所有可用包的信息(后根报名,显示单个包的相关信息) |
yum search | 模糊查找所有的相关信息 |
yum whatprovides | 精确查找 |
yum install | 安装具体软件包 |
yum update | 具体软件升级 |
yum upgrade | 具体软件更新 |
yum remove | 卸载具体软件 |
yum history | 查看当前yum操作历史 |
yum history info | 加序号列出某次事务的详细信息 |
yum history undo | 加序号卸载序号里安装的软件 |
yum history redo | 加序号重新执行序号里的操作 |
yum grouplist | 显示所有可用包组 |
yum groupinfo | 显示具体的包组的具体的信息 |
yum groupinstall | 安装具体软件包组 |
yum group update | 具体包组升级 |
yum groupremove | 卸载具体包组软件 |
二、搭建ftp YUM仓库
1.服务端安装vsftpd服务
yum install vsftpd -y
2.服务端在/var/ftp/下创建一个文件,并挂载
mkdir /var/ftp/centos7 mount /dev/cdrom /var/ftp/centos7 systemctl stop firewalld setenforce 0 #服务端需关闭防火墙 systemctl start vsftpd #开启vsftpd服务
3.客户端搭建ftp仓库
cd /etc/yum.repos.d mkdir repo.bak mv *.repo repo.bak vim local.repo [local] name=local baseurl=ftp://20.0.0.12/centos7 #服务端地址目录 gpgcheck=0 enabled=1 yum clean all yum makecache #客户端也需关闭防火墙
三、NFS共享服务
1.NFS简述
NFS(Network File System)是一种基于TCP\IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。
对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议。但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用。
- 依赖于RPC(远端过程调用)
- 需安装nfs-utils、rpcbind软件包
- 系统服务:nfs、rpcbind
- 共享配置文件:/etc/exports
2.搭建NFS服务
1.两台主机均安装nfs-utils、rpcbind软件包
yum install nfs-utils rpcbind -y
2.服务端设置共享目录
mkdir /opt/wwwroot chmod 777 /opt/wwwroot vi /etc/exports /opt/wwwroot 20.0.0.0/24(rw,sync,no_root_squash) #允许访问的网段 #"rw" 表示允许读写;"ro" 表示为只读。 "sync":表示同步写入到内存与硬盘中。 "no_root_squash": 表示当客户机以root身份访问时赋予本地root权限(默认是root_squash)。 "root_squash":表示客户机用root用户访问该共享目录时,将root用户映射成匿名用户。
3.启动NFS服务程序(服务端、客户端均需启动)
systemctl stop firewalld setenforce 0 #需关闭防火墙 systemctl enable rpcbind --now systemctl enable nfs --now #应先启动rpcbind,再启动nfs ss -natp | grep rpcbind #查看rpcbind端口是否开启,rpcbind服务默认使用tcp 111端口 showmount -e #查看本机发布的NFS共享目录
4.客户端挂载NFS共享目录
mkdir /myshare #创建共享目录 vi /etc/fstab ...... 20.0.0.12:/opt/wwwroot /myshare nfs defaults,_netdev 0 0 #挂载共享目录 #"_netdev":表示挂载设备需要网络
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。