scp를 사용하여 파일 전송 중: 권한이 거부되었습니다.

scp를 사용하여 파일 전송 중: 권한이 거부되었습니다.

원격 컴퓨터를 사용하여 ssh내 컴퓨터로 파일을 전송하려고 합니다.

scp My_file.txt user_id@server:/Home

이렇게 하면 내 컴퓨터의 홈 폴더에 My_file.txt가 저장됩니다. 그렇죠? 알겠어요

scp/Home: 권한이 거부되었습니다

또한 시도할 때: ...@server:/Desktop원격 컴퓨터에서 내 데스크탑으로 파일을 복사하기 위해.

내가 뭘 잘못했나요?

답변1

명령이 새 문서를뿌리/( )를 선택하세요. 당신이 원하는 것은 그것을 당신의 컴퓨터로 전송하는 것입니다.디렉토리(쓰기 권한이 없기 때문에 /). 집으로 가는 경로가 비슷해 보인다면 /home/erez다음을 시도해 보세요.

scp My_file.txt user_id@server:/home/erez/

홈 디렉터리 경로를 바로가기로 바꿀 수 있으므로 ~/다음 명령은 동일한 효과를 갖습니다.

scp My_file.txt user_id@server:~/

원격 측 경로를 완전히 생략할 수도 있습니다. 이는 홈 디렉토리를 의미합니다.

scp My_file.txt user_id@server:

즉, 파일을 데스크톱에 복사하려면 해당 파일을 다음으로 전송해야 할 수도 있습니다 /home/erez/Desktop/.

scp My_file.txt user_id@server:/home/erez/Desktop/

또는 바로가기를 사용하세요:

scp My_file.txt user_id@server:~/Desktop/

또는 홈 디렉터리를 기준으로 해석되는 원격 측의 상대 경로를 사용합니다.

scp My_file.txt user_id@server:Desktop/

@ckhan이 이미 언급했듯이 매개변수도 교환해야 합니다.

scp FROM TO

My_file.txt따라서 서버에서 데스크톱으로 파일을 복사 하려면 user_id@server다음을 시도해야 합니다.

scp user_id@server:/path/to/My_file.txt ~/Desktop/

파일이 My_file.txt서버의 홈 디렉터리에 있으면 바로 가기를 다시 사용할 수 있습니다.

scp user_id@server:~/My_file.txt ~/Desktop/

답변2

저에게 "권한 거부" 문제를 해결한 것은 원격 서버에서 폴더 소유권을 루트로 변경하는 것이었습니다. (이것은 루트가 아닌 사용자에게 파일을 보낼 때 발생할 수 있으며 디렉터리는 루트가 소유하고 있습니다. 이 상황!) 원격 컴퓨터(복사 대상)에서:

sudo chown (your username) (remote folder)

또한 원격 폴더에 대한 모든 권한이 활성화되어 있는지 확인하십시오(항상 필요한 것은 아님).

sudo chmod 777 (remote folder)

답변3

동일한 오류가 발생했기 때문에 "scp를 사용하여 파일 전송: 권한이 거부되었습니다"를 위해 여기에 왔습니다.

내 경우에는 scp를 사용하여 다운로드한 파일이 루트가 소유한 파일을 덮어썼는데, 나는 루트가 아닙니다. 즉, 덮어쓴 파일의 소유권을 확인하십시오.

답변4

권한 거부는 귀하가 서버의 루트가 아니라는 것을 의미합니다. 거기에 계정이 있으면됩니다. 따라서 이 경우 다음을 수행해야 합니다.

sudo scp -r /path2yourFolder/ username@server_Ip:/home/username

이는 서버의 홈 디렉터리에 복사됩니다.

이것은 또한 작동합니다:

scp -r /path2yourFolder/ username@server_Ip:~/

관련 정보