- 挂载系统安装镜像到系统本地
方法一:上传系统镜像文件至系统本地
上传镜像至系统本地的方法太多,这篇文档中就不详细介绍了。例如:
①个人PC本地通过FTP服务工具搭建FTP服务(非客户端工具,像是Windows的IIS、FileZilla Server、Wing FTP Server等FTP Server端工具)
②RHEL本地通过vsftp创建FTP服务
③使用openssh附带的sftp服务
上传镜像文件至系统本地后通过mount命令进行挂载,例如挂载“/tmp”目录下的“rhel-server.iso”镜像文件到“/mnt”目录:
mount /tmp/rhel-server.iso /mnt
方法二:虚拟光驱挂载镜像文件
如果使用的是虚拟机,则可以在虚拟机的管理系统上通过虚拟光驱加载ISO镜像文件,虚拟光驱设备默认的设备路径为“/dev/sr0”,若已有加载其他的设备可能非此路径,可以使用“lsblk”命令查看块设备信息,如下图sr0设备大小4.2G的只读存储(rom),和我加载的镜像文件大小基本一致,则可以确定镜像文件已经被虚拟光驱读取。
之后便可以通过mount命令进行挂载,例如挂载块设备“/dev/sr0”到“/mnt”目录:
mount /dev/sr0 /mnt
- 拷贝RPM包和元数据文件
RHEL7:对于RHEL7版本,其镜像文件中有以下目录,对于镜像源只需要使用其中的“Packages”、“repodata”这两个目录及文件,其中存放的分别是RPM软件包和元数据文件。元数据文件为存放于本地的众多RPM包提供索引并记录有各软件包之间的依赖关系。
mkdir -p /pkg/rhel7
cp -r /mnt/Packages /pkg/rhel7
cp -r /mnt/repodata /pkg/rhel7
RHEL8:对于RHEL8版本,其镜像文件中有以下目录,对于镜像源只需要使用其中的“AppStream”、“BaseOS”这两个目录及文件,RHEL8的RPM包或者说内容,主要也是通过这两个存储库分发的。其中BaseOS存储库包含为所有安装提供基础的底层操作系统功能的核心集合。AppStream 存储库包含额外的用户空间应用程序、运行时语言和数据库,以支持各种工作负载和用例。
mkdir -p /pkg/rhel8
cp -r /mnt/Appstream /pkg/rhel8
cp -r /mnt/BaseOS /pkg/rhel8
- 配置repo文件
repo文件是软件仓库的配置文件,一个repo文件中通常记录了一个或者多个软件仓库的细节内容,例如名称、描述、下载地址等内容。对于自定义的仓库我们需要编写自己的repo文件。repo文件统一只能放置于“/etc/yum.repos.d/”目录下并以“.repo”结尾。
vi /etc/yum.repos.d/LOCALYUM.repo
对于RHEL7,填入以下内容:
仓库名“LOCALYUM”、描述“LOCALYUM”、仓库地址“本地/pkg/rhel7”、启用该仓库、不使用gpg对包进行完整性校验。
[LOCALYUM]
name=LOCALYUM
baseurl=file:///pkg/rhel7
enabled=1
gpgcheck=0
对于RHEL8,填入以下内容:
需要两个存储库配合使用。
[LOCALYUM_BaseOS]
name=LOCALYUM_BaseOS
baseurl=file:///pkg/rhel8/BaseOS
enabled=1
gpgcheck=0
[LOCALYUM_AppStream]
name=LOCALYUM_AppStream
baseurl=file:///pkg/rhel8/AppStream
enabled=1
gpgcheck=0
- 测试YUM
清理yum缓存目录总的各种内容。
yum clean all
下载和确保所有已启用的仓库的元数据可用。
yum makecache
之后就可以自己使用本地的软件仓库安装软件了。