https://stackoverflow.com/questions/12996397/command-not-found-when-using-sudo정확히 내가 찾고 있던 것이지만 어떤 답변도 나에게 도움이 되지 않았습니다. 저는 아치 리눅스를 사용하고 있습니다. 현재 작업 디렉터리에서 명령을 실행하려고 합니다.
Workspace$ sudo ./SomeBinary -some_args
sudo: ./<SomeBinary>: command not found
sudo pwd
/home/SomeUser/Workspace
내 /etc/sudoers
프로필
Defaults env_keep += "LANG LANGUAGE LINGUAS LC_* _XKB_CHARSET"
Defaults env_keep += "HOME"
Defaults env_keep += "XAPPLRESDIR XFILESEARCHPATH XUSERFILESEARCHPATH"
Defaults env_keep += "QTDIR KDEDIR"
Defaults env_keep += "XDG_SESSION_COOKIE"
Defaults env_keep += "XMODIFIERS GTK_IM_MODULE QT_IM_MODULE QT_IM_SWITCHER"
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
Defaults mail_badpass
Defaults log_output
Defaults!/usr/bin/sudoreplay !log_output
Defaults!/usr/local/bin/sudoreplay !log_output
Defaults!REBOOT !log_output
root ALL=(ALL) ALL
%wheel ALL=(ALL) ALL
%sudo ALL=(ALL:ALL) ALL
#includedir /etc/sudoers.d
원격 디렉토리를 사용하여 작업 디렉토리를 마운트했습니다 sshfs
.
sshfs RemoteUbuntu.local:/media/ExtHDD/Workspace ~/Workspace
리모컨이 BTRFS
포맷되었습니다.
답변1
나는 여기에 다른 뭔가가 있는 것 같아요 ./SomeBinary
. CentOS 7 시스템에서 두 테스트를 모두 실행했는데 sudo
문제가 없었습니다.
$ cat sudy.bash
#!/bin/bash
whoami
echo "hi"
pwd
결과는 다음과 같습니다.
$ sudo ./sudy.bash
root
hi
/home/vagrant
whoami
실행 파일을 내 /home/vagrant
디렉터리에 복사하고 실행하면 다음과 같습니다 .
$ which whoami
/usr/bin/whoami
$ cp /usr/bin/whoami .
$ ll whoami
-rwxr-xr-x 1 vagrant vagrant 28984 Aug 5 00:23 whoami
내가 그것을 실행할 때 sudo
:
$ sudo ./whoami
root
명령어를 찾을수 없음
이상하게도 이 메시지를 표시할 수 있는 유일한 방법은 sudo
스크립트에서 실행 비트를 제거하는 것입니다 sudy.bash
. 예를 들어:
$ chmod -x sudy.bash
나처럼 달리다
$ ./sudy.bash
-bash: ./sudy.bash: Permission denied
sudo를 통해 실행
$ sudo ./sudy.bash
sudo: ./sudy.bash: command not found
노트:Duplicates에서도 sudo ./whoami
같은 일이 발생합니다 .