CentOS本地软件仓库¶
当一次次通过Internet安装和更新CentOS,当运维当服务器越来越多,你一定会有一个强烈的愿望,构建一个本地CentOS软件仓库。这样只要同步一次集中的软件仓库,就可以提供本地局域网所有CentOS服务器更新到相同版本。
备注
本实践是在CentOS 8上完成,使用安装命令是 dnf
,如果你使用CentOS 7或更低版本,则使用 yum
代替 dnf
命令。
CentOS 8包含2个仓库: BaseOS
和 AppStream
(Application Stream):
BaseOS是最小化操作系统所需要的软件包
AppStream则包含其余软件包,依赖和数据库
如果你手边有CentOS 8 DVD安装ISO文件,则可以使用安装光盘的ISO文件快速构建本地安装仓库,方便进行软件安装。
挂载CentOS 8安装ISO文件¶
挂载ISO文件到选定的目录,这里选择
/opt
目录:mount CentOS-8-x86_64-1905-dvd1.iso /opt
创建CentOS本地YUM仓库¶
在ISO文件挂载的目录下有一个
media.repo
文件,复制到/etc/yum.repos.d/
目录下:cp -v /opt/media.repo /etc/yum.repos.d/centos8.repo
修订该文件属性避免被其他用户修改:
chmod 644 /etc/yum.repos.d/centos8.repo
修改该配置文件内容修改如下:
[InstallMedia-BaseOS] name=CentOS Linux 8 - BaseOS metadata_expire=-1 gpgcheck=1 enabled=1 baseurl=file:///opt/BaseOS/ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial [InstallMedia-AppStream] name=CentOS Linux 8 - AppStream metadata_expire=-1 gpgcheck=1 enabled=1 baseurl=file:///opt/AppStream/ gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
使用本地仓库¶
现在更新DNF/YUM缓存:
dnf clean all # 或者 yum clean all
检查本地软件仓库是否生效:
dnf repolist # 或者 yum repolist
现在就可以安装软件包了,可以看到软件包是本地仓库:
dnf install <package_name>