since kernel version 2.4 you can mount one directory in another.
mount -rbind /media/storage/vhd /home/vhd
or in the /etc/fstab
/media/storage/vhd /home/vhd auto rbind 0 0
The bind mounts. Since Linux 2.4.0 it is possible to remount part of the file hierarchy somewhere else. The call is mount --bind olddir newdir or shortoption mount -B olddir newdir or fstab entry is: /olddir /newdir none bind After this call the same contents is accessible in two places. One can also remount a single file (on a single file). It's also possible to use the bind mount to create a mountpoint from a regular directory, for example: mount --bind foo foo The bind mount call attaches only (part of) a single filesystem, not possible submounts. The entire file hierarchy including submounts is attached a second place using mount --rbind olddir newdir or shortoption mount -R olddir newdir Note that the filesystem mount options will remain the same as those on the original mount point, and cannot be changed by passing the -o option along with --bind/--rbind. The mount options can be changed by a separate remount command, for example: mount --bind olddir newdir mount -o remount,ro newdir Note that behavior of the remount operation depends on the /etc/mtab file. The first command stores the 'bind' flag to the /etc/mtab file and the second command reads the flag from the file. If you have a system without the /etc/mtab file or if you explicitly define source and target for the remount command (then mount(8) does not read /etc/mtab), then you have to use bind flag (or option) for the remount command too. For example: mount --bind olddir newdir mount -o remount,ro,bind olddir newdir
mount home dir to other partition:
in fstab after mount of 2nd partiton:
/storage/home /home auto rbind 0 0