이 scp 명령이 상위 디렉터리를 생성하는 이유는 무엇입니까?

이 scp 명령이 상위 디렉터리를 생성하는 이유는 무엇입니까?

SSH를 통해 한 컴퓨터에서 다른 컴퓨터로 파일을 복사하려고 합니다. 두 머신 모두 Ubuntu 서버입니다. 두 컴퓨터는 비밀번호 없이 서로 로그인할 수 있도록 키를 교환했습니다.

내 명령은 다음과 같습니다(물론 개인 정보 보호를 위해 세부 사항이 변경됨).

scp -i /var/www/place/.ssh/id_rsa file.tar.gz [email protected]:directoryName/file.tar.gz

그런데 실행할 때마다 다음과 같은 오류가 발생합니다.

Could not create directory '/var/www/.ssh'.
Host key verification failed.
lost connection

명령이 scp이름이 .ssh한 수준 높은 디렉터리를 만들려고 시도하는 것 같습니다 place.

여기서 무슨 일이 일어나고 있는 걸까요? scp를 실행하려면 일종의 임시 디렉터리를 만들어야 합니까?

이 명령을 실행하는 사용자 계정은 /var/www/place에는 읽기/쓰기 권한이 있지만 /var/www에는 없습니다. 그렇다면 이 scp 명령을 어떻게 실행합니까?

(저는 Linux 명령줄에 대한 경험이 많지 않으므로 길고 간단하게 답변해 주시기 바랍니다. 양해해 주셔서 감사합니다.)

답변1

이 문제는 귀하가 설정한 공개 키 인증과 관련이 없습니다. 개인 및 공개 키 외에도 SSH는 연결하는 각 호스트의 호스트 키를 ~/.ssh 디렉터리의 Known_hosts라는 파일 아래에 저장합니다. 표시되는 오류는 이 파일을 생성하려는 SSH의 초기 시도에서 발생합니다.

관련 정보