を使用してGoogleドライブをマウントできますrclone mount gdrive: localfolder
。また、sshfs
insideを介してリモートファイルシステムを自動的にマウントする方法も知っていますvifm
。しかし、rclone
クラウドディスクの自動マウントを使用できますかvifm
?次の行を追加してみましたvifmrc
。
filetype *.drive FUSE_MOUNT2|rclone %PARAM %DESTINATION_DIR
google.drive
次の行を含むファイルを作成します。
mount gdrive:
ファイルを開こうとすると、google.drive
vifmはインストールを試みるメッセージを表示し、永久に停止します。
より一般的には、vifmにはさまざまなリモートインストーラを処理する普遍的な方法がありますか?
答え1
私は同様の問題を抱えていて、この一般的な質問を偶然見つけました。私の解決策は次のとおりです。
デフォルトでは、リモートでインストールすると、このコマンドはrclone mount
フォアグラウンドで実行され続け、さまざまなメッセージを標準出力に出力します。これはsshfs
、フロントデスクで資格情報を要求して完了するのとは異なります。vifm
インストールプロセスを完了し、新しいユーザー入力を受け入れるには、いかなるrclone mount
方法でもデーモン化する必要があります。これはフラグで行うことができますが、この場合、インストールプロセスが完了する前に作成されたフォルダに移動してその内容を表示することがわかり--daemon
ました。vifm
したがって、空のように見えるフォルダが表示されます。CTRL-L
ファイルのリストを更新して正しい内容を表示するには、数回クリックします。しかし、これはちょっと迷惑です。
rclone mount
別の可能なアプローチは、デーモン化してインストールプロセスが完了するのを待つラッパースクリプトを作成することです。たとえば、inotifywait
waitまたは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
残念ながら、あなたの質問のより一般的な部分に対する答えがわかりません。