Wie erhalte ich Berechtigungen zum Löschen von Dateien unter Windows 7?

64

Ich habe das Betriebssystem meines Laptops von Windows XP auf Windows 7 aktualisiert. Auf dem Computer befinden sich jetzt einige verbleibende Dateien von Windows XP. Wenn ich versuche, sie zu löschen, wird folgende Fehlermeldung angezeigt:

Du brauchst eine Erlaubnis um diese Aktion auszuführen.

Sie benötigen die Erlaubnis von S-1 -..., um Änderungen an diesem Ordner vorzunehmen.

Seltsam ist, dass ich mit dem einzigen Benutzerkonto auf diesem Computer angemeldet bin und über Administratorrechte verfüge. Ich habe versucht, die Benutzerkontensteuerung auszuschalten, kann die Dateien jedoch immer noch nicht löschen.

Wie kann ich das Entfernen dieser Dateien erzwingen?

lajos
quelle

Antworten:

85

Es ist möglich, dass der alte XP-Benutzer beim Upgrade nicht ordnungsgemäß auf Windows 7 konvertiert wurde. Daher gehören diese Dateien einem Phantombenutzer. Sie können die folgenden Schritte ausführen:

  1. Übernehmen Sie das Eigentum an den Dateien. Starten Sie als Administrator eine Eingabeaufforderung (cmd) und geben Sie Folgendes ein:

    takeown /f file
    takeown /f directory /r
    
  2. Gewähren Sie sich die vollen Rechte an der Datei:

    cacls file /G username:F
    cacls directory /T /G username:F
    

caclsKann mit Platzhaltern und Directory Traversal verwendet werden. Siehe auch:
Sicherheit über die Befehlszeile mit CACLS
CACLS-Befehl

Ein weiterentwickeltes Visual Basic-Skript finden Sie unter: Xcacls.vbs zum Ändern von NTFS-Berechtigungen .

Harrymc
quelle
1
Der Befehl takeown führt zu einem Fehler: C: \> takeown / f olddir / r FEHLER: Der aktuell angemeldete Benutzer hat keine Eigentumsrechte für die Datei (oder den Ordner) "C: \ olddir".
Lajos
6
Haben Sie die Eingabeaufforderung durch Klicken mit der rechten Maustaste auf cmd.exe und "Als Administrator ausführen" gestartet?
Harrymc
1
Vielen Dank für den Hinweis. Ich bin nicht als Administrator gelaufen. Es funktioniert jetzt!
Lajos
11
Ich erhalte immer noch "FEHLER: Zugriff verweigert", auch nachdem ich cmd als Administrator ausgeführt habe!
BT
2
@Pacerier: Ja, ich bezeichne "Phantom" als ein Benutzerkonto (nicht integriert), das auf einem Computer erstellt wurde und auf einem anderen nicht vorhanden ist.
Harrymc
29

Die Befehlszeilenargumente für die Übernahme des Eigentums sollten in dieser Reihenfolge vorliegen

takeown / f <Verzeichnis> / r
/ f Dateiname oder Verzeichnisnamensmuster
/ r Rekurs

HINWEIS: caclsist jetzt veraltet, bitte verwenden Sie icacls

icacls <Verzeichnis> / grant <Benutzer>: f / t
 Voller Zugriff
Ich rekursiere
Lessan Vaezi
quelle
5

In meinem Fall reichte es in Windows 7 unter bestimmten Umständen nicht aus, den Besitz zu übernehmen (meine Windows 7-Installation wurde mit Symantec Backup Exec von einem anderen Computer aus durchgeführt und der Ordner befand sich unter Versionskontrolle).

Ich musste zwei weitere Schritte ausführen:

  1. Klicken Sie mit der rechten Maustaste auf den Ordner mit den Dateien, die Sie löschen möchten, und wählen Sie "Eigenschaften" -> "Sicherheit" -> "Erweitert" -> Wählen Sie Ihren Benutzer aus -> "Berechtigung ändern" -> Aktivieren Sie "Alle untergeordneten Objektberechtigungen durch vererbbare Berechtigungen von ersetzen" dieses Objekt "

  2. Löschen Sie die Dateien in den Ordnern manuell vom innersten zum Stamm. Löschen Sie die Ordner, sobald sie leer sind, dh wenn Sie zuerst "Ordner1-> Ordner2" haben, löschen Sie den Inhalt von Ordner2, dann Ordner2 usw.

Wenn die anderen Lösungen nicht ausreichen, können Sie diese weiteren Schritte ausführen.

Durden81
quelle
1

Das S-1-...ist eine GUID, die von der vorherigen Installation übrig geblieben ist. Offensichtlich NEWSYSTEM\Administratorist nicht Teil der OLDSYSTEM\AdministratorsGruppe.

Sie müssen den Besitz des Laufwerks übernehmen, die Änderungen verbreiten lassen und dann die Dateien löschen können.

Tsilb
quelle
1

Normalerweise takeownund (i)caclsmach den Job.

Alternativ können Sie Unlocker zum Löschen verwenden (möglicherweise ist ein Neustart erforderlich)
oder Sysinternals PsExec verwenden , um SYSTEM-Benutzerberechtigungen abzurufen und diese Dateien zu löschen.

Wenn dieser Ordner jedoch viele Dateien enthält, takeowndauert es sehr lange, bis die Berechtigungen gültig sind (es dauerte ungefähr 20 Minuten, abhängig von der Festplattengeschwindigkeit). In diesem Fall ist eine LiveCD / DVD / USB schneller, da zum Löschen des Ordners keine Berechtigungen erforderlich sind.

Jet
quelle