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

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/baidu_39459954/article/details/80619307

一、Linux下本地YUM源配置

本地yum源依赖于python解析,请确保系统的python和yum组件安装成功

1.1、挂载本地ISO镜像

上传ISO镜像至系统目录/root,使用mount命令挂载镜像至/mnt

[root@yc ~]# mount /root/CentOS-7-x86_64-DVD-1708.iso /mnt
mount: /dev/loop0 is write-protected, mounting read-only

可选项:配置下次开机自动mount,编辑/etc/fstab写入开机自动mount内容

[root@yc ~]# vi /etc/fstab

写入以下内容

/root/CentOS-7-x86_64-DVD-1708.iso /mnt iso9660 defaults,loop,ro 0 0

1.2、创建本地的repo文件

编辑文件/etc/yum.repos.d/local.repo

[root@yc ~]# vi /etc/yum.repos.d/local.repo

写入以下内容,file后面的/mnt目录与上一节中ISO挂载目录保持一致

[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0

1.3、修改yumRepo.py文件

根据系统python版本编辑yumRepo.py
Linux6自带python版本2.6,编辑以下文件

[root@yc ~]# vi /usr/lib/python2.6/site-packages/yum/yumRepo.py

Linux7自带python版本2.7,编辑以下文件

[root@yc ~]# vi /usr/lib/python2.7/site-packages/yum/yumRepo.py

查找(vi编辑后输入/remote,进行查找)

remote = url + '/' +relative

修改改成

remote = url + '/mnt' + relative

1.4、现在即可使用本地的YUM进行安装软件

yum -y install xxx
yum group list hidden
yum groupinstall “X Window System”
yum本地

二、Linux下局域网YUM源配置

2.1、服务端配置

本例使用CentOS7配置示例,其他类Linux系统大致相同,可以参照修改

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

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

[root@yc ~]# rpm -q httpd createrepo yum
httpd-2.4.6-80.el7.centos.x86_64
createrepo-0.9.9-28.el7.noarch
yum-3.4.3-154.el7.centos.noarch

如果未安装可以使用rpm -ivh或者yum安装

[root@yc ~]# yum install httpd createrepo

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

CentOS7使用的防火墙为firewall,开放80端口方法如下:

[root@yc ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent 
success
[root@yc ~]# firewall-cmd --reload
success
[root@yc ~]# firewall-cmd --zone=public --query-port=80/tcp
yes
[root@yc ~]# firewall-cmd --zone=public --list-ports
80/tcp

可选项:关闭防火墙命令

systemctl stop firewalld.service

2.1.3、准备安装程序包

放入系统盘,将其挂载到/mnt,也可用系统光盘的iso文件,挂载到/mnt,创建/yumsource/CentOS7目录用于存放软件包:

[root@yc ~]# mkdir /yumsource/CentOS7

将光盘上所有目录下的所有软件包拷入/yumsource/CentOS7下。

[root@yc ~]# cp -a /mnt/* /yumsource/CentOS7

注:从系统盘全盘copy的程序包中自带repodata,如果是自行整理的rpm包集合,可以使用createrepo,重新创建新的repodate

createrepo /yumsource/CentOS7

2.1.4、配置Selinux权限或者关闭Selinux

如果selinux处于开启状态,执行以下命令赋予权限

[root@yc ~]# chcon -R -t httpd_sys_content_t /yumsource

或者简单粗暴关闭selinux

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

2.1.5、配置发布源

本例使用web服务器来提供yum的安装源的发布功能,当然也可以用ftp来实现相同的功能。
应首先安装好apache web服务器(yum install httpd),在/etc/httpd/conf/httpd.conf中进行如下配置。

[root@yc ~]# vi /etc/httpd/conf/httpd.conf

注释或删除DocumentRoot “/var/www/html”
添加:

DocumentRoot "/yumsource"
<Directory "/yumsource">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

重启http服务:

[root@yc ~]# systemctl restart httpd.service 

可选项:设定开机自启动:

[root@yc ~]# systemctl enable httpd.service

使用浏览器打开验证,http://192.168.88.58/CentOS7/
验证HTTP服务
说明:在配置http的过程中如果发现不能正常访问,可能是selinux或者防火墙的原因。

2.2、客户端配置

配置repo文件

vi /etc/yum.repos.d/Server58.repo
[Server58]
name=Red Hat
baseurl=http://192.168.88.58/CentOS7/
gpgcheck=1
gpgkey=http://192.168.88.58/CentOS7/RPM-GPG-KEY-CentOS-7

现在可以使用yum以服务器192.168.88.58为源安装软件

yum clean all
yum install postgres

yum局域网
经过测试,以上几种方法都可以实现yum源的安装,不同的版本与方法都可以实现,看自己选择哪一种了。

猜你喜欢

转载自blog.csdn.net/baidu_39459954/article/details/80619307