Papierkorb aktivieren für Netzwerkfreigaben unter Windows

Ein kleiner Windows-PC als Heimnetz-Server mit Netzwerk Share ist eigentlich eine gute Sache, ein RAID-1 dahinter und die Daten sind auch gegen den Ausfall einer Festplatte geschützt - nur was passiert bei logischen Fehlern? Was mache ich, wenn ich eine Datei versehentlich gelöscht habe? Windows bringt hier für lokale Laufwerke den Papierkorb mit, für Netzwerkfreigaben ist der jedoch nicht nutzbar - mit einem Trick geht das doch.

Die Suche nach "Papierkorb für Windows Shares" oder "Recycle Bin for Network Shares" brachte recht schnell verschiedenste Diskussionen zum Vorschein, Workarounds mit dem Umbiegen der Known Folders (Bekannte Verzeichnisse) ab Windows Vista, das war mir jedoch zu viel gebastelt. Auch ein serverseitiges Programm für knapp 40 Euro pro Lizenz kann das fehlende Windows-Feature nachrüsten: Network Recycle Bin Tool. Recht komfortabel kann man auf der Server-GUI die maximale Aufbewahrungszeit und eine Maximalgröße des Papierkorbs definieren. Aber 40 Euro für das Feature?

Sofern man hauptsächlich Windows-Computer nutzt um auf den Windows-Share zuzugreifen, gibt es dank eines Technet-Nutzers (Russel Riley) eine recht einfache Lösung: Man legt sich einen eigenen Known Folder über die Windows-Registrierung auf jedem Client an und aktiviert dafür den Papierkorb. Man muss sich pro Netzwerk-Share oder verbundenem Netzwerklaufwerk eine GUID erzeugen. Wenn man nur einen Share oder ein Laufwerk (mapped network drive) nutzt, kann man die unten aufgeführen Beispiele verwenden und für sich anpassen.

Die erstellte REG-Datei muss für jeden Benutzer auf jedem zugreifenden Windows-PC/Notebook/Tablet in die Regitry eingetragen werden, damit der Papierkorb entsprechend funktioniert. Entweder bei jedem Benutzer das REG-File separat per Doppelklick eintragen oder man erstellt sich eine entsprechende Gruppenrichtlinie (Group Policy), welche die Einträge anlegt. Wie man Registry-Einträge per Gruppenrichtlinie verteilt, erfährt man bspw. unter diesem Link.

Der riesige Vorteil dieser Methode ist es, dass man über den lokalen Papierkorb alle auf dem Share gelöschten Objekte findet, egal von welchem Windows-Computer oder unter welchem Benutzer die Dateien gelöscht wurden. Der Papierkorb liegt tatsächlich auf dem Server als Unterordner in der Freigabe. Wird als \\server\share als Freigabe verwendet, liegt der Papierkorb ebenfalls unter \\server\share\Papierkorb.

 

Papierkorb für Netzwerklaufwerk X:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{9147E464-33A6-48E2-A3C9-361EFD417DEF}]
"RelativePath"="X:\\"
"Category"=dword:00000004
"Name"="Netzwerklaufwerk X"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\KnownFolder\{9147E464-33A6-48E2-A3C9-361EFD417DEF}]
"MaxCapacity"=dword:0000c7eb
"NukeOnDelete"=dword:00000000

Den Inhalt in eine REG-Datei speichern, bspw. als "recyclebin.reg", ggf. den RelativePath auf das verwendete Netzwerklaufwerk anpassen (Laufwerksbuchstabe gefolgt von Doppelpunkt und zwei Backslash), speichern und per Doppelklick in die Registry eintragen. Danach Windows neu starten oder den angemeldeten Benutzer ab- und wieder anmelden. Prüft man danach die Einstellungen im Papierkorb (rechtsklick auf Papierkorb und Eigenschaften wählen), wird der Netzwerkpfad mit einer Papierkorbgröße von 50GB angezeigt. Die Größe kann man natürlich anpassen.

 

Papierkorb für UNC-Pfad bspw. \\server\share

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions\{9147E464-33A6-48E2-A3C9-361EFD417DEF}]
"RelativePath"="\\\\server\\share"
"Category"=dword:00000004
"Name"="Server Share"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\BitBucket\KnownFolder\{9147E464-33A6-48E2-A3C9-361EFD417DEF}]
"MaxCapacity"=dword:0000c7eb
"NukeOnDelete"=dword:00000000

Den Inhalt in eine REG-Datei speichern, bspw. als "recyclebin.reg", den UNC-Pfad entsprechend anpassen (dabei darauf achten, dass vier Backslash "\" vor dem Host und zwei Backslash vor dem Share und Ordnern verwendet werden) und danach die REG-Datei per Doppelklick in die Registry eintragen. Danach Windows neu starten oder den angemeldeten Benutzer ab- und wieder anmelden. Prüft man danach die Einstellungen im Papierkorb (rechtsklick auf Papierkorb und Eigenschaften wählen), wird der Netzwerkpfad mit einer Papierkorbgröße von 50GB angezeigt. Die Größe kann man natürlich anpassen.

 

Weitere Netzwerkorte mit Papierkorb verwenden

Möchte man für mehrere Netzwerklaufwerke oder UNC-Freigaben den Papierkorb aktivieren, muss man sich weitere GUIDs erzeugen und die REG-Datei entsprechend anpassen.

Das funktioniert mit dem folgenden Powershell-Kommando (einfach in einer PowerShell Konsole eintragen und mit der Eingabetaste bestätigen):

"{"+[guid]::NewGUID().ToString().ToUpper()+"}"

Das ergibt wieder eine neue GUID, bspw. {2BC9CF30-1ED4-47AB-8878-E05BACE30D98}, die dann im REG-File verwendet werden kann.

 

Versehentlich gelöschte Elemete auf einer Netzwerkfreigabe können dann wie gewohnt über den Windows-Papierkorb wiederhergestellt werden wink


Geschrieben am 30.05.2014

 

IT-Nerd, 07.04.2015, 12:03
Hallo und Danke für den Tip, hat soweit alles wunderbar geklappt.

Hab nur ein Problem, wenn ich eine Datei aus einem Netzlaufwerk lösche, erscheint diese nicht im lokalen Papierkorb. Es wird zwar lokal angezeigt das was gelöscht wurde aber ein Doppelklick auf den Papierkorb, zeigt das dieser leer ist.

Wenn man "Löschen rückgängig" auswählt, wird auch wieder die gelöschte Datei im Netzlaufwerk angezeigt. Nur wieseo seh ich die gelöschten Dateien nicht im Papierkorb?

Benjamin, 29.04.2015, 16:44
Das Problem konnte ich bislang nicht nachstellen. Alle Netzwerkorte haben auch einen Papierkorb angezeigt in dem auch die gelöschten Dateien ersichtlich sind.

Das einzig unschöne an der Lösung ist, dass Windows in einen Timeout läuft, wenn der registrierte Share mal nicht zur Verfügung steht. Das bedeutet, dass bspw. ein Rechtsklick auf eine Datei mal eben mit ca. 30 Sekunden Verzögerung angezeigt wird.

Olive, 13.06.2016, 23:08
Im Papierkorb für UNC-Pfad hat sich ein Fehler eingeschlichen:
"RelativePath"="\\\\server\\share"" hat am Ende zwei Anführungszeichen, wo jedoch nur eines sein darf. Das führt dazu, dass der RelativePath nicht in die Registry eingetragen wird.
Ansonsten grandiose Lösung!

Max47k, 25.01.2017, 20:04
Hallo,
da ich mehr oder weniger nichts verstanden habe, hab ich das Tool Network Recycle Bin Tool installiert
und weil es funktniert hat (hatte) gekauft. 12.13€
Leider funktoniert der Key schon mal gar nicht sad und nun stellt sich herraus, das das Tool auch wunderschöne macken hat.
Ich kann z.b. keine Dateien mehr verschieben. Es kommt dann "Zugriff verweigert"
Wiederhole ich dieses kommt wieder "Zugriff verweigert" und jedesmal wird eine Kopie in dem Tool erzeugt,
obwohl die Datei gar nicht gelöscht ist.
Lösche ich diese nun über Teamviewer, landet diese im Papierkorb. Will ich jetzt den Papierkorb leeren,
werden alle Dateien vom Tool übernommen.
Seit über 1 Stunde versuch ich im Tool nun die Dateien zu löschen, ca. 16GB.
Network Recycle Bin Tool "keine Rückmeldung" die Dateien einfach im Ordner löschen wird auch verweigert,
keine Zugriffsrechte, angeblich bin ich kein Admin angry

Das nur so mal am Rande, ich werd das Tool deinstallieren und versuchen mir das Geld wieder zu holen.

MFG Max

Benjamin, 26.01.2017, 15:03
Das Problem ist wahrscheinlich, dass das Tool Networt Recycle Bin seit 2 Jahren kein Update mehr bekommen hat und offiziell nicht mal unter Windows 10 läuft. Und Du hast wahrscheinlich die Client-Edition gekauft. Meine Tests hatte ich nur mit der Server-Version gemacht, damit die Funktion auf allen Clients bereitsteht...

Mir persönlich gefällt aktuell die TechNet-Lösung deutlich besser.

Rexxxx, 12.05.2017, 09:45
Hi und danke für die super Anleitung.
Ich habe jetzt aber ein kleines Problem, wo ich noch nicht weiter komme.

Mit der in deinem Beispiel mit gelieferten ID klappt alles wunder bar. Ich habe jedoch 6 Netzwerklaufwerke und habe dann mit dem Befehl:

"{"+[guid]::NewGUID().ToString().ToUpper()+" }"

Weitere IDs erstellt. Das hat soweit auch funktioniert. Wenn ich aber nun die so erzeugte reg Datei mit den IDs auf einem anderen Rechner einspiele wird nur deine ID im Papierkorb eingebunden. Die von mir auf einem anderen Rechner erzeugte ID wird nicht verwendet. Die Eintragungen werden zwar in der Registry gemacht, jedoch sehe ich die Netzwerkfreigaben nicht unter den Eigenschaften des Papierkorps.

Wenn ich aber wieder an dem PC eine neue ID mit dem befehl von oben generiere und diese verwende klappt es wieder.

Wie kann ich die „neuen“ IDs fest einbinden, damit ich nicht an jedem Rechner neue ID erzeugen muss?

Kommentar hinzufügen

Name:
Email: (optional)
Smiley: smile biggrin wink wassat tongue laughing sad angry crying 
Text:
Captcha: Security Image

| Forget Me