客户遇到在OEL8安装Oracle缺包问题,使用dnf安装也没有,甚至连oracle-database-preinstall-21c
都装不上。本质是DNF配置问题。
早期为了解决这类问题,专门写过很多yum配置的文章,后来汇总一篇《Linux的yum源配置总结》,包含当时的各种版本各种配置,只要有人求助遇到此类问题就甩给他,十有八九都能自行解决。
- https://cloud.tencent.com/developer/article/1619231
现如今,很多年没搞这玩意儿了,恍然发现新版的Linux,yum都退出历史舞台了,改成了dnf...
残留的yum命令也都链接指向dnf。
起初以为是多么大的改变呢,因为自己的确没配过dnf本地源,所以为了给客户更好的指导,现下载了客户用到的OEL8.7介质,然后测试发现这东西没太大改变,最起码对于使用者,是换汤不换药,本质还是此类问题,不会很复杂。
过程中顺便熟悉基本的OEL8的一些命令吧。
- 1.虚机装OEL8.7
- 2.配置dnf本地源
- 3.安装Oracle所需包
1.虚机装OEL8.7
如今是真的没办法才会临时使用虚机,因为云时代真的是太方便了。
使用Virtual Box安装,发现现在虚机的安装也比以前省事太多,输入一些必要信息,虚拟机直接自己就能安装好了。
唯一动手的,就是配置改了下网络,修改使用Host-Only网络,为了模拟不连接外网的客户环境。
IP地址为:192.168.56.4
这里用到OEL8中,重启指定网卡enp0s3的命令:
代码语言:javascript复制nmcli connection down enp0s3
nmcli connection up enp0s3
之前熟悉的ifdown、ifup啥的,默认的安装下都没有。。
查看IP配置信息:
代码语言:javascript复制ip addr
2.配置dnf本地源
起初以为多麻烦,实际完全一样。没啥技术含量直接贴出我的配置,供大家参考:
我是新建的一个文件oel.repo。
代码语言:javascript复制[root@OEL8 yum.repos.d]# cat oel.repo
[OEL8.7-APP]
name=oel8.7
baseurl=file:///media/AppStream/
enabled=1
gpgcheck=0
[OEL8.7-BASE]
name=oel8.7
baseurl=file:///media/BaseOS/
enabled=1
gpgcheck=0
这里面指定了两个位置,二者总共加起来有7000多个包。
代码语言:javascript复制[root@OEL8 yum.repos.d]# dnf list |wc -l
Failed to set locale, defaulting to C.UTF-8
7146
客户这里说他那里只能看到1000多个包,明显是哪里配置有问题或没正确读到配置。
小技巧是,建议把/etc/yum.repos.d目录下的其他配置都干掉(或者备份到一个专门备份的目录),这里只留自己配置的本地源。即便还有问题也好排查。
另外我测试环境下的这个Failed的提示实际也不影响啥,但看着着实不爽,可以在/etc/profile中添加一个LC_ALL的环境变量来解决:
代码语言:javascript复制echo "export LC_ALL=en_US.UTF8" >> /etc/profile
source /etc/profile
再次查询,不再显示Failed to set locale, defaulting to C.UTF-8
的错误提示:
[root@OEL8 yum.repos.d]# dnf list |wc -l
7146
[root@OEL8 yum.repos.d]#
3.安装Oracle所需包
尝试安装Oracle所需包,直接dnf install oracle-database-preinstall-21c
安装必备的,后面少啥再装啥即可。
[root@OEL8 yum.repos.d]# dnf install oracle-database-preinstall-21c
Last metadata expiration check: 0:45:09 ago on Wed 19 Jun 2024 08:37:17 PM CST.
Dependencies resolved.
=========================================================================================================================================================
Package Architecture Version Repository Size
=========================================================================================================================================================
Installing:
oracle-database-preinstall-21c x86_64 1.0-1.el8 OEL8.7-APP 30 k
Installing dependencies:
compat-openssl10 x86_64 1:1.0.2o-4.el8_6 OEL8.7-APP 1.1 M
gssproxy x86_64 0.8.0-21.el8 OEL8.7-BASE 119 k
keyutils x86_64 1.5.10-9.el8 OEL8.7-BASE 66 k
ksh x86_64 20120801-257.0.1.el8 OEL8.7-APP 929 k
libX11-xcb x86_64 1.6.8-5.el8 OEL8.7-APP 14 k
libXv x86_64 1.0.11-7.el8 OEL8.7-APP 20 k
libXxf86dga x86_64 1.1.5-1.el8 OEL8.7-APP 26 k
libdmx x86_64 1.1.4-3.el8 OEL8.7-APP 22 k
libev x86_64 4.24-6.el8 OEL8.7-APP 52 k
libnsl x86_64 2.28-211.0.1.el8 OEL8.7-BASE 105 k
libverto-libev x86_64 0.3.2-2.el8 OEL8.7-APP 16 k
lm_sensors-libs x86_64 3.4.0-23.20180522git70f7e08.el8 OEL8.7-BASE 59 k
nfs-utils x86_64 1:2.3.3-57.el8 OEL8.7-BASE 515 k
rpcbind x86_64 1.2.5-10.el8 OEL8.7-BASE 70 k
sysstat x86_64 11.7.3-7.0.1.el8 OEL8.7-APP 426 k
xorg-x11-utils x86_64 7.5-28.el8 OEL8.7-APP 136 k
xorg-x11-xauth x86_64 1:1.0.9-12.el8 OEL8.7-APP 39 k
Transaction Summary
=========================================================================================================================================================
Install 18 Packages
Total size: 3.7 M
Installed size: 10 M
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Running scriptlet: rpcbind-1.2.5-10.el8.x86_64 1/18
Installing : rpcbind-1.2.5-10.el8.x86_64 1/18
Running scriptlet: rpcbind-1.2.5-10.el8.x86_64 1/18
Installing : lm_sensors-libs-3.4.0-23.20180522git70f7e08.el8.x86_64 2/18
Running scriptlet: lm_sensors-libs-3.4.0-23.20180522git70f7e08.el8.x86_64 2/18
Installing : sysstat-11.7.3-7.0.1.el8.x86_64 3/18
Running scriptlet: sysstat-11.7.3-7.0.1.el8.x86_64 3/18
Installing : libnsl-2.28-211.0.1.el8.x86_64 4/18
Installing : keyutils-1.5.10-9.el8.x86_64 5/18
Installing : xorg-x11-xauth-1:1.0.9-12.el8.x86_64 6/18
Installing : libev-4.24-6.el8.x86_64 7/18
Installing : libverto-libev-0.3.2-2.el8.x86_64 8/18
Installing : gssproxy-0.8.0-21.el8.x86_64 9/18
Running scriptlet: gssproxy-0.8.0-21.el8.x86_64 9/18
Running scriptlet: nfs-utils-1:2.3.3-57.el8.x86_64 10/18
Installing : nfs-utils-1:2.3.3-57.el8.x86_64 10/18
Running scriptlet: nfs-utils-1:2.3.3-57.el8.x86_64 10/18
Installing : libdmx-1.1.4-3.el8.x86_64 11/18
Installing : libXxf86dga-1.1.5-1.el8.x86_64 12/18
Installing : libXv-1.0.11-7.el8.x86_64 13/18
Installing : libX11-xcb-1.6.8-5.el8.x86_64 14/18
Installing : xorg-x11-utils-7.5-28.el8.x86_64 15/18
Installing : ksh-20120801-257.0.1.el8.x86_64 16/18
Running scriptlet: ksh-20120801-257.0.1.el8.x86_64 16/18
Installing : compat-openssl10-1:1.0.2o-4.el8_6.x86_64 17/18
Running scriptlet: compat-openssl10-1:1.0.2o-4.el8_6.x86_64 17/18
Installing : oracle-database-preinstall-21c-1.0-1.el8.x86_64 18/18
Running scriptlet: oracle-database-preinstall-21c-1.0-1.el8.x86_64 18/18
Verifying : compat-openssl10-1:1.0.2o-4.el8_6.x86_64 1/18
Verifying : ksh-20120801-257.0.1.el8.x86_64 2/18
Verifying : libX11-xcb-1.6.8-5.el8.x86_64 3/18
Verifying : libXv-1.0.11-7.el8.x86_64 4/18
Verifying : libXxf86dga-1.1.5-1.el8.x86_64 5/18
Verifying : libdmx-1.1.4-3.el8.x86_64 6/18
Verifying : libev-4.24-6.el8.x86_64 7/18
Verifying : libverto-libev-0.3.2-2.el8.x86_64 8/18
Verifying : oracle-database-preinstall-21c-1.0-1.el8.x86_64 9/18
Verifying : sysstat-11.7.3-7.0.1.el8.x86_64 10/18
Verifying : xorg-x11-utils-7.5-28.el8.x86_64 11/18
Verifying : xorg-x11-xauth-1:1.0.9-12.el8.x86_64 12/18
Verifying : gssproxy-0.8.0-21.el8.x86_64 13/18
Verifying : keyutils-1.5.10-9.el8.x86_64 14/18
Verifying : libnsl-2.28-211.0.1.el8.x86_64 15/18
Verifying : lm_sensors-libs-3.4.0-23.20180522git70f7e08.el8.x86_64 16/18
Verifying : nfs-utils-1:2.3.3-57.el8.x86_64 17/18
Verifying : rpcbind-1.2.5-10.el8.x86_64 18/18
Installed:
compat-openssl10-1:1.0.2o-4.el8_6.x86_64 gssproxy-0.8.0-21.el8.x86_64 keyutils-1.5.10-9.el8.x86_64
ksh-20120801-257.0.1.el8.x86_64 libX11-xcb-1.6.8-5.el8.x86_64 libXv-1.0.11-7.el8.x86_64
libXxf86dga-1.1.5-1.el8.x86_64 libdmx-1.1.4-3.el8.x86_64 libev-4.24-6.el8.x86_64
libnsl-2.28-211.0.1.el8.x86_64 libverto-libev-0.3.2-2.el8.x86_64 lm_sensors-libs-3.4.0-23.20180522git70f7e08.el8.x86_64
nfs-utils-1:2.3.3-57.el8.x86_64 oracle-database-preinstall-21c-1.0-1.el8.x86_64 rpcbind-1.2.5-10.el8.x86_64
sysstat-11.7.3-7.0.1.el8.x86_64 xorg-x11-utils-7.5-28.el8.x86_64 xorg-x11-xauth-1:1.0.9-12.el8.x86_64
Complete!
当然,这里你也可以下载你要安装版本的,显得更专业靠谱一些。不过反正有了dnf,后续安装发现缺啥补啥也是很方便,再也不用担心缺少安装包的问题了!