← retour aux snippets

blkdiscard: TRIM d'un device ou d'un fichier

Envoyer des commandes discard pour libérer les blocs d'un SSD (ou d'un fichier sparse).

bash filesystem #blkdiscard#trim#ssd

objectif

Réinitialiser l’espace occupé pour de meilleures performances et pour sparsifier des images.

code minimal

# TRIM un device entier (destructif pour FS non monté)
sudo blkdiscard /dev/nvme0n1

utilisation

# TRIM une partition (non montée)
sudo blkdiscard /dev/nvme0n1p3

# TRIM l'espace libre d'un fichier sparse (extent) via fallocate punch
fallocate -p -d -o 0 -l 0 image.qcow2 2>/dev/null || true

variante(s) utile(s)

# TRIM seulement une plage
sudo blkdiscard -o $((1024*1024*1024)) -l $((10*1024*1024)) /dev/nvme0n1

notes

  • ne pas utiliser sur un FS monté (sauf options spécifiques). Préférez fstrim côté FS.
  • certains hyperviseurs supportent le discard côté guest → host.