[AVFS] README documentation for using avfs with fuse
Peter <[email protected]> Sat, 26 Nov 2005 06:00:06 -0500
| Newsgroups | gmane.comp.file-systems.avfs.user |
|---|---|
| Message-ID | <[email protected]> |
I have written the following README to assist users in getting avfs working with fuse. In the cvs tree there is a fuse directory which contains code for creating a daemon that can interface with fuse. You can obtain the CVS code by following the directions at: http://sourceforge.net/cvs/?group_id=21636. For gentoo uers, there is also an ebuild for this available at: http://bugs.gentoo.org/show_bug.cgi?id=23112 This documentation is also in the CVS tree. HTH. November 2005 This version of AVFS includes support for fuse (Filesystems in userspace). The other versions of AVFS, preload, library, and coda, do NOT have to be installed since they are not supported by applications and are unsupported in kernels >2.6.x or glibc > 2.1. Any user wishing to install the library may do so but will have to write his/her own program interface to it. Fuse support consists of a single daemon file and startup script. In order to compile fuse support, the avfs library must be compiled. However, it does NOT have to be installed. The following steps should be followed prior to building the fuse daemon. SETUP: ------ Change to the cvs download directory. You do NOT need to be root. You DO need to have write permissions to the download directory. user avfsdldir> ./autogen.sh user avfsdldir> ./configure --enable-library user avfsdldir> make (no need to run make install) If there are no errors, then make fuse: user avfsdldir> cd fuse user avfsdldir/fuse> ./compile.sh (compile.sh is the self-contained program to make the fuse daemon) IF THERE ARE ERRORS perhaps review the compile steps above and determine what the errors are and correct. Perhaps a library is missing? When this is done, only two files are needed. To complete the setup, you may copy the two files to any directory -- preferably one in the path. If you wish to copy them to system directories (such as /usr/bin), you must be root. INSTALLATION OF FUSE DAEMON AND STARTUP SCRIPT: ----------------------------------------------- In this example, I copy the two files to the $HOME/bin directory. user avfsdldir/fuse> cd .. user avfsdldir> cp fuse/avfsd scripts/mountafvs ~/bin IMPLEMENTATION: --------------- AVFS can entirely be implemented by any user. To do so requires that: 1) fuse support is compiled into the kernel or is a kernel module and loaded 2) the fuse package is installed (http://fuse.sf.net) 3) the user create a directory called .avfs in his/her home directory (mkdir ~/.avfs). 4) the user run the program mountavfs mountavfs loads the avfsd daemon and mounts the virtual filesystem at ~/.avfs. Once done, the user will be able to access all kinds of com- pressed files via the pseudo-fs ~/.avfs. Testing the installation: ------------------------- The README docs indicate that testing can be done as ls /#avfsstat. This will not work. Using this version of AVFS, try: ls ~/.avfs/#avfsstat Anytime the docs say /#avfsstat or filename#, always prepend ~/.avfs/, ex: ls ~/.avfs/myzipfile.zip# - or - cat ~/.avfs/README.gz# Using with ROX: --------------- Rox supports AVFS access, however, not with fuse. Trying to open a compressed file with Ctrl+O will result in an error since Rox still expects AVFS to use the preload or coda methods. To get around this, the user can create a run action for any type of compressed file as follows: rox $HOME/.avfs/$@# If you wish to use a Shell command within ROX, press BANG (!) and type similar to the above except a $PWD needs to be inserted before the $@ shell variable (don't know why, but with !, ROX does not expand $@ to a full pathname/filename). !rox $HOME/.avfs/$PWD/$@# Of course, $HOME can be replaced with ~ if desired. Thanks to Jonatan Liljedahl, rox developer, for the tip and workaround AND for alerting me that fuse CAN work with AVFS. Stopping AVFS: -------------- Make sure no files are being accessed via AVFS. Then: fusermount -u ~/.avfs This will unmount the virtual filesystem AND unload the avfsd daemon. The user can start AVFS anytime later. ***** CAUTION ***** This code is CVS. It may change, it may not work! As with all developmental code, the user is advised to exercise proper caution and backup protocols. ***** END CAUTION ***** More information can be obtained from: http://sourceforge.net/projects/avf http://sourceforge.net/projects/fuse or http://fuse.sourceforge.net http://rox.sourceforge.net Documentation by Peter Hyman -- ---- Do not reply to this email address. It is a spam trap and not monitored. If you wish to contact me, please use pete4abw-GMWn+aNOpongUlbfAyk/[email protected] Thx. ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click