https://stackoverflow.com/questions/12996397/command-not-found-when-using-sudoまさに私が探していたものですが、どんな答えも私には役に立ちませんでした。私はアーチLinuxを使用しています。現在の作業ディレクトリからコマンドを実行しようとしています。
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
同じことが起こります。