部署yum仓库

目录

安装软件包

yum

配置文件

缓存功能操作步骤

创建并配置本地仓库文件

yum相关命令

yum install __

yum repolist

yum list __

yum info __

yum search __

yum whatprovides __

yum remove __

yum -y update __

yum history

yum grouplist

yum groupinstall "__"

部署yum仓库

一. 配置ftp服务器环境

二. 复制软件包和仓库元数据到ftp

三. 配置客户端主机

在http上搭建仓库

一. 配置http服务器环境

二. 测试

三. 客户端实现http仓库

把互联网上的仓库下载到本地

一. 配置环境

二. 创建repodata元数据目录

NFS

一. 配置环境

常见挂载选项

二. 测试


安装软件包

yum -ivh /media/cdrom/Packages/gcc-4.8.5-44.el7.x86_64.rpm

CSDN:在本章实验前,需要使用两台Linux CentOS7的虚拟机,需要两台主机都创建一个最初始的快照用于后续恢复主机状态

yum

用来解决rpm依赖关系的工具

yum:Yellowdog Updater Modified

配置文件

yum服务配置文件的位置:/etc/yum.conf

参数

说明

cachedir

缓存目录;当使用yum安装软件包时,所安装的软件包和相关依赖会被缓存起来,这个目录就是安装软件包时保存的指定位置

keepcache

保持缓存;1:开启缓存功能,0:关闭缓存功能

开启缓存功能会把之后缓存的软件包都存储到本地的指定目录

debuglevel

调试信息输出的级别,默认为2

logfile

日志文件的位置

exactarch

在安装软件包时,该软件包架构和系统架构保持一致

obsoletes

在更细软件包时,允许更新一些较为老旧的版本

gpgcheck

是否开启gpg校验规则

plugins

是否允许启用插件

installonly_limit

用几个内核处理程序

bugtracker_url

跟踪错误信息URL

distroverpkg

识别软件包的发行版本

缓存功能操作步骤

修改配置文件

删除原有仓库替换为阿里的仓库(全部复制粘贴进Xshell)

rm -rf /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
yum clean all

安装httpd测试

yum -y install httpd

由于开启了缓存功能,所以指定目录也会出现混存文件

c7-media:仓库标识

cd 进 update目录下的packages目录就能看到缓存的软件包了

创建并配置本地仓库文件

在 /etc/yum.repos.d/ 仓库目录下,删除全部原有仓库,自己编写一个仓库文件

yum读取仓库文件时会识别后缀 .repo

自定义仓库文件如下,保存并退出

[example]
name=example
baseurl=file:///media/cdrom
gpgcheck=0
# enabled=1 默认开启
# gpgkey=http://myrepository.example.com/repo/RPM-GPG-KEY-myrepo

# [example]: 方括号内的是仓库ID,用于唯一标识这个仓库。
# name: 仓库名称,可以是任何描述性的文本。
# baseurl: 仓库的基础URL,即包含软件包的目录的地址。
# enabled: 表示是否启用此仓库。1表示启用,0表示禁用。默认启用
# gpgcheck: 指定是否检查软件包的GPG签名。1表示检查,0表示不检查。默认启用
# gpgkey: 指定用于验证软件包GPG签名的公钥文件的位置。开启gpg验证时才添加该行

清理仓库缓存并重建仓库缓存

yum相关命令

yum install __

使用 yum install ftp 命令对ftp软件包进行 安装/下载到本地/取消 操作

yum repolist

列出仓库信息

yum list __

查看ftp相关软件包信息

yum info __

查看ftp软件包详细信息

yum search __

模糊查询名称中带有ftp的软件包

yum whatprovides __

精准查询软件包

yum remove __

卸载指定软件包

yum -y update __

更新已有软件包

yum history

查看yum命令历史操作

yum grouplist

显示以组为单位安装的所有组

yum groupinstall "__"

以组的方式安装软件包

桌面环境安装 实验步骤

做当前实验之前如果没有快照需要创建一个快照,因为安装完桌面需要恢复快照做后续实验

确保正确性,复制要安装的组名

粘贴进双引号内

输入 y 回车确认安装

使用 systemctl start graphical.target 命令启动图形界面

返回虚拟机,来到如下图界面,创建用户

设置密码 然后点击右上角前进

配置完成后进入桌面图形化界面

最小化系统后续安装图形化界面后开机自动进入桌面

需要注意的是,如果在一开始安装系统时就选择带有图形化桌面的系统,在开机时自动进入图形化界面终端。

如果在一开始安装时选择的是最小化安装的系统,就算后续安装了图形化界面,在下次开机时还是会进入默认终端而不是图形化桌面

通过设置链接来让 default.target 指向 graphical.target 实现开机自动进入图形化桌面

ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

graphical.target:带有图形界面的终端环境

此时再重启就会自动进入桌面环境了

部署yum仓库

在ftp上搭建仓库

一. 配置ftp服务器环境

把所有rpm软件包放到 ftp 上

安装ftp服务器软件包;vsftpd:Very Secure FTP Daemon

进入vsftpd服务的根目录,启动该服务,为了方便实验关闭防火墙

此时在宿主机的资源管理器中通过IP地址访问该虚拟机的 ftp 服务,可以看到pub文件夹对应 /var/ftp 下的 pub目录

二. 复制软件包和仓库元数据到ftp

如果想要实现将光盘中的所有软件包复制到ftp服务器中,需要同时复制光盘挂载目录下的Packages目录和repodata目录

因为repodata目录中存储着仓库中所有软件包的元数据文件,元数据文件包含了软件包的描述、依赖关系等重要信息,帮助包管理工具正确地识别和安装软件包。

当你使用 yum 或 dnf 命令时,就需要用到repodata目录来处理软件包的搜索和解决依赖关系。

拷贝两个目录到ftp服务器存储位置

回到访问ftp的资源管理器可以看到已经拷贝完成

三. 配置客户端主机

打开另一台虚拟机,登入Xshell,打开作为客户端的这台主机的仓库配置文件

将仓库的URL改为FTP的地址

清理仓库缓存

随机安装一个软件包测试能否正常安装

在http上搭建仓库

一. 配置http服务器环境

安装所需软件包

httpd:一个开源的跨平台的 Web 服务器软件,可以用来发布网站和提供 Web 服务

/var/www/html是默认的 HTTP Server 网站根目录,用于存放网站文件和资源。

和ftp操作相似,进入根目录、创建目录、拷贝文件

启动服务,为了方便实验关闭防火墙

二. 测试

在网页中输入服务器对应地址

现在可以通过网页下载软件包

三. 客户端实现http仓库

打开客户端主机的仓库文件

修改URL为对应网址

清理缓存

随机安装软件包测试,就完成了

把互联网上的仓库下载到本地

一. 配置环境

先把仓库替换为阿里提供的镜像仓库,直接粘贴到Xshell输入即可

rm -rf /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
yum clean all

安装所需软件包

createrepo 是一个用于创建 YUM 软件仓库的工具,可以将一组 RPM 软件包整理成 YUM 软件仓库所需的索引数据和元数据

yum-utils 是一组 YUM 工具的集合,提供了许多有用的命令和功能,用于增强和扩展 YUM 包管理器的功能

列出仓库信息,可以看到仓库中有4个仓库

进入/opt目录,同步仓库中指定的仓库。为了方便实验,所用仓库下载几个就可以Ctrl + C 取消下载

此时就可以看到下载的仓库目录

二. 创建repodata元数据目录

进入base仓库目录,可以看到只有Packages目录,而缺少repodata目录

使用createrepo 指向包路径;来创建元数据目录

由于实验时下载的软件包的时候没有下载完整,所以生成元数据目录时可能会出现报错ERROR的情况,是正常情况。

在仓库居多的情况下,可以直接在/opt下使用createrepo命令,通过整个仓库的软件包生成元数据

使用的前提是,4个目录的位置要固定在同一级,不能分开存放

试验完成,测试:比如将仓库文件拷贝至ftp服务器目录下实现在ftp上部署仓库

NFS

NFS(Network File System)是一种在计算机网络上共享文件的文件系统。它允许在不同的计算机系统之间通过网络访问文件和目录,就像它们本地存在一样。

安全性低,无法解决单点故障

实验步骤

一. 配置环境

先恢复101主机系统快照,进入Xshell,关闭防火墙、内核安全机制,安装所需软件包(nfs-utils、rpcbind)

  • nfs-utils 包含了与 NFS 相关的工具和服务,使得系统能够充当 NFS 服务器或客户端。
  • rpcbind 是一个用来管理 Unix 系统中远程过程调用(RPC)服务注册的守护进程。NFS 使用 RPC 机制来处理文件共享请求。
    • rpcbind 需要在 NFS 服务器和客户端上运行,以便正确地映射和管理 RPC 服务请求。

在根目录下创建一个挂载用的目录(/share),用vim编辑器编辑 指定要共享的目录以及访问权限 的文件

如下图所示,指定共享目录,指定访问主机或网段,自定义挂载选项

常见挂载选项

选项

说明

rw

读写权限

ro

只读权限

sync

同步;服务器端在向客户端发送数据时,会等待客户端确认数据已经被接收并写入到磁盘之后才会继续操作。数据会同步写入到磁盘,确保了数据的持久性和一致性,性能低,因为需要等待确认。

async

异步;服务器端在向客户端发送数据时,不会等待客户端的确认,而是会将数据缓存到内存中,然后立即继续其他操作。提高了性能,因为不需要等待确认,但在系统崩溃或网络故障时可能会导致数据丢失,因为数据可能尚未写入磁盘。

no_root_squash

允许客户端使用 root 用户访问共享目录。如果没有这个选项,root 用户对文件的操作权限将被降级为 nfsnobody 用户。

root_squash

默认选项,表示将 root 用户的权限降级为 nfsnobody 用户。

all_squash

将所有用户的权限都映射为 nfsnobody 用户。

subtree_check

默认选项,检查共享目录的父目录权限。

no_subtree_check

不检查共享目录的父目录权限,可以提高性能。

二. 测试

开启所需服务

使用 exportfs -vr命令查看共享目录

恢复第二台102虚拟机快照并启动操作

因为要使用nfs提供的文件系统,所以客户端也需要安装nfs-utils软件包

挂载101主机的目录到根目录下的mnt目录,然后使用df命令查看挂载是否成功

cd到挂载的目录下,创建一个文件

回到101主机,查看/share目录下,可以看到从102主机创建的文件,并且是root权限,因为在配置时添加了no_root_squash选项

相反,在101主机服务端创建的文件在102主机客户端也能看到

来到102客户端主机操作

如果此时创建一个用户

用创建的用户登录102主机,在挂载的/mnt目录下是没有权限的

此时使用 ll 命令查看根目录信息

可以看到 /mnt 目录的权限都是root,对于其他用户只有读的权限

回到101主机

修改 /share目录的权限为777

再查看102主机 的mnt目录的权限就变了

在mnt目录内创建一个文件,使用 ll 命令,权限都是zhangsan

查看存储用户信息的文件

可以看到zhangsan这个用户的uid和gid都是1000

再来到101主机 该文件的权限uid和gid也都是1000

通过 cat /etc/passwd 知道101主机上并没有uid和gid为1000的信息条目

如果此时为101服务端主机创建一个用户

此时查看/share目录就会变成属主和属组就变成 lisi 了

由此可见,因为nfs是网络文件系统,是跨主机共享的,所以 NFS 使用的是 UID(用户标识符)和 GID(组标识符)来管理文件的权限和所有权。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C语言】回调函数 和 部分库函数的用法以及模拟实现

一、回调函数: 1、定义: 回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。 2、qsort的模拟实现…

PHP基础语法【上】

文章目录 一、环境安装二、代码应该写在哪里?三、什么是错误?四、变量无需声明变量变量命名规则变量的作用域可变变量 五、常量常量的定义常量的特性 六、数据类型NULL 空值Boolean 布尔类型Integer 整型Float 浮点型String 字符串Array 数组Object 对象…

有效招聘营销策略的六个组成部分

任何想吸引更多人购买其产品的公司都必须投资于市场营销。然而,当涉及到让更多的人了解公司的工作时,许多有效的营销活动可能不是招聘团队的首要考虑因素。为了超越招聘委员会上的“发布祈祷”策略,有必要包括有效招聘营销策略的所有组成部分…

Redis 6.0新特性详解

Redis 6.0新特性主要有3个:多线程、Client Side Cache、Acls。下面详细说明一下。 1.多线程 redis 6.0 提供了多线程的支持,redis 6 以前的版本,严格来说也是多线程,只不过执行用户命令的请求时单线程模型,还有一些线…

【Axure高保真原型】动态统计中继器表格项目数

今天和大家分享动态统计中继器表格项目数的原型模板,具体包括以下功能: 表格下方可以自动根据表格内容统计表格的总项目数、启用和禁用数、选中和未选中数 我们可以点击开发切换启用和禁用 点击多选按钮,选中或取消选中对应行内容 选中后可…

跨境电商源码支持,多国语言与货币切换功能全解析

一、背景介绍 跨境电商的兴起,使得供货商和代理商们面临着一个全新的挑战:如何管理跨国交易和多语言 的销售平台。为了解决这一问题,跨境电商源码应运而生。本文将全面解析供货商和代理商后 台所具备的跨境电商源码支持功能&…

环境搭建---nginx

nginx离线安装 下载地址:https://nginx.org/download/ 一、安装编译工具及库文件 [rootVM-20-14-centos ~]# yum -y install make zlib zlib-devel gcc-c libtool openssl openssl-devel二、安装 PCRE [rootVM-20-14-centos ~]# tar -zxvf pcre-8.35.tar.gz [r…

从热潮到理性,大模型迎来产业「拐点」

前言 无人不谈大模型,是今年上半年科技界的真实写照。 从市场热闹程度来看,大模型已经成为各家科技厂商争先涌入的赛道,无论是互联网巨头,还是科技公司,甚至是研究机构,均已加入这场大模型混战&#xff0…

k8s快速上手实操

前言 Kubernetes(简称K8s)是由Google开源的一个用于自动化部署、扩展和管理容器化应用程序的系统。自2014年发布以来,Kubernetes已经迅速成长为容器编排领域的标准,并在全球范围内得到了广泛的采用和认可。 Kubernetes作为现代容…

彩色图像批处理实例

在数字图像处理过程中,经常需要对一批图像进行处理,下面以自然场景下花背景分割为例,给出其主要处理过程和处理结果。 处理的主要步骤:1. 六张彩色图像存放在flower文件夹中,图像文件名为1.jpg 2.jpg 3.jpg 4.jpg 5.j…

同三维T80006EHL-4K30CN 单路4K30 HDMI编码器(全国产化)

同三维T80006EHL-4K30CN 单路4K30 HDMI编码器 带1路HDMI环出和1路3.5音频输入,支持4K30,所有元器件全国产 一、 产品简介: T80006EHL-4K30CN 4K编码器(采集盒)是一款全国产化的专业4K HDMI音视频编码产品,…

开始报名啦!智能可观测运维技术 MeetUp 议题硬核来袭

「龙蜥社区“走进系列”MeetUp」是由龙蜥社区与生态合作伙伴联合主办的系列月度活动,每期走进一家企业,聚焦龙蜥社区和合作伙伴的技术、产品和创新动态,展示硬核技术,共建繁荣生态。 龙蜥社区“走进系列”第 11 期走进中兴通讯-智…

文字转语音在线怎么转?总结了三种快速转换

文字转语音在线怎么转?在数字化信息爆炸的时代,文字转语音的操作也越来越多。无论是为了制作视频配音、播客节目,还是为了方便视力障碍者阅读,文字转语音技术都提供了极大的便利。因此,本文将总结三种文字转语音的在线…

Python热涨落流体力学求解算法和英伟达人工智能核评估模型

🎯要点 🎯平流扩散简单离散微分算子 | 🎯相场模拟:简单旋节线分解、枝晶凝固的 | 🎯求解二维波动方程,离散化时间导数 🎯英伟达 A100 人工智能核性能评估模型 | 🎯热涨落流体动力学…

时隔一年,SSD大涨价?

同样产品,2T,去年400多到手,今年700。 去年 今年

win10重装系统如何操作,附上详细系统重装图文教程(2024年新)

win10重装系统如何操作呢?电脑使用时间长了,会出现各种各样的问题,如重要的系统文件被删除导致电脑无法正常运行,电脑运行内存空间不足,电脑卡顿等。Win10重装系统很简单,这里分享超详细的重装系统方法&…

红日靶场实战一 - 学习笔记

最近在学习红蓝对抗,如果有兴趣的可以多关注。 目录 环境搭建 靶场链接 配置网络 攻击机kali网络 配置win7 web服务器网络 配置winserver 2008网络(DC域控) 配置win2003/win2k3网路(域成员) IP配置情况 外网突破 信息收集 phpmya…

等待 chrome.storage.local.get() 完成

chrome.storage.local.get() 获取存储处理并计数,内部计数正常,外部使用始终为0,百思不得其解。 如何在继续执行之前等待异步chrome.storage.local.get()完成-腾讯云开发者社区-腾讯云 (tencent.com) 原来我忽略了异步问题,最简…

第二十二篇——香农第二定律(一):为什么你的网页总是打不开?

目录 一、背景介绍二、思路&方案三、过程1.思维导图2.文章中经典的句子理解3.学习之后对于投资市场的理解4.通过这篇文章结合我知道的东西我能想到什么? 四、总结五、升华 一、背景介绍 看似在将知识,实际是在讲生活和所有;突破边界偶尔…

lotus snapshot 快照列表

快照列表 https://forest-archive.chainsafe.dev/list/mainnet/latest