demonfoo / perl-fuse Goto Github PK
View Code? Open in Web Editor NEWThis project forked from dpavlin/perl-fuse
write filesystems in Perl using FUSE
Home Page: http://search.cpan.org/dist/Fuse/
This project forked from dpavlin/perl-fuse
write filesystems in Perl using FUSE
Home Page: http://search.cpan.org/dist/Fuse/
Fuse perl bindings ================== Fuse is combination of Linux kernel module and user space library which enables you to write user-space filesystems. This module enables you to write filesystems using perl. Additional file-systems using Fuse module are released on CPAN using Fuse:: namespace. Currently that includes only Fuse::DBI which allows you to mount database as file system, but there will be more. This is a pre-production release. It seems to work quite well. In fact, I can't find any problems with it whatsoever. If you do, I want to know. Support for FreeBSD is experimental, so expect tests to fail. INSTALLATION To install this module type the standard commands as root: perl Makefile.PL make make test make install DEPENDENCIES This module requires the FUSE C library and the FUSE kernel module. See http://fuse.sourceforge.net/ If you intend to use FUSE in threaded mode, you need a version of Perl which has been compiled with USE_ITHREADS. Then, you need to use threads and threads::shared. COPYRIGHT AND LICENCE This is contributed to the FUSE project by Mark Glines <[email protected]>, and is therefore subject to the same license and copyright as FUSE itself. Please see the AUTHORS and COPYING files from the FUSE distribution for more information. EXAMPLES There are a few example scripts. You can find them in the examples/ subdirectory. These are: * example.pl, a simple "Hello world" type of script * loopback.pl, a filesystem loopback-device. like fusexmp from the main FUSE dist, it simply recurses file operations into the real filesystem. Unlike fusexmp, it only re-shares files under the /tmp/test directory. * rmount.pl, an NFS-workalike which tunnels through SSH. It requires an account on some ssh server (obviously), with public-key authentication enabled. (if you have to type in a password, you don't have this. man ssh_keygen.). Copy rmount_remote.pl to your home directory on the remote machine, and create a subdir somewhere, and then run it like: ./rmount.pl host /remote/dir /local/dir * rmount_remote.pl, a ripoff of loopback.pl meant to be used as a backend for rmount.pl. BUGS At time of writing, Perl (5.8.7) did not support shared subroutine references. Symptoms include a cryptic error message like "Invalid value for shared scalar" from Fuse.pm. Until this is fixed, if you use threaded mode, you need to use symbolic references (i.e. passing "main::cb" instead of \&cb). This doesn't allow things like closures, lexical subs and that sort of thing, but it does work for me. The current test framework seems to work well, but the underlying mount/ unmount infrastructure is a crock. I am not pleased with that code. While most things work, I do still have a TODO list: * "du -sb" reports a couple orders of magnitude too large a size. * need to sort out cleaner mount semantics for the test framework * figure out how to un-linuxcentrify the statfs tests * test everything on other architectures and OS's
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.