Make diskio work with /dev/disk/*/* paths

This uses the POSIX.1-2008 function realpath; if it does not comply with
the standard, bad things will happen (unspecified behaviour). Linux does
it right from the beginning.