Używanie skryptów powłoki na urządzeniach z systemem macOS w usłudze Intune

Użyj skryptów powłoki, aby rozszerzyć możliwości zarządzania urządzeniami w usłudze Intune poza to, co jest obsługiwane przez system operacyjny macOS.

Uwaga

Rosetta 2 jest wymagana do uruchamiania wersji x64 (Intel) aplikacji na komputerach Mac z procesorem Apple Silicon. Aby automatycznie zainstalować Rosettę 2 na komputerach Mac z procesorem Apple Silicon Mac, należy wdrożyć skrypt powłoki w usłudze Intune. Aby wyświetlić przykładowy skrypt, zobacz Skrypt instalacji translacji Rosetta 2.

Wymagania wstępne

Upewnij się, że podczas komponowania skryptów powłoki i przypisywania ich do urządzeń z systemem macOS są spełnione następujące wymagania wstępne.

  • Urządzenia są wyposażone w system macOS 12.0 lub nowszy.
  • Urządzeniami zarządza usługa Intune.
  • Urządzenia są podłączone bezpośrednio do Internetu. Połączenie za pośrednictwem serwera proxy nie jest obsługiwane.
  • Skrypty powłoki zaczynają się od #! i muszą znajdować się w prawidłowej lokalizacji, takiej jak #!/bin/sh lub #!/usr/bin/env zsh.
  • Zainstalowane są interpretery wiersza polecenia dla odpowiednich powłok.

Ważne zagadnienia przed użyciem skryptów powłoki

  • Skrypty powłoki wymagają, aby agent zarządzania usługi Microsoft Intune został pomyślnie zainstalowany na urządzeniu z systemem macOS. Aby uzyskać więcej informacji, zobacz Agent zarządzania usługi Microsoft Intune dla systemu macOS.
  • Skrypty powłoki są uruchamiane równolegle na urządzeniach jako osobne procesy.
  • Skrypty powłoki uruchamiane przez zalogowanego użytkownika zostaną uruchomione dla wszystkich aktualnie zalogowanych kont użytkownika na urządzeniu w momencie uruchamiania.
  • Aby uruchomić skrypty działające jako zalogowany użytkownik, użytkownik końcowy musi zalogować się na urządzeniu.
  • Uprawnienia użytkownika root są wymagane, jeśli skrypt wymaga wprowadzenia zmian, których nie może wprowadzić standardowe konto użytkownika.
  • Skrypty powłoki będą próbowały być uruchamiane częściej niż wybrana częstotliwość skryptu w określonych warunkach, na przykład jeśli dysk jest pełny, lokalizacja przechowywania jest modyfikowana, jeśli lokalna pamięć podręczna zostanie usunięta lub jeśli urządzenie Mac zostanie ponownie uruchomione.
  • Skrypty powłoki, których działanie trwa dłużej niż 60 minut, są zatrzymywane i zgłaszane jako "zakończone niepowodzeniem".

Tworzenie i przypisywanie zasad skryptów powłoki

  1. Zaloguj się do Centrum administracyjnego usługi Microsoft Intune.

  2. Wybierz urządzenia>Według platformy>macOS>, zarządzaj urządzeniami>, dodaj skrypty>.

  3. W obszarze Podstawy wprowadź następujące właściwości i wybierz pozycję Dalej:

    • Nazwa: wprowadź nazwę skryptu powłoki.
    • Opis: wprowadź opis skryptu powłoki. To ustawienie jest opcjonalne, ale zalecane.
  4. W obszarze Ustawienia skryptu wprowadź następujące właściwości i wybierz przycisk Dalej:

    • Przekaż skrypt: przejdź do skryptu powłoki. Plik skryptu nie może przekraczać 1 MB.
    • Uruchom skrypt jako zalogowany użytkownik: wybierz pozycję Tak , aby uruchomić skrypt z poświadczeniami użytkownika na urządzeniu. Wybierz pozycję Nie (domyślnie), aby uruchomić skrypt jako użytkownik root.
    • Ukryj powiadomienia skryptów na urządzeniach: Domyślnie powiadomienia skryptu są wyświetlane dla każdego uruchomionego skryptu. Użytkownicy końcowi widzą powiadomienie IT konfiguruje komputer z usługi Intune na urządzeniach z systemem macOS.
    • Częstotliwość skryptu: Wybierz częstotliwość uruchamiania skryptu. Wybierz pozycję Nie skonfigurowano (ustawienie domyślne), aby uruchomić skrypt tylko raz. Skrypty z ustawioną częstotliwością będą również uruchamiane po ponownym uruchomieniu urządzenia.
    • Maksymalna liczba ponowień próby, jeśli skrypt nie powiedzie się: Wybierz liczbę razy, które skrypt powinien zostać uruchomiony, jeśli zwróci niezerowy kod zakończenia (zero oznacza sukces). Wybierz pozycję Nie skonfigurowano (ustawienie domyślne), aby nie ponawiać próby, gdy skrypt zakończy się niepowodzeniem.
  5. W obszarze Tagi zakresu opcjonalnie dodaj tagi zakresu dla skryptu, a następnie wybierz przycisk Dalej. Możesz użyć tagów zakresu, aby określić, kto może wyświetlać skrypty w usłudze Intune. Aby uzyskać szczegółowe informacje na temat tagów zakresu, zobacz Używanie kontroli dostępu opartej na rolach i tagów zakresu dla rozproszonej infrastruktury IT.

  6. Wybierz zadania>Wybierz grupy do uwzględnienia. Zostanie wyświetlona istniejąca lista grup usługi Microsoft Entra. Wybierz co najmniej jedną grupę użytkowników lub urządzeń, które mają otrzymać skrypt. Zaznacz pozycję Wybierz. Wybrane grupy są wyświetlane na liście i otrzymają zasady skryptów.

    Uwaga

  7. W obszarze Recenzja + dodaj zostanie wyświetlone podsumowanie skonfigurowanych ustawień. Wybierz pozycję Dodaj , aby zapisać skrypt. Po wybraniu pozycji Dodaj zasady skryptów są wdrażane w wybranych grupach.

Utworzony skrypt zostanie wyświetlony na liście skryptów. W razie potrzeby możesz wyświetlić zawartość skryptów powłoki systemu macOS po przekazaniu ich do usługi Intune.

Monitorowanie zasad skryptów powłoki

Możesz monitorować stan uruchamiania wszystkich skryptów przypisanych dla użytkowników i urządzeń, wybierając jeden z następujących raportów:

  • Skrypty>Wybierz skrypt do monitorowania>Stan urządzenia
  • Skrypty>Wybierz skrypt do monitorowania>Status użytkownika

Ważna

Niezależnie od wybranej częstotliwości skryptu, stan uruchomienia skryptu jest raportowany tylko wtedy, gdy stan zmienia się w stosunku do ostatniego raportu. Jeśli na przykład skrypt zgłosi powodzenie w jednym uruchomieniu i niepowodzenie w następnym, usługa Intune aktualizuje zarówno stan, jak i sygnaturę czasową ostatniej aktualizacji przy użyciu informacji o bieżącym uruchomieniu. Jeśli stan skryptu nie zmienia się między synchronizacjami, usługa Intune aktualizuje sygnaturę czasową ostatniej aktualizacji co 7 dni od uruchomienia początkowego.

Po uruchomieniu skryptu zwraca on jeden z następujących stanów:

  • Stan uruchomienia skryptu Niepowodzenie wskazuje, że skrypt zwrócił kod zakończenia inny niż zero lub skrypt jest uszkodzony.
  • Stan uruchomienia skryptu Powodzenie wskazuje, że skrypt zwrócił zero jako kod zakończenia.

Rozwiązywanie problemów z zasadami skryptów powłoki systemu macOS przy użyciu kolekcji dzienników

Dzienniki urządzenia można zbierać, aby pomóc w rozwiązywaniu problemów ze skryptami na urządzeniach z systemem macOS.

Wymagania dotyczące zbierania dzienników

Do zbierania dzienników na urządzeniu z systemem macOS są wymagane następujące elementy:

  • Należy określić pełną ścieżkę pliku dziennika bezwzględnego.
  • Ścieżki plików należy rozdzielać jedynie średnikami (;).
  • Maksymalny rozmiar kolekcji dzienników do przekazania to 60 MB (skompresowanych) lub 25 plików, w zależności od tego, co nastąpi wcześniej.
  • Typy plików, które są dozwolone do zbierania dzienników, obejmują następujące rozszerzenia: .log, .zip, .gz, .tar, .txt, .xml, .crash .rtf

Zbieranie dzienników urządzenia

  1. Zaloguj się do Centrum administracyjnego usługi Microsoft Intune.

  2. Przejdź do pozycji Urządzenia>Zarządzanie urządzeniami>Skrypty i środki zaradcze>Skrypty platformy i wybierz skrypt powłoki systemu macOS.

  3. Wybierz urządzenie w obszarze Stan urządzenia lub Raport o stanie użytkownika .

  4. Wybierz pozycję Zbierz dzienniki, podaj ścieżki folderów plików dziennika oddzielone tylko średnikiem (;) bez spacji i nowych wierszy między ścieżkami.
    Na przykład wiele ścieżek powinno być zapisanych jako /Path/to/logfile1.zip;/Path/to/logfile2.log.

    Ważna

    Wiele ścieżek do plików dziennika oddzielonych przecinkami, kropkami, nowym wierszem lub cudzysłowami spacjami lub bez spacji spowoduje błąd zbierania dziennika. Niedozwolone jest także używanie spacji jako separatorów między ścieżkami.

  5. Wybierz przycisk OK. Dzienniki są zbierane przy następnym zaewidencjonowaniu agenta zarządzania usługi Intune na urządzeniu w usłudze Intune. To zameldowanie odbywa się zazwyczaj co 8 godzin.

    Uwaga

    • Zebrane dzienniki są szyfrowane na urządzeniu, przesyłane i przechowywane w magazynie platformy Microsoft Azure przez 30 dni. Przechowywane dzienniki są odszyfrowywane na żądanie i pobierane przy użyciu centrum administracyjnego usługi Microsoft Intune.
    • Oprócz dzienników określonych przez administratora dzienniki agenta zarządzania usługi Intune są również zbierane z następujących folderów: /Library/Logs/Microsoft/Intune oraz ~/Library/Logs/Microsoft/Intune. Nazwy plików dziennika agenta to IntuneMDMDaemon date--time.log i IntuneMDMAgent date--time.log.
    • Jeśli brakuje jakiegokolwiek pliku określonego przez administratora lub ma on nieprawidłowe rozszerzenie, te nazwy plików będą wymienione w folderze LogCollectionInfo.txt.

Błędy zbierania dzienników

Zbieranie dzienników może się nie powieść z dowolnego z następujących powodów podanych w poniższej tabeli. Aby usunąć te błędy, wykonaj kroki korygowania.

Kod błędu (szesnastkowy) Kod błędu (dec) Komunikat o błędzie Procedura korygowania
0X87D300D1 2016214834 Rozmiar pliku dziennika nie może przekraczać 60 MB. Upewnij się, że rozmiar skompresowanych dzienników jest mniejszy niż 60 MB.
0X87D300D1 2016214831 Podana ścieżka do pliku dziennika musi istnieć. Folder użytkownika systemu jest nieprawidłową lokalizacją dla plików dziennika. Upewnij się, że podana ścieżka pliku jest prawidłowa i dostępna.
0X87D300D2 2016214830 Przekazywanie pliku zbierania dzienników nie powiodło się z powodu wygaśnięcia adresu URL przekazywania. Ponów próbę wykonania akcji Zbierz dzienniki .
0X87D300D3, 0X87D300D5 0X87D300D7 2016214829, 2016214827, 2016214825 Przekazywanie pliku zbierania dzienników nie powiodło się z powodu błędu szyfrowania. Ponów próbę przekazania dziennika. Ponów próbę wykonania akcji Zbierz dzienniki .
2016214828 Liczba plików dziennika przekroczyła dozwolony limit 25 plików. Jednorazowo można zebrać tylko do 25 plików dziennika.
0X87D300D6 2016214826 Przekazywanie pliku zbierania dzienników nie powiodło się z powodu błędu pakowania. Ponów próbę przekazania dziennika. Ponów próbę wykonania akcji Zbierz dzienniki .
2016214740 Nie można zaszyfrować dzienników, ponieważ nie znaleziono skompresowanych dzienników. Ponów próbę wykonania akcji Zbierz dzienniki .
2016214739 Dzienniki zostały zebrane, ale nie mogły być przechowywane. Ponów próbę wykonania akcji Zbierz dzienniki .

Atrybuty niestandardowe dla systemu macOS

Możesz utworzyć niestandardowe profile atrybutów, które umożliwiają zbieranie niestandardowych właściwości z zarządzanego urządzenia z systemem macOS przy użyciu skryptów powłoki.

Tworzenie i przypisywanie atrybutu niestandardowego dla urządzeń z systemem macOS

  1. Zaloguj się do Centrum administracyjnego usługi Microsoft Intune.

  2. Wybierz urządzenia>Według platformy>macOS>Organizowanie urządzeń>Atrybuty niestandardowe dla systemu macOS>Dodaj.

  3. W obszarze Podstawy wprowadź następujące właściwości i wybierz pozycję Dalej:

    • Nazwa: wprowadź nazwę skryptu.
    • Opis: wprowadź opis skryptu. To ustawienie jest opcjonalne, ale zalecane.
  4. W obszarze Ustawienia atrybutów wprowadź następujące właściwości i wybierz przycisk Dalej:

    • Typ danych atrybutu: Wybierz typ danych wyniku, który zwraca skrypt. Dostępne wartości to: ciąg, liczba całkowita i data.
    • Skrypt: Wybierz plik skryptu.

    Dodatkowe szczegóły:

    • Skrypt powłoki musi odzwierciedlać atrybut, który ma być raportowany, a typ danych wyjściowych musi być zgodny z typem danych atrybutu w niestandardowym profilu atrybutu.
    • Wynik zwrócony przez skrypt powłoki musi być 20 KB lub mniejszy.

    Uwaga

    W przypadku korzystania z Date atrybutów typu upewnij się, że skrypt powłoki zwraca daty w formacie ISO-8601. Zapoznaj się z poniższymi przykładami.

    Aby wydrukować datę zgodną ze standardem ISO-8601 ze strefą czasową:

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

    Aby wydrukować datę zgodną ze standardem ISO-8601 w czasie UTC:

    #!/bin/sh
    var=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
    echo $var # Prints an ISO-8601 compliant date in UTC time
    
  5. W obszarze Zadania kliknij pozycję Wybierz grupy do uwzględnienia. Po wybraniu pozycji Wybierz grupy w celu uwzględnienia istniejącej listy grup usługi Microsoft Entra zostanie wyświetlona. Wybierz co najmniej jedną grupę użytkowników lub urządzeń, które mają otrzymać skrypt. Zaznacz pozycję Wybierz. Wybrane grupy są wyświetlane na liście i otrzymają zasady skryptów. Możesz też wybrać opcję Wszyscy użytkownicy, Wszystkie urządzenia lub Wszyscy użytkownicy i wszystkie urządzenia , wybierając jedną z tych opcji w polu listy rozwijanej obok pozycji Przypisz do.

    Uwaga

    • Skrypty przypisane do grup użytkowników są stosowane do każdego użytkownika logującego się na komputerze Mac.
  6. W obszarze Recenzja + dodaj zostanie wyświetlone podsumowanie skonfigurowanych ustawień. Wybierz pozycję Dodaj , aby zapisać skrypt. Po wybraniu pozycji Dodaj zasady skryptów są wdrażane w wybranych grupach.

Utworzony skrypt zostanie wyświetlony na liście atrybutów niestandardowych. W razie potrzeby możesz wyświetlić zawartość atrybutów niestandardowych po przekazaniu ich do usługi Intune.

Monitorowanie zasad atrybutów niestandardowych

Możesz monitorować stan uruchamiania wszystkich przypisanych niestandardowych profilów atrybutów dla użytkowników i urządzeń, wybierając jeden z następujących raportów:

  • Atrybuty> niestandardoweWybieranie niestandardowego profilu atrybutów do monitorowania>Stan urządzenia
  • Atrybuty> niestandardoweWybieranie niestandardowego profilu atrybutów do monitorowania>Status użytkownika

Ważna

Skrypty powłoki podane w niestandardowych profilach atrybutów są uruchamiane co 8 godzin na zarządzanych komputerach Mac i raportowane.

Po uruchomieniu niestandardowego profilu atrybutów zwraca on jeden z następujących stanów:

  • Stan niepowodzenia wskazuje, że skrypt zwrócił niezerowy kod zakończenia lub skrypt ma nieprawidłową postać. Błąd zostanie zgłoszony w kolumnie Wynik .
  • Ponieważ stan powodzenia wskazuje, że skrypt zwrócił zero jako kod zakończenia. Dane wyjściowe, w których powtarza się skrypt, są raportowane w kolumnie Wynik .

Często zadawane pytania

Dlaczego przypisane skrypty powłoki nie są uruchomione na urządzeniu?

Może być kilka powodów:

  • Agent może być zmuszony do zaewidencjonowania się w celu otrzymania nowych lub zaktualizowanych skryptów. Ten proces meldowania odbywa się co 8 godzin i różni się od meldowania w usłudze MDM. Upewnij się, że urządzenie jest w stanie aktywności i jest podłączone do sieci w celu pomyślnego zaewidencjonowania agenta, a następnie poczekaj, aż agent się zaewidencjonuje. Możesz również poprosić użytkownika końcowego o otwarcie portalu firmy na komputerze Mac, wybranie urządzenia i kliknięcie przycisku Sprawdź ustawienia.
  • Być może agent nie jest zainstalowany. Sprawdź, czy agent jest zainstalowany na /Library/Intune/Microsoft Intune Agent.app urządzeniu z systemem macOS.
  • Agent może nie być w dobrej kondycji. Agent będzie próbował odzyskiwać przez 24 godziny, usunąć siebie i ponownie zainstalować, jeśli skrypty powłoki są nadal przypisane.

Jak często jest zgłaszany stan uruchomienia skryptu?

Stan uruchomienia skryptu jest zgłaszany do centrum administracyjnego usługi Microsoft Intune zaraz po zakończeniu uruchamiania skryptu. Jeśli zaplanowano okresowe uruchamianie skryptu z określoną częstotliwością, raportuje on tylko stan przy pierwszym uruchomieniu.

Kiedy skrypty powłoki są ponownie uruchamiane?

Skrypt zostanie uruchomiony ponownie tylko wtedy, gdy skonfigurowano ustawienie Maksymalna liczba ponowień próby w przypadku niepowodzenia skryptu i uruchomienie skryptu zakończy się niepowodzeniem. Jeśli maksymalna liczba ponowień próby w przypadku niepowodzenia skryptu nie jest skonfigurowana, a skrypt kończy się niepowodzeniem podczas uruchamiania, skrypt nie zostanie uruchomiony ponownie, a stan uruchomienia zostanie zgłoszony jako zakończony niepowodzeniem.

Jakie uprawnienia roli usługi Intune są wymagane dla skryptów powłoki?

Twoja przypisana rola intune wymaga uprawnień konfiguracji urządzeń do usuwania, przypisywania, tworzenia, aktualizowania lub odczytywania skryptów powłoki.

Znane problemy

  • Brak stanu uruchomienia skryptu: W mało prawdopodobnym przypadku, gdy skrypt zostanie odebrany na urządzeniu, a urządzenie przejdzie w tryb offline przed zgłoszeniem stanu uruchomienia, urządzenie nie będzie zgłaszać stanu uruchamiania skryptu w centrum administracyjnym.

Informacje dodatkowe

When you deploy shell scripts or custom attributes for macOS devices from Microsoft Intune, it deploy the new universal version of the Intune management agent app that runs natively on Apple Silicon Mac machines. To samo wdrożenie zainstaluje wersję x64 aplikacji na komputerach Mac z procesorami Intel. Rosetta 2 jest wymagana do uruchamiania wersji x64 (Intel) aplikacji na komputerach Mac z procesorem Apple Silicon. Aby automatycznie zainstalować Rosettę 2 na komputerach Mac z procesorem Apple Silicon Mac, należy wdrożyć skrypt powłoki w usłudze Intune. Aby wyświetlić przykładowy skrypt, zobacz Skrypt instalacji translacji Rosetta 2.

Następne kroki