Un mesetto fa dando un'occhiatina all'Event Log di
Windows XP, ho scoperto il seguente errore relativo al servizio
vmauthd:
Event Type: Error
Event Source: vmauthd
Event Category: None
Event ID: 100
Date: 16/12/2005
Time: 20.55.42
User: N/A
Computer: SUPERMICRO
Description:
Cannot find perfmon object in array returned by perfDLL, index=0
Facendo una ricerca con
Google ho scoperto che è relativo al servizio
VMware Authorization Service (C:\Program Files\VMware\VMware Workstation\vmware-authd.exe), eppure aprendo il Performance Monitor ritrovo l'oggetto VMware insieme a tutti i suoi counters.
Che significa quell'errore?
Leggendo le poche soluzioni proposte, ho notato che alcuni consigliano semplicemente di stoppare quel servizio impostandone l'avvio manuale, ma prima di farlo volevo conoscerne la funzione ed individuare eventuali controindicazioni nel fermarlo.
Così mi sono rivolto ad
Alessandro Perilli, esperto di sicurezza ed ambienti di virtualizzazione, il quale mi ha fornito le spiegazioni che riporto qui di seguito:
----------------------------------------------------------------------
Questo errore non ha mai ricevuto una risposta ufficiale da parte di
VMware Inc. ed è sempre stato circoscritto, finora, alla version 4.x di Workstation.
Il servizio
vmauthd è responsabile dell'autorizzazione all'accesso per l'uso delle macchine virtuali. In pratica controlla i permessi del file system dell'host OS sui file che costituiscono una VM, e in base a quelli abilita o meno i controlli di accensione, spegnimento e restart.
In un ambiente monoutente amministratore non è assolutamente necessario e può essere impostato in manual.
Putroppo questo servizio è sempre stato debole nel prodotto (soprattutto nella famiglia
GSX Server) creando non pochi problemi e quello descritto è un ennesimo bug mai verificato.
Il problema è dovuto al fatto che per qualche motivo i performance counters in
PerfOS.DLL sono disabilitati.
Una volta abilitati,
vmauthd sarà in grado di recuperare questi counters, eliminando di fatto l'errore.
Per stabilire se i counters in
PerfOS.DLL sono abilitati o meno, si può ricorrere al programma
Extensible Performance Counter List (exctrlst.exe) presente nella directory
\SUPPORT\TOOLS del CD di Windows XP Professional oppure nel CD del
Resource Kit di Windows 2000.
Nel caso in cui non si abbia a disposizione questi CD, si può sempre scaricare dal seguente link:
Windows 2000 Resource Kit Tool : Extensible Performance Counter List (exctrlst.exe)Dopo aver installato ed eseguito il programma, è sufficiente impostare il
Sort Order a
Counter ID per individuare facilmente
PerfOS all'inizio della lista.
Selezionandolo con un click verrà visualizzato il suo stato in fondo alla finestra di dialogo.
Se la checkbox
Performance Counters Enabled è deselezionata, significa che i counters di
PerfOS sono disabilitati.
Per abilitarli è sufficiente selezionare la checkbox e premere il bottone
Refresh.
A questo punto avviando o riavviando il servizio
VMware Authorization Service e tenendo sott'occhio l'
Application Event Log il messaggio d'errore non dovrebbe più manifestarsi.
----------------------------------------------------------------------
Ho eseguito personalmente i passi appena descritti risolvendo definitivamente questo annoso problema che mi perseguitava da anni.
Un grazie di cuore ad
Alessandro per avermi fornito tutte le informazioni del caso