Jump to content

lokale Benutzerverzeichnisse automatisiert löschen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Moin Moin

 

Ich bin auf der Suche nach einer Möglichkeit alle lokalen Benutzerverzeichnisse, bis auf LocalService, NetworkService, DefaultUser, AllUser, local Admin, zu löschen.

 

Hintergrund: Probleme mit dem roaming profile (W2k3 SP2 - XP SP3). Und nun will ich alle lokalen Konten bis auf die o.g. Ordner löschen. Nur weiß ich leider nicht wie - ohne jeden einzelnen Client per Hand zu bearbeiten.

 

 

 

MfG

Geschrieben

Weiters kannst Du per GPO die lokal angelegten Profile beim abmelden löschen lassen.

 

grins... haben wir aktiviert, greift aber nur bei korrekt geladenen Profilen vom Server. Wir, aber haben diverse lokale Leichen, weil der Nutzer sich immer wieder lokale Profile anlegt. siehe: http://www.mcseboard.de/windows-forum-ms-backoffice-31/passwort-aendern-erster-anmeldung-kein-serverseitiges-profil-4-141945.html

 

... zum Skript

Dennoch habe ich es geschafft mir, mit Hilfe dritter, etwas zusammen zu basteln. Und es entspricht sogar meinen Funktionsforderungen :D

 

Datei1: Computername.txt >> Computername

Datei2: Start.bat

For /F %%n IN (Computername.txt) DO call cleaner.bat %%n

Datai3: cleaner.bat

@echo on

rem Ziel definieren

set "target=\\%1\c$\Dokumente und Einstellungen"

rem

rem Ausnahmen definieren

rem

set "Ausnahme1=xy"

set "Ausnahme2=All Users"

set "Ausnahme3=Default User"

set "Ausnahme4=LocalService"

set "Ausnahme5=NetworkService"

set "Ausnahme6=xy2"

set "Ausnahme7=xy3"

rem

for /f "delims=" %%i in ('dir /b /ad "%target%"^|findstr /i /v /x /c:"%Ausnahme1%" /c:"%Ausnahme2%" /c:"%Ausnahme3%" /c:"%Ausnahme4%" /c:"%Ausnahme5%" /c:"%Ausnahme6%" /c:"%Ausnahme7%"') do rd /s /q "%target%\%%i"

Geschrieben

hier eine Powershell-Variante:

 

- es werden alle Computer aus dem Active-Directory ausgelesen

- es werden alle Objekte unterhalb c:\dokumente...\ gelöscht, bis auf die unter "exclude" angegebenen Pfade

 

function GetComputersFromLDAP()
{
       trap
       {
               write-host ("Error while retrieving computers from LDAP: " + $_.exception.message) -foregroundcolor "red";
               return $false;
       }
       $pcs = @();
       $dir = "LDAP://DC=domain,DC=com";
       $ldapSearcher = new-object directoryservices.directorysearcher;
       $ldapSearcher.filter = "(objectclass=computer)";
       $computers = $ldapSearcher.findall();
       foreach ($computer in $computers)
       {
                       $pc = "" | select-object Name;
                       $pc.Name = $computer.properties["name"];
                       $pcs += "\\"+$pc.name;

       }
       return ($pcs | sort-object Name);
}


getcomputersfromldap | % {remove-item $_\c$\Dokumente und Einstellungen\* -recurse -exclude "*LocalService*","*NetworkService*"}

  • 1 Jahr später...
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...