script de limpieza de discos
This commit is contained in:
38
rook/borrar_discos.sh
Executable file
38
rook/borrar_discos.sh
Executable file
@@ -0,0 +1,38 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# ⚠️ AJUSTA ESTA LISTA A TUS DISCOS DE CEPH (NUNCA el del sistema)
|
||||||
|
DISKS=(sdb sdc sdd sde sdf sdg)
|
||||||
|
|
||||||
|
echo "Discos objetivo:"
|
||||||
|
printf ' - /dev/%s\n' "${DISKS[@]}"
|
||||||
|
echo
|
||||||
|
read -r -p "¿Seguro que quieres LIMPIAR estos discos? Escribe 'SI' para continuar: " ok
|
||||||
|
[[ "$ok" == "SI" ]] || { echo "Cancelado."; exit 1; }
|
||||||
|
|
||||||
|
for d in "${DISKS[@]}"; do
|
||||||
|
dev="/dev/$d"
|
||||||
|
echo ">>> Limpiando $dev"
|
||||||
|
|
||||||
|
# 0) Opcional: si vienen de un cluster Ceph viejo, intenta zappearlos con ceph-volume
|
||||||
|
if command -v ceph-volume >/dev/null 2>&1; then
|
||||||
|
sudo ceph-volume lvm zap --destroy "$dev" || true
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 1) GPT/MBR
|
||||||
|
sudo sgdisk --zap-all "$dev" || true
|
||||||
|
|
||||||
|
# 2) Firmas de FS/LVM/RAID
|
||||||
|
sudo wipefs -a "$dev" || true
|
||||||
|
|
||||||
|
# 3) TRIM (si soporta). Si falla, hacemos un “zero header” de 10 MiB.
|
||||||
|
if ! sudo blkdiscard -f "$dev"; then
|
||||||
|
sudo dd if=/dev/zero of="$dev" bs=1M count=10 oflag=direct conv=fsync || true
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 4) Limpieza de particiones fantasma en el kernel
|
||||||
|
sudo partprobe "$dev" || true
|
||||||
|
|
||||||
|
echo ">>> $dev limpiado."
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "Hecho."
|
||||||
Reference in New Issue
Block a user