Linux-部署YUM仓库及NFS共享服务

news2024/11/15 18:06:50

系列文章目录

` 提示:仅用于个人学习,进行查漏补缺使用。
1.Linux-网络设置
2.Linux-DHCP服务、vsftp
3.Linux-DNS域名解析服务
4.Linux-远程访问及控制


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 系列文章目录
  • 前言
    • 一、YUM仓库服务
    • 二、NFS共享存储服务


前言

本章大概内容有:
       YUM仓库服务、NFS共享存储服务等

提示:以下是本篇文章正文内容,下面案例可供参考

一、YUM仓库服务

  • 1.1 YUM概述

    • YUM(Yellowdog Updater, Modified)是一个在Linux系统中广泛使用的软件包管理工具。
    • 它主要用于自动解决RPM包之间的依赖关系,并从软件仓库中下载和安装软件包。
    • YUM是一个命令行工具,它可以运行在所有的Red Hat Enterprise Linux(RHEL)变种以及基于Debian的系统中,如Ubuntu。
    • _PS:_epel源–》扩展源
      • epel一个第三方软件仓库。它由Fedora社区维护,提供了许多在官方仓库中没有的软件包。
  • 1.2 软件仓库的提供方式-》【清华大学镜像站-https://mirrors.tuna.tsinghua.edu.cn/

    • FTP服务:ftp://…
    • HTTP服务: http://…
    • 本地目录:file://…
  • 1.3 RPM软件包的来源

    • CentOS发布的RPM包集合
    • 第三方组织发布的RPM包集合
    • 用户自定义的RPM包集合
  • 1.4 Linux系统各家厂商用的安装源

    • centos7和rhel7默认使用的是yum仓库源,软件包的结尾是“.rpm”
    • centos8和rhel8可以使用dhf(是yum的衍生产品)
    • Ubuntu debian使用的是apt软件包是以“.deb”结尾
  • 1.5 yum命令的运用
    | 命令 | 功能描述 |
    | — | — |
    | yum install | 安装一个新的或已有的包。 |
    | yum update | 升级一个已安装的包。 |
    | yum upgrade | 具体软件更新 |
    | yum remove | 卸载一个包。 |
    | yum groupinfo | 显示关于一个组的详细信息 |
    | yum search | 在仓库中搜索一个包。 |
    | yum info | 显示一个包的信息。 |
    | yum list | 列出所有可安装的包,或所有已安装的包。 |
    | yum list installed | 显示所有已经安装的包。 |
    | yum list updates | 列出所有可以更新的包。 |
    | yum check-update | 检查是否有可用的更新包。 |
    | yum clean | 清理YUM缓存。 |
    | yum clean packages | 清除缓存目录下的软件包。 |
    | yum clean headers | 清除缓存目录下的 headers。 |
    | yum clean, yum clean all ( yum clean packages; yum clean oldheaders) | 清除缓存目录下的包及旧的headers。 |

**PS:**使用-y参数自动确认所有提示,使用-q参数安静地执行命令,不显示进度和信息。

  • 1.6 yum下载方式
    • 方式一、
yum install --downloadonly mariadb          ###仅下载
#下载下来的安装包都是放在 /var/cache/yum/x86_64/7/ 目录下
  • 方式二、
yumdownloader --destdir=/opt mariadb mariadb-server   
#yumdownloader 仅下载指定软件 包,参数 --destdir 是用来指定存放下载的安装包的目录
  • 方法三、
    • yum的缓存功能:默认情况下,yum会在安装完软件之后,自动清理掉安装包。但是也可以通过设置,让yum不清楚安装后的安装包。
vim  /etc/yum.conf 将配置中的keepcache=o  修改为 keepcache=1
###此时下载好的软件包默认安置在:/var/cache/yum
  • _**PS: **_yum相关的日志文件
/var/log/yum.log 
  • 1.7 yum 仓库源的三种搭建
    • 搭建yum本地源的方式**_ _**http://t.csdnimg.cn/Mu63Q
    • 本地源的地址可以修改成在线源
[test]
name=test
baseurl=https://mirrors.aliyun.com/epel/7Server/x86_64/
gpgcheck=0
enabled=1
  • 搭建本地,在线混合yum仓库 #两个yum源的名字要做区分
[test1]      
name=test1   
baseurl=file:///mnt
gpgcheck=0  
enabled=1  
priority=1 #优先级,数字越小,优先级越高

[test]
name=test
baseurl=https://mirrors.aliyun.com/epel/7Server/x86_64/
gpgcheck=0
enabled=1
priority=2
  • _1.8 搭建ftp yum仓库 _
    • 准备两台虚拟机,一台用作服务端,提供下载库,一台作为客户端,建立yum仓库获取下载库的资源,并关闭两台虚拟机的防火墙
    • 第一步:服务端安装 vsftpd服务
yum install -y vsftpd
  • 第二步:服务端在/var/ftp/ 下创建一个文件,并且挂载

该步骤涉及到ftp原理,用户远程访问时的,根目录就在 /var/ftp上,所以在此创建挂载目录

[root@localhost ~]# cd /var/ftp
[root@localhost ftp]# mkdir centos7
[root@localhost ftp]# mount /dev/cdrom  /var/ftp/centos7/
[root@localhost ftp]# systemctl start vsftpd 					#开启服务

image.png
image.png

  • 第三步:客户端搭建ftp yum仓库
[root@localhost ~]# cd  /etc/yum.repos.d
[root@localhost yum.repos.d]# mkdir repo.bak
[root@localhost yum.repos.d]# mv *.repo  ./repo.bak/
[root@localhost yum.repos.d]# vim local.repo
systemctl stop firewalld
setenforce 0

image.png
image.png


  • 1.9 下载的方式创建阿里云:
yum install wget	
搭建阿里云仓库 
第一步:将我们创建的local.repo文件移动到repo.bak目录下(也可以是别的备份目录)
第二步:将可以连外网的系统打开,下载镜像
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo 
直接使用即可

二、NFS共享存储服务

  • 概述:
    • NFS(Network FIle System)网络文件系统
      • 依赖于RPC(远程过程调用)
      • 需安装nfs-utils、rpcbind软件包
      • 系统服务:nfs、rpcbind
      • 共享配置文件: /etc/exports
    • NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本地目录一样访问远程服务器中的共享资源。
    • 对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议。但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用。
    • NFS 服务的实现依赖于 RPC(Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。
    • 所以需要安装 nfs-utils、rpcbind 软件包来提供 NFS共享服务,前者用于 NFS 共享发布和访问,后者用于 RPC 支持。
  • NFS 的配置文件
    • NFS 的配置文件为/etc/exports

格式为:
共享的目录位置 客户机地址(权限选项)

  • 在文件服务器使用NFS发布共享资源
    - 以下在服务器server上操作:
    • 1.安装 nfs-utils、rpcbind软件包
rpm -q rpcbind nfs-utils
yum -y install nfs-utils rpcbind
  • 2.设置共享目录
mkdir -p /opt/wwwroot
chmod 777 /opt/wwwroot

vim /etc/exports
/opt/wwwroot 192.168.233.0/24(rw,sync,no_root_squash)
#这里的192.168.223.0是网址,也可以改成设备名,不过需要加入到/dev/hosts目录中

/var/ftp/pub 192.168.4.11(ro) 192.168.4.110(rw)
/share *(rw,sync)										###将挂载点共享给客户端,后面的baseurl就可以用file


###以下将对上面出现的单词加以解释说明
客户机地址可以是主机名、IP 地址、网段地址,允许使用“*”、“?”通配符。
“rw” 表示允许读写,“ro” 表示为只读。
sync :表示同步写入到内存与硬盘中。
no_root_squash : 表示当客户机以root身份访问时赋予本地root权限(默认是root_squash)。
root_squash :表示客户机用root用户访问该共享目录时,将root用户映射成匿名用户。

其它常用选项
all_squash :所有访问用户都映射为匿名用户或用户组。
async :将数据先保存在内存缓冲区中,必要时才写入磁盘。
subtree_check(默认):若输出目录是一个子目录,则nfs服务器将检查其父目录的权限。
no_subtree_check :即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率。

image.png
image.png
image.png

  • 3.启动NFS服务程序
#手动加载NFS共享服务时,应该先启动rpcbind,再启动nfs
systemctl start rpcbind
systemctl start nfs
systemctl enable rpcbind --now
systemctl enable nfs	--now
grep rpcbind			#查看rpcbind端口是否开启,rpcbind服务默认使用tcp端口111
  • 4.查看本机发布的NFS共享目录
showmount -e

image.png

  • 在客户机中访问NFS共享资源
    - 以下是客户端操作
    • 5.安装nfs-utils、rpcbind软件包
rpm -q rpcbind nfs-utils
yum -y install nfs-utils rpcbind				###下载

systemctl start rpcbind
systemctl enable rpcbind --now
systemctl start nfs-utils
systemctl enable nfs-utils --now				###安装

showmount -e 10.0.0.10				###查看 NFS 服务器端共享了哪些目录
  • 6.手动挂载NFS共享目录
mkdir /myshare
mount 10.0.0.10:/opt/wwwroot /myshare

mount			#确认挂载结果,也可以使用df -Th

image.png
image.png

  • 7.设置自动挂载
vim /etc/fstab
192.168.233.21:/opt/wwwroot		/myshare	nfs defaults,_netdev	0  0

###_netdev :表示挂载设备需要网络

image.png

  • 8.强制卸载 NFS
如果服务器端NFS服务突然间停掉了,而客户端正在挂载使用时,在客户端就会出现执行 df -h 命令卡死的现象。这个时候直接使用umount 命令是无法直接卸载的,需要加上 -lf 选项才能卸载。
umount -lf /myshare

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

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

相关文章

【GIS系列】多源异构原始影像解析:策略模式与规则引擎的应用

作者:后端小肥肠 🍇 我写过的文章中的相关代码放到了gitee,地址:xfc-fdw-cloud: 公共解决方案 🍊 有疑问可私信或评论区联系我。 🥑 创作不易未经允许严禁转载。 1. 前言 在遥感技术和地球观测领域&#…

机器学习周报(8.19-8.25

文章目录 摘要Abstract1.PyTorch环境的配置及安装使用PyCharm配置环境安装配置jupyter 2.两个Python常用函数3.DataSet4.TensorBoard的使用绘制一幅坐标图使用tendorboard对一幅图片进行操作 5.torchvison中的transforms总结 摘要 在之前学习了一些机器学习相关理论之后&#…

【限时免费发放】2000+热门Scratch作品源码

欢迎访问小虎鲸Scratch资源站!在Scratch编程的学习过程中,优质的资源和灵感是至关重要的。因此,我们特别准备了这份【免费下载】的Scratch作品源码合集,包含超过2000个精选的Scratch项目源码,旨在为Scratch编程爱好者和…

Nginx+keepalived实现高可用

目录 一、准备工作 1、安装软件 二、配置master主服务器 1、修改nginx主配置文件 ​编辑 2、修改keepalived主配置文件 三、配置backup备服务器 四、配置节点服务器 1、配置第一个节点服务器 1.1、设置虚拟网卡 1.2、忽略ARP请求 1.3、安装并启动nginx软件 2、配置…

【STM32】SPI接口(非连续传输)

本篇博客重点在于标准库函数的理解与使用,搭建一个框架便于快速开发 目录 前言 SPI简介 IO口初始化 SPI配置 时钟使能 SPI初始化 SPI使能 数据接收与发送 硬件SPI代码 MySPI.h MySPI.c 前言 【通信协议】SPI总线-CSDN博客 本篇博客学习使用STM32的…

Expo 开发ReactNative 后切换 eas 账号

修改slug app.json中的sulg字段更新为新账号应用sulg 修改projectId app.json中的extra.eas.projectId字段更新为新账号应用projectId 退出账号: eas logout 重新登录: eas login

基于WEB的学生综合测评系统的设计与实现

第1章 绪 论 1.1 系统开发背景 随着计算机技术的不断发展,在现代化社会中,信息的处理越来越依赖计算机来完成。在没有测评系统之前,所有的信息记录都是由人工记录维护,不但不方便,还经常出错,有了测评系统就可以方便的对各种信息…

.net maui安卓开发中使用明文传输(一)

背景:最近在做一个pad上的项目,目的是执行每日点检功能(就是检查设备的各项保养指标);前期用HBuilder做了一个,但是现场的触摸屏选用的是TouchPie 安卓版本是6.0版本,上次开发的软件可以在安卓7.0上完美兼容,但由于触摸屏安卓版本太低不能兼容;询问厂商才知道这款触摸…

【Datawhale AI夏令营】从零上手CV竞赛Task1

【Datawhale AI夏令营】从零上手CV竞赛Task1 前言赛事官网学习任务TASK 1 前言 这个暑假我通过微信群关注到了【Datawhale AI夏令营】,并且记录我的代码学习以及调试的过程。 赛事官网 赛事官网:https://www.marsbigdata.com/competition/details?id…

RING总线(环形总线)Intel大小核的由来

想到Intel处理器,无一例外大家想到的就是现在的它具有大小核的结构,也就是性能核和效能核。这种结构的由来是由RING总线布局结构而诞生。ring总线(环形总线),这个名字经常出现在讨论普通消费级处理器的时候&#xff0c…

算法【Java】—— 二分查找

二分查找算法分析 二分查找算法其实也是对撞指针的另一种用法,左右两个指针分别指向数据的左右端点,然后双指针向中间移动。 朴素二分查找 上面这道题是朴素的二分查找算法,由于数据是有序的,我们可以从中间值入手 如果中间值大…

国货之光|暴雨机推出面向大模型训练的AI服务器

当前,“百模大战”带来了算力需求的爆发,尤其是以ChatGPT为代表的多模态AI大模型,‌其参数规模和训练数据量均达到了前所未有的规模。‌GPT-3.5、‌GPT-4等模型的参数规模突破了万亿级别,‌训练数据量达到了TB级别,‌这…

AI多模态模型架构之模态生成器:Modality Generator

〔探索AI的无限可能,微信关注“AIGCmagic”公众号,让AIGC科技点亮生活〕 本文作者:AIGCmagic社区 刘一手 前言 AI多模态大模型发展至今,每年都有非常优秀的工作产出,按照当前模型设计思路,多模态大模型的…

Ai+若依(定时任务):【01篇】

若依为定时任务功能提供方便友好的web界面,实现动态管理任务。 案例 每间隔5秒,控制台输出系统时间。 实现步骤: ①创建任务类 在服务 ==》ruoyi-quartz==》task==》MyTask package com.ruoyi.quartz.task;import org.springframework.stereotype.Component;@Component…

程序员修炼之道 10:并发

不记录,等于没读。 这里是我阅读《程序员修炼之道》这本书的记录和思考。 并发和并行代码曾经是很新奇的玩意,但现在已经是标配。 并发 :Concurrency,指的是两个或更多个代码段在执行过程中表现得像是在同时运行一样。 并行 &am…

AD的3D模型格式是什么

AD通常指的是Altium Designer,这是一款用于电子设计自动化的软件,主要用于电路板的设计。在Altium Designer中,3D模型主要用于PCB(印制电路板)设计中的可视化,以便设计师能够在三维空间中查看组件和板的布局…

21:【stm32】定时器二:输入捕获

输出捕获 1、输出捕获的简介2、输入捕获原理2.1、输入滤波2.2、信号选择2.3、CCx事件和CCx中断 3、标准库编程 1、输出捕获的简介 定时器通过通道捕获输入电平的变化,而通道有CH1~CH4,这4个通道。 我们设定对通道CH3的输入电平进行捕获。假如CH3突然捕获…

Java排序算法详解

在Java编程中,排序算法是数据处理和算法设计中的基础且重要的部分。它们广泛应用于各种场景,如数据库管理、数据分析、图形界面排序等。掌握几种常见的排序算法对于提升程序效率和优化性能至关重要。本文将详细解析几种经典的Java排序算法,包…

OpenGL笔记二十之深度检测概念

OpenGL笔记二十之深度检测概念 —— 2024-08-25 晚上 bilibili赵新政老师的教程看后笔记 code review! 文章目录 OpenGL笔记二十之深度检测概念1.课程PPT截图2.运行3.代码 1.课程PPT截图 2.运行 3.代码 关键部分 main.cpp #include <iostream>#include "glfra…

【逐行注释】三维EKF的MATLAB代码|附下载链接

文章目录 程序概况源代码与注释运行结果代码块解析 程序概况 基于MATLAB的EKF&#xff08;扩展卡尔曼滤波&#xff09;代码解析。状态转移和观测都是非线性的&#xff0c;也就是说会涉及到雅克比矩阵的求解。我尽量将模型设计复杂一点&#xff0c;便于拿到手以后改成自己想要的…