Freigeben über


Erweiterte Tipps zur Problembehandlung für die Inhaltsverteilung

Dieser Artikel enthält einige erweiterte Tipps zur Problembehandlung, mit denen Sie Probleme mit der Inhaltsverteilung identifizieren und beheben können.

Ursprüngliche Produktversion: Configuration Manager current branch, Microsoft System Center 2012 Configuration Manager, Microsoft System Center 2012 R2 Configuration Manager

Aktivieren der ausführlichen Protokollierung

  • PkgXferMgr.log

    Für den Paketübertragungs-Manager bietet die ausführliche Protokollierung weitere Informationen im Protokoll zum Inhaltskopierprozess, Dateihashes und Auftragsplanung. Die ausführliche Protokollierung kann durch Festlegen des folgenden Registrierungswerts auf 0 aktiviert werden:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing\SMS_PACKAGE_TRANSFER_MANAGER\LoggingLevel

    Für den Paketübertragungs-Manager bietet die Debugprotokollierung weitere Informationen zum Inhaltskopiervorgang. Die Debugprotokollierung kann durch Festlegen des folgenden Registrierungswerts auf 1 aktiviert werden:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing\SMS_PACKAGE_TRANSFER_MANAGER\DebugLogging

    Hinweis

    Diese Registrierungsänderungen erfordern keinen Neustart des Diensts SMS_Executive .

  • Clientprotokolle (einschließlich Pull-DP- und Verwaltungspunktprotokollen)

    Die ausführliche Protokollierung kann durch Festlegen des folgenden Registrierungswerts auf 0 aktiviert werden:

    HKEY_LOCAL_MACHINE\Software\Microsoft\CCM\Logging\@GLOBAL\LogLevel

    Die Debugprotokollierung kann durch Festlegen des folgenden Registrierungswerts auf REG_SZ mit dem Wert True aktiviert werden:

    HKEY_LOCAL_MACHINE\Software\Microsoft\CCM\Logging\DebugLogging\Enabled

    Die CCM-Protokollgröße kann auf 5 M erhöht werden, indem Sie den folgenden Registrierungswert auf 5242880 (Dezimalwert) festlegen.

    HKEY_LOCAL_MACHINE\Software\Microsoft\CCM\Logging\@GLOBAL\LogMaxSize

    Darüber hinaus können Sie den DWORD-Wert für den folgenden Registrierungswert bearbeiten, um die Anzahl der zu speichernden Verlaufsprotokolldateien zu erhöhen:

    HKEY_LOCAL_MACHINE\Software\Microsoft\CCM\Logging\@GLOBAL\LogMaxHistory

    Hinweis

    Diese Registrierungsänderungen erfordern einen Neustart des Diensts SMS Agent Host .

  • StateSys.log

    Die ausführliche Protokollierung für StateSys.log kann durch Festlegen des folgenden Registrierungswerts auf 1 aktiviert werden:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\COMPONENTS\SMS_STATE_SYSTEM\Verbose logging

    Hinweis

    Diese Änderung des Registrierungsschlüssels erfordert keinen Neustart des Diensts SMS_Executive .

  • (Global – nur Standortserver) SQL-Abfragen

    Um Informationen zu SQL-Abfragen abzurufen, die von ConfigMgr Komponenten ausgeführt werden, kann die SQL-Ablaufverfolgung durch Festlegen des folgenden Registrierungswerts auf 1 aktiviert werden:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing\SqlEnabled

    Dieser Registrierungswert fügt die SQL-Ablaufverfolgungsprotokollierung für alle Standortserverprotokolle hinzu. Dies sollte nur vorübergehend während der Problembehandlung erfolgen und nach dem Abrufen der relevanten Protokolle deaktiviert werden.

    Hinweis

    Diese Registrierungsänderung erfordert keinen Neustart des Diensts SMS_Executive .

  • (Global – nur Standortserver) Aktivieren der Protokollarchivierung

    Es gibt Fälle, in denen sich das Problem nicht bei Bedarf reproduziert, und während auf die Vervielfältigung des Problems gewartet wird, besteht die Gefahr, dass Protokolle übertragen werden. In diesen Situationen kann das Aktivieren der Protokollarchivierung nützlich sein, da sie ihnen ermöglicht, mehr Verlaufsprotokolle zu erhalten. Dies ist nur für Standortserverprotokolle relevant.

    Die Protokollarchivierung kann durch Festlegen der folgenden Registrierungswerte aktiviert werden:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing\ArchiveEnabled = 1

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing\ArchivePath = <ArchiveLocation>

    Nach dem Aktivieren der Protokollarchivierung archivieren ConfigMgr die Rolloverprotokolle in ArchiveLocation <>und behalten 10 Kopien jedes Protokolls bei.

    Um die Anzahl der Kopien zu erhöhen, die für eine bestimmte Komponente verwaltet werden, wenn die Protokollarchivierung aktiviert ist, legen Sie den folgenden Registrierungswert auf 20 fest:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing\COMPONENT_NAME\LogMaxHistory

    Hinweis

    Diese Registrierungsänderungen erfordern einen Neustart des Diensts SMS_Executive .

  • (Pro Protokoll – nur Standortserver) Vergrößern der Protokolldatei

    Um die Protokolldateigröße für ein einzelnes Protokoll auf 50 MB zu erhöhen, legen Sie den komponentenspezifischen Registrierungswert auf 52428800 (dezimal) fest:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing\COMPONENT_NAME\MaxFileSize

    Hinweis

    Diese Registrierungsänderung erfordert einen Neustart des Diensts SMS_Executive .

Erneutes Senden einer komprimierten Kopie eines Pakets an eine Website

Wenn ein Paket zum ersten Mal an einen Standort verteilt wird, sendet DistMgr eine komprimierte Kopie des Pakets an den Standort. Nachdem das Paket in die Inhaltsbibliothek auf der Website extrahiert wurde, wird die lokale Kopie des Inhalts verwendet, um das Paket an DPs zu senden, solange dieselbe Paketversion an die DPs auf der Website verteilt wird.

Es gibt einige Fälle, in denen es erforderlich ist, eine Website zu erzwingen, die komprimierte Kopie eines Pakets erneut an eine angegebene Website zu senden. Dies ist vor allem in folgenden Fällen erforderlich:

  1. Inhalt fehlt in der Inhaltsbibliothek (PkgLib, DataLiboder FileLib) auf einem primären oder sekundären Standortserver selbst.
  2. DistMgr.log beschwert sich ständig darüber, dass der Inhalt nicht von der übergeordneten Website eingetroffen ist (z. B. "Der Inhalt für das Paket CS100026 noch nicht von Website CS1 eingetroffen ist, wird später erneut versuchen")..

In den meisten Fällen wird die Meldung "Der Inhalt für das Paket CS100026 noch nicht vom Standort CS1 eingetroffen ist, wird später wiederholt" während der Übertragung des Paketinhalts vorübergehend protokolliert. Wenn diese Meldung angezeigt wird, überprüfen Sie die Sender/Despooler-Protokolle, um sicherzustellen, dass keine Probleme mit der Standortkommunikation vorliegen. Informationen zum Protokollfluss finden Sie unter Verteilen eines Pakets an dp über mehrere Standorte hinweg .

Wie erkennt DistMgr, ob auf der aktuellen Website eine Kopie des Pakets installiert ist?

DistMgr überprüft, ob eine Zeile PkgStatus vom Typ 1 für das Paket für die betreffende Paketversion enthalten ist. Wenn eine Zeile vom Typ 1 für den Standort mit dem Status = Installiert vorhanden ist, wird die lokale Kopie des Paketinhalts zum Senden an die DPs verwendet. Wenn keine Zeile vom Typ 1 in PkgStatusvorhanden ist, bedeutet dies, dass der Paketinhalt noch nicht auf dem Standortserver installiert ist.

Bewirkt die Neuverteilung des Pakets an dp, das auf dem Standortserver zugeordnet ist, dazu, dass die komprimierte Kopie des Pakets erneut zurückgegeben wird

Nein Die Neuverteilung des Pakets basiert darauf, dass die Website den Paketinhalt bereits im Paketquellverzeichnis hat. Wenn das Paket zu einem bestimmten Zeitpunkt an den Standort gesendet und als Installiert markiert wurde, führt eine Neuverteilungsaktion auf dem DP, die auf dem Standortserver zugeordnet ist, nichts aus, da DistMgr der Meinung ist, dass der Inhalt bereits installiert ist und die folgende Zeile in DistMgr.log protokolliert wird:

Der Verteilungspunkt befindet sich auf dem Standortserver, und das Paket ist ein Inhaltstyppaket. Es gibt nichts zu kopieren.

Was geschieht, wenn der Inhalt in der Inhaltsbibliothek auf der Paketquellwebsite fehlt

Wenn der Inhalt in der Inhaltsbibliothek auf der Paketquellwebsite fehlt, hilft das Zurücksetzen von SourceVersion nicht. Die einzige Möglichkeit, den fehlenden Inhalt erneut aufzufüllen, besteht darin, das Paket zu aktualisieren. Das Aktualisieren des Pakets bewirkt, dass die Paketquellwebsite ein Paket Momentaufnahme aus dem Quellspeicherort des Pakets übernimmt und den Inhalt in die Inhaltsbibliothek schreibt.

Gewusst wie erzwingen, dass der Paketquellstandort die komprimierte Kopie des Pakets an einen bestimmten Standort zurücksenden muss.

Nachdem Sie bestätigt haben, dass der Paketquellstandort über den erforderlichen Inhalt verfügt, können Sie erzwingen, dass der Paketquellstandort die PCK-Paketdatei erneut an einen bestimmten Standort zurückgibt, indem Sie für die Zeile PkgStatus Typ 1 für die betroffene Website auf 0 festlegenSourceVersion. Diese Zeile kann identifiziert werden, indem die folgende SQL-Abfrage in der Datenbank des Paketquellstandorts ausgeführt wird, nachdem packageID und SITECODE des gewünschten Pakets und standorts ersetzt wurden:

SELECT * FROM PkgStatus WHERE Type = 1 AND ID = 'PACKAGEID' AND SiteCode = 'SITECODE'

Nachdem Sie bestätigt haben, dass diese Abfrage eine eindeutige und richtige Zeile zurückgibt, wird das Ausführen der folgenden Abfrage für diese Zeile auf 0 zurückgesetzt SourceVersion :

UPDATE PkgStatus SET SourceVersion = 0 WHERE Type = 1 AND ID = 'PACKAGEID' AND SiteCode = 'SITECODE'

Nach dem Zurücksetzen von SourceVersion auf 0 für die Zeile Typ 1 erzwingt die Erneute Verteilung des Pakets an einen beliebigen DP auf dem betroffenen Standort, dass der Paketquellstandort die komprimierte Kopie des Pakets erneut an die betroffene Website sendet.

Hinweis

Es ist sehr wichtig, die obige Abfrage auf der Website auszuführen, die das Paket besitzt, d. h. auf der Quellwebsite des Pakets.

Relevante Tabellen für die Inhaltsverteilung

  • SMSPackages – Enthält eine Liste aller Pakete.

    Interessante Spalten:

    Spalte Werte
    Aktion 0 – KEINE
    1 – UPDATE
    2 – HINZUFÜGEN
    3 – LÖSCHEN
    4. ÜBERPRÜFEN
    5 – ABBRECHEN
    PackageType 0 – Reguläres Paket
    3. Treiberpaket
    4. Tasksequenz
    5. Software Updates Package
    6– Paket für Geräteeinstellungen
    7. Virtuelles App-Paket
    8: Inhaltspaket (Anwendung)
    257 : Betriebssystemabbild
    258 – Startabbild
    259: Betriebssysteminstallationspaket
    260: VHD-Paket
  • PkgServers – Enthält eine Liste aller Pakete zusammen mit den DPs, auf die sie derzeit ausgerichtet sind.

    Interessante Spalten:

    Spalte Werte
    Aktion 0 – KEINE
    1 – UPDATE
    2 – HINZUFÜGEN
    3 – LÖSCHEN
    4. ÜBERPRÜFEN
    5 – ABBRECHEN
  • PkgStatus– Enthält eine Liste des aktuellen Pakets status für jedes Paket für jeden DP.

    Interessante Spalten:

    Spalte Werte
    Typ 1 – STANDORT (MASTER)
    2 – DP (COPY)

    Für jeden Standort, an den das Paket ausgerichtet ist, werden 1 Zeilen vom Typ 1 erstellt. PkgServer für diese Zeile ist der FQDN des Standortservers.

    Für jeden DP, auf den das Paket abzielt, werden zwei Zeilen erstellt. PkgServer ist der DP NALPATH.
    Status 0 – KEINE
    1 - GESENDET
    2 – EMPFANGEN
    3 – INSTALLIERT
    4 – WIEDERHOLEN
    5 – FEHLER
    6 – ENTFERNT
    7 – PENDING REMOVE (nicht verwendet)
    8 – FEHLER BEIM ENTFERNEN
    9 – VERSUCHEN SIE ERNEUT ENTFERNEN
  • DistributionJobs – Enthält eine Liste von Paketübertragungs-Manager-Aufträgen zusammen mit ihrem aktuellen Status.

    Interessante Spalten:

    Spalte Werte
    Aktion 0 – KEINE
    1 – UPDATE
    2 – HINZUFÜGEN
    3 – LÖSCHEN
    4. ÜBERPRÜFEN
    5 – ABBRECHEN
    State 0 – AUSSTEHEND
    1 – BEREIT
    2 – GESTARTET
    3 – INPROGRESS
    4 – AUSSTEHENDER NEUSTART
    5 - VOLLSTÄNDIG
    6 – FEHLER
    7 - STORNIERT
    8 – SUSPENDED
  • DistributionPoints – Enthält eine Liste aller Verteilungspunkte.

    Interessante Spalten:

    Spalte Werte
    Aktion 0 – KEINE
    1 – UPDATE
    2 – HINZUFÜGEN
    3 – LÖSCHEN
    4. ÜBERPRÜFEN
    5 – ABBRECHEN
  • PullDPResponse– Enthält vorübergehend das Paket status Antwort, die von den Pull-DPs gesendet wurde. DistMgr verarbeitet die Antwort und aktualisiert PkgStatus.

    Interessante Spalten:

    Spalte Werte
    ActionState 1 – ERFOLG
    2 – WARNUNG
    4 – FEHLER
    8 – DOWNLOAD GESTARTET
    16 – DOWNLOAD WIRD AUSGEFÜHRT
    32 – HERUNTERGELADEN
    64 - STORNIERT
    128 - STORNIERUNG BEANTRAGT
  • PkgNotification – Benachrichtigungstabelle, die von SMSDBMON überwacht wird, um DistMgr zur Verarbeitung eines Pakets auszulösen. Die Typspalte definiert den Typ der Paketbenachrichtigung. Zeilen in dieser Tabelle werden entfernt, nachdem SMSDBMON DistMgr ausgelöst hat.

    Interessante Spalten:

    Spalte Werte
    Typ 0 - UNBEKANNT
    1 - PAKET
    2 - PROGRAMM
    4. PACKAGE SERVER (DP)
    8– PAKETZUGRIFFSKONTO
    15 - ALLE
  • Pull DP-Zustandsmeldungen – Liste der vom Pull-DP ausgelösten Statusmeldungs-IDs

    Interessante Spalten:

    Spalte Werte
    Bundesstaat-ID 1 – ERFOLG
    2 – WARNUNG
    4 – FEHLER
    8 – DOWNLOAD GESTARTET
    16 – DOWNLOAD WIRD AUSGEFÜHRT
    32 – HERUNTERGELADEN
    64 - STORNIERT

    Beispiel für einen Statusmeldungsbericht:

        <Report>
         <ReportHeader>
            <Identification>
               <Machine>
                  <ClientInstalled>0</ClientInstalled>
                  <ClientType>1</ClientType>
                  <Unknown>0</Unknown>
                  <ClientID IDType="0" IDFlag="1">925b0ab0-247b-466b-be0f-93d7cb032c87</ClientID>
                  <ClientVersion>5.00.0000.0000</ClientVersion>
                  <NetBIOSName>P01PDP1.CONTOSO.COM</NetBIOSName>
                  <CodePage>437</CodePage>
                  <SystemDefaultLCID>1033</SystemDefaultLCID>
               </Machine>
            </Identification>
            <ReportDetails>
               <ReportContent>StateMessage</ReportContent>
               <ReportType>Full</ReportType>
               <Date>20190107200618.000000+000</Date>
               <Version>1.0</Version>
               <Format>1.1</Format>
            </ReportDetails>
         </ReportHeader>
         <ReportBody>
            <StateMessage MessageTime="20190107200618.000000+000" SerialNumber="3">
               <Topic ID="P010000F" Type="902" IDType="0"/>
               <State ID="1" Criticality="0"/>
               <UserParameters Flags="0" Count="4">
                  <Param>P010000F</Param>
                  <Param>["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\</Param>
                  <Param>{04AD1BB3-5E54-457A-9873-DFB2E8035090}</Param>
                  <Param/>
               </UserParameters>
            </StateMessage>
         </ReportBody>
      </Report>
    

Nützliche SQL-Abfragen

Im Folgenden finden Sie einige SQL-Abfragen, die bei der Behandlung verschiedener Probleme im Zusammenhang mit der Inhaltsverteilung hilfreich sein können.

Paket-/DP-status abfragen

  • Alle fehlgeschlagenen Pakete/DPs

    SELECT distinct DPSD.DPName, DPSD.PackageID, SP.Name, DPSD.MessageState, DPSD.LastStatusTime, DPSD.SiteCode
    FROM vSMS_DPStatusDetails DPSD
    JOIN SMSPackages_All SP ON DPSD.PackageID = SP.PkgID
    WHERE MessageState = 4
    
  • Alle in Bearbeitung ausgeführten Pakete/DPs

    SELECT distinct DPSD.DPName, DPSD.PackageID, SP.Name, DPSD.MessageState, DPSD.LastStatusTime, DPSD.SiteCode
    FROM vSMS_DPStatusDetails DPSD
    JOIN SMSPackages_All SP ON DPSD.PackageID = SP.PkgID
    WHERE MessageState = 2
    
  • Alle Erfolgspakete /DPs

    SELECT distinct DPSD.DPName, DPSD.PackageID, SP.Name, DPSD.MessageState, DPSD.LastStatusTime, DPSD.SiteCode
    FROM vSMS_DPStatusDetails DPSD
    JOIN SMSPackages_All SP ON DPSD.PackageID = SP.PkgID
    WHERE MessageState = 1
    
  • Alle Pakete/DPs in Bearbeitung seit mehr als drei Tagen

    SELECT distinct DPSD.DPName, DPSD.PackageID, SP.Name, DPSD.MessageState, DPSD.LastStatusTime, DPSD.SiteCode
    FROM vSMS_DPStatusDetails DPSD
    JOIN SMSPackages_All SP ON DPSD.PackageID = SP.PkgID
    WHERE DPSD.LastStatusTime < DATEAdd(dd,-3,GETDate())  
    AND MessageState = 2
    
  • Alle Pakete/DPs im Zustand "Fehler" seit mehr als drei Tagen

    SELECT distinct DPSD.DPName, DPSD.PackageID, SP.Name, DPSD.MessageState, DPSD.LastStatusTime, DPSD.SiteCode
    FROM vSMS_DPStatusDetails DPSD
    JOIN SMSPackages_All SP ON DPSD.PackageID = SP.PkgID
    WHERE DPSD.LastStatusTime < DATEAdd(dd,-3,GETDate())
    AND MessageState = 4
    
  • Anzahl aller Zustände

    SELECT MessageState,
    COUNT(MessageState) AS [Count]
    FROM vSMS_DPStatusDetails
    WHERE PackageID <> ''
    GROUP BY MessageState
    
  • Anzahl der Paketzustände pro DP

    SELECT DPName,
    CASE
        WHEN MessageState = 1 THEN 'Success'
        WHEN MessageState = 2 THEN 'InProgress'
        WHEN MessageState = 4 THEN 'Failed'
    END AS [State],  
    COUNT(MessageState) AS [Count]
    FROM vSMS_DPStatusDetails
    WHERE PackageID <> ''
    AND DPName = 'PS1DP1.CONTOSO.COM'
    GROUP BY DPName, MessageState
    ORDER BY DPName
    
  • Status aller DPs für ein bestimmtes Paket

    SELECT DPName,
    CASE
        WHEN MessageState = 1 THEN 'Success'
        WHEN MessageState = 2 THEN 'InProgress'
        WHEN MessageState = 4 THEN 'Failed'
    END AS [State]
    FROM vSMS_DPStatusDetails
    WHERE PackageID = '<PackageID>'
    GROUP BY DPName, MessageState
    ORDER BY State
    
  • Anzahl der DP-Zustände pro Paket

    SELECT  
    CASE
        WHEN MessageState = 1 THEN 'Success'
        WHEN MessageState = 2 THEN 'InProgress'
        WHEN MessageState = 4 THEN 'Failed'
    END AS [State],
    COUNT(MessageState) AS [Count]
    FROM vSMS_DPStatusDetails
    WHERE PackageID = '<PackageID>'
    GROUP BY MessageState
    
  • Paket/DP aktueller Status

    SELECT distinct DPSD.DPName, DPSD.PackageID, SP.Name, DPSD.LastStatusTime, DPSD.SiteCode, DPSD.MessageState,
    CASE
        WHEN MessageState = 1 THEN 'Success'
        WHEN MessageState = 2 THEN 'InProgress'
        WHEN MessageState = 4 THEN 'Failed'
    END AS [State]
    FROM vSMS_DPStatusDetails DPSD
    JOIN SMSPackages_All SP ON DPSD.PackageID = SP.PkgID
    WHERE DPName = 'PS1DP1.CONTOSO.COM'
    AND DPSD.PackageID = '<PackageID>'
    

Suchen verwaister DP-Verweise

Die folgende Abfrage kann verwendet werden, um zu ermitteln, ob in der Datenbank für einen DP, der sich nicht mehr in der Umgebung befindet, verwaiste Zeilen vorhanden sind. Es könnten verwaiste Zeilen vorhanden sein, wenn der DP nicht ordnungsgemäß entfernt wurde.

DECLARE @DPName NVARCHAR(100)
SET @DPName = 'PS1DP.CONTOSO.COM'
SELECT * FROM ContentDPMap WHERE ServerName = @DPName
SELECT * FROM DistributionPoints WHERE ServerName = @DPName
SELECT * FROM DPInfo WHERE ServerName = @DPName
SELECT * FROM PkgServers_G WHERE NALPath like '%' + @DPName + '%'
SELECT * FROM PkgServers_L WHERE NALPath like '%' + @DPName + '%'
SELECT * FROM PkgStatus_G WHERE PkgServer like '%' + @DPName + '%'
SELECT * FROM PkgStatus_L WHERE PkgServer like '%' + @DPName + '%'
SELECT * FROM SysResList WHERE RoleName = 'SMS Distribution Point' AND ServerName = @DPName
SELECT * FROM SC_SysResUse WHERE NALPath like '%' + @DPName + '%' AND RoleTypeID = 3

Ähnliche Abfrage für einen bestimmten DP an einem bestimmten Standort:

DECLARE @DPName NVARCHAR(100)
DECLARE @DPSiteCode NVARCHAR(3)
SET @DPName = 'DPNAME.CONTOSO.COM'
SET @DPSiteCode = 'PS1'

SELECT * FROM ContentDPMap WHERE ServerName = @DPName AND SiteCode = @DPSiteCode
SELECT * FROM DistributionPoints WHERE ServerName = @DPName AND SMSSiteCode = @DPSiteCode
SELECT * FROM DPInfo WHERE ServerName = @DPName AND SiteCode = @DPSiteCode
SELECT * FROM PkgServers_L WHERE NALPath like '%' + @DPName + '%' AND SiteCode = @DPSiteCode
SELECT * FROM PkgServers_G WHERE NALPath like '%' + @DPName + '%' AND SiteCode = @DPSiteCode
SELECT * FROM PkgStatus_L WHERE PkgServer like '%' + @DPName + '%' AND SiteCode = @DPSiteCode
SELECT * FROM PkgStatus_G WHERE PkgServer like '%' + @DPName + '%' AND SiteCode = @DPSiteCode
SELECT * FROM SysResList WHERE RoleName = 'SMS Distribution Point' AND ServerName = @DPName AND SiteCode = @DPSiteCode
SELECT * FROM SC_SysResUse WHERE NALPath like '%' + @DPName + '%SMS_SITE=' + @DPSiteCode +  '%' AND RoleTypeID = 3

SCF-Eigenschaften (Site Control File)

  • SCF-Eigenschaften für DistMgr für den aktuellen Standort

    SELECT SD.SiteCode, SC.ComponentName, SCP.Name, SCP.Value1, SCP.Value2, SCP.Value3
    FROM SC_Component SC
    JOIN SC_SiteDefinition SD ON SD.SiteNumber = SC.SiteNumber
    JOIN SC_Component_Property SCP ON SCP.ComponentID = SC.ID
    WHERE SD.SiteCode = dbo.fnGetSiteCode() AND SC.ComponentName = 'SMS_DISTRIBUTION_MANAGER'
    
  • SCF-Eigenschaften für einen DP

    SELECT SRU.RoleName, SRU.ServerName, SRUP.* FROM vSMS_SC_SysResUse SRU
    JOIN vSMS_SC_SysResUse_Properties SRUP ON SRU.ID = SRUP.ID
    WHERE SRU.RoleName = 'SMS Distribution Point'
    AND SRU.ServerName = 'PS1DP1.CONTOSO.COM'
    

Pakete, die das angegebene Softwareupdate enthalten

Listet alle Pakete auf, die die angegebene eindeutige Update-ID enthalten.

SELECT distinct UI.ArticleID, CI.CI_UniqueID, CP.PkgID, P.Name FROM v_UpdateInfo UI
JOIN v_ConfigurationItems CI ON UI.CI_ID = CI.CI_ID
JOIN v_CIContents_All CIC ON CI.CI_ID = CIC.CI_ID
JOIN CI_ContentPackages CP ON CP.Content_ID = CIC.Content_ID
JOIN v_Package P ON CP.PkgID = P.PackageID
WHERE CI.CI_UniqueID = '<UniqueID>'