Использование скриптов оболочки на устройствах macOS в Intune

Используйте скрипты оболочки для расширения возможностей управления устройствами в Intune, помимо поддерживаемых операционной системой macOS.

Примечание.

Для запуска 64-разрядных версий приложений (Intel) на компьютерах Mac с Apple Silicon требуется Rosetta 2. Чтобы автоматически установить Rosetta 2 на apple Silicon Mac, можно развернуть сценарий оболочки в Intune. Пример скрипта см. в статье Сценарий установки Rosetta 2.

Предварительные требования

Убедитесь, что при создании скриптов оболочки и назначении их устройствам macOS выполняются следующие предварительные требования.

  • Устройства работают под управлением macOS 12.0 или более поздней версии.
  • Устройствами управляет Intune.
  • Устройства подключены напрямую к Интернету. Подключение через прокси-сервер не поддерживается.
  • Скрипты оболочки начинаются с #! и должны находиться в допустимом расположении, #!/bin/sh например или #!/usr/bin/env zsh.
  • Устанавливаются интерпретаторы командной строки для применимых оболочек.

Важные рекомендации перед использованием скриптов оболочки

  • Скрипты оболочки требуют успешной установки агента управления Microsoft Intune на устройстве macOS. Дополнительные сведения см. в разделе Агент управления Microsoft Intune для macOS.
  • Скрипты оболочки выполняются параллельно на устройствах в виде отдельных процессов.
  • Скрипты оболочки, выполняемые от имени вошедшего пользователя, будут выполняться для всех текущих учетных записей пользователей, выполнившего вход на устройстве во время выполнения.
  • Пользователь должен войти на устройство для выполнения сценариев, выполняемых в качестве вошедшего пользователя.
  • Привилегии корневого пользователя требуются, если скрипт требует внесения изменений, которые не могут быть у стандартной учетной записи пользователя.
  • Скрипты оболочки будут пытаться выполняться чаще, чем выбранная частота скриптов для определенных условий, например, если диск заполнен, если расположение хранилища изменено, если локальный кэш удален или если устройство Mac перезагружается.
  • Скрипты оболочки, которые выполняются более 60 минут, останавливаются и сообщаются как "сбой".

Создание и назначение политики сценариев оболочки

  1. Войдите в Центр администрирования Microsoft Intune.

  2. Выберите УстройстваmacOS Shell ScriptsAdd (Добавить>скрипты оболочки>macOS>).

  3. В разделе Основные введите следующие свойства и нажмите кнопку Далее:

    • Имя. Введите имя скрипта оболочки.
    • Описание. Введите описание скрипта оболочки. Это необязательные данные, но рекомендуется их ввести.
  4. В разделе Параметры сценария укажите следующие свойства и нажмите кнопку Далее:

    • Сценарий отправки. Перейдите к скрипту оболочки. Размер файла скрипта должен быть меньше 200 КБ.
    • Запуск скрипта от имени пользователя, выполнившего вход. Выберите Да , чтобы запустить скрипт с учетными данными пользователя на устройстве. Выберите Нет (по умолчанию), чтобы запустить сценарий от имени корневого пользователя.
    • Скрыть уведомления о скриптах на устройствах: По умолчанию уведомления о скриптах отображаются для каждого выполняемого скрипта. Конечные пользователи видят, что ИТ настраивает уведомление компьютера из Intune на устройствах macOS.
    • Частота скрипта: Выберите частоту выполнения скрипта. Выберите Не настроено (по умолчанию), чтобы запустить скрипт только один раз. Скрипты с набором частот также будут выполняться после перезапуска устройства.
    • Максимальное количество повторных попыток в случае сбоя скрипта: Выберите, сколько раз должен выполняться скрипт, если он возвращает код выхода, отличный от нуля (ноль означает успешное выполнение). Выберите Не настроено (по умолчанию), чтобы не повторять повторную попытку при сбое сценария.
  5. В поле Теги области при необходимости добавьте область теги для скрипта и нажмите кнопку Далее. С помощью тегов область можно определить, кто может просматривать скрипты в Intune. Подробные сведения о тегах область см. в статье Использование управления доступом на основе ролей и область тегов для распределенной ИТ-службы.

  6. Выберите пункты Назначения>Выберите группы для включения. Отобразится существующий список Microsoft Entra групп. Выберите одну или несколько групп пользователей или устройств, которые будут получать скрипт. Нажмите Выбрать. Выбранные группы отображаются в списке и получат политику скриптов.

    Примечание.

    • Скрипты оболочки, назначенные группам пользователей, применяются к любому пользователю, входом в систему Mac.
    • Обновление назначений для сценариев оболочки также обновляет назначения для Microsoft Intune агента MDM для macOS.
  7. В окне Проверка и добавление отображается сводка по настроенным параметрам. Выберите Добавить, чтобы сохранить сценарий. При нажатии кнопки Добавить политика скрипта развертывается в выбранных группах.

Созданный скрипт теперь отображается в списке скриптов. При необходимости вы можете просмотреть содержимое скриптов оболочки macOS после их отправки в Intune.

Мониторинг политики сценариев оболочки

Вы можете отслеживать состояние выполнения всех назначенных сценариев для пользователей и устройств, выбрав один из следующих отчетов:

  • Сценарии>Выбор скрипта для мониторинга>Состояние устройства
  • Сценарии>Выбор скрипта для мониторинга>Состояние пользователя

Важно!

Независимо от выбранной частоты выполнения скрипта состояние выполнения скрипта сообщается только при первом запуске скрипта. Состояние выполнения скрипта не обновляется при последующих запусках. Однако обновленные скрипты обрабатываются как новые и снова сообщают о состоянии выполнения.

После выполнения скрипта возвращается одно из следующих состояний:

  • Состояние выполнения скрипта с ошибкой указывает, что скрипт вернул код выхода, отличный от нуля, или скрипт имеет неправильный формат.
  • Состояние выполнения скрипта Успешно указывает, что скрипт возвращает ноль в качестве кода выхода.

Устранение неполадок с политиками сценариев оболочки macOS с помощью сбора журналов

Вы можете собирать журналы устройств, чтобы устранить проблемы со сценариями на устройствах macOS.

Требования к сбору журналов

Для сбора журналов на устройстве macOS требуются следующие элементы:

  • Необходимо указать полный путь к файлу абсолютного журнала.
  • Пути к файлам должны быть разделены только точкой с запятой (;).
  • Максимальный размер коллекции журналов для отправки составляет 60 МБ (сжатые) или 25 файлов в зависимости от того, что произойдет раньше.
  • Типы файлов, которые разрешены для сбора журналов, включают следующие расширения: .log, .zip, .gz, .tar, .txt, .xml, .crash, .rtf

Сбор журналов устройств

  1. Войдите в Центр администрирования Microsoft Intune.

  2. Перейдите в раздел Сценарии устройств> и выберите скрипт оболочки macOS.

  3. В разделе Состояние устройства или Отчет о состоянии пользователя выберите устройство.

  4. Выберите Сбор журналов, укажите пути к папкам файлов журналов, разделенные только точкой с запятой (;) без пробелов или новых линий между путями.
    Например, несколько путей должны быть записаны как /Path/to/logfile1.zip;/Path/to/logfile2.log.

    Важно!

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

  5. Нажмите ОК. Журналы собираются при следующем входе агента управления Intune на устройстве в Intune. Это проверка обычно происходит каждые 8 часов.

    Примечание.

    • Собранные журналы шифруются на устройстве, передаются и хранятся в хранилище Microsoft Azure в течение 30 дней. Сохраненные журналы расшифровываются по запросу и скачиваются с помощью Microsoft Intune Центра администрирования.
    • Помимо журналов, указанных администратором, журналы агента управления Intune также собираются из следующих папок: /Library/Logs/Microsoft/Intune и ~/Library/Logs/Microsoft/Intune. Имена файлов журнала агента: IntuneMDMDaemon date--time.log и IntuneMDMAgent date--time.log.
    • Если какой-либо файл, указанный администратором, отсутствует или имеет неправильное расширение файла, вы найдете эти имена файлов в LogCollectionInfo.txtсписке .

Ошибки сбора журналов

Сбор журналов может не быть успешным по одной из следующих причин, приведенных в таблице ниже. Чтобы устранить эти ошибки, выполните действия по исправлению.

Код ошибки (шестнадцатеричный) Код ошибки (декабрь) Сообщение об ошибке Действия по исправлению
0X87D300D1 2016214834 Размер файла журнала не может превышать 60 МБ. Убедитесь, что размер сжатых журналов не превышает 60 МБ.
0X87D300D1 2016214831 Указанный путь к файлу журнала должен существовать. Системная папка пользователя является недопустимым расположением для файлов журнала. Убедитесь, что указанный путь к файлу является допустимым и доступным.
0X87D300D2 2016214830 Сбой отправки файла коллекции журналов из-за истечения срока действия URL-адреса отправки. Повторите действие Сбор журналов .
0X87D300D3, 0X87D300D5, 0X87D300D7 2016214829, 2016214827, 2016214825 Не удалось отправить файл сбора журналов из-за сбоя шифрования. Повторная отправка журнала. Повторите действие Сбор журналов .
2016214828 Число файлов журнала превысило допустимое ограничение в 25 файлов. Одновременно можно собрать до 25 файлов журнала.
0X87D300D6 2016214826 Сбой отправки файла сбора журналов из-за ошибки ZIP. Повторная отправка журнала. Повторите действие Сбор журналов .
2016214740 Не удалось зашифровать журналы, так как сжатые журналы не найдены. Повторите действие Сбор журналов .
2016214739 Журналы были собраны, но не удалось сохранить. Повторите действие Сбор журналов .

Настраиваемые атрибуты для macOS

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

Создание и назначение настраиваемого атрибута для устройств macOS

  1. Войдите в Центр администрирования Microsoft Intune.

  2. Выберите Устройства>macOS>Настраиваемые атрибуты>Добавить.

  3. В разделе Основные введите следующие свойства и нажмите кнопку Далее:

    • Имя. Введите имя скрипта.
    • Описание. Введите описание скрипта. Этот необязательный параметр, но мы рекомендуем его использовать.
  4. В разделе Параметры атрибутов введите следующие свойства и нажмите кнопку Далее:

    • Тип данных атрибута. Выберите тип данных результата, возвращаемого скриптом. Доступные значения : String, Integer и Date.
    • Скрипт. Выберите файл скрипта.

    Дополнительные сведения.

    • Скрипт оболочки должен повторять атрибут, о котором нужно сообщить, а тип данных выходных данных должен соответствовать типу данных атрибута в профиле настраиваемого атрибута.
    • Результат, возвращаемый скриптом оболочки, должен быть не более 20 КБ.

    Примечание.

    При использовании Date атрибутов типа убедитесь, что скрипт оболочки возвращает даты в формате ISO-8601. См примеры ниже.

    Чтобы напечатать дату, совместимую с ISO-8601, с часовым поясом:

    #!/bin/sh
    var=$(date +"%Y-%m-%dT%H:%M:%S%z")
    echo $var # Prints an ISO-8601 compliant date with time-zone
    

    Чтобы распечатать дату, совместимую с ISO-8601, в формате UTC:

    #!/bin/sh
    var=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
    echo $var # Prints an ISO-8601 compliant date in UTC time
    
  5. В разделе Назначения щелкните Выбрать группы для включения. При выборе пункта Выбрать группы отображается существующий список Microsoft Entra групп. Выберите одну или несколько групп пользователей или устройств, которые будут получать скрипт. Нажмите Выбрать. Выбранные группы отображаются в списке и получат политику скриптов. Кроме того, можно выбрать Все пользователи, Все устройства или Все пользователи и все устройства , выбрав один из этих параметров в раскрывающемся списке рядом с пунктом Назначить.

    Примечание.

    • Скрипты, назначенные группам пользователей, применяются к любому пользователю, входом в систему Mac.
  6. В окне Проверка и добавление отображается сводка по настроенным параметрам. Выберите Добавить, чтобы сохранить сценарий. При нажатии кнопки Добавить политика скрипта развертывается в выбранных группах.

Созданный скрипт теперь отображается в списке настраиваемых атрибутов. При необходимости можно просмотреть содержимое настраиваемых атрибутов после их отправки в Intune.

Мониторинг настраиваемой политики атрибутов

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

  • Настраиваемые атрибуты>Выберите профиль настраиваемого атрибута для отслеживания>Состояние устройства
  • Настраиваемые атрибуты>Выберите профиль настраиваемого атрибута для отслеживания>Состояние пользователя

Важно!

Скрипты оболочки, предоставляемые в пользовательских профилях атрибутов, выполняются каждые 8 часов на управляемых компьютерах Mac и передаются в отчет.

После запуска пользовательского профиля атрибута он возвращает одно из следующих состояний:

  • Состояние Failed указывает, что скрипт вернул код выхода, отличный от нуля, или скрипт имеет неправильный формат. Ошибка отображается в столбце Результат .
  • Состояние Успешно указывает, что скрипт вернул ноль в качестве кода выхода. Выходные данные, отрисованные скриптом, отображаются в столбце Результат .

Вопросы и ответы

Почему назначенные скрипты оболочки не выполняются на устройстве?

Причин может быть несколько:

  • Агенту может потребоваться проверка для получения новых или обновленных скриптов. Этот процесс проверка выполняется каждые 8 часов и отличается от проверка mdm. Убедитесь, что устройство не в состоянии и подключено к сети, чтобы агент успешно проверка, и дождитесь, пока агент проверка. Вы также можете попросить пользователя открыть Корпоративный портал на Компьютере Mac, выбрать устройство и нажать кнопку Проверить параметры.
  • Возможно, агент не установлен. Убедитесь, что агент установлен на /Library/Intune/Microsoft Intune Agent.app устройстве macOS.
  • Агент может не находиться в работоспособном состоянии. Агент будет пытаться восстановиться в течение 24 часов, удалить себя и переустановить, если скрипты оболочки по-прежнему назначены.

Как часто сообщается о состоянии выполнения скрипта?

О состоянии выполнения скрипта сообщается в центр администрирования Microsoft Intune сразу после завершения выполнения скрипта. Если скрипт планируется периодически выполняться с заданной частотой, он сообщает о состоянии только при первом запуске.

Когда скрипты оболочки запускаются снова?

Скрипт запускается снова только в том случае, если настроен параметр Максимальное число повторных попыток при сбое скрипта , а скрипт завершается сбоем при выполнении. Если не настроено максимальное число повторных попыток при сбое скрипта и при выполнении скрипта происходит сбой, он не будет выполняться повторно, а состояние выполнения будет отображаться как сбой.

Какие разрешения роли Intune требуются для сценариев оболочки?

Назначенной роли intune требуются разрешения конфигурации устройств для удаления, назначения, создания, обновления или чтения скриптов оболочки.

Известные проблемы

  • Нет состояния выполнения скрипта: В маловероятном случае, если скрипт будет получен на устройстве и устройство перейдет в автономный режим до сообщения о состоянии выполнения, устройство не будет сообщать о состоянии выполнения скрипта в Центре администрирования.

Дополнительные сведения

При развертывании сценариев оболочки или настраиваемых атрибутов для устройств macOS из Microsoft Intune развертывается новая универсальная версия приложения агента управления Intune, которая изначально работает на компьютерах Apple Silicon Mac. Во время этого развертывания также будет установлена 64-разрядная версия приложения на компьютерах Intel Mac. Для запуска 64-разрядных версий приложений (Intel) на компьютерах Mac с Apple Silicon требуется Rosetta 2. Чтобы автоматически установить Rosetta 2 на apple Silicon Mac, можно развернуть сценарий оболочки в Intune. Пример скрипта см. в статье Сценарий установки Rosetta 2.

Дальнейшие действия