winfried-hh
Goto Top

Win7-Bibliotheken per GPO definieren

Hallo Experten!

Unsere Schule stellt auf Windows 7 um, ich beschäftige mich gerade mit der zentralen Konfiguration der Benutzerkonten.

Die "Eigenen Dateien" wurden ja unter Windows Vista durch die Bibliotheken abgelöst. Diese kann man offenbar nur mit einem Workaround per GPO administrieren. Ich habe jetzt mal versucht, so eine Datei "allgemeingültig" anzupassen, damit ich sie wie in dem Artikel beschrieben mit den "GPO-Preferences" verteilen kann:

<?xml version="1.0" encoding="UTF-8"?> 
<libraryDescription xmlns="http://schemas.microsoft.com/windows/2009/library"> 
  <ownerSID>S-1-5-21-1482476501-152049171-725345543-3111</ownerSID>
  <version>14</version>
  <isLibraryPinned>true</isLibraryPinned>
  <templateInfo>
    <folderType>{5C4F28B5-F869-4E84-8E60-F11DB97C5CC7}</folderType>
  </templateInfo>
  <propertyStore>
    <property name="HasModifiedLocations" type="boolean"><![CDATA[true]]></property> 
  </propertyStore>
  <searchConnectorDescriptionList>
    <searchConnectorDescription>
      <isDefaultSaveLocation>true</isDefaultSaveLocation>
      <isSupported>true</isSupported>
      <simpleLocation>
        <url>\\schulserver\Schuelerdaten\%username%\documents</url>
      </simpleLocation>
    </searchConnectorDescription>
  </searchConnectorDescriptionList>
</libraryDescription>


Leider funktioniert das nicht, die Bibliothek ist angeblich leer. Ersetze ich aber die Zeile 17

<url>\\schulserver\Schuelerdaten\%username%\documents</url>

durch

<url>\\schulserver\Schuelerdaten\MaxMustermann\documents</url>

dann klappt es problemlos. Aber wenn ich die Datei so per GPO-Preferences verteile, dann würde ja auch der Schüler HansWurst die Daten von MaxMustermann in seiner Bibliothek haben. Bzw. er würde gar nichts haben, weil er auf die Daten von MaxMustermann nicht zugreifen darf.

Wie komme ich weiter? Wie erstelle ich eine allgemeingültige documents.library-ms, die ich dann verteilen kann?


Gruß von der Elbe!
Winfried

Content-ID: 230270

Url: https://administrator.de/forum/win7-bibliotheken-per-gpo-definieren-230270.html

Ausgedruckt am: 25.12.2024 um 03:12 Uhr

Sheogorath
Sheogorath 18.02.2014 um 14:27:05 Uhr
Goto Top
Moin,

an sich wurde da nichts abgelöst. Die alten Punkte existieren immer noch und wenn du Documents umleitest, wird die Bibliothek automatisch mit umgeleitet.

Gruß
Chris
colinardo
Lösung colinardo 18.02.2014 aktualisiert um 14:47:37 Uhr
Goto Top
Hallo Winfried,
zum Verwalten der Bibliotheken gibt es auch ein Commandline-Tool:
Bibliothek (per GPO) auf einen variablen Userordner einrichten?

Grüße Uwe
Winfried-HH
Winfried-HH 18.02.2014 um 14:54:54 Uhr
Goto Top
Zitat von @colinardo:

zum Verwalten der Bibliotheken gibt es auch ein Commandline-Tool:
Bibliothek (per GPO) auf einen variablen Userordner einrichten?

Das wäre für den Notfall schon mal ein vernünftiger Workaround. Aber wirklich nur, wenn es keine bessere Lösung gibt, denn eigentlich wollte ich nicht mit Start- bzw. Anmeldescrips arbeiten ...


Zitat von @Sheogorath:

Die alten Punkte existieren immer noch und wenn du Documents umleitest, wird die Bibliothek automatisch mit umgeleitet.

Das heißt, diese URL-Angabe <url>knownfolder:{FDD39AD0-238F-46AF-ADB4-6C85480369C7}</url> steht nicht für den Ordner c:\Users\MaxMustermann\Documents, sondern für den EigeneDokumente-Ordner von Max Mustermann, wo immer der auch liegt?
Sheogorath
Sheogorath 18.02.2014 um 15:10:18 Uhr
Goto Top
Moin,

Ja genau dafür steht das. Wo genau der Hinzeigt kannst du dann wiederum in der Registry auslesen, falls du es wirklich wissen willst, umlegen solltest du es aber per GPO, weil das einfach sauberer ist.

Gruß
Chris
Winfried-HH
Winfried-HH 18.02.2014 aktualisiert um 15:36:51 Uhr
Goto Top
Zitat von @Sheogorath:

Ja genau dafür steht das.

Nein, leider nicht! Ich habe es gerade ausprobiert und habe die Library-Datei unter einem anderen Benutzernamen geöffnet. Leider zeigt sie nach wie vor auf meine (!) Dokumente. Also geht das so nicht, ich möchte ja eine allgemeingültige Bibliothekendefinition haben, die, wenn Max Mustermann sie anklickt, auf die Eigenen Dokumente von Max Mustermann und auf den (ebenfalls auf dem Server liegenden) allgemeinen Ordner, und wenn Hans Wurst sie anklickt, auf die Eigenen Dokumente von Hans Wurst und auf den allgemeinen Ordner verweist.

Dann werde ich wohl doch ein Anmeldescript mit slutil (Tipp von Colinardo) erstellen müssen, welches dann den Pfad
\\schulserver\Schuelerdaten\%username%\documents während der Anmeldung in die Bibliothek schreibt und
gleichzeitig den Pfad C:\Users\Public\Documents aus der Bibliothek löscht face-sad
Sheogorath
Sheogorath 18.02.2014 aktualisiert um 16:13:06 Uhr
Goto Top
Moin,

Zitat von @Winfried-HH:

> Zitat von @Sheogorath:
>
> Ja genau dafür steht das.

Nein, leider nicht! Ich habe es gerade ausprobiert und habe die Library-Datei unter einem anderen Benutzernamen geöffnet.
Leider zeigt sie nach wie vor auf meine (!) Dokumente. Also geht das so nicht, ich möchte ja eine allgemeingültige
Bibliothekendefinition haben, die, wenn Max Mustermann sie anklickt, auf die Eigenen Dokumente von Max Mustermann und auf den
(ebenfalls auf dem Server liegenden) allgemeinen Ordner, und wenn Hans Wurst sie anklickt, auf die Eigenen Dokumente von Hans
Wurst und auf den allgemeinen Ordner verweist.

Also ich weiß nicht wie du den Ordner umgelegt hast, aber bei mir funktioniert das perfekt seit über 2 Jahren.

Ich habe es wie folgt gemacht:
1. GPO für Ordnerumleitung erstellt
2. auf User(gruppe) verlinkt
fertig.

die Original Bibliotheken funktionieren weiterhin sauber. ABER: Man sollte sich ernsthaft überlegen, was man in die Bibliotheken aufnimmt, gerade Serverseitig, da der gesamte Inhalt der Bibliothek indexiert wird. (Sollte man mal ein Abteilungslaufwerk o.Ä. als Bibliothek anlegen wollen ist also Vorsicht geboten)

Gruß
Chris
Winfried-HH
Winfried-HH 18.02.2014 um 16:49:12 Uhr
Goto Top
Zitat von @Sheogorath:

die Original Bibliotheken funktionieren weiterhin sauber.

Unverändert ja! Aber ich will die Bibliothekendefinition ja anpassen. Ich möchte den Public-Speicherort da raus haben und dafür einen für uns relevanten Speicherort im Netzwerk mit in der Bibliothek drin haben. Und da ich das nicht bei jedem Schüler einzeln machen will, wollte ich (wie in http://www.faq-o-matic.net/2011/11/16/windows-bibliotheken-per-gpo-verw ... beschrieben) bei einem beliebigen Benutzer die Bibliothek anpassen und diese angepasste Definitionsdatei dann per GPO-Preferences verteilen. Und das geht offenbar nicht.
colinardo
Lösung colinardo 18.02.2014 aktualisiert um 17:09:53 Uhr
Goto Top
Zitat von @Winfried-HH:
Bibliothek anpassen und diese angepasste Definitionsdatei dann per GPO-Preferences verteilen. Und das geht offenbar nicht.
was ja auch auf der anderen Seite durch diesen Eintrag in der Datei verständlich ist:
 <ownerSID>S-1-5-21-1482476501-152049171-725345543-3111</ownerSID>
zusätzlich werden deine Umgebungsvariablen eben in der Datei nicht aufgelöst...das musst du mit einem Script machen und da wären wird dann wieder bei der Scriptlösung.
Winfried-HH
Winfried-HH 18.02.2014 aktualisiert um 17:08:18 Uhr
Goto Top
Zitat von @colinardo:

was ja auch auf der anderen Seite durch diesen Eintrag in der Datei verständlich ist:
<ownerSID>S-1-5-21-1482476501-152049171-725345543-3111</ownerSID>

Dann frage ich mich aber ernsthaft, was der Tipp in der FAQ-O-MATIC soll. Das ist ja keine WebSite von irgendwelchen Hobby-Admins, sondern wird von einem MVP betrieben. Ich gehe mal davon aus, dass der nicht jeden Hans Wurst auf seiner Seite schreiben lässt ...


zusätzlich werden deine Umgebungsvariablen eben in der Datei nicht aufgelöst...das musst du mit einem Script machen und da wären wird dann wieder bei der Scriptlösung.

Und dann kann ich auch komplett scripten. Das SLUTIL, auf das Du verwiesen hast, ist ja im Prinzip leicht zu handhaben. Ich habe bloß in der Vergangenheit immer mal wieder Probleme verschiedener Art mit Anmeldescripts gehabt, daher wollte ich es nach Möglichkeit vermeiden. Aber es scheint halt nicht anders zu gehen face-sad
colinardo
colinardo 18.02.2014 aktualisiert um 17:13:08 Uhr
Goto Top
Klar geht die Anleitung, aber da ist nicht von der Anpassung deines Pfades durch eine Umgebungsvariable die Rede...sondern um einen Pfad der für alle gleich ist.
Ich habe das Kommentar im verlinkten Script-Beitrag ja nicht ohne Hintergedanken geschrieben, wenn es auch einfacher ginge...
Aber auf die Bibliotheken würde ich persönlich nicht mehr setzen, die sind vermutlich bei MS schon wieder auf dem Abstellgleis geparkt ...
Winfried-HH
Winfried-HH 18.02.2014 aktualisiert um 17:21:32 Uhr
Goto Top
Zitat von @colinardo:

Klar geht die Anleitung, aber da ist nicht von der Anpassung deines Pfades durch eine Umgebungsvariable die Rede...sondern um
einen Pfad der für alle gleich ist.

Ein Pfad, der für alle gleich ist? Welchen Sinn macht das? Max Mustermann hat seine eigenen Dateien doch nicht am gleichen Ort wie Hans Wurst. Selbst lokal auf dem Rechner hat der eine seine Daten unter c:\users\MaxMustermann\Documents und der andere unter c:\users\HansWurst\Documents. Und das Problem mit der Owner-SID, auf das Du vorhin hingewiesen hast, bleibt ja auch bestehen.


Aber auf die Bibliotheken würde ich persönlich nicht mehr setzen, die sind vermutlich bei MS schon wieder auf dem Abstellgleis geparkt

Kann ich die denn wenigstens per GPO sicher deaktivieren? Und kommen damit alle Office-Programme zurecht? Ich meinte mal gelesen zu haben, daß Word 2007 (?) als Standard-Ort für Dokumente nicht "Eigene Dokumente", sondern die Bibliothek "Dokumente" öffnet ...
colinardo
colinardo 18.02.2014 um 17:19:08 Uhr
Goto Top
Zitat von @Winfried-HH:
Ein Pfad, der für alle gleich ist? Welchen Sinn macht das?
z.B. eine öffentliche Bibliothek ....
Winfried-HH
Winfried-HH 18.02.2014 um 17:23:47 Uhr
Goto Top
Zitat von @colinardo:

> Zitat von @Winfried-HH:
> Ein Pfad, der für alle gleich ist? Welchen Sinn macht das?
z.B. eine öffentliche Bibliothek ....

Dann führt der Text bei FAQ-O-MATIC aber in die Irre, dort ist als Beispiel für eine mögliche Anpassung gerade das Entfernen der öffentlichen Dokumente genannt face-sad

Übrigens habe ich meinen Beitrag von 17:17 noch mal ergänzt ... wäre schön, wenn du auf die Ergänzung auch noch antwortest ;)
colinardo
colinardo 18.02.2014 aktualisiert um 17:31:23 Uhr
Goto Top
Übrigens habe ich meinen Beitrag von 17:17 noch mal ergänzt ... wäre schön, wenn du auf die Ergänzung auch noch antwortest ;)
sorry hab ich nicht mehr gesehen ... zu viel Text schon heute
Zitat von @Winfried-HH:
Kann ich die denn wenigstens per GPO sicher deaktivieren? Und kommen damit alle Office-Programme zurecht?
Ich meinte mal gelesen zu haben, daß Word 2007 (?) als Standard-Ort für Dokumente nicht "Eigene Dokumente", sondern die Bibliothek
"Dokumente" öffnet ...
hatte damit noch keine Probleme, und wenn der Pfad ließe sich ja auch via GPO festlegen ...
Winfried-HH
Winfried-HH 18.02.2014 aktualisiert um 20:18:53 Uhr
Goto Top
Zitat von @colinardo:

hatte damit noch keine Probleme, und wenn der Pfad ließe sich ja auch via GPO festlegen ...

Ich habe heute gerade irgendwo anders gelesen, dass man bei den neueren Office-Versionen nur noch die VolumeLicense-Varianten per GPO administrieren kann. Ob das so stimmt, weiss ich noch nicht.

Aber was anderes: Ich habe gerade Deinen Tipp vom 10.08.2013 gefunden, in dem Du auch ein paar Beispiele gibst. Leider bin ich nicht der große Crack in Batch-Programmierung, aber vermutlich ist das für Dich ganz leicht. Die Antwort mußt Du auch nicht hier geben, sondern kannst gerne Deinen Tipp von damals ergänzen, dann ist es zentral gespeichert, falls noch mal jemand danach sucht.

Also, wie kann ich erst mal alle vorhandenen Einträge in der Documents-Library löschen? Ich kann mit ListFolders die Einträge auslesen, aber ich habe keine Ahnung, wie ich die ausgelesenen Einträge dann dem Befehl RemoveFolder übergebe.
colinardo
Lösung colinardo 18.02.2014 aktualisiert um 21:27:29 Uhr
Goto Top
@echo off & setlocal
set "FOLDER=\\servername\freigabename\%username%\Dokumente"  
for /f "skip=1 tokens=* delims=" %%f IN ('slutil.exe ListFolders Documents') DO @(  
    slutil.exe RemoveFolder Documents "%%f"  
)
slutil.exe AddFolder Documents "%FOLDER%"  
Winfried-HH
Winfried-HH 18.02.2014 aktualisiert um 21:17:10 Uhr
Goto Top
Super, das probiere ich gleich mal aus. Ich habe aber schon das nächste Problem: Da ich die slutil.exe natürlich nicht auf meinen Clients liegen habe, habe ich sie in die NETLOGON-Freigabe auf dem Server gepackt. Ich habe gerade mal die Zeile

\\schulserver\netlogon\slutil AddFolder Documents \\schulserver\tauschordner

getestet, und die funktioniert grundsätzlich auch. Aber:

f6d8edfecc33881e388f6e270f3609a8

Das macht natürlich eine Automatisierung zunichte face-sad
Wieso ist die Datei angeblich ausserhalb meines lokalen Netzwerks? Laut Subnetzmaske liegt es sehr wohl dort ...
colinardo
Lösung colinardo 18.02.2014 aktualisiert um 21:27:26 Uhr
Goto Top
kenne eure Config jetzt nicht, aber dann musst du den Pfad in den Sicherheitszonen des IE in der Intranet-Zone hinzufügen.
Winfried-HH
Winfried-HH 18.02.2014 um 21:27:22 Uhr
Goto Top
Zitat von @colinardo:

kenne eure Config jetzt nicht, aber dann musst du den Pfad in den Sicherheitszonen des IE in der Intranet-Zone hinzufügen.

Dieser InternetExploder hängt sich auch überall rein face-sad

Aber ok, so geht es. Aber das kann ich natürlich auch nicht bei jedem Client einzeln machen. Hast Du eine Ahnung, wie man das per Gruppenrichtlinie macht?
colinardo
Lösung colinardo 18.02.2014 aktualisiert um 21:40:02 Uhr
Goto Top
Zitat von @Winfried-HH:
Aber ok, so geht es. Aber das kann ich natürlich auch nicht bei jedem Client einzeln machen. Hast Du eine Ahnung, wie man das
per Gruppenrichtlinie macht?
easy peasy : http://blogs.msdn.com/b/askie/archive/2012/06/05/how-to-configure-inter ...
Schönen Abend noch...
Winfried-HH
Winfried-HH 18.02.2014 um 21:55:38 Uhr
Goto Top

Danke, jetzt habe ich es hinbekommen. Auch die Batch-Zeile zum "Entleeren" einer Bibliothek funktioniert prima!

Also: Ganz großes Dankeschön!!!
Winfried-HH
Winfried-HH 19.02.2014 aktualisiert um 11:27:37 Uhr
Goto Top
So, nun habe ich es unter realistischen Bedingungen getestet. Mein Startscript

SetLibraries.bat
@echo off & setlocal

set "DOCFOLDER1=\\schulserver\Schuelerdaten\%username%\Documents"  
set "DOCFOLDER2=\\schulserver\SchuelerdatenZentral"  
set "PICFOLDER=\\schulserver\Schuelerdaten\%username%\Pictures"  

for /f "skip=1 tokens=* delims=" %%f IN ('\\schulserver\netlogon\slutil.exe ListFolders Documents') DO @(  
    \\schulserver\netlogon\slutil.exe RemoveFolder Documents "%%f"  
)

for /f "skip=1 tokens=* delims=" %%f IN ('\\schulserver\netlogon\slutil.exe ListFolders Pictures') DO @(  
    \\schulserver\netlogon\slutil.exe RemoveFolder Pictures "%%f"  
)

\\schulserver\netlogon\slutil.exe AddFolder Documents "%DOCFOLDER1%"  
\\schulserver\netlogon\slutil.exe AddFolder Documents "%DOCFOLDER2%"  
\\schulserver\netlogon\slutil.exe SaveFolder Documents "%DOCFOLDER1%"  

\\schulserver\netlogon\slutil.exe AddFolder Pictures "%PICFOLDER%"  
\\schulserver\netlogon\slutil.exe SaveFolder Pictures "%PICFOLDER%"  

\\schulserver\netlogon\slutil.exe Delete Music
\\schulserver\netlogon\slutil.exe Delete Videos

befindet sich in der Freigabe \\schulserver\netlogon und wird in der Gruppenrichtlinie für die OU mit den Schülern als Logon-Script (Benutzerkonfiguration > Richtlinien > Windows-Einstellungen > Skripts > Anmelden) verknüpft. In der Freigabe \\schulserver\netlogon liegen außerdem die slutil.exe sowie die Dateien msvcp100.dll und msvcr100.dll, die im WOW64-Verzeichnis von Windows 7 liegen, wenn man die C++-Runtime installiert hat. Ansonsten funktioniert slutil.exe nämlich nicht, wenn die Runtime auf dem Schülerrechner nicht installiert ist.

Darüber hinaus habe ich in der DefaultDomainPolicy noch die Richtlinien Computerkonfiguration > Richtlinien > Administrative Vorlagen > Windows-Komponenten > Internet Explorer > Internetsystemsteuerung > Sicherheitsseite > Liste der Site zu Zonenzuweisungen sowie Benutzerkonfigurationkonfiguration > Richtlinien > Administrative Vorlagen > Windows-Komponenten > Internet Explorer > Internetsystemsteuerung > Sicherheitsseite > Liste der Site zu Zonenzuweisungen aktiviert und dort als Wertename unseren Server (\\schulserver) und als Wert die Ziffer 1 (= Intranetzone) eingetragen, damit slutil auch aus der Netzwerkfreigabe heraus ohne Sicherheitsabfrage ausgeführt wird.

Funktioniert alles perfekt!! .... Danke noch mal an Colinardo!
colinardo
colinardo 19.02.2014 aktualisiert um 11:31:46 Uhr
Goto Top
Danke für deine Rückmeldung! Werde deinen Kommentar auch noch in meinem Tipp verlinken...

Grüße Uwe
Winfried-HH
Winfried-HH 19.02.2014 um 11:37:43 Uhr
Goto Top
Zitat von @colinardo:

Danke für deine Rückmeldung!

Gern geschehen ... auf dieser Seite bekommt man wenigstens noch Hilfe auf deutscher Sprache.


Werde deinen Kommentar auch noch in meinem Tipp verlinken...

Das wäre vielleicht ganz gut wegen des Tipps mit den beiden VB6-Runtime-DLLs