当前位置: 首页 > news >正文

Linux—yum仓库及NFS网络共享服务

一.yum仓库服务

1.1yum介绍

学习YUM软件仓库,可以完成安装、卸载、自动升级rpm 软件包等任务,能够自动查找并解决rpm包之间的依赖关系,而无须管理员逐个、手工地去安装每个rpm包,使管理员在维护大量Linux服务器时更加轻松自如。特别是在拥有大量Linux主机的本地网络中,构建一台“源”服务器可以大大缓解软件安装、升级等对Internet的依赖

要成功使用YM机制来更新系统和软件,需要有一个包含各种rpm“安裂包文件及其依赖软件的软件仓库(repository),提供软件仓库的服务器也称为"源“服务器。在客户机中只要正确指定软件仓库的地址等信息,就可以通过对应的源服务器来安装或更新软件

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

可以自动解决依赖关系

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

1.2配置本地源仓库

mount    /dev/sr0     /mnt 把光盘挂载到   /mnt目录下

】#  cd /etc/yum.repos.d/        #yum仓库的配置文件路径

】#  vim local.repo           #配置yum仓库

[local] 仓库类别

name=local 仓库名称

baseurl=file:///mnt 指定URL 访问路径为光盘挂载目录

enabled=1 开启此yum源,此为默认项,可省略

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

】#  yum clean all && yum makecache 清理yum缓存并更新

】#  yum repolist 检查

1.3yum常用的操作命令

】#  yum -y install 软件名           #安装、升级软件包, “-y”选项表示自动确认

】#  yum -y remove 软件名         #卸载软件包,可自动解决其依赖关系

】#  yum -y update 软件名          #升级软件包

】#  yum list                                #查询软件包列表

】#  yum list installed                  #查询系统中已安装的软件包

】#  yum list available                 #查询仓库中尚未安装的软件包

】#  yum list updates                   #查询可以升级版本的软件包

案例搜索RPM包(两种方法)

】#  yum search vim

】#  yum list | grep "vim"

】#  yum info 软件名                     #查询软件包的描述信息

】#  yum info httpd

】#  yum search [all] 关键词          #根据某个关键词来查找相关的软件包

】#  yum search all httpd

】#  yum whatprovides 命令          #查询命令属于哪个软件包

】#  yum whatprovides netstat

下载RPM包而不安装

】#  yum install 包名 -y --downloadonly

】#  yum reinstall -y bash --downloadonly        #下载已安装过的rpm包

】#  yum install 包名 -y --downloadonly --downloaddir=/tmp/    #下载RPM包到指定目录

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

】#  yum history list         列出最近的历史

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

】#  yum history undo id  撤销某次更改

】#  yum history help       查看帮助

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

1.4ftp源

1.4.1ftp概述

FTP 指的是文件传输协议 (File Transfer Protocol)。它是一种用于在网络上的客户端和服务器之间传输文件的标准网络协议。 虽然现在 FTP 的使用频率不如以前高,但在某些情况下,它仍然是前端开发中一个有用的工具。

FTP 的主要作用:

  • 上传网站文件: 前端开发者可以使用 FTP 将本地开发的 HTML、CSS、JavaScript、图像和其他网站文件上传到 Web 服务器,从而使网站可以被公众访问。这是 FTP 最常见的用途之一,尤其是在没有更现代的部署方法(例如 Git 部署、CI/CD)可用时。

  • 下载网站文件: FTP 也可用于从服务器下载文件。这在需要备份网站文件、修改服务器上的现有文件或从服务器检索文件时非常有用。

  • 管理网站文件: 一些 FTP 客户端允许用户直接在服务器上创建、删除、重命名和移动文件和文件夹,提供了一种管理服务器文件系统的便捷方式。

1.4.2配置ftp源

服务器配置

①安装vsftpd服务端软件

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

③启动ftp服务

】#  rpm -qa|grep vsftpd

】#  yum -y install vsftpd

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

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

】#  cp -rf /mnt/*  /var/ftp/centos7/  &     #将本地挂载光盘所有内容copy到指定目录

】#  mkdir /var/ftp/other/       #创建目录repodata(清单文件)数据文件

】# cd /var/ftp/other/    

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

】# systemctl start vsftpd

客户端配置

①创建远程yum源的配置文件

②yum安装软件验证结果

】# cat centos7.repo

[centos7]             #仓库类别

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

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

enabled=1       #启用此软件仓库

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

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

[other]

name=centos7

baseurl=ftp://192.168.4.7/other

enabled=1        #启用此软件仓库

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

二:NFS共享存储服务

2.1NFS概述

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

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

NFS服务的实现依赖于RPC(Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。在Centos 7系统中,需要安装nfs-utils、rpcbind软件包来提供NFS 共享服务,前者用于NFS 共享发布和访问,后者用于RPC支持手动加载NFS共享服务时,应该先启动rpcbind,再启动nfs

nfs端口号2049

rpc端口号111

网络传输协议:NFS

主配置文件 /etc/exports

2.2NFS的特点

采用TCP/IP传输网络文件

安全性低

简单易操作

适合局域网环境


2.3NFS实现原理

A用户通过负载均衡调度至上传图片到web1上B用户访问A用户上传的图片,此时B用户通过负载均衡调度至web2上,web2上没有A用户的图片所以B用户看不到,需要利用到共享存储,web1把图片传到了共享存储上,web2可以访问到共享存储里的图片。

Rpc.nfsd:基本的NFS守护进程,主要功能是管理客户端是否能够登陆服务器

Rpc.mount:主要功能是管理NFS的文件系统,当客户端顺利通过nfsd登陆服务器后,在使用NFS服务所提供文件前,还必须通过文件使用权限验证。所以它会读取NFS的配置文件/etc/exports来对客户端权限

PORTmap:主要功能是进行端口映射工作

常用选项

exportfs -v     查看详细的nfs信息

exportfs -r      重读配置文件

showmount -e       查看本机发布的NFS共享目录

showmount -e +IP       查看IP地址发布的NFS共享目录

mount -t  nfs 192.168.58.10:/opt /mnt      将NFS服务端192.168.48.6下的/opt挂载到/mnt下

rpcinfo -p localhost          查看rpc注册的端口信息

2.4 实验步骤

服务器端

客户端

http://www.xdnf.cn/news/1242883.html

相关文章:

  • Java基础-斗地主游戏
  • opencv引入libavif
  • 从 0 到 1 开发图书管理系统:飞算 JavaAI 让技术落地更简单
  • Prometheus-3--Prometheus是怎么抓取Java应用,Redis中间件,服务器环境的指标的?
  • 【慕伏白】Android Studio 配置国内镜像源
  • 内联函数:提升效率的空间换时间艺术
  • FreeRTOS源码分析四:时钟中断处理响应流程
  • 深入浅出 RabbitMQ:工作队列实战(轮训策略VS公平策略)
  • 鸿蒙南向开发 编写一个简单子系统
  • 机器学习 入门——决策树分类
  • 并发编程常用工具类(下):CyclicBarrier 与 Phaser 的协同应用
  • C++入门自学Day6-- C++模版
  • 飞算JavaAI需求转SpringBoot项目沉浸式体验
  • 【BUUCTF系列】[极客大挑战 2019]LoveSQL 1
  • vllm启动Qwen/Qwen3-Coder-30B-A3B-Instruct并支持工具调用
  • MLIR Introduction
  • android内存作假通杀补丁(4GB作假8GB)
  • History 模式 vs Hash 模式:Vue Router 技术决策因素详解
  • ZYNQ-按键消抖
  • JavaScript 中的流程控制语句详解
  • 3.JVM,JRE和JDK的关系是什么
  • 第二十四天(数据结构:栈和队列)队列实践请看下一篇
  • SQL注入SQLi-LABS 靶场less39-50详细通关攻略
  • 基于实时音视频技术的远程控制传输SDK的功能设计
  • 【ECCV2024】AdaCLIP:基于混合可学习提示适配 CLIP 的零样本异常检测
  • [GESP202306 四级] 2023年6月GESP C++四级上机题超详细题解,附带讲解视频!
  • 刷题记录0804
  • ref和reactive的区别
  • 8位以及32位的MCU如何进行选择?
  • ArrayDeque双端队列--底层原理可视化