当你需要使用yum源而你的Linux系统又不能联网时,你就不能便捷的使用联网的yum源了,这时候你就需要一个本地的不需要联网的yum源,我们可以利用系统镜像光盘自己来制作一个yum源来满足自己的需求,具体制作步骤如下:
一、本地仓库搭建
1、挂载镜像
[root@oldboy ~]#mount /dev/cdrom /mnt
2、备份原有仓库
[root@oldboy ~]# gzip /etc/yum.repos.d/*
3、使用yum-config-manager命令添加本地仓库或者使用手动添加repo文件
[root@oldboy ~]#yum-config-manager --add-repo="file:///mnt"
[root@oldboy ~]# vim /etc/yum.repos.d/cdrom.repo
[cdrom]
name=This is local cdrom
baseurl=file:///mnt
enabled=1
gpgcheck=0
4、手动配置的文件相关注释
[] 仓库名称
name 仓库描述信息
baseurl yum源url地址 ,可以是file:// ftp:// http://
enabled 是否使用该YUM源(0代表禁用, 1代表激活)
gpgcheck 是否验证软件签名(0代表禁用, 1代表激活)
5、生成缓存
[root@oldboy ~]# yum makecache
二、网络仓库搭建
1、环境准备
系统 | IP | 角色 |
---|---|---|
Centos 7 | 10.0.0.200 | yum仓库服务端 |
Centos 7 | 10.0.0.199 | yum仓库客户端 |
2、服务端进行仓库搭建准备工作
1)、挂载光盘
mount /dev/cdrom /mnt
2)、通过ftp共享软件包存放的目录
[root@oldboy ~]# yum install vsftpd -y
[root@oldboy ~]# systemctl start vsftpd
[root@oldboy ~]# systemctl stop firewalld
[root@oldboy ~]# setenforce 0
3)、将光盘中的软件包都拷贝至ftp的共享目录下
[root@oldboy ~]# mkdir /var/ftp/centos7/
[root@oldboy ~]# find /mnt/ -type f -name "*.rpm" exec cp {} /var/ftp/centos7/ \;
4)、将共享的目录设置成yum仓库
[root@oldboy ~]# yum install createrepo -y
[root@oldboy ~]# createrepo /var/ftp/centos7/
2、客户端进行仓库搭建准备工作
1)、关闭所有的公网yum仓库
[root@oldboy-199 yum.repos.d]# gzip /etc/yum.repos.d/*
2)、新建一个repo文件,文件中的baseurl指向服务端
[root@oldboy-199 ~]# vim /etc/yum.repos.d/ftpcentos7.repo
[ftp-centos7]
name = This is Base Repo
baseurl = ftp://10.0.0.200/centos7/
enable = 1
gpgcheck = 0
3)、测试是否能正常安装软件
[root@oldboy-199 ~]# yum install httpd -y
3、尝试安装zabbix的仓库
1)、获取zabbix的软件包
[root@oldboy ~]# curl https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/ > zabbix_1.txt
[root@oldboy ~]# grep "<a href" zabbix_1.txt | awk -F '"' '{print "wget https://mirrors.aliyun.com/zabbix/zabbix/4.0/rhel/7/x86_64/"$2}' > zabbix_2.txt
[root@oldboy ~]# chmod +x zabbix_3.txt
[root@oldboy ~]# ./zabbix_2.txt
2)、下载zabbix缺少的四个软件包
[root@oldboy ~]# wget http://repo.zabbix.com/non-supported/rhel/7/x86_64/fping-3.10-1.el7.x86_64.rpm
[root@oldboy ~]# wget http://repo.zabbix.com/non-supported/rhel/7/x86_64/iksemel-1.4-2.el7.centos.x86_64.rpm
[root@oldboy ~]# wget http://repo.zabbix.com/non-supported/rhel/7/x86_64/iksemel-devel-1.4-2.el7.centos.x86_64.rpm
[root@oldboy ~]# wget http://repo.zabbix.com/non-supported/rhel/7/x86_64/iksemel-utils-1.4-2.el7.centos.x86_64.rpm
3)、将下载好的软件包移动到指定的目录
[root@oldboy ~]# mkdir /var/ftp/zabbix
[root@oldboy ~]# find ./ -type f -name "*.rpm" -exec mv {} /var/ftp/zabbix/ \;
4)、将zabbix目录生成为一个yum仓库
[root@oldboy ~]# createrepo /var/ftp/zabbix/
5)、客户端新建一个repo文件指向服务端提供的zabbix仓库
[root@oldboy-199 ~]# cat /etc/yum.repos.d/ftpzabbix.repo
[ftp-zabbix]
name = ftp share zabbix repo
baseurl = ftp://10.0.0.200/zabbix/
enable = 1
gpgcheck = 0
6)、客户端测试zabbix仓库是否可用
[root@oldboy-199 ~]# yum clean all
[root@oldboy-199 ~]# yum install zabbix-agent
[root@oldboy-199 ~]# yum install zabbix-get
[root@oldboy-199 ~]# yum install zabbix-server
三、源码包管理实践
1、源码包是什么
源码包指的是开发编写好的程序源代码,但并没有将其编译为一个能正常使用的工具。
2、为什么要学习源码包
1)、部分软件官网仅提供源码包,需要自行编译并安装。
2)、部分软件在新版本有一些特性还没来得及制作成rpm包时,可以自行编译软件使用其新特性。
3、源码包的优缺点
1)、优点:
(1)、可以自行修改源代码
(2)、可以定制需要的相关功能
(3)、新版软件优先更新源码
2)、缺点:
(1)、相对yum安装软件会复杂很多。
(2)、标准化实施困难,自动化就无法落地。
4、源码包如何获取
常见的软件包都可以在官网获取源码包,比如 apache、nginx、mysql等等
5、
将源码包编译为二进制可执行文件步骤如下,简称安装三步曲