É isso que acontece:
$ python3 -m ssl
Traceback (most recent call last):
File "/opt/splunk/lib/python3.9/runpy.py", line 197, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/opt/splunk/lib/python3.9/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/opt/splunk/lib/python3.9/ssl.py", line 99, in <module>
import _ssl # if we can't import it, let the error propagate
ImportError: libssl.so.1.0.0: cannot open shared object file: No such file or directory
ou também
$ openssl --help
openssl: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory
Deve ser algo com a instalação do Splunk que corrompeu o OpenSSL... Perguntei isso aqui no Ubuntu Bug Launchpad: https://bugs.launchpad.net/ubuntu/+source/openssl/+bug/2089827
Como eu poderia consertar sem ter que mexer no Splunk?
Descobri aqui: https://community.splunk.com/t5/Splunk-Search/Why-am-I-getting-error-quot-libssl-so-1-0-0-cannot-open-shared/mp/267920 que eu poderia simplesmente fazer isso e corrigir:
export LD_LIBRARY_PATH=/opt/splunk/lib/:$LD_LIBRARY_PATH
Perguntas e preocupações
Quero entender melhor a situação e identificar quaisquer problemas potenciais. Especificamente:
Essa abordagem não é recomendada? Há algo inerentemente errado com ela?
Além disso, estou tentando compreender a causa raiz do problema:
- O que causou esse problema em primeiro lugar?
- Por que o sistema depende de uma biblioteca OpenSSL DENTRO do Splunk?
- Por que o sistema não pode usar uma biblioteca separada em vez daquela incluída no Splunk?
FTR, isso não é um bug do Ubuntu, então, tecnicamente falando, deveria ter sido fechado. É um bug no instalador do Splunk.
Sim, essa não é uma boa maneira de instalar um aplicativo. Não sei os detalhes exatos, mas vejo no relatório que você mencionou que ele está instalado em
/opt
, então é definitivamente algo que você instalou além do gerenciador de pacotes.Sempre que você faz isso, isso implica que você sabe o que está fazendo (o que aparentemente não sabe) e está sozinho no mundo da experimentação. Isso ocorre porque quando você instala algo além do gerenciador de pacotes, dependendo de como o script de instalação foi escrito, ele pode sobrescrever algo já presente no sistema e estragar alguma coisa. Mesmo que isso não aconteça, pode mudar a ordem em que algumas bibliotecas estão sendo pesquisadas e, novamente, algo quebraria. E mesmo que isso não aconteça, alguma atualização do sistema pode sobrescrever arquivos que você instalou (porque, no que diz respeito ao gerenciador de pacotes, não há arquivos registrados no caminho) , quebrando assim seu aplicativo.
Mas não se preocupe, no seu caso não é um problema realmente, porque o aplicativo parece ser autocontido em
/opt
. Apenas tenha isso em mente.Por exemplo, o Modern
pip
(gerenciador de pacotes do Python) se recusaria até mesmo a instalar coisas globalmente, a menos que você passasse um--break-system-packages
.Para leitores secundários: OP esqueceu de mencionar um ponto importante que
openssl
não é do Ubuntu e está localizado em/opt
Quando você usa um instalador de terceiros, geralmente:
Engraçado o suficiente, já que você conseguiu consertar isso modificando
LD_LIBRARY_PATH
, isso implica que seu caso é 1, exceto que os criadores do instalador estragaram a instalação e ele simplesmente não vê suas próprias bibliotecas. A maneira como deveria ter sido feito é definindo RPATH deopenssl
para o local das bibliotecas. Você pode alterá-lo manualmente, ao que parece , isto é, se você não quiser mexer comLD_LIBRARY_PATH
.Hm? Você está falando de
python3 -m ssl
? Se esse módulo foi instalado pelo gerenciador de pacotes, então a única maneira de você estar tendo o problema é se você alterou manualmente$PATH
para apontar para o , do Splunkopenssl
, o que lhe dá o erro. IOW, a "dependência" foi adicionada por você.Bem, a menos que você tenha modificado globalmente
LD_LIBRARY_PATH
o sistema não usa a biblioteca do Splunk. Presumo que a pergunta esteja relacionada à anterior, nesse caso espero que sua resposta explique a situação.PS : relate um bug ao Splunk, eles devem consertar o instalador.