We use mformat to ensure that the FAT filesystem starts as empty.
However, formatting the filesystem can still leave old data blocks
present (though unreferenced) within the disk image.
Truncate the image to a zero length before extending, to ensure that
no stale content is retained.
Signed-off-by: Michael Brown <mcb30@ipxe.org>
if [ -n "${FATIMG}" ] ; then
FATSIZE=$(du -s -k "${FATDIR}" | cut -f1)
FATSIZE=$(( FATSIZE + PAD + 256 ))
- touch "${FATIMG}"
if [ "${FATSIZE}" -le "1440" ] ; then
FATSIZE=1440
FATARGS="-f 1440"
FATSERIAL=$(( SOURCE_DATE_EPOCH % 100000000 ))
FATARGS="${FATARGS} -N ${FATSERIAL}"
fi
+ touch "${FATIMG}"
+ truncate -s 0 "${FATIMG}"
truncate -s "${FATSIZE}K" "${FATIMG}"
mformat -v iPXE -i "${FATIMG}" ${FATARGS} ::
mcopy -i "${FATIMG}" -s "${FATDIR}"/* ::