Linux下本地yum源配置及局域网yum配置
1、Linux下本地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 #自动查找空闲的设备,返回第一个未使用的环回设备
#新建一个loop
dd if=/dev/zero of=test.img bs=5M count=1000 #新建5g的img
losetup /dev/loop0 /opt/CentOS-7-x86_64-DVD-1810.iso
mount /dev/loop0 /opt/yum-iso
#实际等同于
mount -o loop /opt/CentOS-7-x86_64-DVD-1810.iso /opt/yum-iso
mount /opt/CentOS-7-x86_64-DVD-1810.iso /opt/yum-iso -o loop=/dev/loop0
#卸载
umount /opt/yum-iso
losetup -d /dev/loop0
1.1.2、挂在时错误解决
错误1:写保护,将以只读方式挂载

格式化分区:mkfs.ext4 /dev/sdb1可参考标题2磁盘分区当中的格式化分区操作
重新挂载即可。
错误2:不能读取超块
可进行磁盘修复,如下:
# 磁盘目录:/dev/vdb
fsck.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=ftpYum
baseurl=file:///opt/yum-iso
enabled=1
gpgcheck=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 -ivh或yum安装
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=http
baseurl=http://局域网yum源服务端IP/centos7/
gpgcheck=0
enabled=1
使用yum源随便安装个软件测试即可。
Linux下本地yum源配置及局域网yum配置的更多相关文章
- linux配置yum源、mount及yum命令
配置yum源: 在/mnt目录下新建一个空的目录,名为rhel. [root@localhost mnt]# mkdir rhel 然后 [root@localhost Packages]# cd ...
- CentOS7 yum源修改为阿里,配置阿里epel源
镜像下载.域名解析.时间同步请点击 阿里巴巴开源镜像站 一.概念/区分: yum源 什么是yum源: yum是一个在CentOS.RedHat和Fedora操作系统中使用的Shell前端软件包管理器. ...
- Linux下NAT模式和桥接模式的网络配置
Linux下NAT模式和桥接模式的网络配置 最近在配置linux虚拟机的时候发现有很多坑,现在记录下来以防日后又跳到坑里. 我的运行环境是:主机 windows 7 虚拟机 Virtualb ...
- Linux下jdk的安装和环境变量的配置
Linux下jdk的安装和环境变量的配置 一.jdk的下载 方式一:在官网下载 http://www.oracle.com/technetwork/java/javase/downloads/inde ...
- linux下获取软件源码包 centos/redhat, debian/ubuntu
linux下获取软件源码包 centos/redhat, debian/ubuntu centos下: 1. yum install yum-utils 主要为了获取yumdownloader 2. ...
- hadoop搭建杂记:Linux下JDK环境变量的设置(三种配置环境变量的方法)
Linux下JDK环境变量的设置(三种配置环境变量的方法) Linux下JDK环境变量的设置(三种配置环境变量的方法) ①修改/etc/profile文件 如果你的计算机仅仅作为开发使用时推荐使用这种 ...
- linux下svn(subversion)服务端添加工程及配置权限
linux下svn(subversion)服务端添加工程及配置权限 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/9010507.html 此篇我只是将所做过的 ...
- linux下nginx结合keepalived实现主从切换的配置
linux下nginx结合keepalived实现主从切换的配置 解决方法: 实现一个主nginx宕机,请求转到另一个nginx中. 1.确保两台nginx已启动,假如端口分别是192.168.0 ...
- Centos-7修改yum源为国内的yum源
以centos7为例 ,以 修改为阿里的yum源 1. 备份本地yum源 [root@localhost yum.repos.d]# cp CentOS-Base.repo CentOS-Base.r ...
- linux配置本地yum源实现在局域网中在线安装软件包
安装linux下安装软件需要安装一系列的rpm包,用rpm -ivh xx和yum install xx 如果用rpm安装软件包的时候,需要自己下载rpm安装包,如果rpm包不全总是提示依赖检查失败或 ...
随机推荐
- 使用 Apache MINA 开发高性能网络应用程序
Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络 ...
- Clickhouse之表函数
remote, remoteSecure 允许访问远程服务器, 而无需穿件Distributed表, remoteSecure - 与 remote 相同,但是会使用加密链接. 语法: remote( ...
- Threejs的三维坐标系
在三维空间中,所有的物体和相机都需要基于一个统一的坐标系来进行定位和操作.理解坐标系的基本概念,对于创建稳定.准确的三维效果至关重要. 基础 Three.js 采用的是右手坐标系,这意味着如果你将右手 ...
- maven 分离打包的技术
1.概要 我们在构建springboot 程序的时候,可以将所有的文件打包成一个大的文件,这个使用起来还是很方便的,但是有些情况下不是很方便,比如 程序需要经常更新的时候,通过网络传输就比较慢,还有比 ...
- 解决Your project does not reference问题
错误现象 vs编译时,报错: Your project does not reference ".NETFramework,Version=v##" framework. Add ...
- windows 也支持右键复制文件名了
mac 有一个操作,alt + 右键,出现的菜单有复制路径一项.不用羡慕,现在 windows 也有这个功能了. Shift + 右键,"复制为路径":
- 【XML编程与WEB服务】XML入门
目录 XML -入门 XML文档组成 XML文档规则 XML元素 特殊字符数据引用 CDATA段 空白处理 XML -入门 XML(Extensible Markup Language):可扩展的标记 ...
- 黑苹果(Hackintosh) - 问题,修改CPU数量和内存数量后,系统重启失败
1. 问题复现 安装完黑苹果后,内存默认的 1个处理器2个核心.2G内存,发现不够用. 于是,修改了 VMware 对此系统的 硬件配置 内存: 2G -> 8G 处理器:1个处理器 -> ...
- Java中MessageFormat的坑
目录 Java中MessageFormat的坑 问题现象 问题排查 如何解决 Java中MessageFormat的坑 问题现象 某个业务功能需要通过SSH协议执行命令查询一些数据,而某次查询居然没有 ...
- Qt/C++入门基础学习001-绘图基础
这一节介绍 Qt 的绘图基础知识,我们都知道,Qt 里绘图使用的是 QPainter,但是首先需要弄明白:在什么上绘图和在哪里绘图,然后才是怎么绘图,我们就围绕这几个问题来展开. 在什么上绘图 The ...