SFTP를 사용하여 파일 시스템 간에 복사/이동할 수 없습니다.

SFTP를 사용하여 파일 시스템 간에 복사/이동할 수 없습니다.

사용자가 파일 시스템 간에 복사하지 못하도록 SFTP에 제한 사항이 있습니까? SFTP가 포함된 SLES가 있고 대상이 chmod 777-ed이고 사용자가 루트인 경우에도 사용자는 파일 시스템 간에 파일을 복사/이동할 수 없습니다. Filezilla에서는 "실패"라고만 표시됩니다. 대상 파일 시스템에서 디렉토리를 생성하는 것은 파일 시스템 내에서 복사/이동과 마찬가지로 잘 작동하며, 사용자가 SSH를 통해 액세스하는 경우 문제 없이 대상 파일 시스템에 복사할 수 있습니다.

SELinux, AppArmor, grsecurity 등은 없습니다. 무엇이 문제일까요?

업데이트: 서버는 SLES 10.4입니다.

답변1

SFTP에는 파일 이동 명령이 없고 rename명령만 있습니다. OpenSSH(사실상 표준 구현)에서는 다음을 통해 수행됩니다.rename파일 시스템 내에서 파일을 이동하는 시스템 호출입니다. 파일을 임의의 위치로 이동하는 명령도 없고, 원격 파일을 다른 원격 위치로 복사하는 명령도 없습니다.

SFTP 액세스만 있고 셸 액세스는 없으므로 파일을 복사하는 유일한 방법은 파일을 다운로드하고 다시 업로드하는 것입니다. 심볼릭 링크를 생성할 수 있습니다.

답변2

대상 파일 시스템은 읽기 전용이거나 SFTP 사용자가 쓰기를 허용하지 않을 수 있습니다(예: allow_other다른 사용자가 설정하지 않은 FUSE 설치 등). SFTP 사용자( su - username예: 사용) 로 대상 시스템에 로그인하고 파일을 생성할 수 있는지 확인합니다. sftp오류가 발생할 때 더 유용한 정보를 제공할 수 있는 CLI 클라이언트를 사용할 수도 있습니다 .

관련 정보