問題タブ [fuse]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - ヒューズの変更は?
任意のディレクトリをマウントするようにfuseの例を変更しようとしています。tmpに/home/nikhilをマウントしたい。私はそれを実行しました、
$ ./ni /home/nikhil tmp
tmpフォルダーをマウントしますが、アクセスできません。
ls: cannot access tmp: Operation not permitted
$ ls -ltr
ls: cannot access delete: Operation not permitted
total 11716
d????????? ? ? ? ? ? delete
私のコードは
誰かが私が間違っていることを助けることができますか?私はubuntu110464ビットを使用しています。
linux - fuse を使用してリモート マシンにディレクトリをマウントするにはどうすればよいですか?
FUSE を使用してリモート マシンからディレクトリをマウントする方法を考えています。このリンクにあるチュートリアルでは、ローカル ディレクトリを別のローカル ディレクトリにマウントします。これは基本的に、fuse_main関数で発生します。リモートマシン上のディレクトリに対して同じことを行う方法について、誰かが考えを持っていますか?
関数呼び出しは次のとおりです
fuse_main(argc, argv, &bb_oper, bb_data);
注: sshfs は使用できません
ありがとう。
git - curlftpfs を使用した Git
FTP サーバーを git リポジトリとして使用したいと考えています。私が知っている唯一の方法は、ftp を curlftpfs でマウントすることです。
ただし、curlftpfs では、git コマンドを実行することはできません。
そのための別の解決策はありますか?
削除されたファイルと新しいファイルに問題があるため、rsync を使用できません。ソースでファイルを作成または削除すると、これは宛先でも発生するはずです。このために、 --delete および update オプションを使用できます。ただし、ソースに存在しない新しいファイルが宛先にある場合、そのファイルは削除されるべきではありません。rsyncには履歴が保存されていないため、これは不可能だと思います。
tomcat - Tomcatサーバーと一緒にFuseESBを実行するにはどうすればよいですか?
ここで奇妙な質問。私はインターンのプロトタイピングSOAとして働いています。仮想サーバーを取得するのは非常に面倒なので、上司から、Tomcatサーバーを既に実行しているのと同じサーバーでFuseESBを実行できるかどうか尋ねられました。(Liferay CMSを実行しています)。確かに、Fuseが同じポートを使用しているとは思わないので、問題はないはずですよね?
結局のところ、このサーバーで80、8080、443、および8443以外のポートを開くのも非常に面倒です。また、FuseWebコンソールは8181で実行されます。
だから私の質問はこれです。tomcatの特定のURLへのトラフィックを取得して、Fuse ESB Webコンソールにローカルにルーティングするにはどうすればよいですか?たとえば、Liferayがhttps:// XXXX / home/guestなどにあるとします。https:// XXXX / fuse /consoleへのトラフィックで8181のFuseESBWebコンソールを表示するにはどうすればよいですか?
トラフィックがファイアウォールの外側に戻った場合、8181で再び戻されることはないため、ルーティングはローカルで行う必要があります。トラフィックは80、8080、443、および8443でのみ受信されます。それは私のワークステーションからです。私はこれを制御することはできません。
通常、グーグルで答えを得ることができますが、この場合、有用なものは何も見つかりませんでした。これは、必要な用語がよくわからないことが原因だと思います。また、これはおそらくこれを行うための最も複雑な方法ですが、私はインターンなので、私は本当に引っ張ることができません。
正しい方向へのポインタに感謝します。私の無知を許してください、私は自分自身にこのことを教えています。
ありがとう、
グリフ
c++ - 同じ入力で同じ関数を呼び出す異なるプログラムが、異なる出力を持っていますか?
Amazon クラウド側でデータをバックアップするための FUSE ベースのファイル システムである s3fs に取り組もうとしています。私の実装では、crypto++ で AES:CBC を使用してファイル内のデータを暗号化および復号化する 2 つの関数を開発しました。私の問題は、s3fs の復号化関数を使用して txt ファイル X を復号化すると、X の同じ場所で結果が常に間違っているが、結果が異なることです。ただし、s3fs ではなく、別のテスト プログラムを使用して同じ関数を呼び出してファイル X を復号化すると、常に正しい結果が得られます。私のシステムは、カーネル 2.6.32-35、FUSE 2.8.6 の Ubuntu です。C++を使用して実装しています。ありがとう。
PS: 暗号化機能は、s3fs プログラムと他のテスト プログラムの両方で機能します。これは、同じソース ファイルの暗号化出力が同じであるためです。s3fs プログラムの復号化関数のみが間違った出力を生成します。
linux - なぜfusexmpのd_typeに12ビットをシフトするのか
を通してfusexmp.chttp : //www.gtoal.com/fusestuff/fuse-2.7.0/example/fusexmp.c.html
行があります<<12
なぜ左シフト12ビットなのか教えてください
d_typeファイルのタイプ、つまり:DT_UNKNOWNで定義されているビットが見つかりませんでした/usr/include/bits/dirent.h
ありがとう
c - ヒューズファイルシステムは、getattr 関数で struct stat *stbuf の値を変更できませんか?
疑問解決!struct stat
@basile-starynkevitch のおかげで、 が異なるファイルで同じサイズではない
ことがわかりました!
では88 バイトですが<sys/stat.h>
、sizeof(struct stat)
fuse の lib では (-D_FILE_OFFSET_BITS=64
フラグの関係だと思います)、これは 96 バイトです。
したがって、リモート サーバーにヒューズ ライブラリを追加すると ( -D_FILE_OFFSET_BITS=64 /usr/local/lib/libfuse.so /usr/local/lib/libulockmgr.so
gcc にフラグを追加)、プログラムが正しく実行されます。
あなたの助けに感謝します!
私はヒューズでいくつかのプロジェクトを行っていますが、それは私を夢中にさせました。
リモートサーバーから struct stat *stbuf のデータを送信し、データはサーバーとクライアントの両方で正しいのですが、 memcpy を使用してデータを stbuf に複製すると、何もコピーされないようです。read(socked,stbuf,sizeof(struct stat)); も使用しようとしています。直接ですが、それも機能しません。
ここにコードがあります...(そのようなファイルがない場合、リモートサーバーは-ENOENTをst_inoに保存します)
gdb から取得したデータ:
read() の後、buf にデータを取得
データを stbuf にコピーする
stbuf はまったく変化しません。
そのような現象について誰かが私に何か提案をしてもらえますか? いくつかの作業を行いましたが、まだ解決策が見つかりません。
c - 複数のメインループを実行することは可能ですか?
libfuseとglibイベントインターフェイスの両方を使用していますが、複数のメインループ(glibg_main_loop_run
とfuse_loop_mt
)を同時に実行する必要があるという問題が発生しました。
私はすでに、セカンダリコンテキストでglibのイベントループの分離スレッドを作成しようとしました。例:
ただし、glibイベントループは、発生したイベントを検出しません。私はここで完全にオフベースですか?複数のメインループに取り組む適切な方法は何ですか?
java - FUSE を使用してファイルシステム内のファイルへの書き込みを実装する
この Java バインディングhttps://github.com/dtrott/fuse4jを使用して、FUSE で単純なメモリ内ファイル システムを実装しています。ファイル サポートの読み取りと作成を行いましたが、ファイルへの書き込みが機能しません。書き込もうとすると必ずエラーになります。いくつかの実装を次に示します。
statfs
特定の意味を持たないハードコードされた値を使用しflush
、常に 0 を返しますfsync
。release
c - 定義なしで構造を解釈する方法は?
今日、FUSE オープンソース コードの作業を開始しました。次のような行がいくつか見つかりました。
私が知っている限り、それを解釈する方法がわかりませんstruct
。この場合、名前付きエンティティの後に が 1 つしかないstruct
ため、このヒューズ セッションは構造変数または構造名そのものです。これは本当に基本的なことかもしれませんが、どこにも見つけることができません。