Поддержка Консалтинг Обучение Jamf Pro Блог

Сборная сенсация на #macsysadmin

Борис Поляк 01.10.2010

Сенсационное объявление на MacSysAdmin 2010: Карл Кун (Karl Kuehn), ведущий разработчик InstaDMG, больше не сможет работать над проектом с 8 ноября.

Причину он объясняет так: «Это вопрос интеллектуальной собственности моего нового работодателя. Я отложил выход на работу до 8 ноября, чтобы посетить все конференции, успеть закончить как можно больше. Люди, которые следят за моими коммитами, увидят, что в последнее время я отправлял патчи почти непрерывно».

Карл объявил, что ищет себе замену — и пока не смог найти.


InstaDMG — один из самых полезных инструментов, во всяком случае, в «Шорткате». Это набор скриптов, позволяющий собирать готовые для восстановления на жесткий диск Мака (при помощи DeployStudio, например) монолитные образы операционных систем (вернее, операционной системы — Mac OS X). Он состоит из нескольких частей.

  1. Собственно instadmg.bash — скрипт, автоматизируюший создание образа жесткого диска с установленной при помощи Installer операционной системой.
  2. InstaUp2Date — скрипт, автоматизирующий использование instadmg.bash.

InstaUp2Date делает  InstaDMG максимально полезным — в качестве одного из аргументов он принимает имя файла каталога, то есть описания того, что нужно установить в будущую систему.

Файл каталога может содержать:

  1. Записи dmg- и pkg-файлов, в том числе dmg-файлов с приложениями, которые должны ставиться драг-н-дропом (Firefox, Adium).
  2. Прямые ссылки (например, /Volumes/Software/Firefox.dmg) и веб-ссылки (http://adiumx.cachefly.net/Adium_1.3.10.dmg).
  3. Самая прекрасная часть — ссылки на другие файлы каталога (директива include-file)! В комплекте с InstaDMG вы получите ряд файлов — 10.6_vanilla.catalog и 10.5_vanilla.catalog, iLife09_Updates.catalog и iWork09_Updates.catalog. Они содержат все системные обновления и обновления iLife и iWork, которые требуется будут перечислены в Software Update, запущенном на голой системе (10.6 или 10.5, соответственно). Эти файлы обновляются разработчиками InstaDMG (прямо сейчас — самим Карлом), и после выхода каждого обновления можно обновить свои копии этих каталогов при помощи svn.

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

InstaDMG начинает с установочного диска OS X, шаг 1 (после первого же запуска система будет закэширована в промежуточном образе, и каждый последующий запуск будет быстрее), поверх свежей системы будут поставлены все системные обновления (2). Дистрибутивы iLife (4) и iWork (6) будут взяты с локального жесткого диска (это всего лишь два dmg-файла), а обновления (3 и 5) — с сайта Apple (они тоже весьма агрессивно кэшируются). Все эти каталоги вместе создают стоковую систему (7) — систему, какой ее видит пользователь, только что распаковавший новый Макбук.

Поскольку в нашей компании используется некоторое количество бесплатного открытого софта (Firefox, Cyberduck), мы включим его в образ (используя отдельные каталоги для софта (8) и для образа (9), чтобы сохранять управляемость), и поэтому мы создадим образ (9), содержащий весь стандартный софт, но не рабочий софт.

Добавив в него специализированные для данного отдела пакеты (10 и 11), включая все обновления (в случае Adobe CS5 каждый апдейт придется перепаковать как pkg-файл), мы наконец получим два каталога (12 и 13), описывающих чистую, ни разу не загруженную систему, содержащую все обновления и пакеты, нужные для работы. Теперь достаточно запустить InstaUp2Date –process Video_editing.catalog и InstaUp2Date –process Graphics.catalog — и образа будут собраны, проверены и упакованы без участия администратора.

После тестирования и некоторой автоматизации мы сможем полностью забыть о ручной сборке образов, и автоматически получать свежие, готовые для восстановления dmg-мастеры прямо в своем репозитории DeployStudio.