RheaVFS

RheaVFS allows you to turn an archive into a virtual directory.
Download

RheaVFS Ranking & Summary

Advertisement

  • Rating:
  • License:
  • GPL
  • Price:
  • FREE
  • Publisher Name:
  • Jaroslav Sykora
  • Publisher web site:

RheaVFS Tags


RheaVFS Description

RheaVFS allows you to turn an archive into a virtual directory. RheaVFS allows you to turn an archive into a virtual directory, so all the files in the archive can be accessed as if they were in the virtual directory. This works transparently for all programs without any need to modify them.Currently RheaVFS is in a beta stage of the development. It has read/write support for the following archives:zip, tar, bzip2, gzip, gpg (encryption)Installation:There are two principal parts in the RheaVFS system: a redirector and a server. Currently a redirector is implemented by a kernel patch which must be installed in the Linux kernel. The server part uses a FUSE library to create a virtual filesystem. The kernel patchThe Linux kernel patch is in the 'kernel_patch' subdirectory. There are versions for kernels 2.6.20 through 2.6.23. Currently only i386 is supported, but extending to other architectures should be straitforward (as soon as I get a new HWPatch your favorite kernel: patch -p1 < shdw-2.6.23.patch and recompile-install-reboot. The serverRequired libraries (Fedora 6 packages): fuse-devel (2.5.3) commoncpp2-devel (1.5.0) Now part of GNU Telephony. gpgme-devel (1.1.2) - if not present, the GPG encryption module won't be compiled file (libmagic) (4.17.8) kernel FUSE driver - included in all recent Linux kernels. tar, zip, gzip, bzip2, gpg programs. Type 'make' in the 'src/' subdirectory and the VFS server will be (hopefully) compiled. RunningThere's a script: 'src/run-vfs'. It will setup some minor things and run FUSE VFS server in a foreground. The default mount point is at ~/usrmnt. The VFS server will automaticaly setup 'shadow directories' implemented in the kernel patch. Install scripts do not work. How to use RheaVFS - examplesThe basic use-case is to open an archive like a directory: cd foo.zip^To open a file as a directory you must append an escape character to its name - it's the '^'. You can read and write, create and delete any file in the virtual directory and all the changes will be propagated back to the source file. TAR.GZ/BZ2 files are a little more tough. You must use two '^' to open the archive: cd foo.tar.gz^^That's because the first '^' will decompress GZIPed file and the second converts TAR file to a directory. See for yourself: $ stat hello.tar.gz File: `hello.tar.gz' Size: 284 Blocks: 8 IO Block: 4096 regular fileDevice: fd00h/64768d Inode: 430324 Links: 1Access: (0644/-rw-r--r--) Uid: ( 500/ jara) Gid: ( 500/ jara)Access: 2007-05-29 00:10:25.000000000 +0200Modify: 2007-05-29 00:09:47.000000000 +0200Change: 2007-05-29 00:09:47.000000000 +0200$ stat hello.tar.gz^ File: `hello.tar.gz^' Size: 10240 Blocks: 24 IO Block: 4096 regular fileDevice: 17h/23d Inode: 21 Links: 1Access: (0777/-rwxrwxrwx) Uid: ( 500/ jara) Gid: ( 500/ jara)Access: 2007-05-29 00:10:25.000000000 +0200Modify: 2007-05-29 00:10:25.000000000 +0200Change: 1970-01-01 01:00:00.000000000 +0100$ stat hello.tar.gz^^ File: `hello.tar.gz^^' Size: 72 Blocks: 0 IO Block: 4096 directoryDevice: 17h/23d Inode: 16 Links: 0Access: (0777/drwxrwxrwx) Uid: ( 500/ jara) Gid: ( 500/ jara)Access: 2007-05-29 00:09:41.000000000 +0200Modify: 2007-05-29 00:09:41.000000000 +0200Change: 1970-01-01 01:00:00.000000000 +0100What's New in This Release:· patches for kernels 2.6.20 through 2.6.23


RheaVFS Related Software