Ivan Salvade’

Il mio punto di vista su Virtualizzazione, Sicurezza, Messaggistica, Network Management…

  • Ivan

    248418_467427256623661_1655875885_n.jpg
  • Abbonati

  •  

    novembre 2017
    L M M G V S D
    « gen    
     12345
    6789101112
    13141516171819
    20212223242526
    27282930  
  • Tag Cloud

Join al dominio non funziona in una Task Sequence OSD in SCCM 2012

Scritto da Ivan Salvade' il 1 luglio 2014

In System Center Configuration Manager 2012, durante l’esecuzione di una Task Sequence per l’installazione di un sistema operativo, può capitare che fallisca il task che inserisce in dominio il computer che si sta installando.  Questo può causare problemi anche a successivi task presenti nella Task Sequence, che magari necessitano del prerequisito del corretto join al dominio del computer.

Il task che inserisce un computer a dominio, di default, si chiama “Apply Network Settings”, ed è presente nel gruppo “Install Operating System” di una Task Sequence di installazione.

Una delle motivazioni per il mancato inserimento a dominio del computer potrebbe essere l’errata compilazione del campo che indica l’unità organizzativa di Active Directory in cui inserire il computer (vedi foto).

SCCM 2012 ci obbliga ad inserire in quel campo una Unità Organizzativa, e non un contenitore (come per esempio il contenitore built-in “Computers” presente in Active Directory).

netsetup.jpg

Se l’esigenza dovesse essere proprio quella di inserire i nuovi client installati con la Task Sequence nel contenitore Computers, bisognerebbe allora lasciare non compilato il campo suddetto.  Se lo si compilasse indicando il nome LDAP del contenitore Computers, si genererebbe un errore e la mancata join al dominio del computer.

L’unico modo per accorgersi di questo errore è la consultazione del log “NetSetup.log”, che si trova nella cartella C:\Windows\Debug dei client.  In questo log, verrebbe riportato un errore simile al seguente :

06/05/2014 16:30:25:285 NetpGetComputerObjectDn: Cracking DNS domain name contoso.com/ into Netbios on \\dc.contoso.com
06/05/2014 16:30:25:301 NetpGetComputerObjectDn: Crack results:  name = CONTOSO\
06/05/2014 16:30:25:301 NetpGetComputerObjectDn: Cracking account name CONTOSO\PC001323$ on
file://\\dc.contoso.com 06/05/2014 16:30:25:301 NetpGetComputerObjectDn: Crack results:  Account does not exist
06/05/2014 16:30:25:317 NetpGetComputerObjectDn: Specified path ‘CN=Computers,DC=contoso,DC=com’ is not an OU
06/05/2014 16:30:25:332 NetpCreateComputerObjectInDs: NetpGetComputerObjectDn failed: 0×2
06/05/2014 16:30:25:332 NetpProvisionComputerAccount: LDAP creation failed: 0×2
06/05/2014 16:30:25:332 NetpProvisionComputerAccount: Cannot retry downlevel, specifying OU is not supported
06/05/2014 16:30:25:332 ldap_unbind status: 0×0
06/05/2014 16:30:25:332 NetpJoinDomainOnDs: Function exits with status of: 0×2
06/05/2014 16:30:25:332 NetpJoinDomainOnDs: status of disconnecting from ‘\\dc.contoso.com’: 0×0
06/05/2014 16:30:25:332 NetpDoDomainJoin: status: 0×2

L’errore si rettifica immediatamente inserendo nel campo suddetto una ben precisa Unità Organizzativa, o lasciandolo in bianco.

Buon Deploy :-)

  • Share/Bookmark

Pubblicato in System Center Configuration Manager 2012 | Nessun commento »

Client CCM non si registra in SCCM 2012 dopo installazione con Task Sequence OSD

Scritto da Ivan Salvade' il 31 gennaio 2013

Era un problema conosciuto in SCCM 2007, poi risolto, ma che puntualmente ricapita anche in SCCM 2012, sebbene solo in alcune casistiche particolari.

Il problema consiste nella mancata registrazione di un client CCM in SCCM 2012, quando si esegue il deploy di un sistema operativo attraverso una OSD (Operating System Deploy) Task Sequence di SCCM 2012, nella quale sia inserito anche lo step di installazione del client CCM.

La mancata registrazione del client può anche comportare l’errata esecuzione degli step successivi della Task Sequence (per esempio eventuali procedure di ripristino dati dopo l’installazione del sistema operativo).

Il problema è gia a conoscenza di Microsoft, e la risoluzione è prevista nel SP1 di SCCM 2012 (peraltro già uscito al momento della scrittura del presente articolo).

Gli effetti “estetici” visibili sono due :

  • Il client CCM appare installato nel Pannello di Controllo del computer, ma spostandoci nel tab “Azioni”, si nota la presenza solo di alcuni componenti (Fig. 1), invece che di tutti (Fig.2) :

ccmprob.PNG        Fig. 1 : client problematico

ccmnoprob.PNG      Fig. 2 : client perfettamente funzionante

  • Nella console SCCM 2012, il computer continua a comparire nelle collezioni senza Client CCM installato (Fig. 3)

conssccm.png

      Fig. 3

Qualunque tentativo di riavvio del computer o refresh (riparazione) del client,  non sortisce effetto alcuno.

Il metodo veloce per risolvere il problema singolarmente, computer per computer, sarebbe il seguente :

  • Disinstallare completamente il client CCM (con “Ccmsetup.exe /Uninstall”)
  • Reinstallare il client CCM a mano o attraverso una Push Installation da SCCM

Ma il problema si riproporrebbe su tutti i nuovi computer installati dalla Task Sequence : bisogna quindi risolvere il problema proprio a livello di Task Sequence.

Approfondiamo un po’ : ecco ulteriori indizi della presenza del problema.

Due particolari chiavi di registro presentano uno strano valore sui client problematici.  Queste chiavi si trovano nella posizione :

HKLM\Software\Microsoft\CCM\CCMExec

e sono le seguenti :

  • ProvisioningMode (REG_SZ)
  • SystemTaskExcludes (REG_SZ)

In Fig. 4 ho fotografato lo stato delle suddette chiavi in un client con problemi, mentre in Fig. 5 sono riportate le stesse chiavi con il loro valore corretto (se il client fosse regolarmente installato e registrato) :

client-con-problemi.PNG      Fig. 4 : chiavi di registro del client con problemi (clicca per ingrandire)

client-senza-problemi.PNG     Fig. 5 : chiavi di registro di un client regolare (clicca per ingrandire)

Cosa fanno queste due chiavi?

  • chiave “ProvisioningMode” : se posta a “True” (come nei client problematici) indica che il client CCM è stato posto in modalità di “Provisioning”.  In questa modalità, il client non riceve le policy provenienti da SCCM 2012.  Durante l’esecuzione di una Task Sequence OSD, è giusto che il client momentaneamente non riceva le policy : in questo modo non possono essere lanciati eventuali task, aggiornamenti o installazioni di software che possano mettere a repentaglio l’esecuzione della Task Sequence.   Però, quando la Task Sequence è terminata, questa chiave dovrebbere essere automaticamente impostata a “False”. E’ proprio qui il baco : capita in alcuni scenari che la chiave rimane a valore “True”, e quindi il client rimane in modalità di Provisioning, senza riuscire a portare a compimento la registrazione in SCCM e il download delle policy
  • chiave “SystemTaskExcludes” : quando la chiave ProvisioningMode è posta a “True”, questa chiave elenca tutti i componenti disabilitati del client (cioè quelli che non funzioneranno).  Tra i vari componenti, l’ultimo della lista è il  “ClientRegistrationStartup”, che ha proprio il compito di eseguire la registrazione in SCCM 2012

Unitamente all’errata impostazione delle chiavi di registro, sui client con problemi si può anche notare la mancanza di due particolari certificati nello store dei certificati, precisamente nella sezione “Certificati (computer locale)\SMS” :

  • il “SMS Encryption Certificate”
  • il “SMS Signing Certificate”

Questi certificati servono a permettere al client la crittazione e la firma digitale delle comunicazioni con il server SCCM.   Se il client non si registra correttamente con SCCM, questi certificati non vengono generati.

In Fig. 6 sono mostrati i suddetti certificati su un client regolare :

certificati-client-no-problem.PNG      Fig. 6 : certificati di un client regolare (clicca per ingrandire)

Infine, nel file di log “ClientIDManagerStartup.log” reperibile sui client problematici nella cartella “C:\Windows\CCM\Logs”, non verrebbero visualizzate le linee evidenziate in giallo in Fig. 7 :

log-di-un-client-no-problem.PNG      Fig. 7 : logs di un client regolare (clicca per ingrandire)

Queste due linee evidenziano il tentativo automatico del client di registrare il proprio GUID in SCCM 2012, e la riuscita della registrazione con un messaggio finale del tipo “Approval Status 1″.   Queste due linee, in un client con problemi, non comparirebbero assolutamente.

Per risolvere il problema a livello di Task Sequence, è necessario inserire nella TS due script che vadano automaticamente a controllare le chiavi di registro problematiche, correggendole se necessario. Gli script vanno eseguiti subito dopo il task di installazione dell’agent CCM.   Inoltre, per dare il tempo al client di effettuare la registrazione in SCCM, è opportuno inserire anche un’azione di Restart del computer, con un tempo di attesa di almeno 60 secondi prima del restart.

provmode.JPG      Fig. 8 : script per la regolazione della chiave “ProvisioningMode” (clicca per ingrandire)

taskexclude.JPG      Fig. 9 : script per la regolazione della chiave “SystemTaskExcludes” (clicca per ingrandire)

L’azione di Restart (visibile nelle Figg. 8 e 9) deve essere inserita subito dopo l’esecuzione dei due script.

In questo modo il client CCM viene correttamente registrato, e le successive azioni della Task Sequence possono essere portate correttamente a compimento.

  • Share/Bookmark

Pubblicato in Gestione dei Sistemi, System Center Configuration Manager 2012 | Nessun commento »

 
Usiamo i cookie per assicurarti la migliore esperienza di navigazione nel nostro sito web.
Ok