Linux基础软件-yum(二)

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

Linux进阶部分又分了很多小的部分,我们刚讲完了Linux日常运维,讲的那些东西都算是系统自带的,但是Linux作为一个服务器操作系统,肯定是要安装运行软件来满足我们的业务需要,本章基础软件部分,将从下面几个部分来讲解:

Linux基础软件-软件安装

Linux基础软件-yum(一)

Linux基础软件-yum(二)(本章节)

Linux基础软件-ntp

Linux基础软件-chrony

Linux基础软件-dns(一)

Linux基础软件-dns(二)

Linux基础软件-nfs

Linux基础软件-lvm

Linux基础软件-Selinux&库文件&swap

上一节,我们讲的无论是阿里源,epel源还是单独的Docker和Mysql源,本质上都是要依赖互联网的,如果不具有网络能力,我们能否搭建一个本地源呢?

本小节就主要讲的就是在没有网络情况下,如何搭建本地源。

本地源

下面是在CentOS等基于RPM的Linux发行版中配置本地Yum源的步骤:

1.挂载安装介质

首先,你需要将你的CentOS安装光盘(或ISO文件)挂载到某个目录,比如/mnt/cdrom。你可以使用以下命令来挂载:

#目前基本没有光盘了
mount /dev/cdrom /mnt/cdrom

选择本地iso,如果要选最全面的包,就要选最大的包,这里我只选了个折中的包,最大的包有差不多10G。

图片

 
#挂载本地iso,提前准备好了目录和iso文件。
[root@localhost mnt]# mount -o loop /mnt/CentOS-7-x86_64-DVD-2009.iso /mnt/cdrom
mount: /dev/loop0 写保护,将以只读方式挂载
[root@localhost mnt]# df -h |grep cdrom
/dev/loop0      4.4G  4.4G     0  100% /mnt/cdrom

2.创建.repo文件

接下来,你需要在/etc/yum.repos.d/目录下创建一个新的.repo文件,比如myrepo.repo。你可以使用文本编辑器来创建和编辑这个文件。在这个文件中,你需要指定你的本地Yum源的名称、描述、路径等信息。一个例子如下:

[myrepo]
name=My Repository
baseurl=file:///mnt/cdrom // 需要和上面挂载的路径一致
enabled=1
gpgcheck=0

这个为了方便验证要成功,最好把网络关掉,然后把其他repo文件都移走,才能避免干扰。

在这里,baseurl指定了你的本地Yum源的路径(即你的安装介质的挂载点)。enabled=1表示这个Yum源是启用的。gpgcheck=0表示不进行GPG签名检查。

3.清除Yum缓存

你需要使用以下命令来清除Yum的缓存:

yum clean all
yum makecache

4.测试本地Yum源

最后,你可以使用以下命令来测试你的本地Yum源是否正常工作:

yum list
#由于内容太多,所以下面的图,我只取了部分包。

图片

如果你看到了你的安装介质中的软件包,那么你的本地Yum源就已经配置成功了。

局域网源

刚才的操作虽然可以用,但是它只局限于单机使用,如果是局域网环境,我们能不能找1台服务器来作为yum源,其他服务器都从这个服务器来读取下载包呢?

1.准备一台服务器

首先,你需要准备一台可以作为Yum服务器的机器,它需要有一定的硬盘空间来存放软件包,同时需要安装HTTP或FTP服务器软件,用于提供网络访问。

2.挂载并复制软件包

然后,把CentOS的安装光盘挂载到这台服务器上,我们就借用上小节的/mnt/cdrom目录。把所有文件复制到一个目录下,例如/mnt/centos7。

因为iso或者光盘是只读的,而配置源会产生文件,所以需要复制出来单独的目录,而不能复用原来的只读目录。

3.安装createrepo

接下来,安装createrepo工具,这个工具可以创建Yum源需要的元数据信息:

yum install -y createrepo

4.创建Yum源元数据

然后在存放软件包的目录下创建Yum源的元数据:

createrepo /mnt/centos7

5.配置HTTP或FTP服务器

根据你的实际情况,配置HTTP或FTP服务器,使其可以提供对/mnt/centos7目录的访问。由于这里还没有讲web服务器,所以过程就略过。

6.在客户端配置Yum源​​​​​​​

最后,在局域网内的其他机器上,你需要修改/etc/yum.repos.d/目录下的.repo文件,将baseurl设置为你的Yum服务器的地址,为了避免干扰,需要把其他repo文件移走。

[mylocal]
name=My Repository
baseurl=http://192.168.31.100/
enabled=1
gpgcheck=0

7.运行yum clean allyum list命令:如果能列出软件包,说明Yum源已经配置成功。

图片

总结

  1. 我们可以搭建本地iso源或者局域网源来满足yum命令的使用。

  2. 前面2个源,我们依赖的都是iso文件,但是这里的iso文件都是比较老的,我们可以通过去同步公网源来保持数据的及时性。

  3. 这里搭建的都是centos7的iso,那么能否搭建支持多个源的服务器呢?当然是可以的,这里需要稍微调整下目录即可。

  4. 如果yum源对应的服务器,不能上网,我们又该怎么办呢?

  5. 我们如何才能把服务器的源同步下来呢?总不能一个一个的下载把,这里其实有个rsync协议可以直接源里面指定的目录文件都下载下来,这个后期会单独讲这个命令。

关注微信公众号《运维小路》获取更多内容。

  • 12
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值