部署YUM仓库及NFS共享功能

目录

一、YUM仓库服务

1、YUM仓库概述

2、准备安装源

2.1、软件仓库的提供方式

2.2、 RPM软件包的来源

3、YUM主配置文件 

4、软件卸载

5、YUM源的提供方式

5.1、配置本地YUM源仓库

5.2、配置ftp源

5.2.1、服务端配置

5.2.2、客户端配置

二、NFS共享存储

1、NFS基本概述

2、NFS特点

3、为什么使用NFS

 4、NFS实现原理

三、NFS配置

1、服务端操作

1.1、安装nfs和rpcbind软件

1.2、修改配置文件设置共享

1.3、启动 NFS 服务程序

1.4、查看 NFS 共享目录

2、客户端操作

2.1、安装 nfs-utils和rpcbind 软件包

2.2、挂载共享目录

2.3、修改/etc/fstab实现自动挂载

2.4、卸载NFS


一、YUM仓库服务

1、YUM仓库概述

  • 基于RPM包构建的软件更新机制
  • 可以自动解决依赖关系
  • 所有软件包由集中的YUM软件仓库提供

2、准备安装源

2.1、软件仓库的提供方式

  • FTP服务:ftp://..
  • HTTP服务:http://..
  • 本地目录:file://....

2.2、 RPM软件包的来源

  • Centos发布的RPM包集合
  • 第三方组织发布的RPM包集合
  • 用户自定义的RPM包集合

3、YUM主配置文件 

cat /etc/yum.conf                  #查看主配置文件

4、软件卸载

yum remove <软件名>                                 #卸载软件包
yum groupremove <包组名>                        #卸载同软件包

5、YUM源的提供方式

5.1、配置本地YUM源仓库

cd /etc/yum.repos.d/                                        #切换至YUM仓库配置目录
vim local.repo                                                  #编辑或创建YUM仓库配置文件
mount /dev/sr0 /mnt/                                       #挂载设备
yum clean all                                                    #清理YUM缓存
yum makecache                                                #重建YUM缓存
 yum repolist                                                   #列出YUM仓库及其状态

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo
[root@localhost yum.repos.d]# mkdir bak
[root@localhost yum.repos.d]# mv *.repo bak/
[root@localhost yum.repos.d]# vim local.repo
[root@localhost yum.repos.d]# 
[root@localhost yum.repos.d]# mount /dev/sr0 /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost yum.repos.d]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   16G  4.3G   12G   28% /
devtmpfs                 1.9G     0  1.9G    0% /dev
tmpfs                    1.9G     0  1.9G    0% /dev/shm
tmpfs                    1.9G  9.1M  1.9G    1% /run
tmpfs                    1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1                497M  172M  326M   35% /boot
tmpfs                    378M  4.0K  378M    1% /run/user/42
tmpfs                    378M   24K  378M    1% /run/user/0
/dev/sr0                 4.3G  4.3G     0  100% /mnt
[root@localhost yum.repos.d]# yum clean all && yum makecache
已加载插件:fastestmirror, langpacks
正在清理软件源: local
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
Cleaning up list of fastest mirrors
已加载插件:fastestmirror, langpacks
local                                                                                                            | 3.6 kB  00:00:00     
(1/4): local/group_gz                                                                                            | 156 kB  00:00:00     
(2/4): local/filelists_db                                                                                        | 3.1 MB  00:00:00     
(3/4): local/primary_db                                                                                          | 3.1 MB  00:00:00     
(4/4): local/other_db                                                                                            | 1.2 MB  00:00:00     
Determining fastest mirrors
元数据缓存已建立
[root@localhost yum.repos.d]# yum repolist 
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
源标识                                                            源名称                                                           状态
local                                                             local                                                            3,894
repolist: 3,894

5.2、配置ftp源

5.2.1、服务端配置

rpm -qa |grep vsftpd                                                   #查询已安装的vsftpd软件包
yum install -y vsftpd                                                    #安装vsftpd软件包
mkdir /var/ftp/centos7                                                  #创建目录/var/ftp/centos7
mount /dev/sr0  /mnt/                                                  #挂载设备到/mnt/目录
 cp -rf /mnt/* /var/ftp/centos7/ &         #复制/mnt/下的所有文件到/var/ftp/centos7/目录中
mkdir /var/ftp/other                                                     #创建目录/var/ftp/other
 cd /var/ftp/other/                                                          #进入目录/var/ftp/other
createrepo -g /mnt/repodata//repomd.xml  ./                #使用createrepo创建YUM仓库
systemctl start vsftpd                                                      #启动vsftpd服务

[root@localhost ~]# rpm -qa |grep vsftpd
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# yum install -y vsftpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 vsftpd.x86_64.0.3.0.2-29.el7_9 将被 安装
--> 解决依赖关系完成依赖关系解决==========================================================================Package       架构          版本                    源              大小
==========================================================================
正在安装:vsftpd        x86_64        3.0.2-29.el7_9          updates        173 k事务概要
==========================================================================
安装  1 软件包总下载量:173 k
安装大小:353 k
Downloading packages:
vsftpd-3.0.2-29.el7_9.x86_64.rpm                     | 173 kB   00:05     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction正在安装    : vsftpd-3.0.2-29.el7_9.x86_64                          1/1 验证中      : vsftpd-3.0.2-29.el7_9.x86_64                          1/1 已安装:vsftpd.x86_64 0:3.0.2-29.el7_9                                          完毕!
[root@localhost ~]# mkdir /var/ftp/centos7
[root@localhost ~]# 
[root@localhost ~]# mount /dev/sr0  /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]# 
[root@localhost ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   26G  4.0G   22G   16% /
devtmpfs                 1.9G     0  1.9G    0% /dev
tmpfs                    1.9G     0  1.9G    0% /dev/shm
tmpfs                    1.9G  9.2M  1.9G    1% /run
tmpfs                    1.9G     0  1.9G    0% /sys/fs/cgroup
/dev/sda1                497M  172M  326M   35% /boot
tmpfs                    378M  4.0K  378M    1% /run/user/42
tmpfs                    378M   32K  378M    1% /run/user/0
/dev/sr0                 4.3G  4.3G     0  100% /mnt
[root@localhost ~]# cp -rf /mnt/* /var/ftp/centos7/ &
[1] 14633
[root@localhost ~]# 
[root@localhost ~]# mkdir /var/ftp/other
[root@localhost ~]# 
[root@localhost ~]# cd /var/ftp/other/
[root@localhost other]# 
[root@localhost other]# 
[root@localhost other]# createrepo -g /mnt/repodata//repomd.xml  ./
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[1]+  完成                  cp -i -rf /mnt/* /var/ftp/centos7/(工作目录:~)
(当前工作目录:/var/ftp/other)
[root@localhost other]# 
[root@localhost other]# systemctl start vsftpd
5.2.2、客户端配置

cd /etc/yum.repos.d/
mkdir bak
mv *.repo bak/
mount /dev/sr0 /mnt/
vim centos7.repo

yum clean all
yum makecache
yum repolist 

  • vim编辑内容

二、NFS共享存储

1、NFS基本概述

NFS(Network File System,网络文件系统)是一种允许在网络上共享文件系统资源的协议。它允许一个计算机系统通过网络透明地访问远程文件系统中的文件

  • 依赖于RPC(远端过程调用)
  • 需安装nfs-utils、rpcbind软件包
  • 系统服务:nfs、rpcbind
  • 共享配置文件:/etc/exports

2、NFS特点

  • 采用TCP/IP传输网络文件
  • 安全性低
  • 简单易操作
  • 适合局域网环境

常见的文件服务器有NFS、GFS(gluster fs)、FastDFS NFS系统和Windows网络共享、网络驱动器类 似, 只不过windows用于局域网, NFS用于企业集群架构中, 如果是大型网站,会用到更复杂的分布 式文件系统FastDFS、glusterfs、HDFS、ceph。

3、为什么使用NFS

实现多台服务器之间数据共享

实现多台服务器之间数据一致

 4、NFS实现原理

三、NFS配置

1、服务端操作

1.1、安装nfs和rpcbind软件

rpm -q rpcbind nfs-utils          #查看是否安装软件

yum -y install nfs-utils rpcbind          #安装软件

1.2、修改配置文件设置共享

mkdir  /opt/web                  #创建共享文件夹

vim /etc/exports                      #修改配置文件

   /opt/web 172.16.88.0/24(rw,sync,no_squash)

 

/opt/web: 这是指定的共享目录路径,即共享给客户端的文件系统位置。

172.16.88.0/24: 这是指定可以访问该共享的网络地址范围。172.16.88.0/24表示从172.16.88.0172.16.88.255的所有IP地址,共计256个地址。在这个例子中,所有属于这个网段的主机都可以访问共享。

(rw,sync,no_squash): 这是NFS共享的权限和选项设置的部分。

  • rw: 表示客户端拥有读写权限,可以对共享中的文件进行读写操作。
  • sync: 表示数据同步写入。当客户端写入数据时,服务器将等待数据写入磁盘后再返回成功消息,以确保数据的持久性。这可能会降低性能,但可以提高数据的一致性和可靠性。
  • no_squash: NFS默认会将客户端的root用户权限映射为匿名用户权限,这个选项禁止了这种映射。也就是说,客户端使用的是自己的用户权限而不是匿名用户权限。 

1.3、启动 NFS 服务程序

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

netstat -anpu |grep  111        
netstat -anpu |grep  2049

[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# 
[root@localhost ~]# systemctl start rpcbind
[root@localhost ~]# systemctl start nfs
[root@localhost ~]# systemctl enable rpcbind
[root@localhost ~]# systemctl enable nfs
Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.
[root@localhost ~]# 
[root@localhost ~]# netstat -anptu |grep 111
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
udp        0      0 0.0.0.0:111             0.0.0.0:*                           14596/rpcbind       
udp6       0      0 :::111                  :::*                                14596/rpcbind       
[root@localhost ~]# netstat -anptu |grep 2049
tcp        0      0 0.0.0.0:2049            0.0.0.0:*               LISTEN      -                   
tcp6       0      0 :::2049                 :::*                    LISTEN      -                   
udp        0      0 0.0.0.0:2049            0.0.0.0:*                           -                   
udp6       0      0 :::2049                 :::*                                -    

1.4、查看 NFS 共享目录

exportfs -rv                            #验证结果
showmount -e

2、客户端操作

2.1、安装 nfs-utils和rpcbind 软件包

rpm -q  nfs-utils   rpcbind 
yum -y install nfs-utils rpcbind

showmount -e 172.16.88.22

2.2、挂载共享目录

mount -t nfs 192.168.10.120:/opt/web/   /mnt         

2.3、修改/etc/fstab实现自动挂载

vim /etc/fstab

2.4、卸载NFS

NFS 客户端与服务器端的耦合度是非常高的,如果客户端正在挂载使用,服务器端 NFS 服务突然间停 掉了,那么在客户端就会出现执行 df -h 命令卡死的现象。这个时候使用 umount 命令是无法直接卸载 的,需要加上 -lf 才能卸载 -l 表示解除正在繁忙的文件系统,-f 表示强制。

  • 服务端会卡住

  •  解决办法

umount -lf           强制卸载

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/45310.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Git 删除包含敏感数据的历史记录及敏感文件

环境 Windows 10 Git 2.41.0 首先备份你需要删除的文件&#xff08;如果还需要的话&#xff09;&#xff0c;因为命令会将本地也删除将项目中修改的内容撤回或直接提交到仓库中&#xff08;有修改内容无法提交&#xff09; 会提示Cannot rewrite branches: You have unstaged …

免费流程图工具 Draw.io Integration安装使用

Draw.io Integration 是 VS Code 上的一个插件&#xff0c;允许用户在 VS Code 中直接创建、编辑和查看 Draw.io 图表&#xff0c;如流程图、UML 图等。以下是 Draw.io Integration 插件在 VS Code 中的安装步骤&#xff1a; 安装步骤 确保 VS Code 已安装&#xff1a; 如果你…

YOLOv10训练自己的数据集(交通标志检测)

YOLOv10训练自己的数据集&#xff08;交通标志检测&#xff09; 前言相关介绍前提条件实验环境安装环境项目地址LinuxWindows 使用YOLOv10训练自己的数据集进行交通标志检测准备数据进行训练进行预测进行验证 参考文献 前言 由于本人水平有限&#xff0c;难免出现错漏&#xff…

每日一道算法题 204. 计数质数

题目 204. 计数质数 - 力扣&#xff08;LeetCode&#xff09; Python class Solution:def countPrimes(self, n: int) -> int:"""质数又称为素数&#xff0c;是一个大于1的自然数&#xff0c;除了1和它自身外&#xff0c;不能被其他自然数整除的数叫做质数…

【C++题解】1156 - 排除异形基因

问题&#xff1a;1156 - 排除异形基因 类型&#xff1a;数组基础 题目描述&#xff1a; 神舟号飞船在完成宇宙探险任务回到地球后&#xff0c;宇航员张三感觉身体不太舒服&#xff0c;去了医院检查&#xff0c;医生诊断结果&#xff1a;张三体内基因已被改变&#xff0c;原有…

Vscode连接存在私钥的远程服务器

编辑配置文件 # Read more about SSH config files: https://linux.die.net/man/5/ssh_configHost 172.17.x.xxxHostName 172.17.x.xxxUser xxxIdentityFile C:\Users\xxx\.ssh\xxx.pem会出现报错&#xff1a; Permissions 0644 for xxxx are too open. It is required that …

XML Schema 指示器

XML Schema 指示器 1. 引言 XML Schema 是一种用于定义 XML 文档结构和内容的语言。它提供了一种强大的方式来描述 XML 文档中允许的元素、属性和数据类型。XML Schema 指示器是在 XML Schema 定义中使用的一些特殊元素和属性,它们用于指示 XML 处理器如何解析和验证 XML 文…

vue-router路由路径

在配置 vue-router 路由时&#xff0c;path: ‘search’ 和 path: ‘/search’ 有不同的行为&#xff1a; 1.path: ‘search’: 这是一个相对路径。相对路径意味着这个路径是相对于父路径的。如果父路径是 /emergency&#xff0c;那么这个路由的完整路径是 /emergency/search…

QT 报错C2872: “byte“: 不明确的符号

这个错误提示是因为 byte 这个符号不明确&#xff0c;这种情况是由于代码中同时包含了多个同名符号的定义&#xff0c;编译器无法区分&#xff0c;从而导致错误。在这个问题中&#xff0c;可能是由于使用了 Winsock2.h 头文件中定义的 byte 宏与其他地方定义的 byte 符号重名&a…

Android Bitmap

在Android开发中&#xff0c;位图&#xff08;Bitmap&#xff09;是一个非常重要的图形处理对象&#xff0c;它用于在内存中存储图像数据。以下是关于Android中位图使用的一些关键点和方法&#xff1a; 一、获取位图 从资源文件中获取&#xff1a; 使用BitmapFactory类&#…

头歌资源库(24)插入加号

一、 问题描述 二、算法思想 可以使用动态规划来解决这个问题。 首先将数字串拆分为多个数字&#xff0c;用一个数组nums来存储每个数字。例如&#xff0c;数字串79846会被拆分为数组[7, 9, 8, 4, 6]。 然后定义一个二维数组dp&#xff0c;其中dp[i][j]表示在前i个数字中插入…

Java异常体系、UncaughtExceptionHandler、Spring MVC统一异常处理、Spring Boot统一异常处理

概述 所有异常都是继承自java.lang.Throwable类&#xff0c;Throwable有两个直接子类&#xff0c;Error和Exception。 Error用来表示程序底层或硬件有关的错误&#xff0c;这种错误和程序本身无关&#xff0c;如常见的NoClassDefFoundError。这种异常和程序本身无关&#xff0…

Java网络模型全扫盲

概述 讲述ava层面NIO基础知识&#xff0c;用作基础回顾所用 1. NIO概述 ​ 在Java中&#xff0c;NIO&#xff08;Non-blocking I/O 或 New I/O&#xff09;是Java SE 1.4及后续版本中引入的一套新的输入/输出操作API。 ​ 它与传统的IO模型相比&#xff0c;提供了更高的效率和…

【算法】二叉树-迭代法实现前后中序遍历

递归的实现就是:每一次递归调用都会把函数的局部变量&#xff0c;参数值和返回地址等压入调用栈中&#xff0c;然后递归返回的时候&#xff0c;从栈顶弹出上一次递归的各项参数&#xff0c;这就是递归为什么可以返回上一层位置的原因 可以用栈实现二叉树的前中后序遍历 1. 前序…

FastAPI 学习之路(四十四)WebSockets

我们之前的分析都是基于http的请求&#xff0c;那么如果是websockets可以支持吗&#xff0c;答案是可以的&#xff0c;我们来看下是如何实现的。 from fastapi import WebSocket, FastAPI from fastapi.responses import HTMLResponseapp FastAPI()html """&…

k8s NetworkPolicy

Namespace 隔离 默认情况下&#xff0c;所有 Pod 之间是全通的。每个 Namespace 可以配置独立的网络策略&#xff0c;来 隔离 Pod 之间的流量。 v1.7 版本通过创建匹配所有 Pod 的 Network Policy 来作为默认的网络策略 默认拒绝所有 Pod 之间 Ingress 通信 apiVersion: …

【趣味数学】求阴影部分面积

题 解法1: 中位线法 既然是中点&#xff0c;就可以用起来&#xff0c;横着不行&#xff0c;竖着来&#xff0c;扩展做辅助线 E是中点S&#xff08;AED) 1/4 S(ABCD) 6 做图中辅助延长线&#xff0c;因为E中点&#xff0c;所以S&#xff08;MEB&#xff09;S(AED) 6 同理E也是…

nfs共享存储配置

目录 一.存储和NFS共享 1.存储的类型分为三种 2.三种存储架构的应用场景 二.NFS共享存储服务 1.NFS简介 2.NFS存储 3.NFS原理 4.软件介绍 三.搭建NFS服务器 1.搭建 2.使用权限&#xff1a; 读写权限 属主&#xff0c;属组权限 客户端创建文件指向同一属主和属组 …

Android使用AndServer在安卓设备上搭建服务端(Java)(Kotlin)两种写法

一直都是通过OkHttp远程服务端进行数据交互&#xff0c;突发奇想能不能也通过OkHttp在局域网的情况下对两个安卓设备或者手机进行数据交互呢&#xff1f; 这样一方安卓设备要当做服务端与另一个安卓设备通过OkHttp进行数据交互即可 当然还可以通过 socket 和 ServerSocket 通…

大数据面试题之Hudi(1)

目录 Hudi的发展历史 描述Hudi的容错和恢复机制 Hudi的核心优势是&#xff1f; Hudi如何处理数据的变更&#xff1f; Hudi如何保证数据的一致性和可靠性&#xff1f; Hudi如何支持数据的多版本并发控制&#xff08;MVCC&#xff09;&#xff1f; Hudi的数据摄取&#xff…