Kali Linux Live를 실행 중이고 오랫동안 시스템을 루트 사용자로 사용하고 있는데 루트를 기본 계정으로 사용하지 말고 권한이 낮은 계정 사용자를 생성하라는 내용의 온라인 기사를 보았습니다. 그것이 바로 제가 한 일 ifconfig
이고 실행을 시도했을 때 오류가 발생하기 전까지는 모든 것이 괜찮았습니다: bash: ifconfig: command not found
.
실행을 시도했지만 이미 있는 최신 버전이 sudo apt-get install ifconfig
반환됩니다 . ifconfig
좀 헷갈려서 run 을 sudo ifconfig
사용해야 해서 시도해봤습니다 . 물론 작동합니다. 실행해야 하는 다른 명령도 비슷한 오류를 반환합니다 .sudo
apt-get
sudo ifconfig
sudo
그래서 내 질문은 을 사용하여 설치할 때 실행해야 하는 프로그램이 루트 시스템에 저장되어 sudo apt-get install
루트가 아닌 사용자가 액세스할 수 없다는 것입니다. 이것이 맞는지 잘 모르겠습니다. 매뉴얼을 읽으면 sudo
명령이 루트(또는 일반적으로 다른 사용자)로 실행된다는 것을 알지만 루트 시스템에서 "출력 실행"을 의미합니까? 그렇다면 관리자 권한을 부여하는 것 외에 권한이 낮은 사용자로 명령을 실행하려면 어떻게 해야 합니까?
모든 지원에 감사드립니다!
답변1
그들은 /sbin
함께 있다/usr/sbin
누구나 실행할 수 있습니다.. 그러나 이것은 작동할 수도 있고 작동하지 않을 수도 있습니다. 이러한 기능이 없으면 대부분의 명령은 별 효과가 없습니다. 전통적으로 사용자는 root
모든 능력을 갖고 있습니다. 일반적 으로 일반 사용자 실행 검색 경로에 /sbin
있지 않습니다./usr/sbin
ifconfig
일반 사용자에게 유용하지만 모든 기능을 사용할 수는 없습니다. 예를 들어 /sbin/ifconfig
매개변수가 없으면 모든 네트워크 인터페이스가 나열됩니다.
답변2
루트가 아닌 사용자로서 이러한 명령을 찾을 수 없는 이유는 해당 명령이 PATH에 없을 수 있기 때문입니다. 을 실행하여 echo $PATH
쉘이 입력한 명령을 찾는 디렉토리를 확인하십시오.
시스템 프로그램과 관리 유틸리티는 일반적으로 /sbin
및 에 있습니다 /usr/sbin
. 이러한 프로그램과 유틸리티는 모든 사용자가 실행할 수 있지만(적절한 파일 시스템 권한을 설정한 경우) 일반적으로 루트로 실행하지 않는 한 시스템에서 아무 것도 변경하지 않습니다.
다음 명령을 사용하여 PATH에 새 디렉터리를 추가할 수 있습니다.
export PATH=$PATH:/path/to/directory
ifconfig
필요한 경우 루트가 아닌 사용자로 및를 실행할 수 있지만 apt-get
루트가 아니면 구성을 변경하거나 패키지를 설치할 수 없습니다.