Гид по технологиям

Создание динамически изменяемых Disk Image на macOS

• 5 min read • macOS • Обновлено 30 Nov 2025
Динамический Disk Image на macOS
Динамический Disk Image на macOS

Что такое Disk Image в двух словах

Disk Image — это файл, который имитирует оптический диск (DVD/CD). После открытия он монтируется как диск, и вы можете копировать на него файлы или запускать установщик. Пример: файл для установки Google Chrome, который вы скачиваете из интернета, часто является Disk Image.

Когда использовать фиксированный образ, а когда динамический

  • Фиксированный образ (.dmg, стандартный) полезен для распространения установщиков, когда нужен предсказуемый размер и целостность.
  • Динамический образ (sparse или sparsebundle) удобен для хранения личных данных, резервных копий или шифрованных контейнеров, которые должны «расти» по мере добавления данных.

Важно: динамический образ может занимать меньше места на диске в начале, но нарастает по мере заполнения до заданного максимума.

Быстрый обзор шагов создания обычного Disk Image

  1. Откройте Дисковую утилиту: «Программы» → «Служебные программы» → «Дисковая утилита» или через Spotlight.
  2. Выберите «Новый образ» в верхней панели.

Меню создания нового образа в Дисковой утилите macOS

  1. В появившемся меню можно задать имя и размер образа. В примере указан 500 МБ, но вы выбираете свой размер.

Окно выбора размера образа в Дисковой утилите macOS

Примечание: здесь же можно включить шифрование через вкладку «Шифрование».

Настройки шифрования образа в Дисковой утилите macOS

  1. Нажмите «Создать». Образ будет создан и смонтирован. Однако стандартный фиксированный образ будет занимать на диске именно тот объём, который вы указали при создании, даже если он заполнен частично.

Как сделать образ, который расширяется: sparse и sparsebundle

Apple позволяет создавать образы типов «sparse» и «sparsebundle». Они динамически увеличиваются по мере добавления файлов, до максимального значения, указанного при создании. Чтобы создать такой образ:

  1. При создании образа в Дисковой утилите в поле «Формат образа» выберите «sparse» или «sparsebundle».
  2. В меню «Разделы» (Partitions) выберите «Нет схемы разделов» («No Partition Map» или аналог в локализованной Дисковой утилите).

Окно выбора типа sparse в Дисковой утилите macOS

Разница между sparse и sparsebundle:

  • sparse: единый файл-образ, который растёт по мере добавления данных.
  • sparsebundle: набор «пачек» (bands) — набор файлов фиксированного размера, удобен для хранения на сетевых томах и работы с Time Machine.

Совет: используйте sparsebundle при работе с сетевыми файловыми системами или когда нужен более надёжный перенос частями.

Командная строка: hdiutil (альтернатива Дисковой утилите)

Если вы предпочитаете терминал или автоматизацию, можно использовать hdiutil. Примеры:

Создать sparse образ 500 МБ с HFS+:

hdiutil create -size 500m -fs HFS+ -volname "MySparse" -type SPARSE -encryption -stdinpass my-sparse.sparseimage

Создать sparsebundle (с пачками по 8 МБ):

hdiutil create -size 10g -fs HFS+ -volname "MyBundle" -type SPARSEBUNDLE -plist -ov my-bundle.sparsebundle

Важно: если используете шифрование в командной строке, будьте внимательны с передачей пароля и правами доступа к файлам.

Шифрование и безопасность

  • При создании образа можно включить шифрование (обычно AES-128 или AES-256). Это защитит данные, если файл образа попадёт к посторонним.
  • Для критичных данных используйте надёжные пароли и храните их в менеджере паролей.
  • Для корпоративной среды рассмотрите дополнительно FileVault для полного шифрования диска вместе с образами.

Важно: потеря пароля к зашифрованному образу означает необратимую потерю доступа к данным.

Траблшутинг: распространённые проблемы и решения

  • Проблема: образ не монтируется.

    • Решение: проверьте целостность через Дисковую утилиту или командой hdiutil verify; проверьте права доступа.
  • Проблема: sparsebundle занимает много мелких файлов и тормозит при копировании по сети.

    • Решение: увеличьте размер пачки (band-size) при создании sparsebundle или используйте стандартный sparse при локальном хранении.
  • Проблема: ограничение размера при попытке записать больше, чем доступно.

    • Решение: убедитесь, что на физическом носителе есть достаточно свободного места до максимального размера образа.

Мини-методология: как выбрать параметры образа (шаги)

  1. Определите цель: дистрибутив, резервная копия, перенос данных, шифрование.
  2. Выберите формат: фиксированный (.dmg) для дистрибутивов; sparse/sparsebundle для растущих контейнеров.
  3. Установите разумный максимальный размер и, при необходимости, band-size (для sparsebundle).
  4. Примите решение о шифровании и запишите пароль в безопасном месте.
  5. Протестируйте монтирование, запись и восстановление на другом машине.

Рольовые чек-листы

  • Для пользователя:
    • Создать образ, смонтировать, скопировать тестовый файл, размонтировать и снова смонтировать.
  • Для администратора:
    • Настроить права доступа, проверить совместимость с сетевыми томами, задокументировать политику шифрования.

Критерии приёмки

  • Образ монтируется и читается на целевой версии macOS.
  • Данные корректно записываются и сохраняются после размонтирования.
  • Шифрованный образ запрашивает пароль и без него данные недоступны.
  • Для sparsebundle: отдельные файлы band не превышают указанного размера.

Когда это не подходит — контрпример

  • Если вы распространяете инсталлятор приложения, фиксированный DMG будет предпочтительнее: он проще для конечного пользователя и обеспечивает одинаковый файл для всех.
  • Если важна детерминированная контрольная сумма образа для верификации, используйте фиксированный образ.

Краткое резюме

Создавая образ типа sparse или sparsebundle и выбирая «без схемы разделов», вы получаете файл-контейнер, который растёт по мере заполнения, экономя место на носителе и обеспечивая гибкость. Для автоматизации используйте hdiutil, а для сетевых наборов файлов — sparsebundle.

Полезная справка — однострочный глоссарий:

  • sparse: динамический единый файл-образ; sparsebundle: динамический набор файлов-пачек, удобен для сети.

Если есть вопросы или вы хотите пример скрипта для автоматического создания и монтирования образов, опишите задачу — добавлю пример.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро