[Mono-list] ANN: Linux filesystems in C# (FUSE wrapper)
Valient Gough
vgough@pobox.com
Thu May 12 23:37:09 EDT 2005
Announcement for SULF - a C# interface to FUSE (fuse.sf.net) which
allows the creation of Linux filesystems in C#. Why? Because I
could. It has received major updates over the last few weeks and has
the beginnings of high-level interfaces, as well as pass-through
wrappers to make virtual filesystems easier to implement.
The project documentation and download links are available at
http://pobox.com/~vgough/sulf
An example filesystem (using high-level map interface - see
examples/HelloFS.cs):
----
Sulf.MapFS root =3D new Sulf.MapFS();
// populate the directory with some files -=20
// and a tmp directory which is really just a wrapper for /var/tmp
root["hello"] =3D "Hello world!\n";
root["README"] =3D
"This file comes from the 'hello' filesystem example.\n"
+"It is part of the SULF C# project which builds on FUSE.\n"
+"For more information, see http://pobox.com/~vgough/sulf \n"
+"\n"
+"Also, try \"cat hello\"\n";
root["tmp"] =3D new PassthruDirNode( "tmp", "/var/tmp" );
// mount the filesystem in /tmp/hellofs
Channel channel =3D Sulf.Mounter.Mount("HelloFS", root, "/tmp/hellofs");
channel.EventLoop();
----
> ls /tmp/hellofs
hello README tmp
> cat /tmp/hellofs/README
This file comes from the 'hello' filesystem example.
It is part of the SULF C# project which builds on FUSE.
For more information, see http://pobox.com/~vgough/sulf
Also, try "cat hello"
> ls -lad /tmp/hellofs/tmp
drwxrwxrwt 9 root root 1584 2005-05-12 23:49 /tmp/hellofs/tmp
> ls -lad /var/tmp
drwxrwxrwt 9 root root 1584 2005-05-12 23:49 /var/tmp
regards,
Valient
More information about the Mono-list
mailing list