Well, the first thing to make sure is that Guest Additions are correctly installed. For example, on Ubuntu 16.04 guest on VirtualBox 5.0.32 r112930 I received a message that the kernel headers were not found (even though they did exist). This was fixed with:
sudo apt-get install dkms
Next problem was constantly receiving a protocol error when trying to mount the host’s directory that I named hostfs in the VirtualBox shared folders dialog. This however, was my fault – the correct syntax to do this is:
sudo mount -t vboxsf -o uid=1000,gid=1000 <name-given-in-virtualbox-dialog> <empty-directory-path-in-guest>