当前位置:首页 > 技术之家 > linux > 正文内容

Linux下本地yum源配置及局域网yum配置

1Linux下本地yum源配置

本地yum源依赖于python解析,首先要确保系统的python和yum源安装完成

1.1、本地yum源配置及挂载

上传ISO镜像或使用本机镜像,使用mount命令挂载镜像到/dev/loop0设备文件(用于模拟块设备)

mount /dev/loop0 /opt/yum-iso  # 报错如下# failed to setup loop device: No such file or directory

在类 UNIX 系统里,loop 设备是一种伪设备(pseudo-device),或者说是仿真设备,我们又叫它为循环接口文件,它能使我们像块设备一样访问一个文件。在使用之前,一个 loop 设备必须要和一个文件进行连接。这种结合方式给用户提供了一个替代块特殊文件的接口。因此,如果这个文件包含有一个完整的文件系统,那么这个文件就可以像一个磁盘设备一样被 mount 起来。
这种文件格式,我们经常见到的是 CD 或 DVD 的 ISO 光盘镜像文件或者是软盘(硬盘)的 *.img 镜像文件。通过这种 loop mount (回环mount)的方式,我们可这些镜像文件 mount 到当前文件系统的一个目录下,从而读取镜像中内容。

loop 含义:对于第一层文件系统,它直接安装在我们计算机的物理设备之上;而对于这种被 mount 起来的镜像文件(它也包含有文件系统),它是建立在第一层文件系统之上,这样看来,它就像是在第一层文件系统之上再overlay了一层文件系统,所以称为 loop,而在Linux系统里,用块文件模拟了该接口,Centos上默认有0-7个这样的设备。正常系统

一般显示如下:

1.1.1、处理过程

 1、手动新建,执行:

mknod -m 666 /dev/loop0 b 7 0 #实际验证无效chown :disk /dev/loop0#附:批量chown :disk --reference=/dev/loop0 /dev/loop*

 2、尝试手动先将镜像装入loop,在挂载loop伪设备

losetup -a  #查看当前loop设备使用情况,返回当前已经使用的所有环回设备,即先查看一下哪些是空闲的sudo losetup -f  #自动查找空闲的设备,返回第一个未使用的环回设备#新建一个loopdd if=/dev/zero of=test.img bs=5M count=1000  #新建5g的imglosetup /dev/loop0 /opt/CentOS-7-x86_64-DVD-1810.isomount /dev/loop0 /opt/yum-iso#实际等同于mount -o loop /opt/CentOS-7-x86_64-DVD-1810.iso /opt/yum-isomount /opt/CentOS-7-x86_64-DVD-1810.iso /opt/yum-iso -o loop=/dev/loop0#卸载umount /opt/yum-isolosetup -d /dev/loop0

1.1.2、挂在时错误解决

错误1:写保护,将以只读方式挂载

格式化分区:mkfs.ext4 /dev/sdb1可参考标题2磁盘分区当中的格式化分区操作

重新挂载即可。

错误2:不能读取超块

可进行磁盘修复,如下:

# 磁盘目录:/dev/vdbfsck.ext3 -B 1024 /dev/vdb

 重新挂载即可。

1.2、创建本地repo文件

# 备份原*.repo文件cp /etc/yum.repos.d/CentOS-Media.repo /etc/yum.repos.d/CentOS-Media.repo.bak# 编辑repo文件vim /etc/yum.repos.d/CentOS-Media.repo

输入以下内容,file后面的/yum-iso目录与上节挂载目录保持一致

[ftpYum]name=ftpYumbaseurl=file:///opt/yum-isoenabled=1gpgcheck=0

配置完成后,执行以下命令

# 清除缓存yum clean all# 生成新缓存yum makecache

1.3、 修改yumRepo.py文件

可暂时忽略该步骤,尝试使用yum进行安装尝试看是否成功,若不成功可使用该步骤操作后重试

yum安装测试:yum install ntp -y

根据系统python版本编辑yumRepo.py

vim /usr/lib/pythonx.x/site-packages/yum/yumRepo.py

查找(vim 进入后输入/remote,进行查找,约在1008行)以下内容

remote = url + '/' + relative# 修改为以下内容remote = url + '/opt/yum-iso' + relative

重新使用yum安装命令进行测试即可。

2、Linux下局域网yum配置

本例使用Cnetos7示例,其他Linux大致相同,可以参照修改。

2.1、yum服务端应安装以下软件

yum、createrepo、httpd,使用rpm -q httpd createrepo yum检查是否安装

 如果未安装可以使用rpm -ivhyum安装

yum install httpd createrepo -y

 2.1.1、开放防火墙80端口或关闭防火墙

可使用默认防火墙firewall或者iptables

firewall 防火墙开放端口

# 开放单个端口firewall-cmd --zone=public --add-port=8080/tcp --permanent# 开放多个端口firewall-cmd --zone=public --add-port=20000-29999/tcp --permanent# 关闭端口firewall-cmd --zone=public --remove-port=8080/tcp --permanent# 重启防火墙firewall-cmd --reload# 关闭防火墙systemctl stop firewalld# 查看开放端口firewall-cmd --list-ports

iptables 防火墙开放端口

# 临时开放80端口,重启服务器后无效iptables -A INPUT -p tcp --dport 80 -j ACCEPT# 查看端口开放和禁用情况iptabls -nL

 2.1.2、关闭Selinux

# 编辑vim /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled,保存后退出重启系统生效。

2.1.3、配置发布源

本例使用web服务器提供yum安装源的发布功能,也可使用ftp来实现相同功能。

首先安装好apache web服务器(yum install httpd -y

/etc/httpd/conf/httpd.conf中进行配置(可忽略该步骤)可直接对挂载点建立软连接(且将软连接建立在web服务器的初始目录下)

2.1.3.1、对挂载点建立软连接
# 建立软连接ln -s /opt/yum-iso/ /var/www/html/centos7

重启httpd服务:

# 重启httpd服务systemctl restart httpd.service# 开机自动重启systemctl enable httpd.service# 查看状态systemctl status httpd.service

浏览器验证:http://ip/centos7/

以上图片表示局域网yum源服务端配置成功

2.2、yum源客户端配置

yum源客户端只需要编辑/etc/yum.repos.d/CentOS-Media.repo文件,将原yum源替换为局域网服务端yum源即可,具体替换为以下内容即可:

vim /etc/yum.repos.d/CentOS-Media.repo

替换为以下内容:

[http]name=httpbaseurl=http://局域网yum源服务端IP/centos7/gpgcheck=0enabled=1

使用yum源随便安装个软件测试即可。


扫描二维码推送至手机访问。

版权声明:本文章来源于网络,版权归原作者所有,如果本站文章侵犯了您的权益,请联系我们删除,联系邮箱:luxd@aliyun.com,感谢支持理解。


本文链接:https://luxd.cc/post/252.html

“Linux下本地yum源配置及局域网yum配置” 的相关文章

Linux_磁盘分区、挂载、查看

Linux_磁盘分区、挂载、查看

一、挂载1、查看设备的挂载情况lsblk或lsblk -f2、挂载需求 :给我们的Linux系统增加一个新的硬盘,并且挂载到/home/newdisk说明:我们以增加一块硬盘为例来熟悉一下磁盘的相关指令和深入理解磁盘分区、挂载、卸载的概念。如何增加一块硬盘?1)虚拟机添加硬盘在 VMwar...

Linux 离奇磁盘爆满解决办法

Linux 离奇磁盘爆满解决办法

问题原因&通用解决步骤频繁收到es数据节点磁盘使用监控告警,到es上查看,磁盘使用率40%,因此登录该告警服务器,df -h 查看,如图发下根目录使用超过了80%,因此持续告警,按照以往办法,直接du查看根目录哪个目录占用最大,清理即可根目录超过了80%告警,其中data是数据盘,...

CentOS8 MYSQL安装配置

CentOS8 MYSQL安装配置

一、清理MYSQL相关环境1.1 检查系统中是否存在Mysql的文件find / -name mysql1.2 删除存在mysql的文件或文件夹, 根据上一步的目录操作#强制删除目录及内容/usr/lib64/mysql/ rm -rf ...

Centos7内核升级

Centos7内核升级

1、需求介绍由于docker学习中的Overlay需要内核版本在3.12+,所以在安装完centos7.6之后要进行内核升级。2、升级实现升级方式可以使用源码编译方式或者rpm包安装方式,这里使用yum源升级安装。3、导入keyrpm --import https://www.elrepo.org/...

Linux 常用命令有哪些

Linux 常用命令有哪些

linux 常用命令有:pwd 命令使用 pwd 命令找出您所在的当前工作目录(文件夹)的路径。该命令将返回一个绝对(完整)路径,该路径基本上是所有以 / 开头的目录的路径。绝对路径的一个示例是 /home/username。cd 命令要浏览 Linux 文件和目录,请使用 cd 命令。根据您所在的...

Linux 学习笔记

Linux 学习笔记

[NeadPay]Linux 学习笔记一、 常用命令LINUX常用操作命令和命令行编辑快捷键终端快捷键:Ctrl + a/Home 切换到命令行开始Ctrl + e/End 切换到命令行末尾Ctrl + l 清除屏幕内容,效果等同于 clearCtrl + u 清除剪切光标之前的内容Ctrl + k...