저는 A 머신에 있고 B 머신에서 파일을 추출하고 싶습니다.
A$ scp <myuserid>@hostB:<path of file in B> .
그것은 말한다:
scp: <path of file in B>: No such file or directory
하지만 머신 B에서는 이 파일이 이 경로에 존재합니다.
무엇이 잘못되었나요?
답변1
파일을 지정하지 않았습니다. 콜론 뒤에 파일(경로 포함)을 추가해야 합니다.
A$ scp <myuserid>@hostB:/absolutepath/file .
또는
A$ scp <myuserid>@hostB:relativepath/file .
홈 디렉터리에 대한 상대 경로입니다.
다른 사용자(예: A와 B의 동일한 사용자)를 지정하지 않으면 다음이 필요하지 않습니다.@
A$ scp hostB:/path/file .
답변2
$ scp username@remoteip:remote_location_file /location/where/you/save
주석과 마찬가지로:이는 파일을 복사할 때만 작동합니다. 디렉토리를 복사하려면 다음을 사용하십시오.
$ scp -r username@remoteip:remote_location_directory /location/where/you/save
우리는 이미 두 번째 명령에서 재귀 옵션을 살펴보았습니다. 이 옵션은 필요한 경우 사용할 수 있는 다른 옵션과 함께 나열됩니다.매뉴얼 페이지에서:
-r
전체 디렉터리를 재귀적으로 복사합니다.-P port
연결할 원격 호스트의 포트를 지정합니다. -p는 rcp에서 파일의 시간과 모드를 보존하기 위해 이미 예약되어 있으므로 이 옵션은 대문자 "P"로 작성됩니다.-p
원본 파일의 수정 시간, 액세스 시간 및 모드를 유지합니다.-v
상세 모드. scp 및 ssh가 진행 상황에 대한 디버그 메시지를 인쇄하도록 합니다. 이는 연결, 인증 및 구성 문제를 디버깅하는 데 도움이 됩니다.
답변3
올바른 scp 경로 사용
scp ssh://user@hostname/tmp/foo.txt .
답변4
DMZ 사용자와 비밀번호가 있는 경우 로컬 시스템에서 DMZ에서 로컬 Linux 시스템(풀)으로 양방향으로 쉽게 SCP를 수행할 수 있습니다. 현재 로그인된 비밀번호에 복사된다는 뜻입니다 abc.text
.folder2
scp user@111111:folder1/folder2/abc.txt .
비밀번호를 물어볼 거예요
그게 다야
이제 로컬 컴퓨터의 폴더, 하위 폴더 및 파일을 DMZ로 보내려고 합니다.
usr@localmachine:~/abc/defs> scp -r folder/ usr@111111:vkrishna/docker/
비밀번호를 다시 묻습니다
:
은 원격 컴퓨터의 루트 폴더이고 vkrishna는 폴더 중 하나이며 docker 하위 폴더이기도 합니다. 로컬 defs 폴더에는 folder
완전히 전송하려는 폴더가 있습니다 .
좋다/abc/defs/folder