Skip to main content

Parametric home directories (VFS)

Another highly requested feature that Syncplify.me Server! offers in all editions is parametric home directories.

Some of our customers, in fact, need to isolate every user in their own directory under a general “container”, the directory name being the same as the user’s username. They also requested that if a particular user’s home directory does not exist, it is automatically created when the user logs in.

Let's say you have two (or more) users, and you want to achieve a directory layout like this:

C:\SFTPData
+----------\user_one
+----------\user_two

This is very easy to do with just one VFS in Syncplify Server!. First of all, you have to create a VFS with a parametric target, let’s call it “ParamVFS” and point it to C:\SFTPData\{{username}}:

image.png

Then, when we create our user profiles for user_one and user_two, choose the “ParamVFS” VFS as their home folder:

image.png

Now the home directory for user user_one will be “C:\SFTPData\user_one“, and the home directory for user user_two will be “C:\SFTPData\user_two“.

Each directory will be automatically created the first (or next) time each user logs in. 

Aside from the {{username}} parameter, there are other parameters you can use in your parametric VFS, namely:

  • {{user_home}}: the LDAP (or Active Directory) "home" for this user (if defined, not to be taken for granted)
  • {{user_desc}}: the content of the "description" field in the User's configuration
  • {{today}}: the current date in YYYYMMDD format
  • {{today_utc}}: the current date in YYYYMMDD format in the UTC (universal) timezone
  • {{sess_custdata}}: the content of the session's custom data (applicable only to the editions of our software that feature scripting and event-handling, as this is configurable only via scripting)

As of version 6, we adopted the double-curly-bracket notation for all our parametric VFS variable names (ex: {{username}}). The old notation with square brackets and percent signs (ex: [%USERNAME%]) is still supported, but this notation will be dropped in the future, so please make sure you update all your configurations accordingly.