rclone을 사용하여 vifm에 Google 드라이브를 마운트할 수 있습니까?

rclone을 사용하여 vifm에 Google 드라이브를 마운트할 수 있습니까?

을 사용하여 Google 드라이브를 마운트할 수 있습니다 rclone mount gdrive: localfolder. 또한 sshfsinside를 통해 원격 파일 시스템을 자동으로 마운트하는 방법도 알고 있습니다 vifm. 그런데 rclone클라우드 디스크 자동 마운트를 사용할 수 있나요 vifm? 다음 줄을 추가해 보았습니다 vifmrc.

filetype *.drive FUSE_MOUNT2|rclone %PARAM %DESTINATION_DIR

google.drive다음 줄을 포함하는 파일을 만듭니다 .

mount gdrive:

파일을 열려고 하면 google.drivevifm이 설치를 시도하는 메시지를 표시한 다음 영원히 멈춥니다.

보다 일반적으로 vifm에는 다양한 원격 설치 프로그램을 처리하는 보편적인 방법이 있습니까?

답변1

나는 비슷한 문제가 있었고 이 공개 질문을 우연히 발견했습니다. 내 해결책은 다음과 같습니다.

기본적으로 원격으로 설치할 때 이 명령은 rclone mount포그라운드에서 계속 실행되어 다양한 메시지를 표준 출력으로 인쇄합니다. 이는 sshfs프런트 데스크에서 자격 증명을 요청하고 완료하는 것과는 다릅니다. vifm설치 프로세스를 완료하고 새로운 사용자 입력을 수락 하려면 rclone mount어떤 방식으로든 데몬화되어야 합니다. 이는 플래그를 통해 수행할 수 있지만 이 경우 설치 프로세스가 완료되기 전에 방금 생성된 폴더로 이동하여 해당 내용을 표시하는 --daemon것으로 나타났습니다 . vifm따라서 비어 있는 것처럼 보이는 폴더가 표시됩니다. CTRL-L파일 목록을 새로 고치고 올바른 내용을 표시하려면 여러 번 누르 십시오. 그런데 이게 좀 짜증스럽네요.

rclone mount또 다른 가능한 접근 방식은 데몬화 하고 설치 프로세스가 완료될 때까지 기다리는 래퍼 스크립트를 작성하는 것입니다 . 예를 들어 inotifywaitwait 또는 only 를 구현하는 데 사용할 수 있습니다 sleep.

래퍼 스크립트는 다음과 같습니다.

#!/usr/bin/env bash

dest=$1; shift
nohup rclone mount $* "$dest" &> /tmp/rclone_gdrive.log &
inotifywait -me open "$(dirname "$dest")" | while read line; do
    echo "$line" | grep -q "$(basename "$dest")" && break
done
# or sleep 1

(충분히 테스트하지 않았으므로 조심하십시오) vifmrc다음을 넣을 수 있습니다.

" Rclone mount
filetype *.drive
       \ {Mount google drive with rclone}
       \ FUSE_MOUNT2|<your wrapper script name> %DESTINATION_DIR %PARAM

이것은 제공된 래퍼 스크립트가 기대하는 것이므로 (질문의 예와는 달리) 여기 %DESTINATION_DIR앞에 있습니다 .%PARAMS

안타깝게도 귀하의 질문 중 보다 일반적인 부분에 대한 답을 모르겠습니다.

관련 정보