echo "$_udevinfo" | grep "DEVNAME=" | sed 's/DEVNAME=//'
}
-# Find the right device to run check on
-check_dev=$(get_check_dev "$livedev")
-# CD/DVD media check
-[ -b "$check_dev" ] && fs=$(det_fs "$check_dev")
-if [ "$fs" = "iso9660" -o "$fs" = "udf" ]; then
- check="yes"
-fi
-getarg rd.live.check -d check || check=""
-if [ -n "$check" ]; then
- type plymouth > /dev/null 2>&1 && plymouth --hide-splash
- if [ -n "$DRACUT_SYSTEMD" ]; then
- p=$(dev_unit_name "$check_dev")
- systemctl start checkisomd5@"${p}".service
- else
- checkisomd5 --verbose "$check_dev"
+# Check ISO checksum only if we have a path to a block device (or just its name
+# without '/dev'). In other words, in this context, we perform the check only
+# if the given $livedev is not a filesystem file image.
+if [ ! -f "$livedev" ]; then
+ # Find the right device to run check on
+ check_dev=$(get_check_dev "$livedev")
+ # CD/DVD media check
+ [ -b "$check_dev" ] && fs=$(det_fs "$check_dev")
+ if [ "$fs" = "iso9660" -o "$fs" = "udf" ]; then
+ check="yes"
fi
- if [ $? -eq 1 ]; then
- warn "Media check failed! We do not recommend using this medium. System will halt in 12 hours"
- sleep 43200
- die "Media check failed!"
- exit 1
+ getarg rd.live.check -d check || check=""
+ if [ -n "$check" ]; then
+ type plymouth > /dev/null 2>&1 && plymouth --hide-splash
+ if [ -n "$DRACUT_SYSTEMD" ]; then
+ p=$(dev_unit_name "$check_dev")
+ systemctl start checkisomd5@"${p}".service
+ else
+ checkisomd5 --verbose "$check_dev"
+ fi
+ if [ $? -eq 1 ]; then
+ warn "Media check failed! We do not recommend using this medium. System will halt in 12 hours"
+ sleep 43200
+ die "Media check failed!"
+ exit 1
+ fi
+ type plymouth > /dev/null 2>&1 && plymouth --show-splash
fi
- type plymouth > /dev/null 2>&1 && plymouth --show-splash
fi
ln -s "$livedev" /run/initramfs/livedev