RHEL 6上安装Oracle 11G警告缺少pdksh包

前言

相信很多刚刚接触学习Oracle的人,在RHEL6上安装11.2.0.3 or 11.2.0.4这两个版本的时候,

都遇到过先决条件检查的时候,警告缺少pdksh包的问题。

如下边截图:

对于这个问题,无论是个人自己的测试环境安装,或者是企业服务器上安装遇到,不外乎两种解决方法:

  1. 忽略该警告,继续下一步安装
  2. 网上下载单独该包的rpm包安装

不过,对于第二种解决方法,存在一个问题。

再用rpm -ivh安装pdksh包的时候,会报错和已安装的ksh包冲突,安装不了。

很多人也选择卸载ksh包,安装pdksh。

不过,ksh是Oracle官方文档指定要安装的包之一。

在Oracle Linux 6, Red Hat Enterprise Linux 6 and Asianux Server 4,要求:

The following packages (or later versions) must be installed:

binutils-2.20.51.0.2-5.11.el6.i686
compat-libcap1-1.10-1.i686
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6.i686
gcc-c++-4.4.4-13.el6.i686
glibc-2.12-1.7.el6.i686
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6.i686
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6.i686
make-3.81-19.el6.i686
sysstat-9.0.4-11.el6.i686

你卸载了官方指定要求的包,自己测试环境不说,企业环境肯定不允许这样。

另外,不止图形化警告该包没有安装,在安装日志里边也可以看到有报错:

[root@adg ~]# tail - /tmp/OraInstall2020--03_10--27PM/installActions2020--03_10--27PM.log
INFO: Package: pdksh-5.2.: This is a prerequisite condition to test whether the package "pdksh-5.2.14" is available on the system.
INFO: Severity:IGNORABLE
INFO: OverallStatus:VERIFICATION_FAILED
INFO: -----------------------------------------------
INFO: Verification Result for Node:adg
INFO: Expected Value:pdksh-5.2.14
INFO: Actual Value:missing
INFO: Error Message:PRVF-7532 : Package "pdksh" is missing on node "adg"
INFO: Cause: A required package is either not installed or, if the package is a kernel module, is not loaded on the specified node.
INFO: Action: Ensure that the required package is installed and available.

原因

先说说前边提到的两种方法是否可取。

第二种肯定不可取,但是第一种是可行,企业大多数都这样做。

但是为什么忽略是可行的,有没有官方石锤的说法。

很遗憾,我在metalink上搜不到可以忽略的文档说明,百度也没看到让人信服的说法。

其实真正的原因是,OUI(安装程序)会执行下列命令

/bin/rpm -q --qf %{version} redhat-release

来识别OS版本信息,但是在RHEL6中,软件包redhat-release已被redhat-release-server-6Server取代。

什么意思,在RHEL5执行情况如下:

[root@oracle ~]# /bin/rpm -q --qf %{version} redhat-release
5Server
[root@oracle ~]#

在RHEL6中执行情况如下:

[oracle@adg database]$ /bin/rpm -q --qf %{version} redhat-release
package redhat-release is not installed

其实正确的话在RHEL6应该是执行:

[oracle@adg database]$ /bin/rpm -q --qf %{version} redhat-release-server-6Server
6Server

才是对的。

由于无法确认操作系统版本信息,这使OUI认为该服务器不是RHEL服务器。

由于OUI无法识别服务器的类型,因此OUI会执行默认(OEL4)前提条件检查。

这个是Oracle unpublished(未发布的) bug 13981169。

解决

除了直接忽略,Oracle提供另外一种方法,(强迫症患者福利)

1.解压好安装包后,进到这个目录/database/stage/cvu/cv/admin

[oracle@adg admin]$ ls -l
total
-rwxr-xr-x. oracle oinstall Aug cvu_config

2.备份cvu_config

[oracle@adg admin]$ ls -l
total
-rwxr-xr-x. oracle oinstall Aug cvu_config
-rwxr-xr-x. oracle oinstall Jul : cvu_config.bak

3.编辑cvu_config,更改

CV_ASSUME_DISTID=OEL4

CV_ASSUME_DISTID=OEL6

并保存。

4.重新开始安装

至此,不在有该警告。

参考文档:Installing 11.2.0.3 Or 11.2.0.4 (32-bit (x86) or 64-bit (x86-64) ) On RHEL6 Reports That Packages "elfutils-libelf-devel-0.97" And "pdksh-5.2.14" Are Missing (PRVF-7532) (Doc ID 1454982.1)

Red Hat Enterprise Linux 6上安装Oracle 11G(11.2.0.4.0)缺少pdksh包的问题的更多相关文章

  1. Red Hat Enterprise Linux x86-64 上安装 oracle 11gR2

    一.以root用户登录 二.安装依赖包 #rpm -qa | grep 包名    ----查看包 binutils-2.20.51.0.2-5.11.el6 (x86_64)            ...

  2. 在Red Hat Enterprise Linux 5 64-bit安装oracle11g r2

    网上这种文档一搜就一堆,没别的目的,刚接触oracle为了加深理解记忆.只要是跟我的版本一样操作系统和oracle软件,按照步骤肯定可以成功安装 在虚拟机上安装Red Hat Enterprise L ...

  3. Red Hat Enterprise Linux 6.6安装体验

    Red Hat Enterprise Linux 6.6的安装首界面有五个选项,这跟以前的Red Hat Enterprise Linux 5.x的安装界面是有一些区别的.   安装或者升级现有系统( ...

  4. SQL Server on Red Hat Enterprise Linux——RHEL上的SQL Server(全截图)

    本文从零开始一步一步介绍如何在Red Hat Enterprise Linux上搭建SQL Server 2017,包括安装系统.安装SQL等相关步骤和方法(仅供测试学习之用,基础篇). 一.   创 ...

  5. 在Oracle Enterprise Linux R5U7上安装Oracle 11gr2数据库

    折腾了好几次,经验是: 包的安装 在安装包里,需要把开发方面的安装包都装上. 另外安装完成后,需要安装的包包括: cd /media/cdrom/Server rpm -Uvh binutils-2. ...

  6. Deploy Oracle 10.2.0.5 on Red Hat Enterprise Linux 6.4

    一.Linux系统安装和配置 1.安装系统时选Desktop 2.设置eth0网卡为静态IP,加入子网掩码,网关,DNS.并配置自己主动启动 3.改动/etc/hosts.加入主机名和相应IP 4.禁 ...

  7. Configure Red Hat Enterprise Linux shared disk cluster for SQL Server——RHEL上的“类”SQL Server Cluster功能

    下面一步一步介绍一下如何在Red Hat Enterprise Linux系统上为SQL Server配置共享磁盘集群(Shared Disk Cluster)及其相关使用(仅供测试学习之用,基础篇) ...

  8. Configure Always On Availability Group for SQL Server on RHEL——Red Hat Enterprise Linux上配置SQL Server Always On Availability Group

    下面简单介绍一下如何在Red Hat Enterprise Linux上一步一步创建一个SQL Server AG(Always On Availability Group),以及配置过程中遇到的坑的 ...

  9. Configure Red Hat Enterprise Linux shared disk cluster for SQL Server

    下面一步一步介绍一下如何在Red Hat Enterprise Linux系统上为SQL Server配置共享磁盘集群(Shared Disk Cluster)及其相关使用(仅供测试学习之用,基础篇) ...

随机推荐

  1. Java实现汉诺塔问题

    1 问题描述 Simulate the movement of the Towers of Hanoi Puzzle; Bonus is possible for using animation. e ...

  2. Android中StateListDrawable的种类(状态的种类)

    <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="ht ...

  3. (一)SQL注入漏洞测试的方式总结

    一.工具注入 1.SQLMap的作用 判断可注入的参数 判断可以用那种SQL注入技术来注入 识别出哪种数据库 根据用户选择,读取哪些数据(库.表.列.字段值...) 2.注入技术 [A]基于布尔的盲注 ...

  4. 不可不知的JSON处理库(cJSON)

    ANSI C中的超轻量级JSON解析器 JSON(JavaScript对象表示法)是一种轻量级的数据交换格式.人类易于阅读和书写.机器很容易解析和生成.它基于JavaScript编程语言标准ECMA- ...

  5. 记一次Docker中Redis连接暴增的问题排查

    周六生产服务器出现redis服务器不可用状态,错误信息为: 状态不可用,等待后台检查程序恢复方可使用.Unexpected end of stream; expected type 'Status' ...

  6. LeetCode 76,一题教会你面试算法时的思考套路

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是LeetCode专题的第45篇文章,我们一起来看看LeetCode的76题,最小窗口子串Minimum Window Substrin ...

  7. Spring:扫描组件

    <context:component-scan>:扫描组件,对设置的包下面的类进行扫描,会讲加上注解的类作为Spring的组件进行加载 组件:指Spring中管理的bean ​ 作为Spr ...

  8. beta版 tomcat 应用监控指标

    指标是集合网络搜索得到的汇总并且现在在使用的,现在记录一下 数据平台:Prometheus v2.18.1 展示平台:Grafana 指标来源: 日志类的是mtail 其他都是通过jmx_export ...

  9. Xor Sum(讲解异或)【字典树】

    Xor Sum 题目链接(点击) Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 132768/132768 K (Java/Other ...

  10. 非线性规划的Matlab 解法

    编写M 文件fun1.m 定义目标函数 function f=fun1(x); % 定义目标函数 f=sum(x.^)+; % .^2是矩阵中的每个元素都求平方.^2是求矩阵的平方或两个相同的矩阵相乘 ...