O pacote pdksh
não existe no RHEL 6 ou CentOS 6 quando tento instalá-lo yum
.
Então, minhas perguntas:
- Por que não está mais disponível nos repositórios padrão? Está disponível na versão 5.x.
- Existe um shell de substituição?
- E os programas que dependem
pdksh
? Eles podem usar o shell de substituição?
Minha solução alternativa foi usar o pacote da versão 5, que considero não a solução adequada e devo entendê-lo melhor do que a solução alternativa.
Minha preocupação é principalmente com o Oracle Database. Ele pede pdksh
, então será um problema usar um shell de substituição diferente de pdksh
?
mksh
possa te fazer feliz? - "um sucessor do domínio público Korn Shell (pdksh)"Respostas:
Fiquei com a impressão de que o pdksh não era compatível com POSIX e, com o lançamento do código aberto AT&T KSH, houve um movimento significativo de pdksh para ksh . Apenas meus $ 0,02
O AT&T ksh é licenciado pela Eclipse Public License 1.0 (EPL-1.0).
fonte
Pdksh is unmaintained since 1998 and is obsoleted by ksh package.
De acordo com este artigo " Instalação do Oracle Database 11g Release 2 (11.2) no Oracle Linux 6 ":
A falha no pacote "pdksh" pode ser ignorada porque instalamos o pacote "ksh" em seu lugar
Na minha máquina OEL 6.3 bastante padrão, o ksh já foi instalado como parte da compilação, mas você pode precisar fazer um
sudo yum install ksh
para instalá-lo.Nossos DBAs também encontraram este artigo que pode ser útil:
Instalar "11.2.0.3 32-bit (x86)" ou "64-bit (x86-64)" em relatórios RHEL6 que os pacotes
elfutils-libelf-devel-0.97
epdksh-5.2.14
estão faltando.Aplica-se a
Sintomas
Durante a instalação
o Oracle Universal Installer (OUI) relata os pacotes
elfultils-libelf-devel-0.97
epdksh-5.2.14
está ausente.Na
installActions.log
seguinte saída pode ser observada:Causa
OUI executa o seguinte comando:
nenhuma saída é retornada (porque no RHEL6 o pacote redhat-release foi substituído por redhat-release-server-6Server).
Isso faz com que a OUI acredite que o servidor não é um servidor RHEL.
Como a OUI não pode identificar que tipo de servidor é, a OUI executa as verificações de pré-requisito padrão (OEL4).
Esse problema foi registrado como bug não publicado 13981169 no Oracle Development.
Além disso, nenhuma verificação de pré-requisito do RHEL6 é definida em
na mídia 11.2.0.3.
Solução
Solução para 11.2.0.3 de 64 bits (x86-64)
Se você baixou a mídia 11.2.0.3 do My Oracle Support (MOS) e extraiu o software
<path>/database
, faça o seguinte:<path>/database/stage/cvu/cv/admin
cp cvu_config backup_cvu_config
CV_ASSUME_DISTID=OEL4
paraCV_ASSUME_DISTID=OEL6
cvu_config
arquivo atualizado<path>/database/runInstaller
cd <path>/database
./runInstaller
A OUI agora deve executar as verificações de pré-requisito OEL6 (que são idênticas às verificações de pré-requisito RHEL6) e não reportar mais esses pacotes
elfutils-libelf-devel-0.97
epdksh-5.2.14
estão ausentesNOTA
Se você recebeu a mídia 11.2.0.3 no DVD, será necessário copiar a mídia do DVD para um disco no servidor RHEL6 (para que você possa seguir as etapas acima)
Solução para 11.2.0.3 de 32 bits (x86)
Como o
cvu_prereq.xml
arquivo 11.2.0.3 de 32 bits (x86) não faz referência a RHEL6 ou OEL6, a solução alternativa acima não pode ser usada.Após verificar manualmente se todos os requisitos foram atendidos, escolha a opção Ignorar todos no instalador e continue com a instalação.
fonte
Meu entendimento é que, antes do RHEL 6, a Red Hat desconfiava do AT&T KornShell por causa de sua licença; portanto, eles incluíam o pdksh, que é uma implementação menos completa. Acho que David Korn estava fazendo o possível para que o ksh fosse aceito no maior número possível de lugares e, em algum momento, a licença foi esclarecida ou alterada. Esta citação é do site da KornShell : "A AT&T lançou o KornShell como código aberto".
Obviamente, a Red Hat estava satisfeita com a licença quando o RHEL 6 foi lançado, então eles incluíram "a coisa real".
Editar: na verdade, é explicado na página da Wikipedia (é claro) - veja o primeiro parágrafo em História.
fonte
Eu fiz um patch para um pacote antigo do mandrake 2007.1 rpm e criei um novo pacote SRPM que deve ser capaz de compilar sem problemas nas distribuições Linux modernas com versões mais recentes do gcc:
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
Dois ajustes foram feitos: dentro de siglist.sh: sort + 2n + 0n é substituído por sort -k3n -k1n e dentro de vários arquivos c shprintf (nova linha); torna-se shprintf ("% s", nova linha); para impedir que erros -Werror = format-security ocorram.
fonte