pdksh отсутствует в RHEL 6 и CentOS 6?

Пакет pdksh не существует на RHEL 6 или CentOS 6, когда я пытаюсь установить его через yum .

Итак, мои вопросы:

  1. Почему он больше не доступен в репозиториях по умолчанию? Он доступен в версии 5.x.
  2. Есть ли замена оболочки?
  3. Что относительно программ, которые зависят от pdksh ? Могут ли они использовать заменяющую оболочку?

Моим обходным решением было использование пакета с версии 5, что, по моему мнению, не является правильным решением, и я должен понимать его лучше, чем обходной путь.

Моя забота в основном касается Oracle Database. Он запрашивает pdksh , так будет ли проблема использовать оболочку для pdksh , отличную от pdksh ?

У меня создалось впечатление, что pdksh не совместим с POSIX, и с выпуском AT & T KSH с открытым исходным кодом произошло значительное движение от pdksh до ksh . Только мои $ 0,02

AT & T ksh лицензируется Eclipse Public License 1.0 (EPL-1.0).

Согласно этой статье « Oracle Database 11g Release 2 (11.2) Установка на Oracle Linux 6 »:

Сбой для пакета «pdksh» можно игнорировать, потому что мы установили пакет «ksh» вместо него

На моей довольно стандартной машине OEL 6.3 ksh уже был установлен как часть сборки, но вам, возможно, придется установить sudo yum install ksh для ее установки.


Наши администраторы баз данных также нашли эту статью, которая может быть полезной:

Установка «11.2.0.3 32-разрядных (x86)» или «64-разрядных (x86-64)» в RHEL6 сообщает, что пакеты elfutils-libelf-devel-0.97 и pdksh-5.2.14 отсутствуют.

Относится к

  • Oracle Server – Enterprise Edition – версия 11.2.0.3 – 11.2.0.3 [выпуск 11.2]
  • Oracle Universal Installer – Версия 11.2.0.3 – 11.2.0.3 [Релиз 11.2]
  • Oracle Server – стандартная версия – версия 11.2.0.3 – 11.2.0.3 [выпуск 11.2]
  • Linux x86
  • Linux x86-64

симптомы

При установке

  • 11.2.0.3 32-разрядное (x86) программное обеспечение базы данных на сервере RHEL6 x86
  • 11.2.0.3 64-разрядное (x86-64) программное обеспечение базы данных на сервере RHEL6 x86-64

Oracle Universal Installer (OUI) сообщает, что пакеты elfultils-libelf-devel-0.97 и pdksh-5.2.14 отсутствуют.

В installActions.log можно наблюдать следующий вывод:

 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: -----------------------------------------------: 

причина

OUI выполняет следующую команду:

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

не возвращается результат (потому что в RHEL6 пакет redhat-release был заменен сервером redhat-release-server-6Server).

Это заставляет OUI полагать, что сервер не является сервером RHEL.

Поскольку OUI не может определить, какой тип сервера он выполняет, OUI выполняет предварительные проверки по умолчанию (OEL4).

Эта проблема была зарегистрирована как неопубликованная ошибка 13981169 с Oracle Development.

В дополнение к этому, никакие предварительные проверки RHEL6 не определены в

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

в среде 11.2.0.3.

Решение

Решение для 11.2.0.3 64-бит (x86-64)

Если вы загрузили носитель 11.2.0.3 из службы поддержки Microsoft (MOS) и извлекли программное обеспечение в папку <path>/database , выполните следующие действия:

  1. Измените каталог на <path>/database/stage/cvu/cv/admin
  2. Резервное копирование cvu_config cp cvu_config backup_cvu_config
  3. Измените cvu_config и измените следующую строку CV_ASSUME_DISTID=OEL4 на CV_ASSUME_DISTID=OEL6
  4. Сохранить обновленный файл cvu_config
  5. Установите программное обеспечение 11.2.0.3, используя:
    1. <path>/database/runInstaller
    2. cd <path>/database
    3. ./runInstaller

OUI должен теперь выполнять предварительные проверки OEL6 (которые идентичны проверке предварительных условий RHEL6) и больше не сообщают, что пакеты elfutils-libelf-devel-0.97 и pdksh-5.2.14 отсутствуют

ЗАМЕТКА

Если вы получили носитель 11.2.0.3 на DVD, необходимо будет скопировать носитель с DVD на диск на сервере RHEL6 (чтобы вы могли выполнить описанные выше шаги)

Решение для 11.2.0.3 32-бит (x86)

Поскольку файл cvu_prereq.xml для 11.2.0.3 32-разрядный (x86) не ссылается на RHEL6 или OEL6, вышеупомянутое обходное решение не может быть использовано.

После проверки вручную, что все требования выполнены, выберите параметр « Игнорировать все» в установщике и продолжите установку.

Я понимаю, что до RHEL 6 Red Hat опасались AT & T KornShell из-за своей лицензии, поэтому они включали pdksh, который является менее полной реализацией. Я думаю, что Дэвид Корн делал все возможное, чтобы принять ksh в максимально возможное количество мест, и где-то вдоль линии лицензия была уточнена или изменена. Эта цитата с сайта KornShell : «AT & T выпустила KornShell как открытый источник».

Очевидно, Red Hat были удовлетворены лицензией к тому времени, когда был выпущен RHEL 6, поэтому они включили «настоящую вещь».

Изменить: на самом деле это объясняется на странице Википедии (конечно) – см. Первый абзац в разделе История.