目录
1、基础概念
1.1 YUM介绍
1.2 DNF介绍
1.3常用Linux版本介绍
2、YUM和DNF对比
2.1软件版本对比
2.2帮助内容对比
2.2.1 DNF帮助命令的输出
2.2.2 YUM帮助命令的输出
2.2.3对比结论
2.3软件仓库对比
2.4安装软件对比
2.4.1 YUM命令安装VSFTPD
2.4.2 DNF命令安装VSFTPD
2.4.3对比结论
2.5 DNF的优势
2.6 DNF的不足
3、YUM/DNF命令详解
4、配置软件仓库
4.1网络软件仓库
4.2本地软件仓库
4.3内网软件仓库服务器
4.4各系统本地软件仓库配置源文件
4.4.1 OEL8及以上版本
4.4.2 OEL7.9及以下版本
4.4.3 RHEL8及以上版本
4.4.4 RHEL7.9及以下版本
4.4.5 CentOS8及以上版本
4.4.6 CentOS7.9及以下版本
4,5各系统内网软件仓库配置源文件
4.5.1 OEL8及以上版本
4.5.2 OEL7.9及以下版本
4.5.3 RHEL8及以上版本
4.5.4 RHEL7.9及以下版本
4.5.5 CentOS8及以上版本
4.5.6 CentOS7.9及以下版本
YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RHEL、CentOS、OEL中的Shell前端软件包管理器。
YUM本身基于RPM包管理,能够从指定的YUM源服务器(一个或多个)自动下载RPM包并且进行安装和更新,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
要成功的使用 YUM 工具安装更新软件或系统,就需要有一个包含各种RPM软件包的repository(软件仓库),这个软件仓库我们习惯称为YUM源 (可以是本地源、网络源)。
就好像你要吃个回锅肉,只买肉回来肯定不行,你还得有油盐酱醋锅碗瓢盆等,传统的RPM安装方式就相当于你去超市一样一样的买全,而YUM则会在你买肉的同时把你所依赖的其他东西一次打包完成。
DNF (全称为Dandified yum)是新一代的rpm软件包管理器,他首先出现在 Fedora 18 这个发行版中。而最近,它取代了yum,正式成为 Fedora 22 的包管理器。
DNF在RHEL、CentOS、OEL等系统中,从版本8开始出现,目前和YUM共存。
DNF克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等多方面的内容。
DNF使用Hawkey库,该库解析RPM依赖性以在客户端计算机上运行查询。 它们基于libsolv构建,libsolv是一种使用可满足性算法的程序包相关性求解器。 您可以在libsolv的GitHub存储库中找到有关该算法的更多详细信息。
类别 |
介绍 |
最新相同版本 |
|
RHEL |
RedHat Enterprise Linux操作系统 |
RHEL8.5 |
4.18.0-348 |
CentOS |
源于RHEL依照开放源代码协定所释放的源代码编译而成(最近,传闻CentOS将沦落为RHEL和Fedora之间的过渡产品) |
CentOS8-20220215 |
4.18.0-365 |
OEL |
Oracle Enterprice Linux,源于RHEL操作系统,是Oracle公司专门针对Oracle自有的软件和硬件产品进行了大量优化而成 |
OEL8.5 |
4.18.0-348 |
Fedora |
Redhat公司赞助,Fedora项目社区开发,可以理解其实RHEL的上游源码平台或者测试平台 |
/ |
/ |
注:如上表,Fedora主要使用者为Linux爱好者,而在企业级应用中,通常使用RHEL、CentOS、OEL较为普遍,具体到Oracle的中间件、数据库系统的使用,建议使用OEL最佳。
具体到使用过程、命令等,RHEL、CentOS、OEL三者并无区别。
前提:以Oracle Enterprice Linux 8.5为环境,进行以下所有操作,如无特别说明,以下操作同样适用在Linux 7版本。
如下图,在同一个操作系统下面,DNF和YUM的版本相同,而且软件包的名字竟然都是DNF。
如此,我们也可以侧面确认,在Linux8之后,DNF是代替了YUM,但是YUM依然可以正常使用。
[root@oracle21c ~]# dnf --help
usage: dnf [options] COMMAND
List of Main Commands:
alias List or create command aliases
autoremove remove all unneeded packages that were originally installed as dependencies
check check for problems in the packagedb
check-update check for available package upgrades
clean remove cached data
deplist [deprecated, use repoquery --deplist] List package's dependencies and what packages provide them
distro-sync synchronize installed packages to the latest available versions
downgrade Downgrade a package
group display, or use, the groups information
help display a helpful usage message
history display, or use, the transaction history
info display details about a package or group of packages
install install a package or packages on your system
list list a package or groups of packages
makecache generate the metadata cache
mark mark or unmark installed packages as installed by user.
module Interact with Modules.
provides find what package provides the given value
reinstall reinstall a package
remove remove a package or packages from your system
repolist display the configured software repositories
repoquery search for packages matching keyword
repository-packages run commands on top of all packages in given repository
search search package details for the given string
shell run an interactive DNF shell
swap run an interactive DNF mod for remove and install one spec
updateinfo display advisories about packages
upgrade upgrade a package or packages on your system
upgrade-minimal upgrade, but only 'newest' package match which fixes a problem that affects your system
List of Plugin Commands:
builddep Install build dependencies for package or spec file
changelog Show changelog data of packages
config-manager manage dnf configuration options and repositories
copr Interact with Copr repositories.
debug-dump dump information about installed rpm packages to file
debug-restore restore packages recorded in debug-dump file
debuginfo-install install debuginfo packages
download Download package to current directory
groups-manager create and edit groups metadata file
needs-restarting determine updated binaries that need restarting
playground Interact with Playground repository.
repoclosure Display a list of unresolved dependencies for repositories
repodiff List differences between two sets of repositories
repograph Output a full package dependency graph in dot format
repomanage Manage a directory of rpm packages
reposync download all packages from remote repo
General DNF options:
-c [config file], --config [config file]
config file location
-q, --quiet quiet operation
-v, --verbose verbose operation
--version show DNF version and exit
--installroot [path] set install root
--nodocs do not install documentations
--noplugins disable all plugins
--enableplugin [plugin]
enable plugins by name
--disableplugin [plugin]
disable plugins by name
--releasever RELEASEVER
override the value of $releasever in config and repo
files
--setopt SETOPTS set arbitrary config and repo options
--skip-broken resolve depsolve problems by skipping packages
-h, --help, --help-cmd
show command help
--allowerasing allow erasing of installed packages to resolve
dependencies
-b, --best try the best available package versions in
transactions.
--nobest do not limit the transaction to the best candidate
-C, --cacheonly run entirely from system cache, don't update cache
-R [minutes], --randomwait [minutes]
maximum command wait time
-d [debug level], --debuglevel [debug level]
debugging output level
--debugsolver dumps detailed solving results into files
--showduplicates show duplicates, in repos, in list/search commands
-e ERRORLEVEL, --errorlevel ERRORLEVEL
error output level
--obsoletes enables dnf's obsoletes processing logic for upgrade
or display capabilities that the package obsoletes for
info, list and repoquery
--rpmverbosity [debug level name]
debugging output level for rpm
-y, --assumeyes automatically answer yes for all questions
--assumeno automatically answer no for all questions
--enablerepo [repo] Enable additional repositories. List option. Supports
globs, can be specified multiple times.
--disablerepo [repo] Disable repositories. List option. Supports globs, can
be specified multiple times.
--repo [repo], --repoid [repo]
enable just specific repositories by an id or a glob,
can be specified multiple times
--enable enable repos with config-manager command
(automatically saves)
--disable disable repos with config-manager command
(automatically saves)
-x [package], --exclude [package], --excludepkgs [package]
exclude packages by name or glob
--disableexcludes [repo], --disableexcludepkgs [repo]
disable excludepkgs
--repofrompath [repo,path]
label and path to an additional repository to use
(same path as in a baseurl), can be specified multiple
times.
--noautoremove disable removal of dependencies that are no longer
used
--nogpgcheck disable gpg signature checking (if RPM policy allows)
--color COLOR control whether color is used
--refresh set metadata as expired before running the command
-4 resolve to IPv4 addresses only
-6 resolve to IPv6 addresses only
--destdir DESTDIR, --downloaddir DESTDIR
set directory to copy packages to
--downloadonly only download packages
--comment COMMENT add a comment to transaction
--bugfix Include bugfix relevant packages, in updates
--enhancement Include enhancement relevant packages, in updates
--newpackage Include newpackage relevant packages, in updates
--security Include security relevant packages, in updates
--advisory ADVISORY, --advisories ADVISORY
Include packages needed to fix the given advisory, in
updates
--bz BUGZILLA, --bzs BUGZILLA
Include packages needed to fix the given BZ, in
updates
--cve CVES, --cves CVES
Include packages needed to fix the given CVE, in
updates
--sec-severity {Critical,Important,Moderate,Low}, --secseverity {Critical,Important,Moderate,Low}
Include security relevant packages matching the
severity, in updates
--forcearch ARCH Force the use of an architecture
[root@oracle21c ~]# yum --help
usage: yum [options] COMMAND
List of Main Commands:
alias List or create command aliases
autoremove remove all unneeded packages that were originally installed as dependencies
check check for problems in the packagedb
check-update check for available package upgrades
clean remove cached data
deplist [deprecated, use repoquery --deplist] List package's dependencies and what packages provide them
distro-sync synchronize installed packages to the latest available versions
downgrade Downgrade a package
group display, or use, the groups information
help display a helpful usage message
history display, or use, the transaction history
info display details about a package or group of packages
install install a package or packages on your system
list list a package or groups of packages
makecache generate the metadata cache
mark mark or unmark installed packages as installed by user.
module Interact with Modules.
provides find what package provides the given value
reinstall reinstall a package
remove remove a package or packages from your system
repolist display the configured software repositories
repoquery search for packages matching keyword
repository-packages run commands on top of all packages in given repository
search search package details for the given string
shell run an interactive YUM shell
swap run an interactive YUM mod for remove and install one spec
updateinfo display advisories about packages
upgrade upgrade a package or packages on your system
upgrade-minimal upgrade, but only 'newest' package match which fixes a problem that affects your system
List of Plugin Commands:
builddep Install build dependencies for package or spec file
changelog Show changelog data of packages
config-manager manage yum configuration options and repositories
copr Interact with Copr repositories.
debug-dump dump information about installed rpm packages to file
debug-restore restore packages recorded in debug-dump file
debuginfo-install install debuginfo packages
download Download package to current directory
groups-manager create and edit groups metadata file
needs-restarting determine updated binaries that need restarting
playground Interact with Playground repository.
repoclosure Display a list of unresolved dependencies for repositories
repodiff List differences between two sets of repositories
repograph Output a full package dependency graph in dot format
repomanage Manage a directory of rpm packages
reposync download all packages from remote repo
General YUM options:
-c [config file], --config [config file]
config file location
-q, --quiet quiet operation
-v, --verbose verbose operation
--version show YUM version and exit
--installroot [path] set install root
--nodocs do not install documentations
--noplugins disable all plugins
--enableplugin [plugin]
enable plugins by name
--disableplugin [plugin]
disable plugins by name
--releasever RELEASEVER
override the value of $releasever in config and repo
files
--setopt SETOPTS set arbitrary config and repo options
--skip-broken resolve depsolve problems by skipping packages
-h, --help, --help-cmd
show command help
--allowerasing allow erasing of installed packages to resolve
dependencies
-b, --best try the best available package versions in
transactions.
--nobest do not limit the transaction to the best candidate
-C, --cacheonly run entirely from system cache, don't update cache
-R [minutes], --randomwait [minutes]
maximum command wait time
-d [debug level], --debuglevel [debug level]
debugging output level
--debugsolver dumps detailed solving results into files
--showduplicates show duplicates, in repos, in list/search commands
-e ERRORLEVEL, --errorlevel ERRORLEVEL
error output level
--obsoletes enables yum's obsoletes processing logic for upgrade
or display capabilities that the package obsoletes for
info, list and repoquery
--rpmverbosity [debug level name]
debugging output level for rpm
-y, --assumeyes automatically answer yes for all questions
--assumeno automatically answer no for all questions
--enablerepo [repo] Enable additional repositories. List option. Supports
globs, can be specified multiple times.
--disablerepo [repo] Disable repositories. List option. Supports globs, can
be specified multiple times.
--repo [repo], --repoid [repo]
enable just specific repositories by an id or a glob,
can be specified multiple times
--enable enable repos with config-manager command
(automatically saves)
--disable disable repos with config-manager command
(automatically saves)
-x [package], --exclude [package], --excludepkgs [package]
exclude packages by name or glob
--disableexcludes [repo], --disableexcludepkgs [repo]
disable excludepkgs
--repofrompath [repo,path]
label and path to an additional repository to use
(same path as in a baseurl), can be specified multiple
times.
--noautoremove disable removal of dependencies that are no longer
used
--nogpgcheck disable gpg signature checking (if RPM policy allows)
--color COLOR control whether color is used
--refresh set metadata as expired before running the command
-4 resolve to IPv4 addresses only
-6 resolve to IPv6 addresses only
--destdir DESTDIR, --downloaddir DESTDIR
set directory to copy packages to
--downloadonly only download packages
--comment COMMENT add a comment to transaction
--bugfix Include bugfix relevant packages, in updates
--enhancement Include enhancement relevant packages, in updates
--newpackage Include newpackage relevant packages, in updates
--security Include security relevant packages, in updates
--advisory ADVISORY, --advisories ADVISORY
Include packages needed to fix the given advisory, in
updates
--bz BUGZILLA, --bzs BUGZILLA
Include packages needed to fix the given BZ, in
updates
--cve CVES, --cves CVES
Include packages needed to fix the given CVE, in
updates
--sec-severity {Critical,Important,Moderate,Low}, --secseverity {Critical,Important,Moderate,Low}
Include security relevant packages matching the
severity, in updates
--forcearch ARCH Force the use of an architecture
[root@oracle21c ~]#
从上面DNF和YUM帮助命令的输出可以看出,两者的区别很小,使用方法大致相同,常用命令并无区别。
前提:创建/mount目录,把光盘镜像文件挂载在这个目录。然后在/etc/yum.repo.d/目录下移除所有系统自带YUM/DNF源(软件仓库)配置文件,创建本地YUM/DNF源(软件仓库)配置文件(后面章节详细介绍)。
如下图,DNF和YUM命令所列出的YUM/DNF源相同。
如下图,清除缓存中的RPM软件包列表,重新获取缓存,YUM和DNF的操作相同,结果也相同。
如下图,我们把YUM/DNF源配置文件移除,清除缓存之后,YUM/DNF都无法获取软件仓库源的配置文件信息。
如此,我们可以确认,DNF在软件仓库方面的配置和使用,和YUM并无任何区别。
2.4.2 DNF命令安装VSFTPD
前提,使用YUM命令卸载软件包。
2.4.3对比结论
如上面YUM和DNF命令输出结果来看,没有任何差别。
DNF 包管理器作为 YUM 包管理器的升级替代品,它能自动完成更多的操作,但不足之处还是有的,举例如下:
前提:下面的内容主要体现DNF命令操作,如无特别说明,YUM命令同样适用。
查看系统中可用的软件仓库
# dnf repolist
查看系统中可用和不可用的所有的软件仓库
# dnf repolist all
# dnf list
# dnf list installed
# dnf list available
# dnf search vsftpd
# dnf provides vsftpd
# dnf info vsftpd
# dnf install vsftpd
# dnf install vsftpd -y
# dnf remove vsftpd
# dnf autoremove
# dnf clean all
# dnf help clean
# dnf makecache
# dnf check- update
# dnf history
# dnf grouplist
# dnf groupinstall ‘System Tools’
# dnf groupinstall ‘System Tools’ -y
# dnf groupremove ‘System Tools’
# dnf groupremove ‘System Tools’ -y
# dnf -enablerepo=epel install vsftpd
# dnf reinstall vsftpd
# dnf update
# dnf update vsftpd
# dnf help
默认情况下,RHEL、CentOS、OEL的7和8版本系统下,YUM/DNF软件仓库的配置文件都存放在/etc/yum.repo.d/目录下,以repo作为后缀。
如果你的系统可以连接互联网,那软件仓库的配置就可以使用网络上的一些免费软件仓库资源进行配置。
以某云为例。
https://developer.aliyun.com/mirror/oracle
下面简单介绍配置软件仓库方法如下。
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
网络软件仓库的使用虽然不用自己准备系统镜像文件,但是相对麻烦,而且会受到网速的影响较大。
使用系统镜像文件或者系统光盘,挂载到目录,然后创建YUM/DNF软件仓库,可以暂时使用。
也可以将系统镜像文件拷贝到系统之中,然后挂载到目录之后,设置系统开机自动挂载,可以长期使用。
比如:/dev/sr0
# mkdir /mount
# mount /dev/sr0 /mount
如下图所示,为OEL8.5系统镜像根目录(RHEL和centOS同版本目录和此相同)。
如下图所示,为OEL7.9系统镜像根目录(RHEL和centOS同版本目录和此相同)。
当你作为一个网络管理员的时候,如果网络内Linux系统数量较多,每个系统需要安装或者更新软件包的时候,都需要你去配置本地软件仓库,那将会是很麻烦的事情。
而且,往往网络内的很多系统是不允许访问互联网的,这个时候,创建一个内网的网络软件仓库服务器将会变的很有必要。
下面,依旧以OEL8.5为环境,详解创建过程。
# yum install httpd -y
Last metadata expiration check: 2:27:20 ago on Sat 19 Feb 2022 03:19:18 PM CST.
Dependencies resolved.
=====================================================================================
Package Arch Version Repo Size
=====================================================================================
Installing:
httpd x86_64 2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271 Appstream 1.4 M
Installing dependencies:
apr x86_64 1.6.3-12.el8 Appstream 129 k
apr-util x86_64 1.6.1-6.el8 Appstream 105 k
httpd-filesystem noarch 2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271 Appstream 39 k
httpd-tools x86_64 2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271 Appstream 106 k
mailcap noarch 2.1.48-3.el8 base 39 k
mod_http2 x86_64 1.15.7-3.module+el8.4.0+20024+b87b2deb Appstream 154 k
oracle-logos-httpd
noarch 84.5-1.0.1.el8 base 29 k
Installing weak dependencies:
apr-util-bdb x86_64 1.6.1-6.el8 Appstream 24 k
apr-util-openssl x86_64 1.6.1-6.el8 Appstream 27 k
Enabling module streams:
httpd 2.4
Transaction Summary
=====================================================================================
Install 10 Packages
Total size: 2.0 M
Installed size: 5.5 M
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : apr-1.6.3-12.el8.x86_64 1/10
Running scriptlet: apr-1.6.3-12.el8.x86_64 1/10
Installing : apr-util-bdb-1.6.1-6.el8.x86_64 2/10
Installing : apr-util-openssl-1.6.1-6.el8.x86_64 3/10
Installing : apr-util-1.6.1-6.el8.x86_64 4/10
Running scriptlet: apr-util-1.6.1-6.el8.x86_64 4/10
Installing : httpd-tools-2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271 5/10
Running scriptlet: httpd-filesystem-2.4.37-41.0.1.module+el8.5.0+20323+c8e 6/10
Installing : httpd-filesystem-2.4.37-41.0.1.module+el8.5.0+20323+c8e 6/10
Installing : oracle-logos-httpd-84.5-1.0.1.el8.noarch 7/10
Installing : mailcap-2.1.48-3.el8.noarch 8/10
Installing : mod_http2-1.15.7-3.module+el8.4.0+20024+b87b2deb.x86_64 9/10
Installing : httpd-2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271.x86_6 10/10
Running scriptlet: httpd-2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271.x86_6 10/10
Verifying : mailcap-2.1.48-3.el8.noarch 1/10
Verifying : oracle-logos-httpd-84.5-1.0.1.el8.noarch 2/10
Verifying : apr-1.6.3-12.el8.x86_64 3/10
Verifying : apr-util-1.6.1-6.el8.x86_64 4/10
Verifying : apr-util-bdb-1.6.1-6.el8.x86_64 5/10
Verifying : apr-util-openssl-1.6.1-6.el8.x86_64 6/10
Verifying : httpd-2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271.x86_6 7/10
Verifying : httpd-filesystem-2.4.37-41.0.1.module+el8.5.0+20323+c8e 8/10
Verifying : httpd-tools-2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271 9/10
Verifying : mod_http2-1.15.7-3.module+el8.4.0+20024+b87b2deb.x86_64 10/10
Installed:
apr-1.6.3-12.el8.x86_64
apr-util-1.6.1-6.el8.x86_64
apr-util-bdb-1.6.1-6.el8.x86_64
apr-util-openssl-1.6.1-6.el8.x86_64
httpd-2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271.x86_64
httpd-filesystem-2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271.noarch
httpd-tools-2.4.37-41.0.1.module+el8.5.0+20323+c8e0c271.x86_64
mailcap-2.1.48-3.el8.noarch
mod_http2-1.15.7-3.module+el8.4.0+20024+b87b2deb.x86_64
oracle-logos-httpd-84.5-1.0.1.el8.noarch
Complete!
#
默认情况下,http服务的根目录在/var/www/html/
如下图所示,baseurl地址为内网所创建的http服务器地址以及系统镜像文件的拷目录。
依照上述步骤,我们可以在一台http服务器中,把内网常用的各版本LINUX系统镜像文件进行相同操作。然后在Linux客户端依据实际系统版本进行相应配置。
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=oel85-yum
baseurl=file:///mount/BaseOS
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
[Appstream]
name=oel85-yum-app
baseurl= file:///mount/AppStream
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=oel79
baseurl= file:///mount/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=RHEL8-yum
baseurl=file:///mount/BaseOS
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[Appstream]
name=RHEL8-yum-app
baseurl= file:///mount/AppStream
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY- redhat-release
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=rhel79
baseurl= file:///mount/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=centos-yum
baseurl=file:///mount/BaseOS
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centos-8
[Appstream]
name= centos -yum-app
baseurl= file:///mount/AppStream
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY- centos-8
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=centos
baseurl= file:///mount/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centos-7
以下内容红色部分根据实际情况进行调整。
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=oel85-yum
baseurl=http://192.168.31.101/OEL85/BaseOS
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
[Appstream]
name=oel85-yum-app
baseurl= http://192.168.31.101/OEL85/AppStream
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=oel79
baseurl= http://192.168.31.101/OEL79/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=RHEL8-yum
baseurl=http://192.168.31.101/RHEL85/BaseOS
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[Appstream]
name=RHEL8-yum-app
baseurl= http://192.168.31.101/RHEL85/AppStream
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY- redhat-release
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=rhel79
baseurl= http://192.168.31.101/RHEL79/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=centos-yum
baseurl=http://192.168.31.101/centos/BaseOS
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centos-8
[Appstream]
name= centos -yum-app
baseurl= http://192.168.31.101/centos/AppStream
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY- centos-8
# cat /etc/yum.repos.d/base-yum.repo
[base]
name=centos
baseurl= http://192.168.31.101/centos/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centos-7