summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xfs/ext2/genext2fs.sh13
1 files changed, 8 insertions, 5 deletions
diff --git a/fs/ext2/genext2fs.sh b/fs/ext2/genext2fs.sh
index 7a6e2326f..a6cd7d22b 100755
--- a/fs/ext2/genext2fs.sh
+++ b/fs/ext2/genext2fs.sh
@@ -49,6 +49,14 @@ e2tunefsck() {
tune2fs "$@" "${IMG}"
fi
+ # genext2fs does not generate a UUID, but fsck will whine if one is
+ # is missing, so we need to add a UUID.
+ # Of course, this has to happend _before_ we run fsck.
+ # Although a random UUID may seem bad for reproducibility, there
+ # already are so many things that are not reproducible in a
+ # filesystem: file dates, file ordering, content of the files...
+ tune2fs -U random "${IMG}"
+
# After changing filesystem options, running fsck is required
# (see: man tune2fs). Running e2fsck in other cases will ensure
# coherency of the filesystem, although it is not required.
@@ -69,14 +77,9 @@ e2tunefsck() {
printf "\ne2fsck was successfully run on '%s' (ext%d)\n\n" \
"${IMG##*/}" "${GEN}"
- # e2fsck will force a *random* UUID, which is bad
- # for reproducibility, so we do not want it. Asking
- # tune2fs to 'clear' the UUID makes for an invalid
- # fs, so we explicitly set a NULL UUID, which works.
# Remove count- and time-based checks, they are not welcome
# on embedded devices, where they can cause serious boot-time
# issues by tremendously slowing down the boot.
- tune2fs -U 00000000-0000-0000-0000-000000000000 "${IMG}"
tune2fs -c 0 -i 0 "${IMG}"
}