A julgar por a discussão na sala de bate-papo , binários da shell estão presentes no disco, mas não podem ser executados. Isso parece uma péssima notícia para você, pois é o sintoma de uma biblioteca ausente, provavelmente libc. ssh
será inútil, pois, qualquer que seja a forma, a execução de um comando requer um shell funcional .
Se você tiver um problema de libc, o login local (ou seja, acesso físico) falhará também, mas você poderá consertar as coisas com o shell embutido em sua initrd
image ( busybox
provavelmente) ou com um Linux ativo em USB dirigir.
Antes, você ainda pode tentar consertar seu servidor remotamente, copiando de volta a biblioteca ausente com sftp
. Isso pode funcionar se você tiver sorte, mas você também pode precisar executar ldconfig
e isso só pode ser feito localmente.
Finalmente, quando tudo estiver em ordem, talvez você queira instalar o pacote bash-static
, de modo que seu shell não dependa mais de uma biblioteca externa.
[update] Uma ideia que pode permitir que você se conecte ao seu servidor com ssh
: Via sftp
, você pode copiar o shell do pacote bash-static
( /bin/bash-static
) para /bin
no servidor remoto . Você pode modificar o /etc/passwd
do controle remoto para alterar o shell de root
para /bin/bash-static
e, em seguida, conectar-se com ssh
. Você também pode fazer o mesmo com /bin/busybox
do pacote busybox-static
e ter algumas ferramentas básicas ( mv
, cp
, etc.) para consertar as coisas.