Das Paket pdksh
ist unter RHEL 6 oder CentOS 6 nicht vorhanden, wenn ich versuche, es über zu installieren yum
.
Also meine Fragen:
- Warum ist es in den Standard-Repositorys nicht mehr verfügbar? Es ist in Version 5.x verfügbar.
- Gibt es eine Ersatzschale?
- Was ist mit Programmen, die davon abhängen
pdksh
? Können sie die Ersatzschale verwenden?
Meine Problemumgehung bestand darin, das Paket aus Version 5 zu verwenden, was meiner Meinung nach nicht die richtige Lösung ist und ich sollte es besser verstehen als die Problemumgehung.
Mein Anliegen betrifft hauptsächlich Oracle Database. Es wird darum pdksh
gebeten, ob es ein Problem ist, eine andere Ersatzschale als zu verwenden pdksh
.
mksh
könntest du dich auch glücklich machen? - "ein Nachfolger der Public Domain Korn Shell (pdksh)"Antworten:
Ich hatte den Eindruck, dass pdksh nicht POSIX-konform war, und mit der Veröffentlichung von Open Source AT & T KSH gab es eine signifikante Bewegung von pdksh zu ksh . Nur meine $ 0,02
AT & T ksh ist durch die Eclipse Public License 1.0 (EPL-1.0) lizenziert.
quelle
Pdksh is unmaintained since 1998 and is obsoleted by ksh package.
Gemäß diesem Artikel " Installation von Oracle Database 11g Release 2 (11.2) unter Oracle Linux 6 ":
Der Fehler für das "pdksh" -Paket kann ignoriert werden, da wir das "ksh" -Paket an seiner Stelle installiert haben
Auf meinem Standard-OEL 6.3-Computer wurde ksh bereits als Teil des Builds installiert, aber Sie müssen möglicherweise eine
sudo yum install ksh
ausführen, um es zu installieren.Unsere Datenbankadministratoren haben auch diesen Artikel gefunden, der von Nutzen sein kann:
Wenn Sie "11.2.0.3 32-Bit (x86)" oder "64-Bit (x86-64)" auf RHEL6 installieren, werden diese Pakete gemeldet
elfutils-libelf-devel-0.97
undpdksh-5.2.14
fehlen.Gilt für
Symptome
Während der Installation
Der Oracle Universal Installer (OUI) meldet, dass Pakete
elfultils-libelf-devel-0.97
undpdksh-5.2.14
fehlen.In der
installActions.log
folgenden Ausgabe kann beobachtet werden:Ursache
OUI führt den folgenden Befehl aus:
Es wird keine Ausgabe zurückgegeben (da in RHEL6 das Paket redhat-release durch redhat-release-server-6Server ersetzt wurde).
Dies lässt OUI glauben, dass der Server kein RHEL-Server ist.
Da OUI nicht erkennen kann, um welchen Servertyp es sich handelt, führt OUI die Standardprüfungen (OEL4) durch.
Dieses Problem wurde als unveröffentlichter Fehler 13981169 mit Oracle Development protokolliert.
Darüber hinaus sind in RHEL6 keine Voraussetzungsprüfungen definiert
in den 11.2.0.3 Medien.
Lösung
Lösung für 11.2.0.3 64-Bit (x86-64)
Wenn Sie das 11.2.0.3-Medium von My Oracle Support (MOS) heruntergeladen und die Software extrahiert haben
<path>/database
, gehen Sie wie folgt vor:<path>/database/stage/cvu/cv/admin
cp cvu_config backup_cvu_config
CV_ASSUME_DISTID=OEL4
inCV_ASSUME_DISTID=OEL6
cvu_config
Datei<path>/database/runInstaller
cd <path>/database
./runInstaller
OUI sollte jetzt die OEL6-Voraussetzungsprüfungen durchführen (die mit den RHEL6-Voraussetzungsprüfungen identisch sind) und diese Pakete
elfutils-libelf-devel-0.97
und nicht mehr meldenpdksh-5.2.14
fehlenHINWEIS
Wenn Sie das 11.2.0.3-Medium auf DVD erhalten haben, müssen Sie das Medium von der DVD auf eine Festplatte auf dem RHEL6-Server kopieren (damit Sie die obigen Schritte ausführen können).
Lösung für 11.2.0.3 32-Bit (x86)
Als die
cvu_prereq.xml
Datei für 11.2.0.3 32-Bit (x86) nicht auf RHEL6 oder OEL6 verweist, kann die obige Problemumgehung nicht verwendet werden.Nachdem Sie manuell überprüft haben, ob alle Anforderungen erfüllt sind, wählen Sie im Installationsprogramm die Option Alle ignorieren und fahren Sie mit der Installation fort.
quelle
Nach meinem Verständnis war Red Hat vor RHEL 6 wegen seiner Lizenz vorsichtig mit AT & T KornShell , daher enthielten sie das pdksh, eine weniger vollständige Implementierung. Ich denke, David Korn hat sein Bestes getan, um ksh an so vielen Orten wie möglich zu akzeptieren, und irgendwo auf der Linie wurde die Lizenz geklärt oder geändert. Dieses Zitat stammt von der KornShell- Website: "AT & T hat KornShell als Open Source veröffentlicht".
Offensichtlich war Red Hat zum Zeitpunkt der Veröffentlichung von RHEL 6 mit der Lizenz zufrieden, daher enthielten sie "das Original".
Bearbeiten: Eigentlich wird es auf der Wikipedia-Seite erklärt (natürlich) - siehe den ersten Absatz unter Verlauf.
quelle
Ich habe einen Patch für ein altes Mandrake 2007.1 U / min-Paket erstellt und ein neues SRPM-Paket erstellt, das problemlos auf modernen Linux-Distributionen mit neueren gcc-Versionen kompiliert werden kann:
ftp://ftp.crashrecovery.org/pub/linux/pdksh/RPMS/mdv2011/ ftp://ftp.crashrecovery.org/pub/linux/pdksh/RPMS/mdv2011/pdksh-5.2.14-21-mdv2011. 0.x86_64.rpm ftp://ftp.crashrecovery.org/pub/linux/pdksh/RPMS/mdv2011/pdksh-5.2.14-21.src.rpm ftp://ftp.crashrecovery.org/pub/linux/ pdksh / RPMS / mdv2011 / ksh.pdf
Es wurden zwei Anpassungen vorgenommen: Innerhalb von siglist.sh: sort + 2n + 0n wird durch sort -k3n -k1n ersetzt und innerhalb mehrerer c-Dateien shprintf (newline); wird zu shprintf ("% s", Zeilenumbruch); um zu verhindern, dass die Sicherheitsfehler -Werror = format auftreten.
quelle