[systemd-devel] [PATCH 3/3] bootctl: print machine and boot ids in status
Zbigniew Jędrzejewski-Szmek
zbyszek at in.waw.pl
Mon May 4 22:16:01 PDT 2015
This was removed in merging of gummmiboot (0974a682d155a58), but seems genuinely
useful.
---
src/boot/bootctl.c | 20 +++++++++++++++++---
1 file changed, 17 insertions(+), 3 deletions(-)
diff --git a/src/boot/bootctl.c b/src/boot/bootctl.c
index 99c3fee686..19c2768f82 100644
--- a/src/boot/bootctl.c
+++ b/src/boot/bootctl.c
@@ -1048,7 +1048,22 @@ static int bootctl_main(int argc, char*argv[]) {
_cleanup_free_ char *fw_info = NULL;
_cleanup_free_ char *loader = NULL;
_cleanup_free_ char *loader_path = NULL;
- sd_id128_t loader_part_uuid = {};
+ sd_id128_t id, loader_part_uuid = {};
+ char buf[33];
+
+ printf("System:\n");
+
+ r = sd_id128_get_machine(&id);
+ if (r >= 0)
+ printf(" Machine ID: %s\n", sd_id128_to_string(id, buf));
+ else
+ log_warning_errno(r, "Failed to query machine ID: %m");
+
+ r = sd_id128_get_boot(&id);
+ if (r >= 0)
+ printf(" Boot ID: %s\n", sd_id128_to_string(id, buf));
+ else
+ log_warning_errno(r, "Failed to query boot ID: %m");
if (is_efi_boot()) {
read_loader_efi_var("LoaderFirmwareType", &fw_type);
@@ -1061,7 +1076,6 @@ static int bootctl_main(int argc, char*argv[]) {
if (r < 0 && r == -ENOENT)
log_warning_errno(r, "Failed to read EFI variable LoaderDevicePartUUID: %m");
- printf("System:\n");
printf(" Firmware: %s (%s)\n", strna(fw_type), strna(fw_info));
r = is_efi_secure_boot();
@@ -1087,7 +1101,7 @@ static int bootctl_main(int argc, char*argv[]) {
printf(" File: %s%s\n", draw_special_char(DRAW_TREE_RIGHT), strna(loader_path));
printf("\n");
} else
- printf("System:\n Not booted with EFI\n");
+ printf(" Not booted with EFI\n");
r = status_binaries(arg_path, uuid);
if (r < 0)
--
2.3.5
More information about the systemd-devel
mailing list