Q : How does the Virtual filesystem (VFS) work

A virtual file system allows you to customize your existing file structure virtually (like c:\, e:\, h:\, plus subdirectories, etc) so your ftp site shall appear in a specific way you want every single to see differently. It's akin to mapping and links, but it is truly transparent to the users.
Configuring your VFS

Inside the RaidenFTPD GUI, choose VIRTUAL FILE SYSTEM from the SETUP menu.

Every .vfs file must come with a root directory, that is, your virtual path /. After you have your root directory ready, you can start to add new virtual paths.

Modifying your VFS

RaidenFTPD saves the virtual file system as a *.vfs, and may be edited with a text editor or the GUI editor.

The general format of an entry within the VFS file follows:

physicalpath|virtualpath|owner|group|permission_mode|recursive|quotakb|speedlim|ulspeed|dlspeed|dupecheck|nostat|nositewho|freedl|sfvtag|

Where:

physicalpath: can be a drive letter (ex. c:), a directory name (ex. c:\temp), or a shared directory on a networked machine (UNC) (ex. \\ANTHLON800\HDD01). virtualpath: the full virtual pathname (ex. /, /tmp, /mount/cdrom0, /mount/cdrom1), and MUST have the preceding / as shown in the examples. Paths such as "tmp" or "mount/cdrom1" are not valid virtual pathnames. Please be aware that the virtual pathname must correspond to an empty directory inside the VFS root mount point. If your VFS maps c:\temp to / (which is known as the root directory), and you wish to mount D:\temp to /tmp, you will need to create the empty directory "tmp" under c:\temp (in other words, c:\temp\tmp must exist)
owner: a string value less than 32 characters in length. It does not necessarily need to be a valid/existing user (ex. root), and may be a variable in certain situations. group: a string value less than 32 characters in length. It does not necessarily beed to be a valid/existing group (ex. mygroup), and may be a variable in certain situations.
permission_mode: a 3-digit number, where each digit may range from 0 to 7 in the typical chmod fashion (ex. 700, 750, 777, etc.). If you are unfamiliar with this setting, use the GUI editor RaidenWiz.EXE, or consult the chmod docs in this manual. recursive: a single character string. This must be set to r to enable.
quotakb: disk quota allowed under this virtual path in KB (kilo bytes) speedlim: set to 1 to enable speed limit under this virtual path
ulspeed: the upload speed limit in kb/s dlspeed: the download speed limit in kb/s
dupecheck: enable dupe checking under this virtual path nostat: do not count upload/download stats under this virtual path
freedl: allowing users to download freely without credit under this virtual path sfvtag: to create sfv progress report disk tag under this virtual path or not

VFS syntax examples

h:|/UNIVERSAL/SONY-48X|root|mygroup|550|r|0|0|0|0|0|0|0|0|0|

d:\_Vftpd_Root|/|root|mygroup|775|r|0|0|0|0|0|0|0|0|0|

To have the first mount point working, you will need to create the following empty directories in your hard drive:

d:\_Vftpd_Root\UNIVERSAL (maps to / , the root of ftpd)

d:\_Vftpd_Root\UNIVERSAL\SONY-48X (maps to /UNIVERSAL/SONY-48X)

Copyright © 2000-2005 RaidenFTPD TEAM , ALL RIGHT RESERVED

REVISION 2.4 , 2004/04/01