7 for _PARAMETER
in ${_CMDLINE}
9 case "${_PARAMETER}" in
10 live-boot.verify-checksums
=*|verify-checksums
=*)
11 LIVE_VERIFY_CHECKSUMS
="true"
12 LIVE_VERIFY_CHECKSUMS_DIGESTS
="${_PARAMETER#*verify-checksums=}"
15 live-boot.verify-checksums|verify-checksums
)
16 LIVE_VERIFY_CHECKSUMS
="true"
21 case "${LIVE_VERIFY_CHECKSUMS}" in
32 LIVE_VERIFY_CHECKSUMS_DIGESTS
="${LIVE_VERIFY_CHECKSUMS_DIGESTS:-sha512 sha384 sha256 sha224 sha1 md5}"
35 log_begin_msg
"Verifying checksums"
39 for _DIGEST
in $
(echo ${LIVE_VERIFY_CHECKSUMS_DIGESTS} |
sed -e 's|,| |g')
41 _CHECKSUMS
="$(echo ${_DIGEST} | tr [a-z] [A-Z])SUMS"
43 if [ -e "${_CHECKSUMS}" ]
45 echo "Found ${_CHECKSUMS}..." > "${_TTY}"
47 if [ -e "/bin/${_DIGEST}sum" ]
49 echo "Checking ${_CHECKSUMS}..." > "${_TTY}"
52 /bin
/${_DIGEST}sum -c "${_CHECKSUMS}" < "${_TTY}" > "${_TTY}"
55 # Stop after first verification
58 echo "Not found
/bin
/${_DIGEST}sum...
" > "${_TTY}"
67 log_success_msg "Verification successfull
, rebooting
in 10 seconds.
"
72 umount -f ${_MOUNTPOINT} > /dev/null 2>&1
75 # Attempt to remount all mounted filesystems read-only
76 echo u > /proc/sysrq-trigger
78 # Immediately reboot the system without syncing or unmounting filesystems
79 echo b > /proc/sysrq-trigger
83 panic "Verification failed
, $
(basename ${_TTY}) for more information.
"