저는 이제 막 리눅스를 사용하기 시작했습니다. 저는 우분투를 사용하고 있는데 매우 심각한 실수를 저질렀다고 생각합니다. 스크립트를 만들었고 어리석은 생각에 /bin
폴더로 옮기기로 결정했지만 실수로 입력했습니다.
mv /home/kenny/script /bin/bash
이제 나는 의욕을 잃었고 무엇을 해야할지 모르겠습니다. Bash를 실행할 때마다 "심볼 링크가 너무 많습니다"라는 오류가 발생합니다.
/bin/bash를 복원하려면 어떻게 해야 합니까?
답변1
대신 달리기를 시도해 볼 수 있습니다 /bin/sh
.
그런 다음 bash를 다시 설치하십시오.
sudo apt-get install --reinstall /bin/bash
이렇게 하면 오류가 해결됩니다.
답변2
우분투 시스템 자체에서 사용하는 기본 쉘은 /bin/dash
.
그러니 실행해 보세요. 완성과 같은 대화형 사용 기능은 없지만 기본 셸 기능에 관한 한 완전한 셸입니다.
/bin/sh
누락된 내용 에 대해 댓글을 달았으며 이에 대한 심볼릭 링크는 다음과 같습니다 /bin/dash
.
링크 또는 dash
바이너리가 누락되었습니다.
그러나 나는 우분투가 그것 없이는 많은 일을 할 수 있을 것이라고 기대하지 않으며 dash
여전히 실행 중인 것처럼 보입니다. 그래서 우리는 /bin/dash
희망이 있기를 바랄 수 있습니다.
시스템에 using으로 실행되었지만 dash
using으로 지정되어 sh
지금은 누락된 스크립트가 있을 수 있습니다.
/bin/sh
다음이 가리키는 심볼릭 링크를 다시 만들 수 있습니다 /bin/dash
.
sudo ln -s -r /bin/dash /bin/sh
시스템 자체에서는 필요하지 않습니다 bash
. Ubuntu 시스템의 모든 스크립트는 dash
.
기본적으로 대화형 터미널만 bash를 실행하며 사용자 정의 스크립트가 line으로 시작하는 경우 필요합니다 #!/bin/bash
.
시도해 볼 만한 다른 쉘:
/bin/zsh
/bin/csh
/bin/tcsh
/bin/mksh
/bin/lksh
답변3
bash 가 있는지 확인하세요 /usr/bin/
.
그렇다면 내 배포판과 같다면 /bin
에 대한 링크가 있으므로 MV가 충돌하고 다음에서 얻을 수 있기를 /usr/bin/
바랍니다./bin/bash
/usr/bin/