diff options
author | chr0mag <phillips.julian@gmail.com> | 2019-03-07 12:07:52 +0300 |
---|---|---|
committer | Michael Boelen <michael.boelen@cisofy.com> | 2019-03-07 12:07:52 +0300 |
commit | 341612418f004be954b08689b3b640305045c8b1 (patch) | |
tree | 6df38bc4102dc77037b4078e798f12e7834be260 /include | |
parent | fb567465c9159e9217907776e3132392ad8baeb5 (diff) |
BOOT-5117 adds systemd-boot bootloader detection (#634)
Adds a test to detect systemd-boot. The 'bootctl' binary is also
added as this is the utility used to inspect the systemd-boot
configuration.
This test is only executed if systemd is installed, the bootctl
utility exists and the system is booted in UEFI mode.
Diffstat (limited to 'include')
-rw-r--r-- | include/binaries | 1 | ||||
-rw-r--r-- | include/tests_boot_services | 17 |
2 files changed, 18 insertions, 0 deletions
diff --git a/include/binaries b/include/binaries index c993899a..c2f7a598 100644 --- a/include/binaries +++ b/include/binaries @@ -108,6 +108,7 @@ autolog) AUTOLOGBINARY="${BINARY}"; IDLE_SESSION_KILLER_INSTALLED=1; LogText " Found known binary: autolog (idle session killer) - ${BINARY}" ;; base64) BASE64BINARY="${BINARY}"; LogText " Found known binary: base64 (encoding tool) - ${BINARY}" ;; blkid) BLKDBINARY="${BINARY}"; LogText " Found known binary: blkid (information about block devices) - ${BINARY}" ;; + bootctl) BOOTCTLBINARY="${BINARY}"; LogText " Found known binary: bootctl (systemd-boot manager utility) - ${BINARY}" ;; cat) CAT_BINARY="${BINARY}"; LogText " Found known binary: cat (generic file handling) - ${BINARY}" ;; cc) CCBINARY="${BINARY}"; COMPILER_INSTALLED=1; LogText " Found known binary: cc (compiler) - ${BINARY}" ;; chkconfig) CHKCONFIGBINARY=${BINARY}; LogText " Found known binary: chkconfig (administration tool) - ${BINARY}" ;; diff --git a/include/tests_boot_services b/include/tests_boot_services index 84680efc..2de8d748 100644 --- a/include/tests_boot_services +++ b/include/tests_boot_services @@ -240,6 +240,23 @@ # ################################################################################# # + # Test : BOOT-5117 + # Description : Check for systemd-boot boot loader + if [ ! "${BOOTCTLBINARY}" = "" -a ${HAS_SYSTEMD} -eq 1 -a ${UEFI_BOOTED} -eq 1 ]; then PREQS_MET="YES"; else PREQS_MET="NO"; fi + Register --test-no BOOT-5117 --preqs-met ${PREQS_MET} --os "Linux" --weight L --network NO --category security --description "Check for systemd-boot bootloader presence" + if [ ${SKIPTEST} -eq 0 ]; then + BOOT_LOADER_SEARCHED=1 + CURRENT_BOOT_LOADER=$(${BOOTCTLBINARY} status --no-pager 2>/dev/null | ${AWKBINARY} '/Current Boot Loader/{ getline; print $2 }') + if [ "${CURRENT_BOOT_LOADER}" = "systemd-boot" ]; then + Display --indent 2 --text "- Checking systemd-boot presence" --result "${STATUS_FOUND}" --color GREEN + LogText "Result: found systemd-boot" + BOOT_LOADER="systemd-boot" + BOOT_LOADER_FOUND=1 + fi + fi +# +################################################################################# +# # Test : BOOT-5121 # Description : Check for GRUB boot loader Register --test-no BOOT-5121 --weight L --network NO --category security --description "Check for GRUB boot loader presence" |