Guide pratique pour définir le mode Restore-Only pour un point de migration d’état
Dans Configuration Manager, vous configurez le point de migration de l’état de déploiement du système d’exploitation pour rejeter les nouvelles demandes de stockage des données utilisateur en définissant la propriété incorporée SMPQuiesceState.
SMPQuiesceState a deux valeurs possibles.
Valeur | Définition |
---|---|
0 | Le mode restauration uniquement est désactivé. |
1 | Le mode Restauration seule est activé. |
Pour définir le mode de restauration uniquement pour un point de migration d’état
Configurez une connexion au fournisseur SMS. Pour plus d’informations, consultez Notions de base du fournisseur SMS.
Établir une connexion à la section ressources du point de migration d’état du fichier de contrôle de site.
Obtient les propriétés incorporées.
Mettez à jour SMPQuiesceState.
Validez les modifications apportées au fichier de contrôle de site.
Exemple
L’exemple de méthode suivant définit le mode de restauration uniquement en fonction de la valeur fournie.
Pour plus d’informations sur l’appel de l’exemple de code, consultez Appel d’extraits de code Configuration Manager.
Sub SetRestoreOnlyMode(connection, _
context, _
siteCode, _
enableRestoreOnlyMode)
' Load site control file and get SMS State Migration Point section.
connection.ExecMethod "SMS_SiteControlFile.Filetype=1,Sitecode=""" & siteCode & """", "Refresh", , , context
Query = "SELECT * FROM SMS_SCI_SysResUse " & _
"WHERE RoleName = 'SMS State Migration Point' " & _
"AND SiteCode = '" & siteCode & "'"
Set SCIComponentSet = connection.ExecQuery(Query, , , context)
' Only one instance is returned from the query.
For Each SCIComponent In SCIComponentSet
' Display state migration point server name.
wscript.echo "SMS State Migration Point Server: " & SCIComponent.NetworkOSPath
' Loop through the array of embedded property instances.
For Each vProperty In SCIComponent.Props
' Setting: SMPQuiesceState
If vProperty.PropertyName = "SMPQuiesceState" Then
wscript.echo " "
wscript.echo vProperty.PropertyName
wscript.echo "Current value " & vProperty.Value
' Modify the value.
vProperty.Value = enableRestoreOnlyMode
wscript.echo "New value " & enableRestoreOnlyMode
End If
Next
' Update the component in your copy of the site control file. Get the path
' to the updated object, which could be used later to retrieve the instance.
Set SCICompPath = SCIComponent.Put_( , context)
Next
' Commit the change to the actual site control file.
Set InParams = connection.Get("SMS_SiteControlFile").Methods_("CommitSCF").InParameters.SpawnInstance_
InParams.SiteCode = siteCode
connection.ExecMethod "SMS_SiteControlFile", "CommitSCF", InParams, , context
End Sub
public void SetRestoreOnlyMode(
WqlConnectionManager connection,
string server,
string siteCode,
bool enableRestoreOnlyMode)
{
try
{
// Get the site control file.
IResultObject ro = connection.GetInstance("SMS_SCI_SysResUse.FileType=2,ItemName='[\"Display=\\\\" + server + "\\\"]MSWNET:[\"SMS_SITE=" + siteCode + "\"]\\\\" + server + "\\,SMS State Migration Point',ItemType='System Resource Usage',SiteCode='" + siteCode + "'");
// Get the embedded properties.
Dictionary<string, IResultObject> embeddedProperties = ro.EmbeddedProperties;
// Set the restore only mode.
embeddedProperties["SMPQuiesceState"]["Value"].BooleanValue = enableRestoreOnlyMode;
ro.EmbeddedProperties = embeddedProperties;
// Commmit the changes.
ro.Put();
}
catch (SmsException e)
{
Console.WriteLine("Failed to set restore only mode" + e.Message);
throw;
}
}
L’exemple de méthode a les paramètres suivants :
Paramètre | Type | Description |
---|---|---|
connection |
-Géré: WqlConnectionManager - VBScript : SWbemServices |
Connexion valide au fournisseur SMS. |
context (VBScript) |
-Vbscript: SWbemContext |
Objet de contexte valide. Pour plus d’informations, consultez Comment ajouter un qualificateur de contexte Configuration Manager à l’aide de WMI. |
server |
-Géré: String -Vbscript: String |
Serveur Configuration Manager sur lequel le point de migration d’état s’exécute. |
siteCode |
-Géré: String -Vbscript: String |
Code de site Configuration Manager. |
enableRestoreOnlyMode |
-Géré: Boolean -Vbscript: Integer |
Définit le mode de restauration uniquement. - Géré : true active le mode restauration uniquement ; sinon false , .- VBScript : 1 active le mode de restauration ; sinon 0 . |
Compilation du code
L’exemple C# présente les exigences de compilation suivantes :
Espaces de noms
Système
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Assembly
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Programmation robuste
Pour plus d’informations sur la gestion des erreurs, consultez À propos des erreurs Configuration Manager.
Sécurité de .NET Framework
Pour plus d’informations sur la sécurisation des applications Configuration Manager, consultez Configuration Manager’administration basée sur les rôles.
Voir aussi
À propos de la configuration du rôle de site de déploiement de système d’exploitation Guide pratique pour lire et écrire dans le fichier de contrôle de site Configuration Manager à l’aide de code managé
Guide pratique pour lire et écrire dans le fichier de contrôle de site Configuration Manager à l’aide de WMI