none
Alte Homes finden ?? RRS feed

  • Frage

  • Hallo,
    wir haben einen Server 2012 R2 den wir als Fileserver nutzen.
    Es gibt per DFS eine Freigabe. Darunter legen wir für die jeweiligen Benutzer einen Ordner an und berechtigen die Benutzer.
    Wegen ABE sieht der Benutzer auch nur die Ordner wo er berechtigt ist.

    Gibt es eine Möglichkeit herauszufinden welche Home-Dirs alt sind?
    Kommt ja schon mal vor das man im AD einen Benutzer löscht aber vergisst sein Home-Dir zu löschen.

    Danke und Gruß
    Dennis
    Donnerstag, 8. Dezember 2016 11:54

Antworten

  • Ich geh jetzt davon aus, dass der SAMACCOUNTNAME so lauten würde wie die Ordner.

    Das kannst du, wie bereits geschrieben, über diesen Befehl herausfinden:

    Suche hier das Attribut welches zu deinem \\DFS\Namespace\Unterordner\Ordnernamen passt

    (Ersetze, wenn es nicht Samaccountname ist, im unteren Block Samacountname mit deinem gefundenen Attribut)

    Get-ADUser -Identity deinsamaccountname -Properties *

    Demnach(wenn es jetzt nicht zu spät sein sollte und ich es vollkommen verwechsele) sollte dieser Block dir die Homes anzeigen zu denen es keine User gibt(die also gelöscht sind)

    $ad_names = (Get-ADUser -LDAPFilter "(samaccountname=*)" -ResultSetSize $null -Properties homeDirectory).samaccountname
    $fs_homes = (Get-ChildItem "\\DFS\Namespace\Ordner" -Directory).name
    $ad_names | Compare-Object -ReferenceObject $fs_homes|Where-Object {$_.sideindicator -like "*<=*"}


    Bis dann, Toni! Wenn Dir meine Antwort hilft dann markiere sie bitte als Antwort! Vielen Dank!



    • Als Antwort markiert HaschkeD Freitag, 9. Dezember 2016 08:33
    • Bearbeitet tonibert Freitag, 9. Dezember 2016 08:37
    Donnerstag, 8. Dezember 2016 19:02

Alle Antworten

  • Moin,

    quick + dirty:

    $ad_homes = (Get-ADUser -LDAPFilter "(homeDirectory=*)" -ResultSetSize $null -Properties homeDirectory).HomeDirectory
    $fs_homes = (Get-ChildItem "\\DFS\Namespace" -Directory).FullName
    $fs_homes | Compare-Object -ReferenceObject $ad_homes
    EDIT: musst natürlich mit einem User ausführen, der im DFS alle Ordner sieht ;-)


    Evgenij Smirnov

    I work @ msg services ag, Berlin -> http://www.msg-services.de
    I blog (in German) @ http://it-pro-berlin.de
    my stuff in PSGallery --> https://www.powershellgallery.com/profiles/it-pro-berlin.de/
    Exchange User Group, Berlin -> http://exusg.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com


    Donnerstag, 8. Dezember 2016 12:07
  • Das zeigt er mir, also alles.....will ja nur alte Homes finden.....

    Donnerstag, 8. Dezember 2016 12:27
  • Naja,

    ein Problem ist halt wann sie alt sind?!?!

    Dieser Befehl beinhaltet alle inaktiven User...das musst du dir eben nach deinen "alt"-Kriterien filtern.Das hängt davon ab wie dein AD gepflegt ist. Enabled=False sollte aber erstmal ein Anfang sein, denn die dürfen ja nicht mehr. 

    $ad_homes=(Get-ADUser -LDAPFilter "(homeDirectory=*)" -ResultSetSize $null -Properties homeDirectory,enabled)|Where-Object {$_.Enabled -like "false"}|select homeDirectory
    Hinweis:anonymisiere doch lieber deinen Screenshot


    Bis dann, Toni! Wenn Dir meine Antwort hilft dann markiere sie bitte als Antwort! Vielen Dank!


    • Bearbeitet tonibert Donnerstag, 8. Dezember 2016 13:16
    Donnerstag, 8. Dezember 2016 13:15
  • Da wirft er mir nix raus....

    Inaktive User?
    Wir löschen unsere User Iwan und ich wollte prüfen ob es evtl. noch ein Home Directory gibt was nicht gelöscht wurde.
    Muss dazu sagen im AD machen wir das nicht über Basisordner.
    Das ist bei uns immer leer. 
    • Bearbeitet HaschkeD Donnerstag, 8. Dezember 2016 13:36
    Donnerstag, 8. Dezember 2016 13:27
  • ...das ist natürlich die entscheidende Info ;-) Wie mappt ihr die dann?

    Evgenij Smirnov

    I work @ msg services ag, Berlin -> http://www.msg-services.de
    I blog (in German) @ http://it-pro-berlin.de
    my stuff in PSGallery --> https://www.powershellgallery.com/profiles/it-pro-berlin.de/
    Exchange User Group, Berlin -> http://exusg.de
    Windows Server User Group, Berlin -> http://www.winsvr-berlin.de
    Mark Minasi Technical Forum, reloaded -> http://newforum.minasi.com

    Donnerstag, 8. Dezember 2016 13:39
  • Auch erst später eingefallen :-)

    Wir Mappen per GPO auf den DFS Pfad.

    Darunter gibt es dann die ganzen Homes der Benutzer, die per ABE ausgeblendet sind wo der User nicht berechtigt ist.
    Er muss also immer noch einmal sein Home anklicken um rein zu kommen.

    Also ne Ableitung zwischen AD User und Basisordner geht nicht, da AD User ja bereits gelöscht.
    Wenn dann iwas in die Richtung schaue ob auf dem Home "Test" noch Berechtigungen "Test" vorhanden sind.....
    • Bearbeitet HaschkeD Donnerstag, 8. Dezember 2016 13:42
    Donnerstag, 8. Dezember 2016 13:41

  • Führe mal den folgenden Befehl aus und schau welches Attribut deinem Ordnernamen entspricht

    Get-ADUser -Identity * -Properties *
    Gib bei -Identity * deinen Samaccountname ein


    Bis dann, Toni! Wenn Dir meine Antwort hilft dann markiere sie bitte als Antwort! Vielen Dank!




    • Bearbeitet tonibert Donnerstag, 8. Dezember 2016 13:54
    Donnerstag, 8. Dezember 2016 13:46
  • Fast alle =>
    3 gibt's mit <=. Diese haben einen Basisordner im Userobjekt gepflegt.
    • Bearbeitet HaschkeD Donnerstag, 8. Dezember 2016 13:54
    Donnerstag, 8. Dezember 2016 13:52
  • > Also ne Ableitung zwischen AD User und Basisordner geht nicht, da AD User ja bereits gelöscht.
     
    User gelöscht? Dann lösch doch einfach alle, zu denen Du keinen User findest :-)
     
    Eine Kombination von Get-ChildItem, Split-Path, Get-ADUser und Remove-Item sollte Dir helfen.
     
    Donnerstag, 8. Dezember 2016 16:53
  • Ich geh jetzt davon aus, dass der SAMACCOUNTNAME so lauten würde wie die Ordner.

    Das kannst du, wie bereits geschrieben, über diesen Befehl herausfinden:

    Suche hier das Attribut welches zu deinem \\DFS\Namespace\Unterordner\Ordnernamen passt

    (Ersetze, wenn es nicht Samaccountname ist, im unteren Block Samacountname mit deinem gefundenen Attribut)

    Get-ADUser -Identity deinsamaccountname -Properties *

    Demnach(wenn es jetzt nicht zu spät sein sollte und ich es vollkommen verwechsele) sollte dieser Block dir die Homes anzeigen zu denen es keine User gibt(die also gelöscht sind)

    $ad_names = (Get-ADUser -LDAPFilter "(samaccountname=*)" -ResultSetSize $null -Properties homeDirectory).samaccountname
    $fs_homes = (Get-ChildItem "\\DFS\Namespace\Ordner" -Directory).name
    $ad_names | Compare-Object -ReferenceObject $fs_homes|Where-Object {$_.sideindicator -like "*<=*"}


    Bis dann, Toni! Wenn Dir meine Antwort hilft dann markiere sie bitte als Antwort! Vielen Dank!



    • Als Antwort markiert HaschkeD Freitag, 9. Dezember 2016 08:33
    • Bearbeitet tonibert Freitag, 9. Dezember 2016 08:37
    Donnerstag, 8. Dezember 2016 19:02
  • Geil, das geht.

    Vielen Dank :-)

    Freitag, 9. Dezember 2016 08:33
  • Danke für Feedback!


    Bis dann, Toni! Wenn Dir meine Antwort hilft dann markiere sie bitte als Antwort! Vielen Dank!

    Freitag, 9. Dezember 2016 08:38