나는 이 질문에 대한 많은 변형을 보았지만 내 정확한 상황에 맞는 것이 없다고 생각합니다.
나는 서버에 SSH로 연결된 직장 컴퓨터를 사용하고 있습니다. 이 서버에 있는 동안 집에 있는 Mac의 일부 파일을 SCP로 처리하고 싶습니다.
일반 명령을 사용하면 서버에서 Mac으로 SSH로 연결할 수 있습니다.
ssh [email protected]
그러나 SCP를 시도하면 다음과 같은 결과가 나타납니다.-bash: /usr/bin/scp: 권한이 거부되었습니다.
나는 다음 명령을 사용하고 있습니다 :
scp [email protected]:/absolute/filepath/i* local/folder
나는 또한 number -p 플래그를 시도했습니다. 내 Mac에는 계정이 하나만 있으며 관리 계정입니다. 권한 문제가 있는지, 서버에 SSH로 접속했기 때문인지, 아니면 다른 문제인지 잘 모르겠습니다.
또한 집에 있는 Mac에서 SCP를 수행할 때 서버에서 Mac으로 SCP를 성공적으로 수행할 수도 있습니다.
어떤 제안이 있으십니까?
편집: 프로토콜에 대해 머리가 나빠서 원래 댓글로 게시된 추가 관련 정보입니다. (내 잘못이야).
SCP를 '역전'할 수 있다는 마지막 문장과 특히 관련이 있습니다. Mac에 로컬 컴퓨터로 로그인하면 다음 명령이 작동합니다.
scp -P 22003 [email protected]:Data/path/i* /Full/Path/On/Mac/
ls -l /usr/bin/scp
서버(로컬)에서 실행하면 다음이 반환됩니다.
rwxr-x---. 1 루트 루트 67648 8월 31일 12:40 /usr/bin/scp
ls -l /usr/bin/scp
Mac(원격)에서 실행하면 다음이 반환됩니다.
-rwxr-xr-x 1 루트 휠 81360 12월 1일 14:45 /usr/bin/scp
답변1
위 명령은 지정된 오류로 인해 실패하지만 Mac에 로컬 컴퓨터로 로그인하면 다음 명령이 작동합니다.
scp -P 22003 [email protected]:Data/path/i* /Full/Path/On/Mac/
따라서 액세스할 수 없는 서버에서 /usr/bin/scp
"액세스 거부" 오류가 발생합니다. 이러한 오류에는 파일 권한 등 여러 가지 이유가 있을 수 있습니다.
scp
Mac에서 할 수 있고 ssh
, 서버에서 Mac으로 할 수 있으므로 지금 당장은 그렇게 해야 한다고 생각합니다. ssh
Mac으로 그리고 scp
거기에서.
서버의 문제를 해결하려면 먼저 /usr/bin/scp
서버에 대한 실행 권한이 있는지 확인하세요.
ls -l /usr/bin/scp
다음과 같은 내용이 표시됩니다.
-rwxr-xr-x 1 root root 84104 Jan 16 14:28 /usr/bin/scp
^ ^ ^
기본적으로 파일은 사용자 root
(읽기, 쓰기, 실행 포함)가 소유하고 그룹 구성원은 root
읽기 및 실행 권한을 갖고 있으며 전 세계(다른 모든 사람은 로그인함)도 마찬가지입니다.
x
명령에 privs가 있는 경우 (실행) scp -v
자세한 정보를 늘리기 위해 사용합니다(최대 3개까지 iirc를 추가할 수 있음 v
). 무엇이 잘못되었는지 알려주는 메시지가 표시될 수 있습니다. ldd /usr/bin/scp
모든 종속성이 있고 읽을 수 있는지 확인할 수도 있습니다 .