Red Hat Enterprise Linux 6上安装Oracle 11G(11.2.0.4.0)缺少pdksh包的问题
RHEL 6上安装Oracle 11G警告缺少pdksh包
前言
相信很多刚刚接触学习Oracle的人,在RHEL6上安装11.2.0.3 or 11.2.0.4这两个版本的时候,
都遇到过先决条件检查的时候,警告缺少pdksh包的问题。
如下边截图:

对于这个问题,无论是个人自己的测试环境安装,或者是企业服务器上安装遇到,不外乎两种解决方法:
- 忽略该警告,继续下一步安装
- 网上下载单独该包的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 |
你卸载了官方指定要求的包,自己测试环境不说,企业环境肯定不允许这样。
另外,不止图形化警告该包没有安装,在安装日志里边也可以看到有报错:
[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包的问题的更多相关文章
- Red Hat Enterprise Linux x86-64 上安装 oracle 11gR2
一.以root用户登录 二.安装依赖包 #rpm -qa | grep 包名 ----查看包 binutils-2.20.51.0.2-5.11.el6 (x86_64) ...
- 在Red Hat Enterprise Linux 5 64-bit安装oracle11g r2
网上这种文档一搜就一堆,没别的目的,刚接触oracle为了加深理解记忆.只要是跟我的版本一样操作系统和oracle软件,按照步骤肯定可以成功安装 在虚拟机上安装Red Hat Enterprise L ...
- Red Hat Enterprise Linux 6.6安装体验
Red Hat Enterprise Linux 6.6的安装首界面有五个选项,这跟以前的Red Hat Enterprise Linux 5.x的安装界面是有一些区别的. 安装或者升级现有系统( ...
- SQL Server on Red Hat Enterprise Linux——RHEL上的SQL Server(全截图)
本文从零开始一步一步介绍如何在Red Hat Enterprise Linux上搭建SQL Server 2017,包括安装系统.安装SQL等相关步骤和方法(仅供测试学习之用,基础篇). 一. 创 ...
- 在Oracle Enterprise Linux R5U7上安装Oracle 11gr2数据库
折腾了好几次,经验是: 包的安装 在安装包里,需要把开发方面的安装包都装上. 另外安装完成后,需要安装的包包括: cd /media/cdrom/Server rpm -Uvh binutils-2. ...
- 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.禁 ...
- Configure Red Hat Enterprise Linux shared disk cluster for SQL Server——RHEL上的“类”SQL Server Cluster功能
下面一步一步介绍一下如何在Red Hat Enterprise Linux系统上为SQL Server配置共享磁盘集群(Shared Disk Cluster)及其相关使用(仅供测试学习之用,基础篇) ...
- 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),以及配置过程中遇到的坑的 ...
- Configure Red Hat Enterprise Linux shared disk cluster for SQL Server
下面一步一步介绍一下如何在Red Hat Enterprise Linux系统上为SQL Server配置共享磁盘集群(Shared Disk Cluster)及其相关使用(仅供测试学习之用,基础篇) ...
随机推荐
- Java实现 LeetCode 76 最小覆盖子串
76. 最小覆盖子串 给你一个字符串 S.一个字符串 T,请在字符串 S 里面找出:包含 T 所有字母的最小子串. 示例: 输入: S = "ADOBECODEBANC", T = ...
- Java实现 洛谷 P1980 计数问题
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = ...
- Java实现 洛谷 P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He…
import java.util.Scanner; public class Main{ private static Scanner cin; public static void main(Str ...
- java实现第七届蓝桥杯寒假作业
题目6.寒假作业 寒假作业 现在小学的数学题目也不是那么好玩的. 看看这个寒假作业: □ + □ = □ □ - □ = □ □ × □ = □ □ ÷ □ = □ (如果显示不出来,可以参见[图1. ...
- PAT 跟奥巴马一起编程
美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统.2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个 ...
- JNI_day01
C语言简介 system()是提供C语言调用系统命令的函数 C语言基本数据类型 C语言中的整数类型:char/short/int/long C中使用ASCII保存字符,所以char所占用的字节数为1 ...
- 00-03.kaliLinux-vi粘贴复制功能配置
KaliLinux在xShell的vim中默认是无法复制和粘贴的,需要做如下配置后才能使用: 方法一 进入vim命令行模式,输入: :set mouse=c #进入Command-line 模式 然后 ...
- win32 socket http 操作
纯wininet 操作http关键代码如下: HINTERNET hNet = ::InternetOpen(_T("Test"), INTERNET_OPEN_TYPE_DIRE ...
- 记一次@ResponseBody注解返回中文乱码的问题
Bug场景 前端AJax $.ajax({ url: '$!{request.getContextPath()}/XX/save.do', type: 'post', dataType: 'json' ...
- Centos6,Centos7防火墙设置与端口开放的方法
Centos升级到7之后,内置的防火墙已经从iptables变成了firewalld.端口的开启还是要从两种情况来说明的,即iptables和firewalld. 一.iptables 1.打开/关闭 ...