Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>2011-11-28 12:28:03 -0300
committerGerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>2011-11-28 12:28:03 -0300
commit70df765c851d0a7c5316237e9db83f6543a8fef6 (patch)
tree7620edde02d9b5a027e5d86ffaf32b88a2400ae8
parent454bba64587e3257f3afe291dd167c01f9840836 (diff)
[archiso] Checksum only aitab and *.sfs (per architecture)
We are currently checksuming all files inside $archisobasedir (aitab, *sfs, kernel/initramfs and boot/syslinux related files) this is stored in one file only. Its works good for now, but I think we only need to checksum only aitab and *.sfs if they are needed. Currently if you boot a dual-iso in i686, also checksum is done for *.sfs of x86_64. Not a big issue, this just take a bit more time. The real issue is when booting via PXE with HTTP/FTP methods, since they download only aitab and needed *.sfs files, can not use directly the only one file where checksums are stored. This patch does: (1) Do not checksum syslinux related files, anyway you are already reach initramfs stage. (2) Do not checksum kernel/initramfs files, for the same as (1) (3) Two checksum.${arch}.md5 for each i686 and x86_64 for only aitab and *.sfs. Signed-off-by: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
-rw-r--r--archiso/hooks/archiso8
1 files changed, 4 insertions, 4 deletions
diff --git a/archiso/hooks/archiso b/archiso/hooks/archiso
index d03914a..e4ed52b 100644
--- a/archiso/hooks/archiso
+++ b/archiso/hooks/archiso
@@ -122,7 +122,7 @@ _mnt_dev() {
_verify_checksum() {
local _status
cd "/run/archiso/bootmnt/${archisobasedir}"
- md5sum -c checksum.md5 > /checksum.log 2>&1
+ md5sum -c checksum.${arch}.md5 > /tmp/checksum.${arch}.log 2>&1
_status=$?
cd "${OLDPWD}"
return ${_status}
@@ -177,17 +177,17 @@ archiso_mount_handler() {
fi
if [[ "${checksum}" == "y" ]]; then
- if [[ -f "/run/archiso/bootmnt/${archisobasedir}/checksum.md5" ]]; then
+ if [[ -f "/run/archiso/bootmnt/${archisobasedir}/checksum.${arch}.md5" ]]; then
msg -n ":: Self-test requested, please wait..."
if _verify_checksum; then
msg "done. Checksum is OK, continue booting."
else
echo "ERROR: one or more files are corrupted"
- echo "see /checksum.log for details"
+ echo "see /tmp/checksum.${arch}.log for details"
launch_interactive_shell
fi
else
- echo "ERROR: checksum=y option specified but checksum.md5 not found"
+ echo "ERROR: checksum=y option specified but checksum.${arch}.md5 not found"
launch_interactive_shell
fi
fi