diff --git a/src/answer.sh b/src/answer.sh
index da75ba68..adb51d4f 100644
--- a/src/answer.sh
+++ b/src/answer.sh
@@ -1387,12 +1387,17 @@ updateDiskID() {
current="$ids"
[ "$current" = "$target" ] && return 0
- if [ "$current" != "1" ]; then
- error "The answer file must use DiskID 1 as its template value: $asset"
- return 1
- fi
+ case "$current" in
+ "0" | "1" ) ;;
+ * )
+ error "Unsupported DiskID $current in answer file: $asset"
+ return 1
+ ;;
+ esac
- if ! sed -i 's#1#0#g' "$asset"; then
+ if ! sed -i -E \
+ "s#[[:space:]]*$current[[:space:]]*#$target#g" \
+ "$asset"; then
error "Failed to update DiskID in answer file: $asset"
return 1
fi