Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Utilizzare gli script della shell per estendere le funzionalità di gestione dei dispositivi in Intune, oltre a quelle supportate dal sistema operativo macOS.
Nota
Rosetta 2 è necessario per eseguire la versione x64 (Intel) delle app sui Mac Apple Silicon. Per installare Rosetta 2 sui Mac Apple Silicon automaticamente, è possibile distribuire uno script della shell in Intune. Per visualizzare uno script di esempio, vedere Script di installazione di Rosetta 2.
Prerequisiti
Assicurarsi che siano soddisfatti i prerequisiti seguenti durante la composizione di script della shell e l'assegnazione ai dispositivi macOS.
- I dispositivi eseguono macOS 12.0 o versione successiva.
- I dispositivi sono gestiti da Intune.
- I dispositivi sono connessi direttamente a Internet. La connessione tramite proxy non è supportata.
- Gli script della shell iniziano e
#!devono trovarsi in una posizione valida, ad esempio#!/bin/sho#!/usr/bin/env zsh. - Vengono installati interpreti della riga di comando per le shell applicabili.
Considerazioni importanti prima di utilizzare gli script della shell
- Gli script della shell richiedono che l'agente di gestione di Microsoft Intune sia installato correttamente nel dispositivo macOS. Per ulteriori informazioni, vedere Agente di gestione di Microsoft Intune per macOS.
- Gli script della shell vengono eseguiti in parallelo sui dispositivi come processi separati.
- Gli script della shell eseguiti come utente connesso verranno eseguiti per tutti gli account utente attualmente connessi nel dispositivo al momento dell'esecuzione.
- Un utente finale deve accedere al dispositivo per eseguire script in esecuzione come utente connesso.
- I privilegi di utente root sono necessari se lo script richiede di apportare modifiche che un account utente standard non può effettuare.
- Gli script della shell tenteranno di essere eseguiti più frequentemente rispetto alla frequenza di script scelta per determinate condizioni, ad esempio se il disco è pieno, se la posizione di archiviazione viene manomessa, se la cache locale viene eliminata o se il dispositivo Mac si riavvia.
- Gli script della shell in esecuzione per più di 60 minuti vengono arrestati e segnalati come "non riusciti".
Creare e assegnare un criterio di script della shell
Accedere all'Interfaccia di amministrazione di Microsoft Intune.
Seleziona dispositivi>per piattaforma>macOS>Gestisci dispositivi>Script>Add.
In Informazioni di base immettere le proprietà seguenti e selezionare Avanti:
- Name: immettere un nome per lo script della shell.
- Descrizione: immettere una descrizione per lo script della shell. Questa impostazione è facoltativa ma consigliata.
In Impostazioni script immettere le proprietà seguenti e selezionare Avanti:
- Carica script: passare allo script della shell. Le dimensioni del file script devono essere inferiori a 1 MB.
- Esegui script come utente connesso: selezionare Sì per eseguire lo script con le credenziali dell'utente nel dispositivo. Scegliere No (impostazione predefinita) per eseguire lo script come utente root.
- Nascondi le notifiche degli script nei dispositivi: Per impostazione predefinita, le notifiche agli script vengono visualizzate per ogni script eseguito. Gli utenti finali visualizzano una notifica IT che sta configurando il computer da Intune nei dispositivi macOS.
- Frequenza degli script: Selezionare la frequenza con cui deve essere eseguito lo script. Scegliere Non configurato (impostazione predefinita) per eseguire uno script una sola volta. Gli script con una frequenza impostata verranno eseguiti anche dopo il riavvio del dispositivo.
- Numero massimo di tentativi se lo script non riesce: Selezionare il numero di volte in cui lo script deve essere eseguito se restituisce un codice di uscita diverso da zero (zero significa successo). Scegliere Non configurato (impostazione predefinita) per non riprovare quando uno script non riesce.
In Tag di ambito, facoltativamente aggiungere tag di ambito per lo script e selezionare Avanti. È possibile usare i tag degli ambiti per determinare chi può visualizzare gli script in Intune. Per informazioni dettagliate sui tag degli ambiti, vedere Usare il controllo di accesso basato sui ruoli e i tag degli ambiti per l'IT distribuito.
Selezionare le attività Selezionare i>gruppi da includere. Viene visualizzato un elenco esistente di gruppi di Microsoft Entra. Selezionare uno o più gruppi di utenti o di dispositivi che devono ricevere lo script. Scegliere Seleziona. I gruppi scelti vengono visualizzati nell'elenco e riceveranno i criteri degli script.
Nota
- Gli script della shell assegnati ai gruppi di utenti si applicano a qualsiasi utente che accede al Mac.
- L'aggiornamento delle assegnazioni per gli script della shell aggiorna anche le assegnazioni per l'agente MDM di Microsoft Intune per macOS.
In Rivedi + Aggiungi viene visualizzato un riepilogo delle impostazioni configurate. Selezionare Aggiungi per salvare lo script. Quando si seleziona Aggiungi, il criterio script viene distribuito ai gruppi scelti.
Lo script creato ora viene visualizzato nell'elenco degli script. Se necessario, è possibile visualizzare il contenuto degli script della shell macOS dopo averli caricati in Intune.
Monitorare un criterio di script della shell
Puoi monitorare lo stato di esecuzione di tutti gli script assegnati per utenti e dispositivi scegliendo uno dei report seguenti:
- Script>Selezionare lo script da monitorare>Stato del dispositivo
- Script>Selezionare lo script da monitorare>Stato dell'utente
Importante
Indipendentemente dalla frequenza di script selezionata, lo stato di esecuzione degli script viene segnalato solo quando lo stato cambia rispetto all'ultimo report. Ad esempio, se uno script segnala l'esito positivo in un'esecuzione e l'errore nell'esecuzione successiva, Intune aggiorna sia lo stato che il timestamp dell'ultimo aggiornamento con le informazioni sull'esecuzione corrente. Se lo stato dello script non cambia tra le sincronizzazioni, Intune aggiorna il timestamp dell'ultimo aggiornamento ogni 7 giorni dall'esecuzione iniziale.
Una volta eseguito, lo script restituisce uno degli stati seguenti:
- Se lo stato di esecuzione dello script non è riuscito, lo script ha restituito un codice di uscita diverso da zero o lo script non è corretto.
- Uno stato di esecuzione dello script Operazione riuscita indica che lo script ha restituito zero come codice di uscita.
Risolvere i problemi relativi ai criteri degli script della shell macOS usando la raccolta di log
Puoi raccogliere i log del dispositivo per aiutarti a risolvere i problemi relativi agli script nei dispositivi macOS.
Requisiti per la raccolta dei log
Gli elementi seguenti sono necessari per raccogliere i log in un dispositivo macOS:
- È necessario specificare il percorso completo del file di log assoluto.
- I percorsi dei file devono essere separati solo da un punto e virgola (;).
- La dimensione massima della raccolta di log da caricare è di 60 MB (compressi) o 25 file, a seconda dell'evento che si verifica per primo.
- I tipi di file consentiti per la raccolta di log includono le estensioni seguenti: .log, .zip, .gz, .tar, .txt, .xml, .crash, .rtf
Raccogliere i log del dispositivo
Accedere all'Interfaccia di amministrazione di Microsoft Intune.
Passare a Dispositivi,>Gestisci dispositivi>, Script e correzioni Script>della piattaforma e selezionare uno script della shell macOS.
In Stato dispositivo o Report stato utente selezionare un dispositivo.
Selezionare Raccogli log, specificare i percorsi delle cartelle dei file di log separati solo da un punto e virgola (;) senza spazi o nuove righe tra i percorsi.
Ad esempio, i percorsi multipli devono essere scritti come/Path/to/logfile1.zip;/Path/to/logfile2.log.Importante
Più percorsi di file di log separati da virgole, punti, nuove righe o virgolette con o senza spazi causeranno un errore nella raccolta dei log. Inoltre, gli spazi non sono consentiti come separatori tra i percorsi.
Selezionare OK. I log vengono raccolti alla successiva archiviazione dell'agente di gestione di Intune nel dispositivo con Intune. Questo check-in avviene di solito ogni 8 ore.
Nota
- I log raccolti vengono crittografati nel dispositivo, trasmessi e archiviati nello spazio di archiviazione di Microsoft Azure per 30 giorni. I log archiviati vengono decrittografati su richiesta e scaricati tramite l'interfaccia di amministrazione di Microsoft Intune.
- Oltre ai log specificati dall'amministratore, anche i log dell'agente di gestione di Intune vengono raccolti dalle seguenti cartelle:
/Library/Logs/Microsoft/Intunee~/Library/Logs/Microsoft/Intune. I nomi dei file di registro dell'agente sonoIntuneMDMDaemon date--time.logeIntuneMDMAgent date--time.log. - Se un file specificato dall'amministratore manca o ha un'estensione errata, i nomi di file seguenti sono elencati in
LogCollectionInfo.txt.
Errori della raccolta log
La raccolta dei log potrebbe non riuscire a causa di uno dei seguenti motivi forniti nella tabella seguente. Per risolvere questi errori, seguire i passaggi di correzione.
| Codice di errore (esadecimale) | Codice di errore (dec) | Messaggio di errore | Passaggi di correzione |
|---|---|---|---|
| 0X87D300D1 | 2016214834 | Le dimensioni del file di log non possono superare i 60 MB. | Assicurati che i log compressi siano inferiori a 60 MB. |
| 0X87D300D1 | 2016214831 | Il percorso del file di log specificato deve esistere. La cartella utente di sistema è un percorso non valido per i file di log. | Verificare che il percorso del file fornito sia valido e accessibile. |
| 0X87D300D2 | 2016214830 | Caricamento del file della raccolta di log non riuscito a causa della scadenza dell'URL di caricamento. | Riprovare l'azione Raccogli log . |
| 0X87D300D3, 0X87D300D5 0X87D300D7 | 2016214829, 2016214827, 2016214825 | Caricamento del file della raccolta di log non riuscito a causa di un errore di crittografia. Riprova a caricare il log. | Riprovare l'azione Raccogli log . |
| 2016214828 | Il numero di file di log ha superato il limite consentito di 25 file. | È possibile raccogliere fino a 25 file di log per volta. | |
| 0X87D300D6 | 2016214826 | Caricamento del file della raccolta di log non riuscito a causa di un errore di compressione. Riprova a caricare il log. | Riprovare l'azione Raccogli log . |
| 2016214740 | Non è stato possibile crittografare i log perché i log compressi non sono stati trovati. | Riprovare l'azione Raccogli log . | |
| 2016214739 | I registri venivano raccolti ma non potevano essere archiviati. | Riprovare l'azione Raccogli log . |
Attributi personalizzati per macOS
È possibile creare profili di attributo personalizzati che consentono di raccogliere proprietà personalizzate dal dispositivo macOS gestito usando script della shell.
Creare e assegnare un attributo personalizzato per i dispositivi macOS
Accedere all'Interfaccia di amministrazione di Microsoft Intune.
Seleziona i dispositivi>per piattaforma>macOS>Organizza i dispositivi>Attributi personalizzati per macOS>Add.
In Informazioni di base immettere le proprietà seguenti e selezionare Avanti:
- Nome: immettere un nome per lo script.
- Descrizione: immettere una descrizione per lo script. Questa impostazione è facoltativa ma consigliata.
In Impostazioni attributi immettere le proprietà seguenti e selezionare Avanti:
- Tipo di dati dell'attributo: selezionare il tipo di dati del risultato restituito dallo script. I valori disponibili sono stringa, numero intero e data.
- Script: seleziona un file di script.
Dettagli aggiuntivi:
- Lo script della shell deve fare eco all'attributo da segnalare e il tipo di dati dell'output deve corrispondere al tipo di dati dell'attributo nel profilo dell'attributo personalizzato.
- Il risultato restituito dallo script della shell deve essere pari o inferiore a 20 KB.
Nota
Quando si utilizzano
Dategli attributi type, assicurarsi che lo script della shell restituisca le date nel formato ISO-8601. Vedere gli esempi seguenti.Per stampare una data conforme alla norma ISO-8601 con il fuso orario:
#!/bin/sh var=$(date +"%Y-%m-%dT%H:%M:%S%z") echo $var # Prints an ISO-8601 compliant date with time-zonePer stampare una data conforme allo standard ISO-8601 nell'ora UTC:
#!/bin/sh var=$(date -u +"%Y-%m-%dT%H:%M:%SZ") echo $var # Prints an ISO-8601 compliant date in UTC timeIn Attività fare clic su Seleziona gruppi da includere. Quando si sceglie Seleziona gruppi per includere un elenco esistente di gruppi di Microsoft Entra. Selezionare uno o più gruppi di utenti o di dispositivi che devono ricevere lo script. Scegliere Seleziona. I gruppi scelti vengono visualizzati nell'elenco e riceveranno i criteri degli script. In alternativa, puoi scegliere di selezionare Tutti gli utenti, Tutti i dispositivi o Tutti gli utenti e tutti i dispositivi selezionando una di queste opzioni nella casella a discesa accanto ad Assegna a.
Nota
- Gli script assegnati ai gruppi di utenti si applicano a tutti gli utenti che accedono al Mac.
In Rivedi + Aggiungi viene visualizzato un riepilogo delle impostazioni configurate. Selezionare Aggiungi per salvare lo script. Quando si seleziona Aggiungi, il criterio script viene distribuito ai gruppi scelti.
Lo script creato viene ora visualizzato nell'elenco degli attributi personalizzati. Se necessario, è possibile visualizzare il contenuto degli attributi personalizzati dopo averli caricati in Intune.
Monitorare un criterio di attributo personalizzato
È possibile monitorare lo stato di esecuzione di tutti i profili di attributo personalizzati assegnati per utenti e dispositivi scegliendo uno dei report seguenti:
- Attributi> personalizzatiSelezionare il profilo dell'attributo personalizzato da monitorare>Stato del dispositivo
- Attributi> personalizzatiSelezionare il profilo dell'attributo personalizzato da monitorare>Stato dell'utente
Importante
Gli script della shell forniti nei profili degli attributi personalizzati vengono eseguiti ogni 8 ore nei Mac gestiti e segnalati.
Una volta eseguito, un profilo di attributo personalizzato restituisce uno degli stati seguenti:
- Lo stato Non riuscito indica che lo script ha restituito un codice di uscita diverso da zero o che lo script non è corretto. L'errore viene segnalato nella colonna Risultato .
- As lo stato di Operazione completata indica che lo script ha restituito zero come codice di uscita. L'output ripreso dallo script viene riportato nella colonna Risultato .
Domande frequenti
Perché gli script della shell assegnati non sono in esecuzione sul dispositivo?
I motivi possono essere diversi:
- L'agente potrebbe dover effettuare il check-in per ricevere script nuovi o aggiornati. Questo processo di archiviazione viene eseguito ogni 8 ore ed è diverso dal controllo MDM. Assicurarsi che il dispositivo sia attivo e connesso a una rete per consentire l'esecuzione del check-in dell'agente, quindi attendere che l'agente esegua il check-in. È anche possibile richiedere all'utente finale di aprire il Portale aziendale nel Mac, selezionare il dispositivo e fare clic su Controlla impostazioni.
- L'agente potrebbe non essere installato. Verificare che l'agente sia installato nel
/Library/Intune/Microsoft Intune Agent.appdispositivo macOS. - L'agente potrebbe non essere in uno stato sano. L'agente tenterà il ripristino per 24 ore, si rimuoverà e reinstallerà se gli script della shell sono ancora assegnati.
Con quale frequenza viene segnalato lo stato di esecuzione degli script?
Lo stato di esecuzione dello script viene segnalato all'interfaccia di amministrazione di Microsoft Intune non appena viene completata l'esecuzione dello script. Se uno script è pianificato per essere eseguito periodicamente a una frequenza impostata, segnala lo stato solo la prima volta che viene eseguito.
Quando vengono eseguiti di nuovo gli script della shell?
Uno script viene eseguito di nuovo solo quando è configurata l'impostazione Numero massimo di tentativi se lo script non riesce e lo script non riesce durante l'esecuzione. Se il numero massimo di tentativi se lo script non riesce non è configurato e uno script non riesce durante l'esecuzione, non verrà eseguito di nuovo e lo stato di esecuzione verrà segnalato come non riuscito.
Quali autorizzazioni del ruolo di Intune sono necessarie per gli script della shell?
Il ruolo Intune assegnato richiede le autorizzazioni di configurazione del dispositivo per eliminare, assegnare, creare, aggiornare o leggere gli script della shell.
Problemi noti
- Stato nessuna esecuzione dello script: Nell'improbabile eventualità che venga ricevuto uno script nel dispositivo e che il dispositivo vada offline prima che venga segnalato lo stato di esecuzione, il dispositivo non segnalerà lo stato di esecuzione per lo script nell'interfaccia di amministrazione.
Informazioni aggiuntive
Quando si distribuiscono script della shell o attributi personalizzati per dispositivi macOS da Microsoft Intune, viene distribuita la nuova versione universale dell'app agente di gestione di Intune che viene eseguita in modo nativo nei computer Mac Apple Silicon. La stessa distribuzione installerà la versione x64 dell'app sui computer Intel Mac. Rosetta 2 è necessario per eseguire la versione x64 (Intel) delle app sui Mac Apple Silicon. Per installare Rosetta 2 sui Mac Apple Silicon automaticamente, è possibile distribuire uno script della shell in Intune. Per visualizzare uno script di esempio, vedere Script di installazione di Rosetta 2.