Con Windows Server 2008, Microsoft ha introdotto un'utility chiamata BCDEdit, che consente di manipolare l'archivio dei dati di configurazione di avvio di Windows (il file BCD o Boot Configuration Data). Il file BCD viene utilizzato per indicare al sistema operativo come avviarsi e contiene tutti i parametri di configurazione di avvio necessari. Questo strumento ha sostituito la vecchia utility bootcfg.exe che veniva usata per modificare il file boot.ini nelle versioni di Windows antecedenti a Windows Vista. Per utilizzare BCDEdit è necessario essere membri del gruppo di amministratori locali di un sistema. Si tratta di un'utilità avanzata, utile per la risoluzione di problemi che impediscono il corretto avvio di un server.
Nell'utilizzo di BCDEdit bisogna prestare molta attenzione, se si commettono errori con l'utility il sistema potrebbe non essere in grado di avviarsi. Assicurarsi sempre di avere un buon backup del sistema o esportate le impostazioni correnti da BCDEdit in modo da poterle ripristinare, se necessario, successivamente. È possibile esportare il database della configurazione di avvio corrente digitando
BCDEdit /Export <export_path>
dove al posto di <export_path> va indicato il percorso e il nome del file in cui verrà esportato il contenuto dell'archivio di sistema (ad esempio C:\BackupBCD).
Se si vuole ripristinare l'esportazione, il comando è molto simile. È sufficiente digitare
BCDEdit /Import <export_path>.
In tabella sono riportate le opzioni più comuni di BCDEdit.
Opzione | Descrizione |
---|---|
/bootdebug
|
Abilita o disabilita il debug di avvio
|
/bootsequence
|
Imposta la sequenza di avvio singolo per Boot Manager
|
/copy
|
Crea copie delle voci presenti nel datastore.
|
/createstore
|
Crea un nuovo archivio dei dati di configurazione di avvio vuoto.
|
/dbgsettings
|
Imposta i parametri globali del debugger.
|
/debug
|
Abilita o disabilita il debug del kernel per una voce del sistema operativo.
|
/delete
|
Elimina le voci di avvio dal datastore - usare con cautela!
|
/deletevalue
|
Elimina o rimuove un'opzione di ingresso all'avvio - usare con cautela!
|
/displayorder
|
Imposta l'ordine utilizzato dal Boot Manager durante la visualizzazione del menu multiboot
|
/enum
|
Elenca tutte le voci del datastore nella configurazione di boot.
|
/export
|
Esporta il contenuto del BCD; può essere utilizzato come backup per ripristinare il BCD
|
/import
|
Importa il contenuto di un file esportato; può essere usato come opzione di ripristino, se necessario.
|
/set
|
Imposta un valore in un'opzione di avvio
|
/timeout
|
Imposta il valore di timeout per Boot Manager.
|
Il più delle volte si usa bcdedit /set per apportare modifiche al datastore della configurazione di avvio. Prima di apportare qualsiasi modifica, è necessario conoscere l'aspetto attuale del BCD. Per farlo, si può usare l'opzione /enum. Eseguire il comando dal prompt dei comandi
BCDEdit /enum
Come visibile in FIG 2 il comando visualizza le impostazioni correnti di Windows Boot Manager e del Caricatore di avvio di Windows (Windows Boot Loader).
Si può notare che la descrizione del Caricatore di avvio di Windows riporta la dicitura "Windows Server". Supponiamo di voler modificare la descrizione. Per farlo possiamo utilizzare l'opzione /set di BCDEdit, indicando l'ID dell'oggetto su cui vogliamo intervenire e il nome del campo seguito dal nuovo valore. In FIG 2 vediamo che l'identificatore (ID) del Caricatore di avvio di Windows che vogliamo modificare è {current} e il campo su cui vogliamo intervenire è identificato dal nome description, pertanto il comando da eseguire sarà simile a
BCDEdit /set {current} description "Windows Server 2022 Datacenter"
Questo comando funzionerà perfettamente in un prompt dei comandi, ma per eseguirlo in PowerShell, è necessario racchiudere anche l'identificatore tra virgolette come indicato di seguito
BCDEdit /set "{current}" description "Windows Server 2022 Datacenter"
FIG 3 - Impostare un valore in un'opzione di avvio |
BCDEdit /enum
Come visibile in FIG 4, verrà visualizzata la nuova descrizione.
I motivi per i quali possiamo voler cambiare il nome del Windows Boot Loader possono essere vari. Ad esempio nel caso di un sistema ad avvio multiplo che ha lo stesso sistema operativo su due dischi ma ciascuno di essi viene utilizzato per scopi diversi. In questi casi la possibilità di modificare le descrizioni può semplificare la scelta del sistema appropriato dal menu di avvio. BCDEdit può anche essere usato per cambiare l'ordine del menu di avvio e impostare una selezione predefinita che verrà avviata dopo un tempo di attesa specificato.