Linux에 원격 FTP 디렉토리를 마운트하고 싶습니다. 제가 발견한 주요 도구 중 하나는 curlftpfs
.
그러나 원격 FTP 디렉터리를 마운트하고 해당 내용을 읽으려고 하면 다음 오류가 발생합니다.
$ curlftpfs -o allow_other ftp://test.rebex.net testftp
$ ls testftp
ls: reading directory 'testftp': Input/output error
test.rebex.net
공개적으로 사용 가능한 FTP 서버입니다. 또한 다른 여러 서버와 개인 서버를 사용해 보았지만 동일한 오류가 발생했습니다. 루트를 사용하여 새로운 Arch/manjaro 시스템에서 실행하면 방화벽을 완전히 비활성화 ssl
하는 등의 옵션이 도움이 되지 않았습니다. ftp_port=-
그러나 filezilla 또는 ftp
도구를 사용하여 이러한 서버에 연결할 수 있습니다.
디버그( ) 옵션으로 실행 시 출력 -d
(편집되거나 잘리지 않은 전체 출력):
$ curlftpfs -d ftp://test.rebex.net testftp
FUSE library version: 2.9.9
nullpath_ok: 0
nopath: 0
utime_omit_ok: 0
unique: 2, opcode: INIT (26), nodeid: 0, insize: 104, pid: 0
INIT: 7.39
flags=0x73fffffb
max_readahead=0x00020000
INIT: 7.19
flags=0x00000011
max_readahead=0x00020000
max_write=0x00020000
max_background=0
congestion_threshold=0
unique: 2, success, outsize: 40
사용된 curftpfs 버전은 다음과 같습니다.0.9.2
무엇이 문제일까요?
답변1
curlftpfs
디렉토리 목록을 검색하기 위한 최신 표준화된 FTP 명령 은 지원되지 않는 것 같습니다 . MLSD
일부 서버(예: test.rebex.net
)는 오래된(표준화되지 않은) LIST -a
명령을 지원하지 않을 가능성이 높습니다. 명령을 curlftpfs
지원하는 분기 가 있습니다 MLSD
(예:이것), 아직 시도하지 않았습니다.
대신에 나는 나 자신을 위한 대안을 찾았다 rclone
. FUSE 및 FTP를 지원하고 MLSD
명령을 사용합니다.