Linux网络服务之部署YUM仓库(下)

简介: 1 YUM简介1.1 YUM简介CentOS使用yum和dnf 解决rpm的包依赖关系。

步骤5、客户端编写yum仓库文件。

[root@192 ~]# cd /etc/yum.repos.d      //切换目录
 [root@192 yum.repos.d]# ls
 bak2              CentOS-Debuginfo.repo  CentOS-Sources.repo
 CentOS-Base.repo  CentOS-fasttrack.repo  CentOS-Vault.repo
 CentOS-CR.repo    CentOS-Media.repo
 [root@192 yum.repos.d]# mkdir bak1        //新建文件夹
 [root@192 yum.repos.d]# mv *.repo bak1    //将默认的仓库文件移动到该目录下
 [root@192 yum.repos.d]# ls
 bak1  bak2
 [root@192 yum.repos.d]# vim ftp.repo      //编写新的仓库文件
 [ftp]
 name=ftp
 baseurl=ftp://192.168.72.10/centos     //路径指向服务端的/var/ftp/centos/目录
 enabled=1
 gpgcheck=0
复制代码


网络异常,图片无法展示
|


网络异常,图片无法展示
|


步骤6、清理yum缓存,重新建立元数据。并测试使用yum能否成功安装软件包。

[root@192 yum.repos.d]# yum clean all && yum makecache
 已加载插件:fastestmirror, langpacks
 正在清理软件源: ftp
 Cleaning up everything
 Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
 Cleaning up list of fastest mirrors
 已加载插件:fastestmirror, langpacks
 ftp                                                        | 3.6 kB  00:00:00     
 (1/4): ftp/group_gz                                        | 156 kB  00:00:00     
 (2/4): ftp/primary_db                                      | 3.1 MB  00:00:00     
 (3/4): ftp/other_db                                        | 1.2 MB  00:00:00     
 (4/4): ftp/filelists_db                                    | 3.1 MB  00:00:00     
 Determining fastest mirrors
 元数据缓存已建立
 [root@192 yum.repos.d]# yum install httpd -y    //测试yum安装,可以成功安装。
复制代码


网络异常,图片无法展示
|


网络异常,图片无法展示
|


4.5 搭建本地epel源仓库

本地epel源仓库的应用场景:

  • 在可以连外网的情况下,可以使用国外源或阿里云仓库等。
  • 但实际工作中,公司内网常常无法连接外网,这时可以提前搭建本地epel源仓库,即在一台可连通外网的服务器中提前下载好epel源的所有软件包,编写好仓库文件后,在离线的情况下也可以使用yum安装软件包。
  • 之后其他主机可以通过http方式或ftp方式使用服务端的epel源仓库。

操作步骤:

步骤1、安装epel源,并下载epel源的所有软件包。

[root@localhost ~]# yum install epel-release          //安装epel源
 [root@localhost ~]# mkdir centos7                     //新建centos7目录  
 [root@localhost ~]# reposync -r epel -p /centos7/ &     //下载同步epel源软件包,下载到/centos7/目录下,&表示放到后台下载
 [root@localhost ~]# ls /centos7
 epel
复制代码


步骤2、安装createrepo命令(建立元数据的命令),之后使用createrepo命令建立元数据。

[root@localhost ~]# yum -y install createrepo      //安装createrepo命令
 [root@localhost ~]# createrepo -v /centos7/epel    //建立元数据(软件目录、依赖关系) 
 [root@localhost ~]# cd  /centos7/epel        //切换到centos7/epel 目录下
 [root@localhost epel]# ls              //查看软件包和元数据
 Packages  repodata
复制代码


步骤3、切换到/etc/yum.repos.d目录,移走默认仓库文件,编写新的仓库文件。

[root@localhost ~]# cd /etc/yum.repos.d/      //切换至/etc/yum.repos.d/目录
 [root@localhost yum.repos.d]# ls
 CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
 CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo
 [root@localhost yum.repos.d]# mkdir aaa      //创建一个名为aaa的新目录
 [root@localhost yum.repos.d]# mv *.repo aaa   //将yum仓库中以.repo结尾的文件移动到aaa中
 [root@localhost yum.repos.d]# ls
 aaa
 [root@localhost yum.repos.d]# vim epellocal.repo    //新建yum仓库文件
 [epellocal]
 name=epellocal                       #设置名称
 baseurl=file:///centos7/epel     #设置链接地址,路径指向/centos7/epel目录
 enabled=1                        #开启此yum源
 gpgcheck=0                       #无需验证公钥  
复制代码


其他主机如果想使用这台机器中的epel仓库,可以在本地使用http或ftp方式搭建:

baseurl=http://192.168.72.10/centos7/epel      //http方式
 baseurl=ftp://192.168.72.10/centos7/epel        //ftp方式
复制代码


5 小贴士


5.1 使用命令方式生成仓库文件

以上四种方式都是都是通过手动编写yum仓库文件来配置,也可以直接通过命令来搭建。

命令的方式配置原理和上面的文件配置原理一样,都是写入/etc/yum.repos.d中,只是命令行是自动生成仓库文件 。

1、外网环境搭建

命令格式:

wget -O  /etc/yum.repos.d/name.repo(自定义以repo结尾的文件名)  源路径
复制代码


wget 命令配置阿里云仓库:

wget -O  /etc/yum.repos.d/Centos-7.repo  http://mirrors.aliyun.com/repo/Centos-7.repo
复制代码


2、内网环境搭建

命令格式:

yum-config-manager --add-repo=file://
 yum-config-manager --add-repo=ftp://
复制代码


示例:

yum-config-manager --add-repo=file:///mnt           //使用本地源
 yum-config-manager --add-repo=ftp://192.168.72.10/centos7   //ftp方式搭建
复制代码


5.2 下载依赖包到本地(但不安装)

当内网的一台主机安装某个软件包却缺少依赖包时,可以先由一台可连接外网的服务器下载依赖包,之后共享给这台主机。

这时可以使用“yum install --downloadonly”命令,该命令可以仅下载所需软件及其依赖包、而不安装软件,大大减少了无外网安装时找依赖包的问题。命令格式如下:

yum install --downloadonly +软件名称 --downloaddir=指定rpm包存放路径
复制代码


例如,下载nginx所需要的依赖包到/mnt/nginx目录内:

yum install nginx --downloadonly --downloaddir=/mnt/nginx
相关文章
|
4月前
|
JSON 中间件 Go
Go 网络编程:HTTP服务与客户端开发
Go 语言的 `net/http` 包功能强大,可快速构建高并发 HTTP 服务。本文从创建简单 HTTP 服务入手,逐步讲解请求与响应对象、URL 参数处理、自定义路由、JSON 接口、静态文件服务、中间件编写及 HTTPS 配置等内容。通过示例代码展示如何使用 `http.HandleFunc`、`http.ServeMux`、`http.Client` 等工具实现常见功能,帮助开发者掌握构建高效 Web 应用的核心技能。
276 61
|
Ubuntu 网络协议 Unix
02理解网络IO:实现服务与客户端通信
网络IO指客户端与服务端通过网络进行数据收发的过程,常见于微信、QQ等应用。本文详解如何用C语言实现一个支持多客户端连接的TCP服务端,涉及socket编程、线程处理及通信流程,并分析“一消息一线程”模式的优缺点。
214 0
|
5月前
|
传感器 算法 数据安全/隐私保护
基于GA遗传优化的三维空间WSN网络最优节点部署算法matlab仿真
本程序基于遗传算法(GA)优化三维空间无线传感网络(WSN)的节点部署,通过MATLAB2022A实现仿真。算法旨在以最少的节点实现最大覆盖度,综合考虑空间覆盖、连通性、能耗管理及成本控制等关键问题。核心思想包括染色体编码节点位置、适应度函数评估性能,并采用网格填充法近似计算覆盖率。该方法可显著提升WSN在三维空间中的部署效率与经济性,为实际应用提供有力支持。
|
5月前
|
网络协议 安全 Devops
Infoblox DDI (NIOS) 9.0 - DNS、DHCP 和 IPAM (DDI) 核心网络服务管理
Infoblox DDI (NIOS) 9.0 - DNS、DHCP 和 IPAM (DDI) 核心网络服务管理
173 4
|
4月前
|
Linux 网络安全 开发工具
在Linux下配置gitee与Github的远程仓库
注意,git push后,是输入你的账号与密码。这个步骤可以通过特殊设置省去,但是一开始还是不要太省。
248 0
|
4月前
|
NoSQL Linux 开发工具
Linux环境基础开发工具的使用(yum、vim、gcc、g++、gdb、make/Makefile)
本文介绍了yum 包管理工具、Vim 编辑器、gcc/g++ 编译器、gdb 调试器、编译原理及 Makefile 的使用,同时还配备了如何使用,以及图解。旨在帮助读者更好地理解和应用这些工具与技术。
241 0
|
6月前
|
机器学习/深度学习 人工智能 安全
从攻防演练到AI防护:网络安全服务厂商F5的全方位安全策略
从攻防演练到AI防护:网络安全服务厂商F5的全方位安全策略
170 8
|
8月前
|
缓存 Ubuntu Linux
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
通过本文,我们详细了解了 `yum`、`rpm`、`apt-get`和 `wget`的区别、常用命令以及在CentOS和Ubuntu中安装 `wget`的方法。`yum`和 `apt-get`是高层次的包管理器,分别用于RPM系和Debian系发行版,能够自动解决依赖问题;而 `rpm`是低层次的包管理工具,适合处理单个包;`wget`则是一个功能强大的下载工具,适用于各种下载任务。在实际使用中,根据系统类型和任务需求选择合适的工具,可以大大提高工作效率和系统管理的便利性。
857 25
|
6月前
|
存储 运维 监控
2025年4月深度评测:10款最值得部署的网络监控软件
真正卓越的运维不仅仅是对当前问题的解决,更在于对未来的预测和防范。 OpManager 的预测报表功能可以为用户提供有关未来存储需求增长方式的直观展示,帮助用户进行基于需求的容量规划,从而避免成本浪费。
275 0
|
8月前
|
传感器 算法 物联网
基于粒子群算法的网络最优节点部署优化matlab仿真
本项目基于粒子群优化(PSO)算法,实现WSN网络节点的最优部署,以最大化节点覆盖范围。使用MATLAB2022A进行开发与测试,展示了优化后的节点分布及其覆盖范围。核心代码通过定义目标函数和约束条件,利用PSO算法迭代搜索最佳节点位置,并绘制优化结果图。PSO算法灵感源于鸟群觅食行为,适用于连续和离散空间的优化问题,在通信网络、物联网等领域有广泛应用。该算法通过模拟粒子群体智慧,高效逼近最优解,提升网络性能。
310 16