SCCM Content Library

In der letzten Zeit hat sich das Team rund um den Matrix42 Enterprise Manager intensiv mit der SCCM Content Library beschäftigt. Dies wollte ich zum Anlass nehmen, die Funktionalität der SCCM Content Library hier einmal näher zu erläutern.

Das Ziel der Content Library ist es, den Speicherplatz des Distribution Point möglichst effizient zu nutzen. Aus diesem Grund speichert und übertragt SCCM Dateien nur ein einziges mal zu einem Distribution Point. Soll ein Package/Application (ich beschränke mich hier mal der Einfachheit-halber auf den Begriff Package) verteilt werden, werden als erstes alle Daten des (Ziel-) Distribution Point analysiert. Existiert die Datei schon in einem anderen Verzeichnis oder einer vorhergehenden Revision des Packages, wird eine Referenz zu der Datei geschrieben, anstatt die Datei selber zu kopieren. Die Content Library wird aus diesem Grund auch häufig als „Single Instance Store“ beschrieben.

Die ContentLibrary wird bei der Einrichtung des Distribution Point auf der größten der verfügbaren Festplatten als Ordner „SCCMContentLib“ direkt auf der root angelegt. Der Ordner wird mit dem Namen SCCMContentLib$ für „Users“ mit Lesezugriff freigegeben. Zusätzlich wird der Ordner über den IIS mit dem Namen „SMS_DP_SMSPKG$“ freigegeben. Auf dieser Webfreigabe ist nur NTLM Authentication aktiviert, so dass hier die gleichen Berechtigungen wie auf NTFS-Ebene angewendet werden. Innerhalb der Content Library existieren 3 Unterordner:

  • DataLib
  • FileLib
  • PkgLib

Package Library

Die Package Library ist der Startpunkt um Pakete in der Content Library zu finden. Innerhalb dieses Ordners ist für jedes Paket eine INI Datei angelegt, die als Name die Paket-ID verwendet. Diese INI Datei ist wie folgt aufgebaut ist:

[Packages]
Content_a9c198e5-2f13-4732-a604-805118f5eb67.1=
[Info]
Flags=16777216

Unterhalb der Sektion „Packages“ wird eine oder mehrere Content-IDs und die Version angegeben. Die Content-ID wird nun genutzt um die Teile des Paketes zu finden.

Data Library

Nun wird in den Ordner „DataLib“ gewechselt. Innerhalb dieses Ordners sollte nun ein weitere Ordner zu finden sein, der als Name die oben genannte Content-ID trägt, also in diesem Beispiel „Content_a9c198e5-2f13-4732-a604-805118f5eb67.1″.

Capture01

Man kann nun schon erkennen, dass es sich wohl um ein AppDeploymentToolkit basierendes Paket handeln muss. Allerdings findet man nicht die wirklichen Dateien wieder, sondern ebenfalls wieder nur INI Dateien. Diese INI Dateien sind so benannt und in Ordnern strukturiert, wie auch das fertige Paket aussehen soll.

[File]
Attributes=00000020
Size=1958400
TimeModified=130912664373626465
Hash=BC9F786D8FFA15020921383BFA6C875D55D7377920A157DA498D5D3EFD144983

Die INI Dateien enthalten nun detaillierte Informationen über die eigentliche Zieldatei.

File Library

Nun geht es darum, die Original-Datei in dem Ordner „FileLib“ zu finden. Innerhalb der File Library sind erstmal nur Ordner mit 4 Buchstaben/Zahlen zu finden. Diese repräsentieren die ersten 4 Stellen der Hash-Summe, die in der INI Datei der DataLib zu finden ist. In Falle der oben gezeigten Beispieldatei muss nun der Ordner „BC9F“ gesucht werden. (Ggf. kann es auch sein, dass sich die Content Library über mehrere Festplatten erstreckt, in diesem Fall müssen alle FileLib-Ordner durchsucht werden).

Innerhalb des Ordners sind (je Datei aus der DataLib die mit den gleichen 4 Hash-Zeichen beginnt) ein Set von 3 weiteren Dateien zu finden, die nach dem vollständigen Hash-wert benannt sind. Wiederum eine INI-Datei, eine Daten ohne Endung und eine Datei mit der Endung „SIG“. Bei der Datei ohne Endung handelt es sich um die Originaldatei. Die INI Datei ist „Rückwarts-Referenz“ auf die Content-ID(s) und stellt sicher, dass dieses Datei-Set erst gelöscht wird, wenn es von keinem Paket mehr benötigt wird.

Content Library Explorer

Um die Inhalte der Content Library zu untersuchen, kann der Content Library Explorer genutzt werden, der Teil des Configuration Manager Toolkit ist.

Capture02Folgende Aufgaben können mit dem Content Library Explorer durchgeführt werden:

  • Durchsuchen der ContentLibrary
  • Inhalte aus der Content Library kopieren
  • Neu-Verteilen von Paketen zum verbundenen DP und zu Remote-DPs

Die Benutzung des Tools ist hier sehr gut beschrieben.

Advertisements

3 Gedanken zu „SCCM Content Library

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s