
이미 호스트 시스템에 로그를 게시하려고 시도했습니다(docker run -v src:/des 사용). 이제 로그를 다른 서버로 전송하려고 합니다.
내가 사용한 명령 :
- rsync -u -avze ssh 소스/* example.com:/des/logs
rsync: ssh 실행 실패: 해당 파일 또는 디렉터리 없음 (2) rsync 오류: Pipe.c(84)의 IPC 코드(코드 14)에 오류가 있습니다. [sender=3.0.9] rsync: writefd_unbuffered가 소켓에 4바이트를 쓰지 못했습니다. [발신자]: 깨진 파이프(32) rsync 오류: io.c(1532)의 IPC 코드(코드 14)에 오류가 있습니다. [sender=3.0.9]
원본 및 대상 경로를 이미 확인했지만 여전히 동일합니다.
호스트 서버 1이 서버 2와 통신할 수 있다면 서버 01 위에서 실행되는 Docker 컨테이너는 서버 2와 통신할 수 있어야 합니다. (올바른 설명인가요?)
Splunk와 같은 다른 도구를 사용하지 않고도 로그를 관리할 수 있는 Linux 유틸리티를 사용할 수 있는 방법이 있습니까?
답변1
구문이 잘못되어 오류 메시지가 표시됩니다.
“No such file or directory (2) rsync error”
올바른 구문은 다음과 같습니다.
$ rsync <options> /source host:/dest
예:
$ rsync -avz /source host:/dest
SSH에 대한 사용자 정의 포트를 지정해야 하는 경우 이에 대해 따옴표를 사용하십시오. 예는 아래와 같습니다.
$ rsync -e "ssh -p port" <options> /source host:/dest
또한 소스 디렉터리의 소유권을 확인하세요. rsync를 수행하는 사용자여야 하며 그렇지 않으면 동기화에 실패합니다.