質問
Python-fuseを使用していくつかの単純なファイルシステムを作成しましたが、pydocや見つけたサンプルスクリプトでは見つからないことを実行したいと思っています。ファイルシステムがfusermount -u
でマウント解除されている場合、そのアクションをトラップし、umountを実行してから、プログラムの初期化スクリプトによって作成されたマウントディレクトリをrmdirします。可能だとしても、アンマウントアクションをトラップする魔法の呪文は何ですか?
それが簡単に無限ループに変わる可能性があることはわかりますが、umountトラップが最初にヒットしたときに無効にする方法を理解できれば幸いです。
更新: http://omake.metaprl.org/prereleaseで
destroy
を見つけました/omake-dll-fuse.html#htoc582 とメソッドを追加しましたが、呼び出されていないようです。
解決
見つけた!Python-fuseのfsdestroy()です。見つけた場所: ジェネラコディセタグプレ
使用したもの: ジェネラコディセタグプレ
データパラメータが必要かどうかはわかりませんが、問題はありません。そして、どうやら、それはアンマウントの後と呼ばれているので、私はそれを処理することを心配する必要はありませんでした。
他のヒント
別の解決策は、具体的ではなく、Pythonでテストされていませんが、FUSEが-f
スイッチで「デーモン化」するのを防ぐことです。
この場合、fuse_main
メソッドは、ファイルシステムがマウント解除されるまでブロックされ、その後、制御を取り戻します。
デーモンの動作が必要な場合は、マウントする前に自分で再実装できます。
所属していません StackOverflow