Frage Löschen Sie den Papierkorb für alle Benutzer in Windows Server 2008 R2


Was ist der richtige Weg, um den Papierkorb zu löschen? Alle Nutzer in Windows Server 2008 R2?


36
2017-11-14 14:32


Ursprung


lifehacker.com/5845698/ ... - JohnLBevan


Antworten:


Soweit ich das beurteilen kann, ist dies keine "offizielle" von Microsoft unterstützte Methode. Es gibt zwei Möglichkeiten. Eines beinhaltet das Löschen von c: \ $ Recycle.Bin und das andere ist das Scripting von cleanmgr.exe, das bei jeder Benutzeranmeldung ausgeführt wird.

Der "offiziellen" Unterstützung zum Löschen von c: \ $ Recycle.bin kommt das am nächsten MS KB, die XP und Vista referenziert, aber das erwartete Verhalten impliziert.


Sofortige Löschung

Wenn Sie möchten, dass dies sofort passiert, scheint es, dass Sie einfach ausführen können rd /s c:\$Recycle.Bin und Windows sollte die erforderlichen Ordner neu erstellen, wenn sie das nächste Mal benötigt werden. Ich habe das gerade schnell getestet und es scheint zu funktionieren, aber - offensichtlich - mit Vorsicht vorgehen.


Wiederkehrende löschbare Löschung per Logon

Sie können dies mit dem Datenträgerbereinigungstool (cleanmgr.exe) tun. Leider hat Microsoft beschlossen, dies mit den Features von "Desktop Experience" zu bündeln, was bedeutet, dass Sie eine Menge anderen Mist installieren und neu starten müssen.

Die Alternative besteht darin, die folgenden zwei Dateien zu greifen und sie an die angegebenen Speicherorte zu verschieben Technet:

C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr_31bf3856ad364e35_6.1.7600.16385_none_c9392808773cd7da\cleanmgr.exe
C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr.resources_31bf3856ad364e35_6.1.7600.16385_en-us_b9cb6194b257cc63\cleanmgr.exe.mui

Cleanmgr.exe sollte in% systemroot% \ System32 gehen.

Cleanmgr.exe.mui sollte in% systemroot% \ System32 \ de-US gehen.

Wenn Sie cleanmgr alleine ausführen, können Sie nicht den gesamten Papierkorb leeren, aber Sie können / sageset und / sagerun verwenden, um ein Anmeldeskript für alle Benutzer über das Gruppenrichtlinienobjekt zu erstellen, das den Papierkorb bei der nächsten Anmeldung wie beschrieben löscht Hier. Es ist nicht die sauberste Sache, aber es wird funktionieren. Der verlinkte Artikel ist für XP, aber die Syntax ist unverändert gegenüber Server 2008 R2.


26
2017-11-14 14:37



Habe ein wenig nachgeforscht, da gab es diesen Link, der ein wenig ausarbeitet. social.technet.microsoft.com/Forums/de-US/winserverManagement/... - Bart Silverstrim
Getestet, das macht es nicht für alle Benutzer frei. Ich möchte nicht wirklich mit unserem Vertragspartner Kontakt aufnehmen und ihn einloggen müssen, nur um einige Dateien zu löschen ... - Kyle Brandt♦
Ja, ich kann dieses Verhalten auch bestätigen. Es scheint, dass entweder Scripting cleanmgr bei jedem Login zu laufen, kommt einer offiziellen MS-Methode am nächsten. Die Alternative besteht darin, den Papierkorbordner in jedem Profil wegzublasen. Es sollte Erstellen Sie es bei der nächsten Anmeldung für jeden Benutzer neu, aber ich wäre ein wenig müde, dies in der Produktion zu versuchen. - MDMarra
Mehr zur Automatisierung von CleanMgr hier ... stackoverflow.com/a/35214197/80161 - Nathan Hartley


Ich denke nicht, dass es einen richtigen dokumentierten Weg gibt, da die Papierkörbe für Benutzer in ihren Profilen getrennt sind; Dies würde auch ein Sicherheitsrisiko darstellen, da Dokumente oder Gegenstände in dem Papierkorb, wenn sie von Benutzern gelesen werden, bestimmten Dokumenten erlauben könnten, zu lecken.

Es kann möglich sein, ein Administrator-privilegiertes Skript zum Ausführen und Löschen von Dateien aus dem Papierkorb jedes lokalen Profils zu scripten (das jedoch möglicherweise weiterhin mit dem Server synchronisiert wird, auf dem Ihre Profile gespeichert sind, wenn Sie über servergespeicherte Profile verfügen). Aber Sie müssen Berechtigungen und Eigentumsrechte ordnungsgemäß festgelegt haben. Ich weiß auf unseren Servern, dass der Administrator keinen ordnungsgemäßen Zugriff auf Profile auf dem Speicherserver hat. Der Administrator muss die Verantwortung für das Profil übernehmen, und wenn wir fertig sind, können Sie die Eigentumsrechte an den richtigen Benutzer zurückgeben oder die Profile funktionieren nicht mehr ordnungsgemäß für sie.

Sie könnten versuchen, einen Prozess bei der Abmeldung auszuführen, der das Papierkorbverzeichnis pro Benutzer löscht, aber das führt auch dazu, dass versehentlich etwas gelöscht wird, das später wiederhergestellt werden soll und nun verschwunden ist, da es bei der letzten Abmeldung gelöscht wurde.

Wahrscheinlich ist der "richtige" Weg, dies zu tun, das Konfigurieren von Kontingenten auf Arbeitsstationen und Servern, und wenn dieses Kontingent für den Speicher erreicht wird, erfährt der Benutzer, dass sie Elemente aus dem Papierkorb löschen müssen. Aus Sicherheitsgründen wäre es ein Trainingsproblem. Andernfalls benötigen Sie eine Problemumgehung.

@markm hatte einen Utility-Vorschlag, der dies zu tun scheint; Ich stehe zu der Behauptung, dass es kein "richtiger" Weg ist, da es ein Add-On ist und nicht standardmäßig in Windows eingebaut ist (obwohl ich nicht überrascht bin, dass das hilfreiche Administrationsprogramm nicht enthalten ist.) Das einzige andere Problem Wenn Sie es verwenden, müssen Sie es möglicherweise auf einer Arbeitsstation und auf dem Server ausführen, oder es treten möglicherweise Probleme bei der Profilsynchronisierung auf. Es scheint, dass es nur ein Mini-Tool für den Zugriff auf die Registerkarte "Datenträgerbereinigung" in Windows sein soll.

Ein anderer Gedanke ... ungeprüft ... wäre, die Ordnerumleitung zu verwenden, um ihren Papierkorb auf einen zentralen Server umzuleiten. Ich würde dies jedoch als eine monumental schlechte Idee (tm) klassifizieren. Dann würden Sie ihre Dateien aus diesem freigegebenen Verzeichnis löschen. Wenn man dies über das Netzwerk, die Sicherheitseinstellungen usw. koppelt, würde dies zu einer Priorität der ersten Stufe werden, die andere Systemadministratoren davonlaufen lassen würde, bevor sie spontan verbrennen würden.


8
2017-11-14 14:41



Datenträgerbereinigung ausgeführt, da ein Benutzer mit erhöhten Rechten nicht den gesamten Papierkorb eines Benutzers trifft? - MDMarra
Ich hoffe irgendwie nicht einmal, wenn es darum geht, eine PITA aufzuräumen. In einer gemeinsam genutzten Umgebung wie einem Terminalserver, der potenziell bösartig ist. - Rob Moir
Hm, interessant. Sieht so aus, als müsste ich das testen. - MDMarra
Ich habe es gelöscht, als @ MarkMs Antwort am kanonischsten klang, aber es klingt, als ob es nicht für alle Benutzer funktioniert, nachdem KyleBrandt es getestet hat. Ich denke, es gibt keine dokumentierte Möglichkeit, dies aufgrund von Sicherheit richtig zu tun, wahrscheinlich ... die Möglichkeit, die Daten anderer Benutzer zu löschen, da der Müll Teil ihres (Roaming-) Profils ist, könnte ein Sicherheitsrisiko darstellen. - Bart Silverstrim
Löschte meine Antwort, das ist. - Bart Silverstrim


Ich lief TreeSize Free und sah, dass ich 15gigs im Papierkorb hatte, aber ich konnte es nicht sehen, wahrscheinlich weil es von einem lang verstorbenen Benutzer gemacht wurde. Aber in TreeSize Pro konnte ich es löschen, was die Daten in den Papierkorb legte, die ich sehen konnte.


5
2017-11-20 16:01



WinDirStat könnte das kostenlos machen. Es ist mein Tool, wenn ich herausfinden muss, was den gesamten Speicherplatz auf einer Festplatte verbraucht. Sie können mit der rechten Maustaste auf eine Datei oder einen Ordner klicken und sie im Papierkorb oder permanent löschen. Sie können auch mit der rechten Maustaste darauf klicken und dort ein Explorer-Fenster oder eine Eingabeaufforderung öffnen. Es hat auch keine Bedenken, Ihnen alle Benutzer-Papierkörbe zu zeigen, obwohl Sie die SIDs nachschlagen und sie jedem Benutzer selbst zuordnen müssen. - JamesH


Das funktioniert für mich: -

Get-ChildItem "C:\`$Recycle.bin\" -Recurse -Force | Remove-Item -Force

Es wird die recycle.bin entfernen; Windows erstellt den Papierkorb nach Bedarf neu, d. H. Sobald ein Benutzer eine neue Datei löscht.

Vielleicht ist das nicht der eleganteste Code und vielleicht gibt es einen besseren Weg, es zu tun, aber es wird helfen, Speicherplatz auf einem überlasteten Server freizugeben. Sie können es mit der Option -WhatIf beim Befehl Remove-Item testen.

Get-ChildItem "C:\`$Recycle.bin\" -Recurse -Force | Remove-Item -WhatIf

Hinweis: Jedes Laufwerk hat seinen eigenen Papierkorb; Sie sollten also den Laufwerkbuchstaben durch das Laufwerk ersetzen, für das Sie diesen Befehl ausführen, oder Sie können Folgendes für alle lokalen Laufwerke verwenden:

Get-PSProvider -PSProvider FileSystem `
| Select-Object -ExpandProperty Drives `
| Where-Object { $_.DisplayRoot -notlike "\\*" } `
| Select-Object -ExpandProperty Root `
| ForEach-Object { "$_`$Recycle.bin\" } `
| Where-Object { Test-Path -Path $_ -PathType Container } `
| ForEach-Object { Get-ChildItem -Path $_ -Force | Remove-Item -Recurse -Force }

Hoffe das hilft


2
2017-10-21 13:10





Ich hatte einen Papierkorb, der über 4 GB Daten zeigte, aber ich konnte es nicht löschen. Ging herein und fand eine Reihe von Profilen, die nicht mehr auf dem Server verwendet wurden und entfernt sie unter Systemeigenschaften - Erweitert - Benutzerprofile und jetzt ist der Papierkorb leer.

Löschen Sie natürlich keine Konten, die noch aktuell oder in Verwendung sind, aber als Administrator können Sie dies auf diese Weise tun.


1
2017-08-27 05:20





Mir gefiel diese Lösung, weil sie einfach zu verstehen ist, was sie tut, und es macht den Job, aber um von jedem Ort zu arbeiten, an dem Sie den Befehl ausführen, müssen Sie es wie folgt ändern (ein \ nach dem "Laufwerksbuchstabe hinzufügen: ") und um diese Ordner von anderen Benutzern löschen zu können, müssen Sie die" -force "am Ende des Befehls remove-item hinzufügen. Wenn Sie alle Ordner in C: \ $ Recycle.bin \ löschen, müssen Sie beim Abrufen der untergeordneten Elemente keine "-recurse" einfügen. Das ist also der letzte Befehl, den ich stattdessen verwenden würde:

Get-ChildItem "C:` $ Recycle.bin \ "-Force | Remove-Item -Recurse -force -WhatIf

Entfernen -Wenn wenn Sie mehr als nur den Befehl testen möchten


0
2017-09-10 18:52





Verwenden Sie den folgenden Prozess, um alle Dateien zu entfernen.

  1. Melden Sie sich als Admin-Benutzer an und erkunden Sie das Laufwerk c
  2. Deaktivieren Sie die geschützte Betriebssystemdatei aus den Ordneroptionen
  3. Durchsuche $ Recycle.Bin Mappe
  4. lösche alle Dateien und Ordner
  5. Leeren Sie Ihren Papierkorb

Alle Dateien werden von der Festplatte gelöscht.


0
2017-12-16 07:26