

To mount /var/www in ~/www automatically during the system startup add the following line into the bottom of /etc/fstab: bindfs#/var/www /home//www fuse force-user=,force-group=,create-for-user=www-data,create-for-group=www-data 0 0 If you want to un-mount ~/www ( $HOME/www) use the command: sudo fusermount -u ~/www Where is an actual username.įor more details about the arguments used with bindfs read its manual page - man bindfs. If you want to execute the above command for another user use $(id -u ) and $(id -g ). The command substitutions $(id -u) and $(id -g) will return the UID and GID of the current user. Sudo bindfs -u $(id -u) -g $(id -g) -create-for-user=www-data -create-for-group=www-data /var/www "$HOME/www" Here we will mount the entire directory /var/www in a directory called also www/ and located in your user's home directory. This could be achieved by the tool bindfs: sudo apt update & sudo apt install bindfs Here I'm assuming also the topic How to avoid using sudo when working in /var/I think the most easiest and clear way to solve this task is to mount /var/www (or certain directory inside) into your user's home directory and change the owner to your user and :group. Here I'm assuming you are able to ssh/sftp to your user's home directory successfully and you want to edit (with your user) files and folders under /var/www that are owned by user and :group - www-data:www-data (without changing their ownership).

The script is now available at GitHub: bindfs-to-home-bash. Update: Recently I've converted this answer into a useful script and extensively start using it with VSCode and its SSH abilities.
