Такая утилита есть zerofree
.
Из его описания:
Zerofree находит нераспределенные ненулевые блоки в файловой системе ext2 или ext3 и заполняет их нулями. Это полезно, если устройство, на котором находится эта файловая система, является образом диска. В этом случае, в зависимости от типа образа диска, вторичная утилита может уменьшить размер образа диска после того, как zerofree был запущен. Zerofree требует, чтобы файловая система была размонтирована или смонтирована только для чтения.
Обычный способ достижения того же результата (обнуление неиспользуемых блоков) состоит в том, чтобы запустить «dd» и создать файл, полный нулей, который занимает все свободное место на диске, а затем удалить этот файл. У этого есть много недостатков, которые смягчают ноль:
- это медленно
- это делает образ диска (временно) максимально увеличенным
- он (временно) использует все свободное место на диске, поэтому другие одновременные действия записи могут завершиться неудачно.
Zerofree был написан для запуска из систем GNU / Linux, установленных в качестве гостевых ОС внутри виртуальной машины. Если это не ваш случай, вам почти наверняка не нужен этот пакет.
ОБНОВЛЕНИЕ № 1
Описание пакета .deb содержит следующий абзац, что подразумевает, что это будет работать и с ext4.
Описание: нулевые свободные блоки из файловых систем ext2, ext3 и ext4 Zerofree находит нераспределенные блоки с ненулевым содержимым в файловой системе ext2, ext3 или ext4 и заполняет их нулями ...
Другое использование
Еще одно приложение этой утилиты для сжатия образов дисков, которые являются резервной копией реального диска. Типичным примером этого является дамп SD-карты в BeagleBone или Raspberry Pi. После обнуления пустых пространств резервные образы можно сжимать более эффективно.