Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

The package pdksh does not exist on RHEL 6 or CentOS 6 when I try to install it through yum.

So my questions:

  1. Why is it no longer available in the default repositories? It is available in version 5.x.
  2. Is there a replacement shell?
  3. What about programs that depend on pdksh? Can they use the replacement shell?

My workaround has been to use the package from version 5, which I feel is not the proper solution and I should understand it better than the workaround.

My concern is mainly regarding Oracle Database. It asks for pdksh, so will it be a problem to use a replacment shell other than pdksh?

share|improve this question
1  
Maybe mksh could make you happy, too? -- "a successor to the Public Domain Korn Shell (pdksh)" –  sr_ Jan 20 '12 at 15:28
    
hi, I have no problem at all with any package, my question is related to the technical side! if I install mksh does an application depends on pdksh still working even if it requests the pdksh and there is mksh instead? –  Data-Base Jan 20 '12 at 17:33
add comment

2 Answers 2

up vote 7 down vote accepted

I was under the impression that pdksh was not POSIX compliant, and with the release of open source AT&T KSH, there was significant movement from pdksh to ksh. Just my $0.02

AT&T ksh is licensed by the Eclipse Public License 1.0 (EPL-1.0).

share|improve this answer
2  
You are confusing open source and public domain but anyway, you are right pdksh is quite a poor reimplementation and the real ksh93 which is freely available is a much better choice. –  jlliagre Jan 20 '12 at 16:13
    
open source, public domain, free, license a, b, c YES, I am confused and frequently use any of the former interchangeably ;) –  bdowning Jan 20 '12 at 16:18
    
my question is related to the technical side! if I install ksh93 does an application depends on pdksh still working even if it requests the pdksh and there is ksh93 instead? –  Data-Base Jan 20 '12 at 17:34
2  
Unfortunately that depends on the script. You can install the ksh and create a pdksh symlink so the #! she bangs don't break, but script by script there's always the possibility that some "feature" or another might break. Try it an see, be ready to restore the pdksh –  bdowning Jan 20 '12 at 20:48
1  
What's missing in pdksh for POSIX compliance? @Data-Base The one major deviation of pdksh from AT&T ksh is that the last command in a pipeline is executed in the parent shell only in AT&T ksh. Apart from that, pdksh is pretty close to AT&T ksh88, and ksh93 is upward compatible with ksh88 except in very unusual cases. Of course, it's never guaranteed that none of your scripts depend on any such unusual case. –  Gilles Jan 20 '12 at 23:06
show 1 more comment

According to this article "Oracle Database 11g Release 2 (11.2) Installation On Oracle Linux 6":

The failure for the "pdksh" package can be ignored because we installed the "ksh" package in its place

On my fairly standard OEL 6.3 machine, ksh was already installed as part of the build, but you may have to do a sudo yum install ksh to install it.


Our DBAs also found this article which may be of use:

Installing "11.2.0.3 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.

Applies to

  • Oracle Server - Enterprise Edition - Version 11.2.0.3 to 11.2.0.3 [Release 11.2]
  • Oracle Universal Installer - Version 11.2.0.3 to 11.2.0.3 [Release 11.2]
  • Oracle Server - Standard Edition - Version 11.2.0.3 to 11.2.0.3 [Release 11.2]
  • Linux x86
  • Linux x86-64

Symptoms

While installing

  • 11.2.0.3 32-bit (x86) database software on RHEL6 x86 server
  • 11.2.0.3 64-bit (x86-64) database software on RHEL6 x86-64 server

the Oracle Universal Installer (OUI) reports that packages elfultils-libelf-devel-0.97 and pdksh-5.2.14 are missing.

In the installActions.log the following output can be observed:

INFO: INFO: *********************************************
INFO: INFO: Package: elfutils-libelf-devel-0.97: This is a prerequisite condition to test whether the package "elfutils-libelf-devel-0.97" is available on the system.
INFO: INFO: Severity:IGNORABLE
INFO: INFO: OverallStatus:VERIFICATION_FAILED
INFO: INFO: -----------------------------------------------INFO: INFO: Verification Result for Node:nodename
INFO: INFO: Expected Value:elfutils-libelf-devel-0.97
INFO: INFO: Actual Value:missing
INFO: INFO: Error Message:PRVF-7532 : Package "elfutils-libelf-devel" is missing on node "nodename"
INFO: 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: INFO: Action: Ensure that the required package is installed and available.
INFO: INFO: -----------------------------------------------:
INFO: INFO: *********************************************
INFO: INFO: Package: pdksh-5.2.14: This is a prerequisite condition to test whether the package "pdksh-5.2.14" is available on the system.
INFO: INFO: Severity:IGNORABLE
INFO: INFO: OverallStatus:VERIFICATION_FAILED
INFO: INFO: -----------------------------------------------INFO: INFO: Verification Result for Node:nodename
INFO: INFO: Expected Value:pdksh-5.2.14
INFO: INFO: Actual Value:missing
INFO: INFO: Error Message:PRVF-7532 : Package "pdksh" is missing on node "nodename"
INFO: 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: INFO: Action: Ensure that the required package is installed and available.
INFO: INFO: -----------------------------------------------:    

Cause

OUI executes the following command:

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

no output is returned (because in RHEL6 the package redhat-release has been replaced by redhat-release-server-6Server).

This causes OUI to believe that the server is not a RHEL server.

As OUI can not identify what type of server it is, OUI performs the default (OEL4) prerequisite checks.

This problem has been logged as unpublished bug 13981169 with Oracle Development.

In addition to this, no RHEL6 prerequisite checks are defined in

<path>/database/stage/cvu/cvu_prereq.xml

in the 11.2.0.3 media.

Solution

Solution for 11.2.0.3 64-bit (x86-64)

If you have downloaded the 11.2.0.3 media from My Oracle Support (MOS) and extracted the software to <path>/database, do the following:

  1. Change directory to <path>/database/stage/cvu/cv/admin
  2. Backup cvu_config cp cvu_config backup_cvu_config
  3. Edit cvu_config and change the following line CV_ASSUME_DISTID=OEL4 to CV_ASSUME_DISTID=OEL6
  4. Save the updated cvu_config file
  5. Install the 11.2.0.3 software using:
    1. <path>/database/runInstaller
    2. cd <path>/database
    3. ./runInstaller

OUI should now perform the OEL6 prerequisite checks (which are identical to the RHEL6 prerequisite checks) and no longer report that packages elfutils-libelf-devel-0.97 and pdksh-5.2.14 are missing

NOTE

If you have received the 11.2.0.3 media on DVD, it will be necessary to copy the media from the DVD to a disk on the RHEL6 server (so that you can follow the steps above)

Solution for 11.2.0.3 32-bit (x86)

As the cvu_prereq.xml file for 11.2.0.3 32-bit (x86) does not reference RHEL6 or OEL6, the above workaround can not be used.

After manually verifying that all of the requirements have been met, choose the Ignore all option in the installer and continue with the installation.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.