Você pode tentar executar /bin/sh
.
Depois disso, reinstale o bash:
sudo apt-get install --reinstall /bin/bash
Isso deve corrigir seu erro.
Acabei de começar a usar o Linux. Estou usando o Ubuntu e acho que cometi um erro muito grave. Eu fiz um script e por algum senso estúpido eu decidi movê-lo para a minha pasta /bin
, mas eu acidentalmente digitei
mv /home/kenny/script /bin/bash
Agora eu perdi minha festa e não sei o que fazer. Toda vez que eu executo bash eu recebo um erro "muitos links simbólicos".
O que posso fazer para restaurar meu / bin / bash?
Você pode tentar executar /bin/sh
.
Depois disso, reinstale o bash:
sudo apt-get install --reinstall /bin/bash
Isso deve corrigir seu erro.
O shell principal usado pelo próprio sistema Ubuntu é /bin/dash
.
Então, tente executar isso. Não possui recursos para uso interativo como conclusão, mas é um shell completo em termos de recursos básicos de shell.
Você já comentou que /bin/sh
está faltando, que é um link simbólico para /bin/dash
.
O link ou o binário dash
está ausente.
Mas eu esperaria que o Ubuntu não pudesse fazer muito sem dash
, e parece que ainda está ativo - então podemos esperar que a /bin/dash
esteja lá.
Talvez alguns scripts do sistema sejam executados com dash
, mas especifique o uso de sh
, que agora está ausente.
Você pode recriar o link simbólico /bin/sh
apontando para /bin/dash
por:
sudo ln -s -r /bin/dash /bin/sh
O sistema em si não precisa de bash
- todos os scripts que fazem parte do sistema Ubuntu devem rodar com os recursos de dash
.
Somente os terminais interativos executam bash por padrão e são exigidos por scripts personalizados quando iniciam com a linha #!/bin/bash
.
Outras camadas para tentar:
/bin/zsh
/bin/csh
/bin/tcsh
/bin/mksh
/bin/lksh
Verifique se você tem o bash em /usr/bin/
.
Se sim, se é como na minha distro, então /bin
é um link para /usr/bin/
;
Então, com qualquer esperança, você só travou /bin/bash
com seu mv e pode restaurá-lo de /usr/bin/