SSH를 사용하여 원격 시스템의 클러스터에서 로컬 스크립트(예: 호스트 이름.sh)를 실행하려고 하는데 다음 오류가 발생합니다.
> ssh -A _remote ssh -A _cluster 'bash' < hostname.sh
stdout: write: Broken pipe
이 예에서 호스트 이름.sh 파일은 호스트 이름만 출력하지만 일반적으로 더 복잡할 수 있습니다. 다음과 같이 파이프를 잘못 사용하면 오류가 발생할 수 있습니다.
ssh -A _remote ssh -A _cluster hostname
> _cluster_name
여러 가지 솔루션을 시도했지만 모두 어떤 식으로든 실패했습니다. ssh로 _remote로 간 다음 hotsname.sh를 읽으려고 시도했지만 이 경우에는 작동하지 않습니다. 작동하는 방법은 hostname.sh를 _remote에 복사하고 SSH를 통해 원격에 복사한 후 다음을 실행하는 것입니다.
ssh _cluster "bash" < hostname.sh
하지만 이는 로컬 컴퓨터와 원격 컴퓨터 간에 지속적으로 hostname.sh를 동기화해야 함을 의미합니다.
도움을 주시면 감사하겠습니다.