详论YUM仓库的部署和NFS共享服务

news2024/9/20 14:32:20

目录

一:YUM仓库服务

1.YUM概述

 2.安装源的准备

(1)软件仓库的提供方式

(2)RPM软件包的来源

(3)创建Centos7软件仓库

(4)在软件仓库加入非官方RPM包

3.访问YUM仓库

4.安装FTP yum源仓库

5.在线yum源安装 

 6.本地yum源和在线yum源一起使用

 7.yum源下载软件包的三种方法

7.1:方法一:通过缓存内容,修改配置文件下载

 7.2 :方法二:直接命令​编辑

 7.3 方法三:指定下载依赖包,根据索引表安装

 二:NFS共享存储服务

1.NFS介绍

2.NFS架构

 3.NFS原理

4.搭建过程

​ 5.一招解决服务卡死

 6.永久挂载

 总结:


一:YUM仓库服务

1.YUM概述

YUM(Yellow dog Updater Modified)

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

可以自动解决依赖关系

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

yum由仓库和客户端组成,也就是整个yum由两部分组成,所以yum可以存放在两台服务器上。也可以存放在一台服务器上。可以有官方来提供服务,也可以由第三方来提供,比如国内的阿里云,搜狐云,还有一些非盈利组织比如学校等。官方的源一般在国外,下载速度肯定有限,手动更改成国内的云可以大幅提升下载速

 2.安装源的准备

(1)软件仓库的提供方式

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

(2)RPM软件包的来源

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

(3)创建Centos7软件仓库

  • RPM包来自CentOS 7 DVD光盘
  • 通过FTP方法提供给客户机
mkdir -p /var/ftp/cenos7
 
cp -rf /media/cdrom/* /var/ftp/cenos7
 
rpm -ivh /media/cdrom/Packages/vsftpd-3.0.2-21.el7.x86_64.rpm
 
systemctl start vsftpd
 
systemctl enable vsftpd

(4)在软件仓库加入非官方RPM包

包括存在依赖关系的所有RPM包

使用createrepo工具建立仓库数据文件

mkdir /var/ftp/other
 
cd /var/ftp/other
 
createrepo -g /media/cdrom/repodata/repomd.xml ./

3.访问YUM仓库

为客户机指定YUM仓库的位置,配置文件:/etc/yum.repos.d/centos7.repo

4.安装FTP yum源仓库

(1)安装软件包,启动服务

 (2)创建目录,重新挂载光盘镜像,

 (3)创建fp源

 (4)格式化及更新软件,进行测试 

 (5)把这台主机作为服务端,把ftp源发给客户端,然后客户端就可以用服务端的ftp源下载

 注:ftp源可以一对多,给多台主机提供ftp源,提供下载,但是缺点是软件少,版本低

5.在线yum源安装 

(1)国内yum源网站

 (2)在线安装阿里云yum源到指定目录中

 (3)更换yum源后下载测试

 6.本地yum源和在线yum源一起使用

(1)下载yum-plugin-priorities,这个插件就是设置优先级的,设定优先使用本地yum源或者在线yum源

(2)查看是否安装插件

 (3)从网站上下载一个epel-7.repo的在线yum源的扩展包(这个不唯一)

 

 (4)编辑扩展包,配置优先级

vim epel-7.repo

 将上面的文件复制到下面文件中

 并在他们的配置文件下面设置priority(优先级,数字越小优先级更高),如上述我们把在线yum源的优先级为1,把在线yum源优先级设为2。在启动之前要把之前下载的priorities.conf(设置优先级)打开。

 (5)下载测试

下载nginx软件包,很显然本地yum源没有,用的是epel扩展源(优先级是2比本地yum源要低)

 7.yum源下载软件包的三种方法

7.1:方法一:通过缓存内容,修改配置文件下载

(1)修改配置文件

其实yum下载下来的软件包,会在安装之后删除掉,要想不删除掉,需要改一个yum的配置文件

vim /etc/yum.conf

 (2)下载的包在/opt/yum目录,查找软件包

 [root@localhost yum]# find /opt/yum/ -name "*.rpm" -exec cp {} pkgs/ \;

 7.2 :方法二:直接命令

 7.3 方法三:指定下载依赖包,根据索引表安装

 

 二:NFS共享存储服务

1.NFS介绍

NFS就是Network File System的缩写,它最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。NFS服务器可以允许NFS客户端将远端NFS服务器端的共享目录挂载到本地的NFS客户端中。在本地的NFS客户端的机器看来,NFS服务器端共享的目录就好像自己的磁盘分区和目录一样,在使用上相当便利。

NFS一般用来存储共享视频,图片等静态数据(用户上传的文件在NFS存储服务器中。)

2.NFS架构

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

 3.NFS原理

 

1首先服务器端启动RPC服务,并开启111端口

2服务器端启动NFS服务,并向RPC注册端口信息

3客户端启动RPC(rpcbind服务),向服务端的RPC(rpcbind)服务请求服务端的NFS端口

4服务端的RPC(rpcbind)服务反馈NFS端口信息给客户端。

5客户端通过获取的NFS端口来建立和服务端的NFS连接并进行数据的传输。

注意:在启动NFS服务器之前,首先要启动RPC服务(即rpcbind服务),否则NFS 服务器就无法向RPC服务区注册,另外,如果RPC服务重新启动,原来已经注册好的NFS端口数据就会全部丢失。因此此时RPC服务管理的NFS程序也要重新启动以重新向RPC注册。

特别注意:一般修改NFS配置文档后,是不需要重启NFS的,直接在命令执行systemctl reload nfs或exportfs -rv即可使修改的/etc/exports生效可以执行rpcinfo命令查看在rpc服务中注册的信息。

4.搭建过程

(1)关闭防火墙和selinux,下载软件包

systemctl stop firewalld#关闭防火墙和selinux
setenforce 0
yum install nfs-utils.x86_64 rpcbind -y  #安装软件包

 (2)创建共享目录

 vim /etc/exports

ro	只读
rw	读写
root_squash	当NFS客户端以root访问时,映射为NFS服务器的匿名用户
no_root_quash	当NFS客户端以root访问时,映射为NFS服务器的root用户
all_squash	无论NFS客户端使用什么身份登录,都映射为NFS服务器的匿名用户
sync	同时将数据写入到内存与硬盘中,保证不丢失数据
async	优先将数据保存到内存,然后再写入硬盘;这样效率更高,但可能会丢失数据

(3 )启动NFS服务

###优先启动rpcbind,否则客户端NFS服务可能会找不到服务端的NFS
systemctl start rpcbind
systemctl start nfs
###开机自动启动该服务
systemctl enable rpcbind
systemctl enable nfs

 (4)查看共享目录

进入客户端关闭防火墙,将共享目录挂载到指定目录下

  (5)在客户端无法执行写入文件,因为服务端没给权限,所以要把服务端的目录权限提升

 

 

 (6)但是root用户会降权到匿名用户

(7)提升权限方法2

先解挂,修改服务端的修改服务端的/etc/exports文件,把(rw)修改为(rw,no_root_squash),只针对root用户

 客户端先解挂,在服务器配置好后,重新挂载,在创建文件,这时客户端的属主和属组都成了root

(8) 提升权限方法3

指定UID和GID号,无论是什么用户都会被降为指定用户

 5.一招解决服务卡死

服务端共享完目录后,客户端解挂再挂载会有一段时间卡死,所以我们用exportfs -在线共享目录

客户端查看

 

注:如果出现挂载卡死现象,可以用umount  挂载目录    -lf命令,强制解挂

 6.永久挂载

vim /etc/fstab
 mount  -a    挂载/etc/fstab中的设置

 

 总结:

nfs 网络文件共享服务
1)安装软件,启动服务
yum   insatll   nfs-utils           rpcbind

          服务     nfc(2049)   rpcbind(111)

 systemctl start rpcbind

 systemctl start nfs

 systemctl enable rpcbind

 systemctl enable nfs

注:重启先启动rpcbind,后启动nfs,顺序不可乱

2)准备共享目录
先准备硬盘/LVM/RAID,格式化后挂载到需要共享的目录(比如/share),并设置相应的权限

chmod 777 /share   #如果无需客户端写入文件则省略

3)修改共享配置文件
vim /etc/exports

共享目录 客户端地址/网段(共享参数选项,……)

……

4)发布共享目录
systemctl restart nfs

或者

exportfs -avr

showmount -e 测试查看

服务端别忘记关闭防火墙

5)客户端挂载使用
showmount -e 服务端IP

mount [-t nfs] 服务端IP:共享目录 本地挂载点

vim /etc/fstab

服务端IP:共享目录 本地挂载点 nfs defaults,_netdev 0 0

如客户端挂载目录出现卡死现象

umount -lf

 

 

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

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

相关文章

商品页面翻页功能--购物车拓展

之前我们在mvc练习中曾经写过翻页功能,现在我们给购物车产品显示界面也加一个 1、把productlist中dao的sql语句做出修改,并传递需要用到的参数 再来一个返回product总数的方法 2、 对productlist的servlet拓展相关操作,准备好翻页的功能 3、…

访问图像像素

Opencv访问图像像素 预备知识: 图像矩阵的大小取决于所用的颜色模型(或者说通道数),灰度图矩阵如下: 多通道图像,如RGB颜色模型的矩阵如下: 注:opencv的通道顺序是BGR,而不是RGB 访问图像中像素方法: import num…

新建虚拟机更改ip(连接xshell)

# 查看网络设备 [rootcentos79 ~]# nmcli device DEVICE TYPE STATE CONNECTION ens32 ethernet 已连接 ens32 ens33 ethernet 已连接 ens33 virbr0 bridge 已连接 virbr0 lo loopback 未托管 -- # 查看…

Unity之OpenXR+XR Interaction Toolkit实现 抓取物体

前言 我们今天来说一下如何使用XR Interaction Toolkit来实现和3D物体的交互之:抓取,简单说就是通过VR手柄拿起来一个物体。 二.准备工作 有了前两篇的配置介绍,我们就不在详细说明这些了,大家自行复习 Unity之OpenXRXR Interaction Toolk…

PyCharm连接远程服务器配置过程

目录 背景 一、建立远程服务器连接 1.创建远程连接 2.进行本地项目与远程项目之间的文夹路径映射 3.设置自动上传项目(如有需要,可设置) 4.验证是否连接成功(调出服务器的文件目录) 二、本地配置Python解释器 …

【社区图书馆】-《科技服务与价值链》总结

【为什么研究价值链】 价值链及价值链协同体系是现代产业集群的核心枢纽,是推进城市群及产业集群化、服务化、生态化发展的纽带。因而推进价值链协同,创新发展价值链协同业务科技资源体系,既是科技服务业创新的重要方向,也是重塑生…

NetApp ONTAP: 企业级数据管理软件,为无缝混合云奠定基础

为何选择 NetApp ONTAP 进行企业数据管理 NetApp ONTAP 数据管理软件可帮助您快速应对新的业务挑战,简化日常活动并给您的团队留下深刻印象。无论您在内部环境和云中有着怎样的数据管理需求,ONTAP 都能满足您。 1、支持当今的数据驱动型企业 当今的企…

升级底座、打破壁垒、消灭报销,让业财融合一触即发!

一个平台 一个入口 一站服务 以移动互联网、云计算、大数据、人工智能、5G与物联网、区块链为代表的新一代信息通信技术(ICT)的集群式、交互式发展,驱动企业进入数智化新阶。商业创新是打造企业竞争力的必然选择,在数字化转型大潮…

p68 内网安全-域横向 PTHPTKPTT 哈希票据传递

数据来源 ​ ​ Kerberos 协议具体工作方法,在域中,简要介绍一下: 客户机将明文密码进行 NTLM 哈希,然后和时间戳一起加密(使用krbtgt 密码 hash 作为密钥),发送给 kdc(域控),kdc 对用户进行检…

C语言从入门到精通第11天(数组的基本操作)

数组的基本操作 数组的概念一维数组二维数组 数组的概念 在程序设计中,为了方便处理数据把具有相同类型的若干变量按有序形式集合在一起,这些按序排列的同类数据元素的集合称为数组。 在C语言中,数组属于构造数据类型,一个数组可…

聊聊如何通过APT+AST来实现AOP功能

前言 如果有使用过spring aop功能的小伙伴,应该都会知道spring aop主要是通过动态代理在运行时,对业务进行切面拦截操作。今天我们就来实现一下如何通过APTAST在编译期时实现AOP功能。不过在此之前先科普一下APT和AST相关内容 APT(注解处理…

Nginx的重写功能

一、常用的Nginx 正则表达式 字符涵义以及示例^匹配输入字符串的起始位置$匹配输入字符串的结束位置*匹配前面的字符零次或多次;如“ol*”能匹配“o”及“ol”、“oll”匹配前面的字符一次或多次;如“ol”能匹配“ol”及“oll”、“olll”,但…

智能建筑中电力监控系统的应用与产品选型

摘要:近几十年,中国现代化经济不断发展,计算机技术、信息技术等相关产业也取得了飞跃性的进步。随着商业、生活以及公共建筑不断提高智能管理和节能的要求,电力监控系统开始逐渐渗入人们的日常生活,发挥着不可替代的作…

Graphql中我们应该用什么姿势来实现Resolver?

Graphql中我们应该用什么姿势来实现Resolver? Graphql中我们应该用什么姿势来实现Resolver? 前言设计数据库定义 Type实现 Resolver按需组装查询语句请求数据库GraphQLResolveInfo附录 前言 我最近在用 Graphql 来弥补原先写的 RESTFUL 接口的一些短板。在实践过程中遇到…

实战Websocket

实战Websocket:从入门到自闭 作为前端开发人员,我们经常需要使用 Websocket 实现实时通信功能,如聊天室、实时数据展示、游戏等。近期我在一家公司实习工作中,也遇到了使用 Websocket 的场景,所以开始了解 Websocket …

第四章 使用Maven:IDEA环境

1、创建 Project2、开启自动导入 TIP 各个 IDEA 不同版本在具体操作方面存在一定差异,这里我们以 2019.3.3 版本为例进行演示。其它版本大家灵活变通即可。 第一节 创建父工程 创建 Project 开启自动导入 创建 Project 后,IDEA 会自动弹出下面提示…

有史以来第一次利用 Kubernetes RBAC 攻击后门集群

我们最近发现了有史以来第一个证据,表明攻击者正在野外利用 Kubernetes (K8s) 基于角色的访问控制 (RBAC) 创建后门。 攻击者还部署了 DaemonSets 来接管和劫持他们攻击的 K8s 集群的资源。我们的研究表明,该活动正在积极针对至少 60 个野外集群。 这…

026:Mapbox GL加载矢量切片数据源

第026个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+mapbox中加载矢量切片数据源。将矢量源添加到地图。使用其 tileset URL(mapbox:// + tileset ID)添加任何 Mapbox 托管的 tileset。 直接复制下面的 vue+mapbox源代码,操作2分钟即可运行实现效果 文章目录 示例…

python@可变对象和不可变对象@按值传递和引用传递@python运行可视化工具

文章目录 可变对象和不可变对象🎈可视化工具🎈可变对象和idegeg变量名和内存地址🎈函数调用对参数的修改😂Note 按值传递vs引用传递note🎈如何借助函数修改外部变量的值?Note 可变对象和不可变对象🎈 在Py…

这些不可不知的JVM知识

JVM是面试中必问的部分,本文通过思维导图以面向面试的角度整理JVM中不可不知的知识。 先上图: JVM必备知识 1、JVM基本概念 1.1、JVM是什么 JVM 的全称是 「Java Virtual Machine」,也就是我们耳熟能详的 Java 虚拟机。 JVM具备着计算机的…