At my high school we have computer labs totaling 80 Debian desktop machines, used by roughly 2000 users. Currently only the users' documents are roaming via the newtork, not the home folders per se, so users find a default configuration each time the log on to another computer.

We are experimenting with roaming the home folders too and intend to use a server with NFS and the capabilities of pam_mount.

I am concerned about bad side effects of roaming some configuration files, notably display settings (with XFCE : ~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml). We have some hardware heterogeneity (different video-projector setups) and display settings suitable in one lab may not work in another.

So I would like to somehow exempt a limited set of files from roaming (display, maybe pulseaudio config ; luckily we do not have printers at all anymore).

My current idea is presently :

  • on each desktop machine, upon first login for some user, create a sort of secondary home folder on the local hard disk (say /mnt/non-roaming/$USER even though it is not really a mount point)
  • on the server, upon creation of the roaming profile, create (broken) symlinks to this place for the relevant files, e.g. ln -s /mnt/non-roaming/$USER/displays.xml /srv/roaming-homes/$USER/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml.

I expect that when XFCE will write to the said config file, it will in fact follow the symlink.

Is this dumb ? Is there a more elegant to achieve my aim ?

1 Answer 1


I believe your best bet is to looking into $XDG_CONFIG_HOME, $XDG_DATA_HOME and $XDG_CACHE_HOME. Most applications honor these locations, and it lets you control what to save on the local machine and what you save in the roaming profile.

Removing the cache from the roaming profile is a no-brainer, and for configuration files you could set default configuration in a skeleton directory (/etc/skel) to have the configuration file copied to the user's roaming profile upon creation of the user.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .