переместить структуры ext4, чтобы выжить усечение

У меня есть 6Gb raw-образ диска с 1 секцией ext4. У меня есть только данные в 1 ГБ на нем. Есть ли способ переместить / скорректировать datastructures ext4, чтобы я мог обрезать диск на 1 ГБ или 1.2 ГБ и все еще сохранять все соответствующие структуры

Я хочу сделать dd урезанного изображения 1.2Gb на целевом томе и по-прежнему создавать исходный диск на 6 ГБ со всеми данными раздела и журналами ext4 / суперблоками

Это возможно?

Чтобы изменить размер объема ext2 / 3/4, используйте resize2fs . Вам необходимо отключить раздел для сжатия файловой системы. Он будет перемещать ваши данные (если необходимо), а также любые иноды и т. Д.

Например, если вы хотите сжать /dev/sda1 до 1073741824 байт (один GiB), вы должны запустить:

 # fsck -f /dev/sda1 # resize2fs /dev/sda1 1073741824 

После этого вы измените размер раздела на 1073741824 байт (или немного больше, если вы настаиваете на выравнивании границы «дорожки»)

Вы можете найти вариант -M (сделать его как можно меньше) полезным.

Вы также можете развернуть файловые системы с помощью resize2fs ; если вы опустите размер, он расширит его, чтобы заполнить раздел.

Если вы просто хотите создать резервную копию некоторых файлов для перехода на другой диск, вы должны использовать утилиты резервного копирования, такие как tar , afio , cpio и т. Д. Или, альтернативно, программы для создания образов дисков, такие как partclone или partimage (которые должны будут копировать только используемое пространство ). Или выделенные системы обработки изображений, такие как Clonezilla (которые обычно используют одну из этих программ обработки изображений под капотом).