refs #1509 add ogDeletePartitionTable

pull/1/head
Natalia Serrano 2025-02-13 14:03:28 +01:00
parent 79718100f6
commit 788ae31b0f
2 changed files with 30 additions and 24 deletions

View File

@ -320,31 +320,15 @@ def ogCreatePartitionTable (disk, createptt=None):
#@param int_ndisk nº de orden del disco
#@return la informacion propia del fdisk
#*/ ##
def ogDeletePartitionTable(*args):
# Variables locales
DISK = None
def ogDeletePartitionTable (disk):
DISK = ogDiskToDev (disk)
if not DISK: return None
# Si se solicita, mostrar ayuda.
if len(args) == 1 and args[0] == "help":
SystemLib.ogHelp('ogDeletePartitionTable', 'ogDeletePartitionTable int_ndisk', 'ogDeletePartitionTable 1')
return
# Error si no se reciben 1 parámetros.
if len(args) != 1:
SystemLib.ogRaiseError(OG_ERR_FORMAT)
return
# Obteniendo Identificador linux del disco.
DISK = ogDiskToDev(args[0])
if DISK is None:
return
# Crear una tabla de particiones vacía.
PTTYPE = ogGetPartitionTableType(args[0])
if PTTYPE == "GPT":
subprocess.run(["sgdisk", "-o", DISK])
elif PTTYPE == "MSDOS":
subprocess.run(["fdisk", DISK], input="o\nw", text=True)
PTTYPE = ogGetPartitionTableType (disk)
if 'GPT' == PTTYPE:
subprocess.run (['sgdisk', '--clear', DISK])
elif 'MSDOS' == PTTYPE:
subprocess.run (['fdisk', DISK], input='o\nw', text=True)
return
#/**

View File

@ -0,0 +1,22 @@
#!/usr/bin/python3
import sys
import argparse
from SystemLib import ogHelp
from DiskLib import ogDeletePartitionTable
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 ('ogDeletePartitionTable', 'ogDeletePartitionTable int_ndisk', ['ogDeletePartitionTable 1'])
sys.exit (0)
args = parser.parse_args()
ret = ogDeletePartitionTable (args.disk)
if ret is not None:
if ret == True: sys.exit (0)
elif ret == False: sys.exit (1)
else: print (ret)