Tason
[Ubuntu] Command 'ls' is available in '/bin/ls' 오류 본문
Ubuntu에 Swift를 다운로드 받는 중 오류를 겪으며 전전긍긍하고 있었다.
그러던 중 Ubuntu 실행 후 root로 이동하는데 오류를 발견했다. 하지만 root로의 이동은 정상적으로 진행되었다.
얼마 지나지 않아 'ls'명령이 실행되지 않는 치명적인 문제를 발견했다.
" Command 'ls' is available in '/bin/ls' "
" The command could not be located because '/bin' is not included in the PATH environment variable "
" ls: command not found "
위와 같이 세 개의 에러메세지가 출력되었다.
메세지를 보고 PATH에 문제가 있음을 알 수 있었다.
Trouble Shooting
다음과 같이 PATH설정을 하고난 후 'ls'명령이 정상적으로 동작하는 것을 확인했다.
export PATH=/usr/bin:bin
하지만 bash를 닫고 다시 열어보니 같은 에러가 나타났다.
위에서 언급했듯이 PATH의 문제가 있었고 ~/.bashrc를 확인하여 오류를 해결했다. ~/.bashrc는 새 터미널 창을 열 때마다 로드된다. 기본 PATH 및 사용자가 지정해놓은 PATH가 이곳에 위치한다. PATH설정은 Shell에서 명령을 실행할 때 해당 프로그램을 찾을 경로를 지정해주는 것이다. 자동적으로 기본 명령어들이 저장되어 있고 PATH에 등록하여 추가적으로 설치한 명령을 사용할 수 있다. 필자의 경우는 Swift 다운로드 중 설정한 PATH에 문제가 생긴 것이었다. ~/.bashrc를 수정해야 한다.
pico ~/.bashrc
가장 아래쪽으로 스크롤한다. Swift를 다운로드받으며 PATH 설정을 진행했는데 여러번의 착오를 겪으며 잘못된 PATH가 설정된 것으로 보인다. 필자는 가장 아래에서부터 3줄까지의 명령을 삭제했다.
이후에 bash를 다시 열어 'ls'명령을 입력해도 문제없이 작동하는 것을 확인할 수 있었다.