Linux에서 “sudo: 명령을 찾을 수 없음” 오류를 수정하는 방법
이는 이제 막 Linux를 사용하기 시작하는 신규 사용자에게 흔하고 실망스러운 문제입니다.
이 문서에서는 이 오류가 무엇을 의미하는지, 그리고 Linux에서 다양한 방법을 사용하여 이 오류를 해결하는 방법을 보여줍니다.
Sudo 명령어란 무엇인가?
먼저 sudo가 무엇인지 알아봅시다. superuser dosudo
의 줄임말인 이 명령어를 사용하면 특별한 superuser(또는 root) 권한이 필요한 작업을 수행할 수 있습니다.
리눅스에서 일반 사용자 계정은 우발적인 시스템 손상을 방지하기 위해 권한이 제한되어 있습니다. 특정 파일에 액세스하거나 중요한 작업을 수행할 수 없습니다. 반면 루트 사용자는 그러한 제한이 없으며 시스템에서 무엇이든 할 수 있습니다.
sudo
명령어 앞에 를 사용하면 일시적으로 권한을 상승시킵니다. 이를 통해 제한될 수 있는 명령어를 실행할 수 있습니다. 예를 들어, 소프트웨어를 설치하거나 시스템 파일을 수정해야 하는 경우 sudo는 필요한 권한을 제공합니다.
sudo를 사용하는 것은 루트 사용자로 로그인하는 것보다 더 나은 옵션인데, 실수로 시스템을 망가뜨릴 위험을 줄여주기 때문입니다. sudo로 명령을 실행하면 신원을 확인하기 위해 사용자 비밀번호(루트 비밀번호가 아님)를 묻습니다. 이렇게 하면 허용된 사용자만 민감한 작업을 실행할 수 있는 보안 계층이 추가로 제공됩니다.
비밀번호 없이 sudo를 사용할 수 있는 방법도 있습니다.
“Sudo: 명령을 찾을 수 없음”의 의미
sudo: 명령을 찾을 수 없음 오류는 Linux 시스템에 sudo 패키지가 없다는 것을 의미합니다. 대부분의 Linux 시스템에는 sudo가 사전 설치되어 있지만 Arch 및 Gentoo Linux와 같이 일부는 그렇지 않습니다.
하지만 때로는 시스템에 sudo가 설치되어 있어도 오류가 계속 표시됩니다. 그런 경우 PATH 변수에 sudo가 설치된 디렉토리가 없기 때문일 수 있습니다. PATH 변수는 나열된 디렉토리를 검색하여 시스템이 명령을 찾는 데 도움이 됩니다.
마지막으로, 사용자에게 올바른 권한이 없거나 PATH가 제대로 설정되지 않은 경우 이 오류가 표시될 수 있습니다. 또한 sudo를 올바르게 철자했는지 확인하세요.
Sudo: 명령을 찾을 수 없음 오류를 수정하는 방법
Linux에서 sudo: 명령을 찾을 수 없습니다 오류를 해결하려면 sudo를 설치하고, 사용자를 sudo 그룹에 추가하거나, sudo 실행 파일 경로를 PATH 변수에 추가해야 합니다.
Sudo 설치
시작하기 위해, 먼저 시스템에 sudo 패키지가 있는지 확인해 보겠습니다. 버전 번호를 쿼리하면 쉽게 확인할 수 있습니다. 표시되면 sudo가 시스템에 설치되어 있다는 것을 알 수 있습니다.
Linux 시스템에 sudo가 설치되어 있지 않으면 오류를 해결하려면 sudo를 설치해야 합니다. 이를 위해 사용자 계정에서 로그아웃하고 루트 사용자로 로그인해야 합니다.
그렇게 하려면 다음 명령을 입력하세요.
이제 루트 사용자가 된 후에는 기본 패키지 관리자를 사용하여 Linux 배포판에 sudo 패키지를 설치할 수 있습니다.
예를 들어, 다음을 사용하여 Ubuntu/Debian 기반 배포판에 sudo를 설치할 수 있습니다 apt
.
CentOS/Fedora 또는 RHEL 기반 배포판에 sudo를 설치하려면 다음을 실행하세요.
다음 명령을 사용하여 Arch Linux에 sudo 패키지를 설치하세요.
Sudo 그룹에 사용자 추가
sudo를 설치한 후 루트가 아닌 사용자를 sudo 그룹에 추가하여 슈퍼유저 루트 액세스를 활성화합니다. 예를 들어, 다음 명령을 사용하여 Ubuntu 또는 Debian 시스템에서 sudo 그룹에 사용자를 추가할 수 있습니다.
Fedora/CentOS 또는 기타 RHEL 기반 배포판에서 wheel 그룹에 사용자를 추가해보세요.
또한 아래 명령을 실행하여 사용자가 그룹에 추가되었는지 확인할 수 있습니다.
su
확인 후, 사용자 이름 뒤에 다음 명령을 사용하여 루트에서 루트가 아닌 사용자로 다시 전환하세요 .
그게 다입니다! 이제 sudo를 사용하여 슈퍼유저로서 모든 명령을 쉽게 실행할 수 있습니다. 예를 들어, 다음 명령으로 Linux 시스템의 패키지를 업데이트하여 sudo 설치를 확인할 수 있습니다.
경로 변수에 Sudo 디렉토리 추가
시스템에 sudo가 설치되어 있지만 계속해서 sudo: 명령을 찾을 수 없습니다 오류가 발생하는 경우, PATH 변수를 확인하여 sudo가 설치된 디렉터리가 포함되어 있는지 확인하세요.
먼저 실행 파일 경로를 반환하여 sudo 명령의 위치를 확인합니다.
다음으로, echo 명령을 사용하여 PATH 변수에 이 디렉토리(/usr/bin/)가 포함되어 있는지 확인합니다.
여기서는 콜론으로 구분된 많은 디렉토리 목록을 볼 수 있습니다. 목록에서 “/usr/bin” 또는 “/bin”을 찾아야 합니다. 이는 sudo의 가장 일반적인 위치이기 때문입니다.
PATH에 “/usr/bin” 디렉토리가 없으면 다음 명령으로 포함할 수 있습니다.
또한, “/usr/bin”을 sudo 실행 파일이 들어 있는 실제 디렉토리로 바꿔주세요.
이 명령을 실행하면 PATH 변수가 일시적으로 업데이트되어 시스템이 sudo 디렉토리를 찾고 Linux에서 bash 오류를 해결할 수 있습니다. 그러나 이 수정은 일시적이며 터미널 세션을 종료하면 사라집니다.
이 변경 사항을 모든 사용자에게 영구적으로 적용하려면 sudo 디렉토리를 시스템 전체 PATH 변수에 추가해야 합니다. 그러려면 먼저 루트 사용자가 되어야 합니다.
“/etc/profile” 파일을 엽니다:
변수 경로 줄을 검색하여 PATH 변수에 “/usr/bin” 디렉토리를 추가합니다.
Ctrl마지막으로 +를 눌러 파일을 저장 O하고 편집기를 닫습니다. 이제 오류 없이 sudo 명령으로 작업할 수 있습니다.
마무리
sudo를 설치하고, 사용자를 sudo 그룹에 추가하고, PATH 변수에 sudo 실행 파일 경로를 포함시켜 sudo: 명령을 찾을 수 없음 오류를 성공적으로 해결했습니다.
게다가 sudo -s, su, sudo su, sudo -i의 차이점도 알아볼 수 있습니다. sudo에 대한 훌륭한 대안이 되는 새로운 권한 상승 프로그램인 Run0도 시도해 볼 수 있습니다.
이미지 출처: Haroon Javed
답글 남기기