SSH를 통해 sudo 사용: sudo 명령을 찾을 수 없음

SSH를 통해 sudo 사용: sudo 명령을 찾을 수 없음

원격 서버에서 슈퍼유저로 명령을 실행하려고 합니다 ssh. 이를 위해 macOS에서 ssh -t다음과 같은 명령을 전달합니다.

bash-5.2$ ssh -t [email protected] "sudo echo Hi"

서버에 로그인할 때 비밀번호 프롬프트가 표시되지만 sudo에 대한 비밀번호 프롬프트 대신 다음 오류가 나타납니다(sudo와 함께 사용하는 명령에 관계 없음).

bash: line 1: sudo: command not found
Connection to server.com closed.

왜 이런 일이 발생하는지 이해하지 못합니다. 서버에 로그인하여 개별적으로 명령을 실행하면 제대로 작동합니다. 그래서 이것은 작동합니다 :

bash-5.2$ ssh [email protected]
... Password: 
Last login: ...
bash-5.1$ sudo echo hi
Password:
Last login: ...
hi

나는 이것에 매우 익숙하지 않기 때문에 명백한 것을 간과하고있을 수 있습니다.

답변1

설치되어 있으면 sudo경로에 없을 수도 있습니다.

sudo또는 를 실행하여 which sudo해당 경로가 맞는지 확인하세요 echo $PATH. sudo가 경로에 없으면 경로 변수가 손상되었을 수 있습니다. 일반적인 위치를 수행하거나 해당 위치를 찾기 위해 sudo /usr/bin/sudo실행하여 locate sudo | grep bin이를 테스트해 볼 수 있습니다 .

관련 정보