Como substituir / consertar uma bagunça / bin / sh e / bin / traço

3

Eu corrompido meu / bin / sh e não têm idéia de como substituí-lo. Eu acidentalmente copiei sobre isso. Como posso resolver isso?

Estou executando o Ubuntu Servidor 11.10, nenhum X.

Atualização: Eu tentei a correção que foi gentilmente oferecido por Elias, mas eu acho que eu copiados / bin / dash demasiado

atualização: SAÍDA DE cd /bin; file sh dash bash; md5sum sh dash bash

sh:   symbolic link to 'dash'
dash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0x5d23ca7cbab4993f295d1089b4860eb32d406fab, stripped
bash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, BuildID[sha1]=0xf199a4a89ac968c2e0e99f2410600b9d7e995187, stripped
c229085928dc19e8d9bd29fe88268504  sh
c229085928dc19e8d9bd29fe88268504  dash
089ed56cd74e63f461bef0fdfc2d159a  bash
    
por Joel 11.05.2012 / 00:57

2 respostas

2

Em todas as versões remotamente recentes do Ubuntu, /bin/sh é apenas um link simbólico para /bin/dash . Portanto, certifique-se de que o que é atualmente chamado de /bin/sh seja salvo em algum lugar, se for importante, exclua-o e crie um novo link.

Para remover o que estiver atualmente /bin/sh e restaurar /bin/sh para o que deveria ser, execute estes comandos:

cd /bin
sudo rm sh
sudo ln -s dash sh
    
por Eliah Kagan 11.05.2012 / 01:00
0

Supondo que você ainda tenha o bash, use o bash como sh.

sudo ln -s bash /bin/sh

Em seguida, reinstale o traço

sudo apt-get install --reinstall dash
    
por geirha 11.05.2012 / 11:29