Si bien es cierto que podemos utilizar fdisk en scripts, al ser un comando interactivo complica y «ensucia» un poco la ejecución dentro del script. Para ello disponemos de sfdisk, la variante «no interactiva» de fdisk que permite automatizar el particionado de discos.
Por ejemplo, si lo que vamos a hacer es automatizar el particionado de discos a partir de un disco base, simplemente tenemos que hacer un «dump» del disco /dev/sda que ya está particionado con el siguiente comando:
# sfdisk --dump /dev/sda # partition table of /dev/sda unit: sectors /dev/sda1 : start= 2046, size= 51918850, Id= 5, bootable /dev/sda2 : start= 51922080, size=260658016, Id=83 /dev/sda3 : start= 0, size= 0, Id= 0 /dev/sda4 : start= 0, size= 0, Id= 0 /dev/sda5 : start= 2048, size= 47747072, Id=83 /dev/sda6 : start= 47751168, size= 4169728, Id=82
El resultado lo podemos almacenar en un fichero a modo de plantilla:
# sfdisk --dump /dev/sda > sfdisk.template
Ahora, con ese fichero podríamos restaurar la tabla de particiones del disco si hubieramos tenido algún problema o directamente «clonar» esa tabla de particiones en un disco nuevo. Para ello especificamos el fichero con la plantilla (-I) y el disco de destino:
# sfdisk /dev/sda -I sfdisk.template
Encontraréis más información de utilidad en la página man de sfdisk.