Установка Apple Remote Desktop (ARD) для ОС Специальный пакет
Столкнувшись с недавним Java-сбоем, навязанным тихими обновлениями Apple, я ищу решение для установки файлов.pkg, специфичных для версии ОС.
Apple продолжает предоставлять обновления Java для 10.6, но для 10.7+ нам нужно получить файл от Oracle. Apple наконец выпустила обновление Java для 10.6 в пятницу, но программное обеспечение было доступно до того, как оно появилось в качестве Обновления программного обеспечения через раздел Обновления программного обеспечения ОС.
Для версии 10.6 мы можем просто подождать, пока Apple протолкнет ее через свои обновления программного обеспечения и использовать ARD для запуска этих обновлений программного обеспечения, но при выталкивании обновлений Java через ARD с использованием файла.pkg, предоставленного Oracle, я бы хотел чтобы убедиться, что мы пытаемся установить только на компьютерах с версией 10,7+, а не на что-то меньшее.
Вопрос: Мне было интересно, если у ARD Software Distribution есть возможность установки на основе версии клиентской ОС, я не хочу пытаться установить Oracle Java, предназначенную для компьютеров 10.7+, на любой из наших клиентов 10.6. Я не могу найти какую-либо документацию или обсуждения в Интернете. Любая / вся помощь приветствуется.
Ответ, который я сформулировал (отличный ответ из приведенного ниже ответа, просто хотел предложить конечный результат для людей, которые все еще могут чесать голову):
#!/bin/bash
os_ver_maj=$(sw_vers -productVersion | cut -d . -f 2)
if [ $os_ver_maj -ge 7 ]; then
mkdir /Volumes/ARD && mount_afp afp://ardservername.localdomain/ARD_pkgs /Volumes/ARD && installer -pkg /Volumes/ARD/jre-7u13-macosx-x64.pkg -target /
else
mkdir /Volumes/ARD && mount_afp afp://ardservername.localdomain/ARD_pkgs /Volumes/ARD && installer -pkg /Volumes/ARD/Java6u12OSX10.6.pkg -target /
fi
umount /Volumes/ARD
Объяснение:
- Я решил разместить файлы прямо на сервере ARD, загрузка из Oracle практически невозможна, и я уверен, что это изменится без предупреждения.
- Я также решил не использовать
softwareupdate
для 10.6 возникло слишком много других проблем, даже при выборе конкретного PackageName. - Когда выйдут новые обновления Java, мы будем загружать и извлекать.pkg из.dmg, помещать его на сервер ARD в каталог ARD_pkgs и обновлять скрипт, чтобы отразить изменение версии пакета.
Я надеюсь, что это помогает другим, спасибо за вклад и руководство.
2 ответа
Функции копирования и установки пакетов удаленного рабочего стола Apple не имеют специальной возможности фильтрации, но вы можете сделать это в два простых шага с помощью умного списка:
- Нажмите кнопку "+" в левом нижнем углу окна удаленного рабочего стола и выберите "Новый смарт-список..."
- Назовите новый "Умный список", где "Версия Mac OS" больше "версии"10.7 (вы можете добавить другие фильтры, если хотите) и нажмите "ОК".
- Выберите новый смарт-список из списка источников.
- Выберите все компьютеры в этом списке.
- Нажмите кнопку "Установить пакеты" (или выберите "Управление" -> "Установить пакеты..."), чтобы установить пакет Oracle Java только на выбранные компьютеры Mac.
В качестве альтернативы, если вы хотите запустить обновление программного обеспечения или установить пакет Oracle Java на всех компьютерах сразу, вы можете написать сценарий оболочки для проверки версии ОС. Вот пример в bash
:
os_ver_maj=$(sw_vers -productVersion | cut -d . -f 2) # get the major OS version
if [ $os_ver_maj -ge 7 ]; then
# download & install the Oracle Java package
else
# run software update
fi
После того, как вы создали скрипт, который правильно делает то, что вы хотите, вы можете выбрать все машины в ARD, затем вы можете сделать Управление -> Выполнить команду UNIX... (или нажать кнопку Отправить команду UNIX) и вставить в скрипт.
Я думаю, что вы ищете sw_vers
, Вы можете создать скрипт, который вызывает его и анализирует вывод. Если это совпадает (или не совпадает), тогда вызовите установщик пакета.
Образец вывода:
Marks-MacBook-Pro:~ mark$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.8.2
BuildVersion: 12C60