部署YUM仓库及NFS共享服务

部署YUM仓库及NFS共享服务

目录

YUM仓库服务

  部署YUM软件仓库

  使用YUM工具管理软件包

NFS共享存储服务

  使用NFS发布共享资源

  在客户端访问NFS共享

 

YUM概述

YUM (Yellow dog Updater Modified)

基于RPM包构建的软件更新机制

可以自动解决依赖关系

所有软件包由集中的YUM软件仓库提供

 

 

 

 

准备安装源3-1

软件仓库的提供方式

FTP服务:ftp://......

HTTP服务:http://.....

本地目录: file://...

RPM软件包的来源

OCentOS发布的RPM包集合

第三方组织发布的RPM包集合

用户自定义的RPM包集合

YUM工具概述2-1关于YUM命令

由软件包yum-3.4.3-150.el7.centos.noarch提供

用来访问YUM仓库,查询、下载及安装、卸载软件包

YUM的配置文件

基本设置:letc/yum.conf

仓库设置:/etclyum.repos.d/*.repo

日志文件:/varllog/yum.log

 

 

###检查

yum repolist

 

2.#配置ftp

主要是思路

服务器配置:

1)安装vsftpd服务端软件

2)创建并制作yum远程ftp站点的源

3)启动ftp服务

rpm -qa | grep vsftpd

yum -y install vsftpd

mkdir /var/ ftp/ centos7    #创建挂盘挂载目录

mount /dev/ sr0 /mnt      #镜像挂载

cp -rf /mnt/* /var/ftp/centos7/ &

mkdir /var/ ftp/other      #创建目录repodata数据文件

cd /var/ ftp/other/

createrepo -g /mnt/repodata/repomd.xml ./      #工具建立仓库数据文件

systemctl start vsftpd

lsof -i:21

systemctl start vsftpd

 

 

cd /etc/yum.repos.d/

mkdir bak.repo

mv CentOS-* bak.repo/

vim centos7.repo

客户端配置:

1)创建远程yum源的配置文件

2)yum安装软件验证结果

客户端配置:

vi /etc/ yum. repos.d/ ftp.repo

 

[root@kgc14 yum.repos.d]# cat centos7.repo

[ centos7]        #仓库类别

name=centos7    #仓库名称(说明)

baseurl=ftp://192.168.10.17/centos7    #URL访问路径

enabled=1         #启用此软件仓库

gpgcheck=1       #验证软件包的签名

gpgkey=ftp://192.168.10.17/centos7/RPM-GPG-KEY-Centos-7     #GPG公钥文件的位置

ls /var/ftp/centos7/

 

 

[other]

name=centos7

baseurl=ftp://192.168.10.17/ other

enabled=1     #启用此软件仓库

gpgcheck=0        #验证软件包的签名

 

 

 

 

yum history查看历史记录来找到它所依赖的包,然后删除,

: yuml history list   列出最近的历史

yum history info id   列出某次的详细信息,

yum history undo id  撤销某次更改

yum history help     查看帮助

yum history redo     加入序号重新执行序号里的操作

 

 

NFS共享存储服务

NFS (Network File System)网络文件系统

依赖于RPC(远端过程调用)

需安装nfs-utilsrpcbind软件包

系统服务:nfsrpcbind

共享配置文件:letc/exports

NFS (网络文件服务)(共享存储)

NFS是一种基于TCP/IP传输的网络文件系统协议,最初由 sun 公司开发。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源

NFS 也是NAS存储设备必然支持的一种协议

NAS存储:

NFS 服务的实现依赖于RPC ( Remote Process

Call,远端过程调用)机制,以完成远程到本地的映射过程。在Centos 7系统中,

需要安装

nfs-utilsrpcbind 软件包来提供NES共享服务,前者用于NFS

共享发布和访问,后者用于RPC支持。

手动加载NFS共享服务时,应该先启动rpcbind,再启动nfs

nfs端口号2049

RPC端口号111

 

特点:

来用TCP/IP传输网络文件

安全性低

简单易操作

适合局域网环境

 

实验步骤:

安装nfsrpcbind软件

修改配置文件设置共享

创建共享目录

开启服务

客户瑞验证共享目录可访问

 

 

rpm -q rpcbind nfs-utils

yum install-y nfs-utils rpcbind

 

vim /etc/exports     #NFS的配置文件为/etc/exports,文件内容默认为空(无任何共享

/opt/web 192.168.10.0/24 (rw,sync,no_root_squash)

常用选项:

rw      表示允许读写

ro       表示为只读

sync      表示同步写入到内存与硬盘中

no_root_squash

表示当客户机以root身份访问时赋予本地root权限(默认是root_squash),如果不加那么客户端无法在里面编辑或写入文件,因为默认以nfsnobody的权限

root_squash

表示客户机用root用户访问该共享目录时,将root用户映射成匿名用户

 

其它常用选项:

all_squash           所有访问用户都映射为匿名用户或用户组

async

将数据先保存在内存缓冲区中,必要时才写入磁盘,速度快但会丢失数据

subtree_check (默认)     若输出目录是一个子目录,则nfs服务器将检查其父目录的权限

no_subtree_check

即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效

 

mkdir -p /opt/web

systemctl start rpcbind    //需要先启动rpc服务,因为nfs要向rpc注册端口

systemctl start nfs

systemctl enable rpcbind

systemctl enable nfs

[root@localhost web]# netstat -anpu l grep rpc

0       0.0.0.0.0:111                    0.0.0.0:*

showmount -e 192.168.100.80

24525/rpcbind

 

[root@localhost web]# exportfs -v      //验证结果

/ web

192.168.245.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,no_root_squash,no_all_squash)

exportfs  -r                                     //刷新结果

[root@localhost web]# showmount -e localhost        //验证共亭

Export list for localhost :

/ web 192.168.245.0/24

 

 

切换到客户端:

[root@localhost ~]# yum install -y nfs-utils rpcbind

[root@localhost ~]# showmount -e 192.168.10.17      //客户端验证共享

Export list for 192.168.245.100:

/ web 192.168.245.0/24

[ root@localhost ~]#

[root@localhost ~] #

[ root@localhost ~] # yum -y install httpd

ls /var/www/

[root@localhost ~]# mount -t nfs 192.168.100.80:/opt/web /var/www/html/

//将共享目录挂载到网页目录

systemctl status firewalld

[root@localhost ~]# systemctl start httpd     //启动web服务

[ root@localhost ~]# curl 127.0.0.1          //成功访问主页内容hello world!

[root@localhost ~]# echo "this is kgc " >>/var/www / html/index.html

//客户端修改主页文件

[ root@localhost web]# cat index.html//服务器端会同步

this is kgc

nihao

同理可得,服务端写入或修改内容,客户端也会同步

umount /var/www/html/

df -h   #查看挂载情况

 

 

 

修改letc/fstab实现自动挂载:

192.168.10.17 : /opt/web     /var/ www/ html      nfs       defaults,_netdev o 0

defaults, _netdev说明这是一个网络设备

注意:NES 客户端与服务器端的耦合度是非常高的,如果客户端正在挂载使用,服务器端NFS服务突然间停掉了,那么在客户端就会出现执行 df -h命令卡死的现象。这个时候使用umount命令是无法直接卸载的,需要加上 -lf才能卸载

-1表示解除正在繁忙的文件系统,-f表示强制。

[root@localhost web]# systemctl stop nfsI        //服务器端模拟nfs挂掉

[root@localhost ~]# umount /var/www/html     //客户端卸载时会卡住

[root@localhost ~]# umount -lf /var/www/html   //lf参数成功卸载

 

其他nfs文件:

/var/ lib/nfs/etab          记录NFS分享出来的目录的完整权限设定值

/ var/ lib/ nfs/ xtab         记录曾经登录过的客户端信息

 

posted @   请叫喵总  阅读(48)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示