알파인 리눅스에 sshpass를 설치할 때 인수 없이 실행했지만 인수(유효 여부)를 반환하면 설치되고 문서가 표시됩니다 sshpass: Failed to run command: No such file or directory
.
경로가 지정되어 있으며 절대 경로를 사용하는 경우에도 동일한 동작을 갖습니다. Ansible과 함께 사용하고 싶지만 직접 작동하지도 않습니다.
이 기능이나 이 기능이 다른 사람에게는 작동하지 않는 방법에 대한 정보를 온라인에서 찾을 수 없는 것 같습니다. 하지만 다른 사람의 컨테이너와 내 컨테이너를 모두 사용해 봤지만 어느 쪽에서도 실행할 수 없습니다. https://pkgs.alpinelinux.org/package/v3.3/main/x86/sshpass
$ docker run -it --rm williamyeh/ansible:alpine3 ash
/ # sshpass
Usage: sshpass [-f|-d|-p|-e] [-hV] command parameters
-f filename Take password to use from file
-d number Use number as file descriptor for getting password
-p password Provide password as argument (security unwise)
-e Password is passed as env-var "SSHPASS"
With no parameters - password will be taken from stdin
-P prompt Which string should sshpass search for to detect a password prompt
-v Be verbose about what you're doing
-h Show help (this screen)
-V Print version information
At most one of -f, -d, -p or -e should be used
/ # sshpass hi
sshpass: Failed to run command: No such file or directory
/ # which sshpass
/usr/bin/sshpass
/ # /usr/bin/sshpass
Usage: sshpass [-f|-d|-p|-e] [-hV] command parameters
-f filename Take password to use from file
-d number Use number as file descriptor for getting password
-p password Provide password as argument (security unwise)
-e Password is passed as env-var "SSHPASS"
With no parameters - password will be taken from stdin
-P prompt Which string should sshpass search for to detect a password prompt
-v Be verbose about what you're doing
-h Show help (this screen)
-V Print version information
At most one of -f, -d, -p or -e should be used
/ # /usr/bin/sshpass anyinput
sshpass: Failed to run command: No such file or directory
기본 ssh 실행 파일이 작동하고 이 방식으로 호스트에 연결할 수 있다는 점을 언급할 가치가 있습니다.
답변1
SSHpass는 제대로 작동하지만 알파인 컨테이너 python:3.6-alpine에는 openssh가 설치되어 있지 않습니다.
이 오류 메시지는 SSH 구성 요소가 실패했음을 언급하지 않기 때문에 혼란스럽습니다.
이 문제는 를 실행하여 해결할 수 있습니다 apk add --update openssh
.
RUN apk add --update --no-cache sshpass
Dockerfile의 행을 에서 로 변경하여 문제가 해결되었습니다 RUN apk add --update --no-cache openssh sshpass
.
답변2
No such file or directory
hi
을 참조하세요 anyinput
:)
방금 알파인 가상 머신에 sshpass를 설치했습니다.
# sshpass -p <my password> ssh 127.0.0.1
예상대로 작동합니다.
폴리스티렌:당신이 무엇을 하고 있는지는 알겠지만,제발이와 같은 작업을 수행하기 전에 공개 키 인증을 조사했는지 확인하십시오 sshpass
.