=== modified file 'util/getroot.c' --- util/getroot.c 2012-03-31 10:27:10 +0000 +++ util/getroot.c 2012-04-20 11:06:18 +0000 @@ -2093,7 +2093,16 @@ static int device_is_wholedisk (const char *os_dev) { - int len = strlen (os_dev); + int len; + char os_dev_realpath[PATH_MAX]; + + if (strncmp (os_dev, "/dev/disk/by-id/", 16) == 0 || + strncmp (os_dev, "/dev/disk/by-uuid/", 18) == 0 || + strncmp (os_dev, "/dev/disk/by-path/", 18) == 0) + if (realpath (os_dev, os_dev_realpath)) + os_dev = os_dev_realpath; + + len = strlen (os_dev); if (os_dev[len - 1] < '0' || os_dev[len - 1] > '9') return 1;