Пустой файл IMG чаще всего нужен как заготовка под образ диска: для тестирования файловых систем, эмуляторов, виртуальных машин, создания загрузочных носителей или экспериментов с разметкой разделов без риска для реальных дисков. Если вы попытались просто переименовать текстовый документ в .img, система создаст файл нулевого размера, который не подойдёт для монтирования или записи файловой системы — нужен файл строго заданного объёма, заполненный нулями.
Ниже разобраны рабочие способы для Windows, Linux и macOS: от встроенных консольных утилит до графических инструментов. Каждый метод создаёт именно пустой образ, который затем можно отформатировать, смонтировать или записать на носитель.
Что такое файл IMG и зачем нужен пустой образ
Расширение .img обозначает посекторную копию диска или его заготовку. В отличие от ISO, формат IMG не имеет жёсткой стандартизации: это просто «сырой» (raw) поток байтов, который система трактует как блочное устройство. Поэтому пустой IMG — это файл нужного размера, заполненный нулями, без какой-либо структуры внутри.
Типичные сценарии, где требуется такой файл:
- 💾 создание виртуального диска для эмуляторов (QEMU, Bochs) и виртуальных машин;
- 🧪 тестирование утилит разметки и восстановления данных без риска для физических дисков;
- 📀 подготовка образа для последующей записи на SD-карту или USB-накопитель;
- 🔐 создание зашифрованного контейнера с файловой системой внутри файла;
- 🛠 обучение работе с
fdisk,mkfsи таблицами разделов.
Размер файла выбирается под задачу: для экспериментов достаточно 100–500 МБ, для эмуляции SD-карты — объём, соответствующий реальной карте.
Создание пустого IMG в Windows
В Windows нет штатной графической кнопки «создать пустой образ», но задачу решает встроенная утилита fsutil. Она создаёт файл заданного размера мгновенно, не заполняя его данными побайтово. Откройте командную строку или PowerShell от имени администратора и выполните:
fsutil file createnew C:\images\empty.img 104857600
Последний параметр — размер в байтах. В примере выше это 100 МБ (100 × 1024 × 1024). Для 1 ГБ укажите 1073741824. Путь к папке должен существовать заранее — утилита не создаёт каталоги автоматически.
⚠️ Внимание: команда fsutil file createnew требует прав администратора. Если запустить её от обычного пользователя, получите ошибку доступа. Также убедитесь, что на целевом диске достаточно свободного места.
Альтернатива без прав администратора — PowerShell. Следующая команда создаёт файл размером 100 МБ, заполненный нулями:
$fs = [System.IO.File]::Create("C:\images\empty.img"); $fs.SetLength(104857600); $fs.Close()
Метод SetLength расширяет файл до указанного размера, а новое пространство автоматически заполняется нулями. Это удобно для скриптов и автоматизации.
Создание пустого IMG в Linux
В Linux задача решается несколькими штатными утилитами. Самый быстрый способ — команда truncate, которая создаёт разреженный файл нужного размера практически мгновенно:
truncate -s 100M empty.img
Параметр -s задаёт размер: 100M — 100 мегабайт, 1G — один гигабайт. Файл будет разреженным: физически на диске он почти не занимает места, пока в него не начнут записывать данные.
Классический вариант — утилита dd, которая физически заполняет файл нулями:
dd if=/dev/zero of=empty.img bs=1M count=100
Здесь bs=1M — размер блока, count=100 — количество блоков, итого 100 МБ. В отличие от truncate, dd реально записывает данные, поэтому для больших файлов команда выполняется дольше, зато результат гарантированно занимает заявленный объём на диске.
Создание образа в macOS через Дисковую утилиту
В macOS есть графический путь без терминала. Откройте Дисковую утилиту (Disk Utility), затем в меню выберите Файл → Новый образ → Пустой образ. В появившемся окне укажите имя файла, размер, формат образа и при необходимости файловую систему.
Для «сырой» заготовки выбирайте формат «чтение/запись» — такой образ можно изменять после создания. macOS сохранит файл с расширением .dmg, но при необходимости его можно конвертировать в raw-формат через терминал командой hdiutil convert.
Терминальный вариант для macOS аналогичен Linux — доступна та же команда dd:
dd if=/dev/zero of=empty.img bs=1m count=100
Обратите внимание: в macOS суффикс размера блока пишется строчной буквой — 1m, а не 1M, как в GNU-версии dd.
Форматирование и монтирование созданного образа
Сам по себе пустой IMG — просто набор нулей. Чтобы использовать его как диск, нужно создать внутри файловую систему. В Linux это делается напрямую командой mkfs:
mkfs.ext4 empty.img
Утилита спросит подтверждение, поскольку цель — обычный файл, а не блочное устройство. После форматирования образ монтируется через loop-устройство:
sudo mount -o loop empty.img /mnt
Порядок действий в виде чек-листа:
☑️ Подготовка пустого IMG к работе
В Windows монтирование raw-образов штатно не поддерживается — понадобятся сторонние утилиты вроде OSFMount или ImDisk, которые подключают IMG как виртуальный диск. Перед установкой подобного ПО проверяйте его совместимость с вашей версией системы.
⚠️ Внимание: всегда отмонтируйте образ перед копированием или переносом файла IMG. Запись в смонтированный образ извне может повредить файловую систему внутри него.
Сравнение способов создания пустого IMG
Выбор метода зависит от системы и требований к скорости. Сводная таблица поможет сориентироваться:
| Способ | Система | Скорость | Особенности |
|---|---|---|---|
| fsutil file createnew | Windows | Мгновенно | Требует прав администратора |
| PowerShell SetLength | Windows | Мгновенно | Работает в скриптах |
| truncate | Linux | Мгновенно | Создаёт разреженный файл |
| dd из /dev/zero | Linux, macOS | Зависит от размера | Физически пишет нули |
| Дисковая утилита | macOS | Быстро | Графический интерфейс, формат DMG |
Для большинства задач оптимален самый быстрый вариант: truncate в Linux или fsutil в Windows. Физическое заполнение нулями через dd оправдано, когда важно, чтобы файл сразу занимал весь заявленный объём, — например, перед конвертацией в формат виртуальной машины.
Типичные ошибки и их решения
Самая частая ошибка — попытка создать образ простым переименованием пустого текстового файла. Такой файл имеет нулевой размер, и ни одна утилита не сможет его смонтировать или отформатировать осмысленно. Всегда задавайте размер явно.
Вторая проблема — нехватка места. Если вы создаёте образ на 4 ГБ через dd, а на разделе свободно 3 ГБ, команда завершится ошибкой записи, а файл окажется усечённым. Проверяйте свободное место заранее: в Linux — командой df -h, в Windows — через свойства диска.
Третий сценарий — путаница с единицами. Утилиты по-разному трактуют суффиксы: 1M у truncate — это мебибайт (1048576 байт), а fsutil принимает только точное число байт. Несовпадение ожидаемого и фактического размера почти всегда объясняется именно разницей между мегабайтами и мебибайтами.
Как проверить размер созданного файла
В Linux выполните ls -lh empty.img или du -h empty.img (вторая команда покажет реально занятое место — полезно для разреженных файлов). В Windows откройте свойства файла и смотрите оба значения: «Размер» и «На диске».
Часто задаваемые вопросы
Чем файл IMG отличается от ISO?
ISO — стандартизированный образ оптического диска с файловой системой ISO 9660 или UDF. IMG — «сырой» посекторный образ без жёсткой спецификации: внутри может быть любая разметка и файловая система. Пустой IMG — просто заготовка заданного размера.
Можно ли создать пустой IMG без командной строки?
Да, в macOS это делает Дисковая утилита через меню «Файл → Новый образ». В Windows и Linux штатных графических средств для raw-образов нет, но существуют сторонние программы с GUI; консольные команды при этом остаются самым надёжным вариантом.
Что такое разреженный файл и чем он хорош?
Разреженный (sparse) файл логически имеет заданный размер, но физически занимает на диске только объём реально записанных данных. Команда truncate создаёт именно такие файлы. Это экономит место, но не все программы корректно работают с разреженными образами.
Какой размер выбрать для пустого образа?
Размер определяется задачей: для тестов файловых систем достаточно 100–500 МБ, для эмуляции конкретной карты памяти — её фактический объём. Учитывайте, что dd физически заполнит весь размер нулями, поэтому большие образы создаются дольше.
Можно ли потом увеличить размер готового IMG?
Да. В Linux файл расширяется повторным вызовом truncate с большим размером или командой dd с параметром conv=notrunc. После расширения файловую систему внутри нужно увеличить отдельно, например утилитой resize2fs для ext4.