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
相关文章
|
1月前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
69 2
|
2月前
|
运维 监控 网络协议
|
2月前
|
Linux 开发工具 数据安全/隐私保护
linux异常一:feng 不在 sudoers 文件中,此事将被报告。yum提示Another app is currently holding the yum lock; waiting for
这篇文章介绍了在CentOS 7系统中安装Docker时遇到的两个常见问题及其解决方法:用户不在sudoers文件中导致权限不足,以及yum被锁定的问题。
43 2
linux异常一:feng 不在 sudoers 文件中,此事将被报告。yum提示Another app is currently holding the yum lock; waiting for
|
2月前
|
Ubuntu Linux 虚拟化
Linux虚拟机网络配置
【10月更文挑战第25天】在 Linux 虚拟机中,网络配置是实现虚拟机与外部网络通信的关键步骤。本文介绍了四种常见的网络配置方式:桥接模式、NAT 模式、仅主机模式和自定义网络模式,每种模式都详细说明了其原理和配置步骤。通过这些配置,用户可以根据实际需求选择合适的网络模式,确保虚拟机能够顺利地进行网络通信。
104 1
|
1月前
|
存储 缓存 Linux
【Linux】另一种基于rpm安装yum的方式
通过本文的方法,您可以在离线环境中使用RPM包安装YUM并进行必要的配置。这种方法适用于无法直接访问互联网的服务器或需要严格控制软件源的环境。通过配置本地YUM仓库,确保了软件包的安装和更新可以顺利进行。希望本文能够为您在特定环境中部署YUM提供实用的指导。
141 0
|
2月前
|
网络协议 安全 Ubuntu
Linux中网络连接问题
【10月更文挑战第3天】
36 1
|
2月前
|
缓存 前端开发 Linux
Linux yum 命令
10月更文挑战第1天
54 2
|
3月前
|
Linux 开发工具 git
linux自建仓库git之钩子不生效
linux自建仓库git之钩子不生效
|
3月前
|
关系型数据库 MySQL Linux
Linux 安装 mysql【使用yum源进行安装】
这篇文章介绍了在Linux系统中使用yum源安装MySQL数据库的步骤,包括配置yum源、安装MySQL服务、启动服务以及修改root用户的默认密码。
Linux 安装 mysql【使用yum源进行安装】
|
2月前
|
Unix Linux Go
Linux 使用Yum安装Go和配置环境
Linux 使用Yum安装Go和配置环境