SSH를 통한 파일 전송


9

일부 스크립트에서 SSH를 통한 파일 전송을 사용하고 싶습니다. ssh를 tar하는 것이 가능하다는 것을 읽었습니다. 어디서부터 읽어야합니까?


왜 타르를 기르나요?
Zoredache

1
tar는 SSH를 통해 파일을 복사하는 가장 빠른 방법입니다. 많은 작은 파일을 복사 할 때 scp 및 rsync에 프로토콜 오버 헤드가 많이 발생합니다.
Justin

@Justin은 물론 tar를 사용한다고 가정하면 안정적인 연결이 가능하다는 것입니다. 원시 성능이 중요하지 않은 경우 일반적으로 scp / rsync와 같이보다 일반적이고 간단한 솔루션을 사용하는 것이 좋습니다.
Zoredache

1
응? ssh를 통한 tar는 scp 또는 rsync보다 나쁘지 않습니다. rsync가 더 나은 유일한 측면은 다시 시작할 수 있다는 것입니다. 연결이 확실하지 않으면 ssh를 통해 tar를 먼저 시도한 다음 rsync로 전송을 완료하는 것이 좋습니다.
Justin

@Justin, 그것은 상당히 복잡한 스크립트를 만들 것입니다. 아마도 우리는 조금 더 기본적인 것으로 시작해야 할 것입니다.
John Gardeniers

답변:


23

ssh를 통한 파일 전송을 수행하려면

  • scp를 사용하십시오
    • scp -r /srcdir/ user@remotehost:/destdir/
  • ssh를 통한 rsync 사용 (-e 매개 변수 참조)
    • rsync -e ssh -a /srcdir/ user@remotehost:/destdir/
  • stdin / out ( tar , cpio 등)을 통해 데이터를 전송하는 도구를 사용하십시오.
    • cd /sourcedir; tar -c . | ssh username@remotehost bash 'cd /dstdir; tar -x
  • sshfs 를 통해 파일 시스템을 마운트하십시오 (시스템에서 퓨즈가 지원되는 경우)

나는 정기적으로 세 가지를 모두 사용합니다. 내가 사용하는 것은 상황에 따라 다릅니다.
reinierpost

3

O'Reilly는 SSH, The Secure Shell : The Definitive Guide와 같은 모든 책을 보유하고 있습니다. 구글을 위해 많은 참고 문헌, 구매 장소 및 온라인으로 볼 수 있습니다.


당신이 downvoted 얻을 때 당신이 이유를 알려주는 의견이 없을 때 그것을 사랑 해요. 그는 어디에서 책을 읽어야하는지 물었습니다.이 책은 온라인과 서점에서 구할 수 있습니다. ssh에 대한 훌륭한 참조입니다.
Kevin K

나도 이것도 잘못 생각합니다. 실제로 질문에 대답하고 15 번까지 투표 한 답변이 ssh를 통해 읽기 시작 위치를 참조하지 않고 파일을 복사하는 일반적인 방법이라는 점을 감안할 때 왜 투표를 거부 했습니까 (두 번)? 상황을 해결하기 위해 투표를하겠습니다. 그들이 당신을 실망시키지 못하게하십시오.
Richard Holloway


0

tar over ssh의 경우 ssh가 stdin 및 stdout을 전달한다는 사실을 사용할 수 있습니다. 그래서 당신은 할 수 있습니다

ssh server 'tar czf - /some/dir/' > tarfile.tar.gz

로컬 머신에 백업하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.