Zarządzanie rzeczami otwieranymi podczas logowania i zadaniami w tle na Macu
Przed systemem macOS 13 część procesu projektowania aplikacji pomocniczych plików wykonywalnych obejmowała skrypty, które instalowały jedną lub więcej list właściwości w określonych katalogach w zależności od typu usługi. W systemie macOS 13 lub nowszym nowa struktura w pakiecie aplikacji upraszcza instalację rzeczy otwieranych podczas logowania i powiązanych list właściwości (poprzez uaktualnienie pomocniczych plików wykonywalnych z wcześniejszych wersji systemu macOS). Ten szablon roboczy służy do tworzenia przejrzystości dla użytkownika podczas konfiguracji rzeczy otwieranych podczas logowania (login items), agentów włączanych podczas uruchamiania (launch agents) oraz demonów włączanych podczas uruchamiania (launch daemons) na Macu. Ten szablon roboczy używa obiektu SMAppService
do kontrolowania pomocniczych plików wykonywalnych, które znajdują się w głównym pakiecie aplikacji. Może być również używany do zarejestrowania i kontrolowania rzeczy otwieranych podczas logowania (login items), agentów włączanych podczas uruchamiania (launch agents) oraz demonów włączanych podczas uruchamiania (launch daemons) jako pomocniczych plików wykonywalnych dla aplikacji. Działa ze wszystkimi typami aplikacji, niezależnie od tego, jak zostały zainstalowane.
Wdrażanie aplikacji pomocniczych i pomocniczych plików wykonywalnych
Organizacja ma możliwość konfigurowania określonych elementów przy użyciu nowego pakietu danych konfiguracyjnych. Zawartość pakietu danych to szereg słowników, z których każdy określa regułę dla co najmniej jednego potencjalnego elementu. Pierwszy element, który pasuje do reguły podczas instalacji, powiadamia administratora o instalowaniu elementów zarządzanych. Kolejne instalacje elementów pasujących do reguły nie tworzą żadnych dodatkowych powiadomień w celu przypomnienia tego dnia (24 godziny po pierwszym powiadomieniu). W miarę wykrywania elementów i zarządzania nimi przy użyciu tej konfiguracji administratorzy i użytkownicy powinni przesyłać opinie dostawcom aplikacji i wewnętrznym zespołom ds. opracowywania narzędzi, aby korzystać z nowego szablonu roboczego w dołączonej aplikacji.
Powiadomienia użytkowników końcowych dla aplikacji zarządzanych w ramach tego pakietu danych są obsługiwane przez pojedyncze powiadomienie, które informuje użytkownika, że zarządzane elementy są instalowane i można je wyświetlić w Ustawieniach systemowych. Chociaż to powiadomienie jest wyświetlane na ekranie, nie pojawiają się żadne inne powiadomienia dotyczące zarządzanych elementów. Jeśli to powiadomienie zostanie zamknięte, wszystkie kolejne zarządzane elementy instalacji generują ponowne powiadomienie użytkownika. Jeśli w powiadomieniu zostanie włączona drzemka, kolejne powiadomienia dotyczące rzeczy otwieranych podczas logowania (login items), agentów włączanych podczas uruchamiania (launch agents) oraz demonów włączanych podczas uruchamiania (launch daemons) nie będą wyświetlane do końca wybranego czasu (dzień lub tydzień).
Identyfikowanie aplikacji za pomocą funkcji zarządzania zadaniami w tle
Administratorzy powinni być świadomi wszelkich elementów, które używają aplikacji pomocniczych i pomocniczych plików wykonywalnych i które są wdrażane przez ich organizację. Aby pomóc określić, które elementy są wdrażane i rejestrowane w nowym szablonie roboczym, przetestuj standardowe procesy wdrażania i przeanalizuj wynikową konfigurację dla odpowiednich elementów. Na przykład:
Użyj deklaratywnego raportu o statusie zadań wykonywanych w tle, dostępnego w systemie macOS 14 lub nowszym.
Wybierz kolejno: Ustawienia systemowe > Ogólne > Logowanie, aby wyświetlić listę wszystkich elementów zarejestrowanych w nowym szablonie roboczym. Aby zobaczyć uruchamiany element, kliknij w przycisk Informacje.
Użyj narzędzi wiersza polecenia, aby zebrać ważne informacje o systemie, wyzerować dane do testowania i monitorować aktywność za pomocą aplikacji Konsola i Terminal.
sfltool dumpbtm: Drukuje bieżący stan elementów logowania i elementów w tle, w tym załadowane identyfikatory UUID pakietu danych
servicemanagement
. Dane wyjściowe tego polecenia powinny być dołączone do każdej przesyłanej opinii wraz z innymi elementami wymienionymi w sekcji Zgłaszanie opinii.sfltool resetbtm: Zeruje dane logowania i elementy w tle. Jeśli użyjesz tego polecenia między testami, zaleca się, aby użytkownicy również ponownie uruchomili swój komputer.
Aby monitorować aktywność związaną z logowaniem i zarządzaniem elementami w tle w aplikacji Konsola: Filtruj według
subsystem:backgroundtaskmanagement
orazcategory:mcx
lub użyj następującego polecenia, aby przesyłać strumieniowo dzienniki w aplikacji Terminal:log stream --debug --info --predicate "subsystem = 'com.apple.backgroundtaskmanagement'and category = 'mcx'"
Aplikacja Mac Evaluation Utility 4.3.0 lub nowsza, dostępna w witrynie Appleseed for IT, ma możliwość generowania wyników testów zwracających szczegółowe informacje, podobnie jak polecenie
sfltool dumpbtm
. Testy dotyczące rzeczy otwieranych podczas logowania (login items), agentów włączanych podczas uruchamiania (launch agents) oraz demonów włączanych podczas uruchamiania (launch daemons) zwracają raport zawierający aktualnie zainstalowane aplikacje używające zarządzania rzeczami uruchamianymi podczas logowania oraz uruchamianymi w tle w systemie macOS. Wyniki tych testów są formatowane razem z innymi testami wykonywanymi przez aplikację Mac Evaluation Utility i można je eksportować jako pliki tekstowe z delimiterem do dalszej analizy.
Używanie profilu konfiguracji XML do zarządzania zadaniami w tle
Do zarządzania zadaniami wykonywanymi w tle może być używany profil konfiguracji XML. W takiej sytuacji wszystkie elementy są porównywane ze wszystkimi typami reguł. Gdy dany element zostanie dopasowany do reguły, jest automatycznie akceptowany. Oto typy reguł uwzględniane podczas dopasowywania:
Application BundleIdentifier: Identyfikator pakietu aplikacji (bundle ID) do dopasowania (wymagane dopasowanie dokładne).
Application BundleIdentifierPrefix: Prefiks identyfikatora pakietu aplikacji do dopasowania.
Developer TeamIdentifier: Identyfikator zespołu z atrybutów podpisywania kodu (wymagane dopasowanie dokładne).
Service Label: Wartość parametru Label w pliku plist dla
launchd
, która ma zostać dopasowana (wymagane dopasowanie dokładne).Service LabelPrefix: Prefiks parametru Label w pliku plist dla
launchd
, który ma zostać dopasowany.
Aby uzyskać więcej informacji, zobacz: Przykład zarządzania zadaniami w tle oraz Ustawienia obsługiwanego przez MDM pakietu danych Managed Login Items.
Atrybuty z innych aplikacji
Apple utrzymuje plik preferencji o nazwie attributions.plist
, który zawiera wiele aplikacji pomocniczych lub pomocniczych plików wykonywalnych, które są często używane przez określoną aplikację. Informacje te mogą pomóc w identyfikacji aplikacji pomocniczych i pomocniczych plików wykonywalnych, które pojawiają się w elementach otwieranych podczas logowania użytkownika w czasie uruchamiania. Aby uzyskać pełne informacje o tych typowych elementach i ich atrybucjach, zapoznaj się z plikiem dostępnym tutaj:
/System/Library/PrivateFrameworks/BackgroundTaskManagement.framework/Versions/A/Resources/