本地rpm包目录制作yum源
下载所有所需的安装包
# 查看依赖包列表
yum deplist openssl
# 仅下载包但不安装 下载目录为/opt/openssl
yum install openssl-devel --downloadonly --downloaddir=/opt/openssl
在服务器无法连接外部网络的情况下,需要在互联网上下载好rpm对应的软件包以及软件依赖包
制作本地repo
需要依赖于httpd
服务以及createrepo
,即我们需要安装httpd
、createrepo
# 将已下载好的httpd、createrepo安装包拷贝到服务器
[root@os2 createrepo]# ll
total 96
-rw-r--r--. 1 root root 95840 Aug 10 2017 createrepo-0.9.9-28.el7.noarch.rpm
[root@os2 createrepo]# ll ../httpd/
total 2784
-rw-r--r--. 1 root root 2846724 Nov 18 22:17 httpd-2.4.6-97.el7.centos.x86_64.rpm
[root@os2 createrepo]# rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm ## 这里两个包已经安装过了
Preparing... ################################# [100%]
package createrepo-0.9.9-28.el7.noarch is already installed
[root@os2 createrepo]# rpm -ivh ../httpd/httpd-2.4.6-97.el7.centos.x86_64.rpm
Preparing... ################################# [100%]
package httpd-2.4.6-97.el7.centos.x86_64 is already installed
## 启动httpd服务
[root@os2 createrepo]# systemctl start httpd # 启动
[root@os2 createrepo]# systemctl status httpd # 查看状态
安装httpd
以及createrepo
后,制作本地源
# 以openssl为例,将下载好的openssl以及其依赖包放入/var/www/html目录
mkdir /var/www/html/openssl
cp /opt/openssl/*.rpm /var/www/html/openssl
cd /var/www/html/openssl
createrepo . # 生成一个reportdata文件夹
创建repo
## 移除其他repo源
[root@os2 yum.repos.d]# mkdir /opt/repo
[root@os2 yum.repos.d]# mv CentOS-Base.repo docker-ce.repo kubernetes.repo /opt/repo/
[root@os2 yum.repos.d]# vim /etc/yum.repo.d/openssl.repo
# 写入以下内容
[openssl]
name=OpenSSL DEPS
baseurl=http://localhost/openssl/
gpgcheck=0
enabled=1
[root@os2 openssl]# yum repolist # 查看repo源列表
[root@os2 yum.repos.d]# yum update
[root@os2 yum.repos.d]# yum -y install openssl-devel
[root@os2 yum.repos.d]# openssl version
OpenSSL 1.0.2k-fips 26 Jan 2017
安装完成
清除软件并清除相关依赖
[root@os2 yum.repos.d]# yum history list openssl-devel
Loaded plugins: fastestmirror
ID | Command line | Date and time | Action(s) | Altered
-------------------------------------------------------------------------------
11 | -y remove openssl-devel | 2021-05-14 13:45 | Erase | 1
10 | -y install openssl-devel | 2021-05-14 13:44 | Install | 1
9 | -y remove openssl-devel | 2021-05-14 13:43 | Erase | 1
8 | -y install openssl-devel | 2021-05-14 13:43 | I, U | 21
history list
通过回滚事务,清除相关openssl
依赖包
[root@os2 yum.repos.d]# yum history undo 8