SCP는 Secure Copy Protocol의 약자로 "Secure Shell" 프로토콜을 기반으로 합니다. 컴퓨터 간에 파일을 전송하는 방법을 제공합니다. 이 전송에서 두 컴퓨터 모두 원격 호스트가 되거나 한 컴퓨터는 로컬 호스트가 되고 다른 컴퓨터는 원격 호스트가 될 수 있습니다. 꽤 최근에 많은 사용자가 "해당 파일 또는 디렉토리가 없습니다 ” SCP로 파일을 복사하는 동안 오류가 발생했습니다.
이 기사에서는 이 문제가 발생하는 몇 가지 이유에 대해 논의하고 이 문제를 완전히 해결할 수 있는 실행 가능한 솔루션을 제공합니다. 또한, 우리는 그것이 유발되는 몇 가지 이유를 조사할 것입니다. 충돌을 피하기 위해 가이드를 주의 깊게 정확하게 따르십시오.
SCP에 "해당 파일 또는 디렉터리가 없습니다" 오류가 발생하는 이유는 무엇입니까?
여러 사용자로부터 수많은 보고를 받은 후 문제를 조사하기로 결정하고 문제를 완전히 해결하기 위한 일련의 솔루션을 고안했습니다. 또한 발생 원인을 살펴보고 다음과 같이 나열했습니다.
- 잘못된 명령: 경우에 따라 사용자가 파일을 복사하는 데 사용하는 명령이 올바르지 않을 수 있습니다. 복사 중인 현재 상황에 맞게 복사 명령을 수정해야 합니다. 파일과 전체 디렉토리를 복사하는 명령은 다릅니다. 또한, 다른 구성을 가진 두 대의 컴퓨터 간에 복사하는 명령은 요구 사항에 따라 변경됩니다.
- 포트 번호: 컴퓨터 간에 파일을 복사하기 위한 포트 번호가 지정되지 않았을 수도 있습니다. 두 호스트 간에 파일을 복사하기 전에 올바른 포트를 전달해야 합니다.
- 잘못된 로그인: 현재 서버에 로그인되어 있고 파일을 데스크탑에 복사하려는 경우 서버가 서버 내에서 로컬 경로를 찾으려고 하기 때문에 이 오류가 발생할 수 있습니다. 이는 서버 경로에서 로그아웃하여 방지할 수 있습니다.
- 파일 권한: 경우에 따라 복사할 파일의 권한이 "읽기 전용"으로 제한될 수 있습니다. 이렇게 하면 서버가 파일에 액세스하고 파일을 복사할 수 없습니다. 파일에 대한 읽기 및 쓰기 권한이 제공되는 것이 중요합니다.
이제 문제의 본질에 대한 기본적인 이해를 하였으므로 해결 방법으로 넘어갈 것입니다. 충돌을 피하기 위해 제시된 특정 순서대로 구현해야 합니다.
해결책 1:올바른 명령 사용
파일을 전송하려는 호스트 구성에 따라 올바른 명령을 사용해야 합니다. 이를 위해 서로 다른 호스트 구성 간에 파일을 전송하는 데 사용할 수 있는 몇 가지 명령을 나열합니다.
로컬 호스트에서 원격 호스트로 복사하기
Localhost는 물리적 액세스 권한이 있는 실제 컴퓨터입니다. 원격 호스트는 사용자가 물리적으로 접근할 수 없는 원격 호스트입니다. 로컬 호스트에서 원격 호스트로 파일을 전송하려면 다음 명령 구성을 사용해야 합니다.
$ scp "the_file" your_username@the_remote_host:the/path/to/the/directory
"Alexa.txt라는 텍스트 파일을 복사하는 예 "는 다음과 같습니다.
$ scp Alexa.txt [email protected]:/some/remote/directory
같은 방법으로 전체 디렉토리 다음과 같은 방법으로
$ scp -r "the_directory_to_copy" your_username@the_remote_host:the/path/to/the/directory/to/copy/to
"Alexa라는 디렉토리를 복사하는 예 "는 다음과 같습니다.
$ scp -r foo [email protected]:/some/remote/directory/bar
원격 호스트에서 로컬 호스트로 복사하기
원격 호스트에서 로컬 호스트로 파일을 복사하려는 경우 명령 구성이 원래 구성과 다릅니다. 다음은 원격 호스트와 로컬 호스트 간에 파일을 복사하는 적절한 명령입니다.
복사하려면 a 파일, 다음 명령 사용
$ scp your_username@the_remote_host:the_file /your/local/directory
"Alexa라는 파일을 복사하려면 .txt ", 다음 명령을 사용하십시오.
$ scp your_username@the_remote_host:Alexa.txt /your/local/directory
해결책 2:포트 번호 식별
파일을 컴퓨터에 복사하기 전에 원격 호스트의 포트 번호를 식별해야 합니다. 이를 위해 복사 프로세스를 시작하는 동안 포트 번호를 추가합니다.
포트를 표시하면서 다음 명령을 사용하여 컴퓨터 간에 복사할 수 있습니다. 번호.
$ scp -P port_number your_username@the_remote_host:the_file /your/local/directory
이 동일한 명령을 사용하여 원격 호스트로 복사하거나 원격 호스트에서 복사하는 동안 포트 번호를 나타낼 수 있습니다. "-P(포트 번호)를 추가하기만 하면 됩니다. "$ scp 뒤에 " 명령의 일부입니다.
해결책 3:권한 변경
컴퓨터 간에 파일을 복사하는 동안 파일에 적절한 권한을 제공해야 합니다. 따라서 이 단계에서는 파일의 권한을 변경하는 프로세스를 표시합니다. 이를 위해:
- 맞음 –클릭 복사하려는 파일에서.
- '속성을 클릭합니다. "를 선택하고 "보안 " 탭.
- 모든 권한이 "시스템 " 및 "관리자 ".
참고: 또한 파일을 복사하는 동안 서버 경로에 로그인하지 않도록 하십시오.