Cómo establecer el modo de Restore-Only para un punto de migración de estado
En Configuration Manager, configure el punto de migración de estado de implementación del sistema operativo para rechazar nuevas solicitudes para almacenar datos de usuario estableciendo la propiedad insertada SMPQuiesceState.
SMPQuiesceState tiene dos valores posibles.
Valor | Definición |
---|---|
0 | El modo de solo restauración está desactivado. |
1 | El modo de solo restauración está activado. |
Para establecer el modo de solo restauración para un punto de migración de estado
Configure una conexión con el proveedor de SMS. Para obtener más información, consulte Aspectos básicos del proveedor de SMS.
Realice una conexión a la sección de recursos del punto de migración de estado del archivo de control de sitio.
Obtenga las propiedades incrustadas.
Actualice SMPQuiesceState.
Confirme los cambios en el archivo de control de sitio.
Ejemplo
El método de ejemplo siguiente establece el modo de solo restauración en función del valor proporcionado.
Para obtener información sobre cómo llamar al código de ejemplo, vea Llamar a fragmentos de código de 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;
}
}
El método de ejemplo tiene los parámetros siguientes:
Parámetro | Tipo | Descripción |
---|---|---|
connection |
-Administrado: WqlConnectionManager - VBScript: SWbemServices |
Una conexión válida al proveedor de SMS. |
context (VBScript) |
-Vbscript: SWbemContext |
Objeto de contexto válido. Para obtener más información, vea Cómo agregar un calificador de contexto de Configuration Manager mediante WMI. |
server |
-Administrado: String -Vbscript: String |
El Configuration Manager servidor en el que se ejecuta el punto de migración de estado. |
siteCode |
-Administrado: String -Vbscript: String |
Código de sitio de Configuration Manager. |
enableRestoreOnlyMode |
-Administrado: Boolean -Vbscript: Integer |
Establece el modo de solo restauración. - Administrado: true activa solo el modo de restauración; de lo contrario false , .- VBScript: 1 activa el modo de restauración; en caso contrario 0 , . |
Compilar el código
El ejemplo de C# tiene los siguientes requisitos de compilación:
Espacios de nombres
System
System.Collections.Generic
System.Text
Microsoft. ConfigurationManagement.ManagementProvider
Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine
Ensamblado
microsoft.configurationmanagement.managementprovider
adminui.wqlqueryengine
Programación sólida
Para obtener más información sobre el control de errores, consulte Acerca de los errores de Configuration Manager.
Seguridad de .NET Framework
Para obtener más información sobre la protección de aplicaciones Configuration Manager, consulte Configuration Manager administración basada en roles.
Consulta también
Acerca de la configuración del rol de sitio de implementación del sistema operativo Cómo leer y escribir en el archivo de control de sitio Configuration Manager mediante código administrado
Lectura y escritura en el archivo de control de sitio de Configuration Manager mediante WMI