From 370915fc01a7d33ffd069683aef22d8b44993c15 Mon Sep 17 00:00:00 2001 From: Natalia Serrano Date: Thu, 6 Mar 2025 14:05:52 +0100 Subject: [PATCH] refs #1652 add ogBootMbrGeneric --- ogclient/functions/ogBootMbrGeneric | 22 ++++++++++++++++++++++ ogclient/lib/python3/BootLib.py | 11 +++++++++++ 2 files changed, 33 insertions(+) create mode 100755 ogclient/functions/ogBootMbrGeneric diff --git a/ogclient/functions/ogBootMbrGeneric b/ogclient/functions/ogBootMbrGeneric new file mode 100755 index 0000000..48cde7f --- /dev/null +++ b/ogclient/functions/ogBootMbrGeneric @@ -0,0 +1,22 @@ +#!/usr/bin/python3 + +import sys +import argparse +from SystemLib import ogHelp +from BootLib import ogBootMbrGeneric + +parser = argparse.ArgumentParser (add_help=False) +parser.add_argument ('disk') + +if 2 == len (sys.argv) and 'help' == sys.argv[1]: + #parser.print_help() sale en inglés aunque la locale indique otra cosa + ogHelp ('ogBootMbrGeneric', 'ogBootMbrGeneric int_ndisk', ['ogBootMbrGeneric 1']) + sys.exit (0) + +args = parser.parse_args() +ret = ogBootMbrGeneric (args.disk) + +if ret is not None: + if ret == True: sys.exit (0) + elif ret == False: sys.exit (1) + else: print (ret) diff --git a/ogclient/lib/python3/BootLib.py b/ogclient/lib/python3/BootLib.py index 66cd379..a75442d 100644 --- a/ogclient/lib/python3/BootLib.py +++ b/ogclient/lib/python3/BootLib.py @@ -133,6 +133,17 @@ def ogBootMbrXP (disk): #@exception OG_ERR_NOTFOUND Tipo de partición desconocido o no se puede montar. #*/ ## +def ogBootMbrGeneric (disk): + DISK = DiskLib.ogDiskToDev (disk) + if not DISK: return None + subprocess.run (['ms-sys', '-z', '-f', DISK]) + subprocess.run (['ms-sys', '-s', '-f', DISK]) + +# Firma necesaria para Windows equipos UEFI + with open ('/proc/sys/kernel/random/uuid', 'r') as fd: + kernel_random_uuid = fd.read().split ('-')[0] + signature = f'0x{kernel_random_uuid}' + subprocess.run (['ms-sys', '-S', signature, DISK])