Есть ли уже файловая система FUSE, которая сериализует каждый запрос в поток? - PullRequest
1 голос
/ 02 января 2011

Концепция:

nc -lp 1234 -e fusexmp_server
nc 127.0.0.1 1234 -c "fusestream /mnt/tmp"

Преимущества:

  1. Простая реализация серверов на языке высокого уровня (без необходимости каких-либо вещей, зависящих от арки, таких как JNI или что-либо еще)
  2. Простая специализированная сетевая файловая система из коробки.
  3. Доступность без фактического FUSE (когда он недоступен):
nc -lp 1234 -e fusexmp_server&
fakefusestream 127.0.0.1 1234
% ls
bin lib usr proc etc
% get /etc/hosts
% exit

Как простой RPC методов FUSE. Протокол должен быть простым, как IRC, и обрабатывать все, что может обрабатывать FUSE.

Уже есть такая вещь или я должен ее реализовать?

1 Ответ

1 голос
/ 03 января 2011

Кажется, что ccgfs может помочь вам в этом направлении.Вы должны запустить ccgfs-storage в конце, где находятся файлы, и ccgfs-mount, где должна быть точка монтирования, и любой из компонентов может быть заменен вашей программой, предполагая, что он придерживается потокового протокола (документ поставляется втарбол).Обратите внимание, что вам все равно нужно как-то соединить два компонента (как в: вы решаете; он работает с stdin / stdout).

socat (предпочтительно netcat) тоже работает с этим.

...