Comment supprimer des fichiers et des dossiers qui ne peuvent pas être supprimés?

28

J'ai une copie de sauvegarde d'un Documents and Settingsdossier Windows précédent qui ne contient que mon utilisateur d'origine et dans 2 autres répertoires: Favoriteset Local Settings.

Lorsque j'essaie de supprimer, Local Settingsj'obtiens cette erreur:

texte alternatif

Lorsque j'essaie de supprimer Favorites, j'obtiens cette erreur:

texte alternatif

J'ai couru cela dans un shell cmd :

attrib *. * -r -a -s -h / s

... mais cela n'a pas aidé et n'a renvoyé aucune erreur / avertissement.

J'ai utilisé Unlocker v1.8.5et LockHunterà plusieurs reprises à plusieurs niveaux pour voir si des fichiers sont en cours d'utilisation, mais les deux disent toujours: Aucun fichier verrouillé .

Mise à jour # 1:

J'ai pu renommer le répertoire, ce qui me donne maintenant cet avertissement avant (d'essayer) de supprimer:

texte alternatif

Si j'appuie sur Oui (ou sur Oui à tous ), j'obtiens cette erreur:

texte alternatif

Mise à jour # 2:

J'ai laissé chkdsk /fcourir ce qui a nécessité un redémarrage car il se trouve sur ma partition système principale. Au cours de la numérisation de l'étape 2, j'ai reçu environ 40 d'entre eux:

Suppression d'une entrée d'index de l'index $ 0 du fichier 25.

...suivi par:

Suppression des cookies d'entrée d'index dans l'index $ I30 du fichier 37576.

... mais j'obtiens toujours la première boîte de dialogue d'erreur ci-dessus lorsque j'essaie de supprimer.

J'ai couru chkdsk à nouveau, cette fois -ci : chkdsk /f /r. Produit aucun message. Même résultat lors de la suppression.

Mise à jour # 3:

En creusant plus profondément, 99c'est le nom d'un des nombreux répertoires situés au plus profond ici:

C: \ Documents and Settings.OLD \ User \ Local Settings \ Application Data \ Microsoft \ Messenger \ [email protected] \ SharingMetadata \ [email protected] \ DFSR \ Staging \ CS {D4E4AE55-B5E2-F03B-5189-6C4DA6E41788 } \

À l'intérieur de chacun de ces répertoires se trouvaient des fichiers avec des noms tels que:

2300- {C93D01AC-0739-4FD9-88C7-13D2F21A208E} -v2300- {C93D01AC-0739-4FD9-88C7-13D2F21A208E} -v2300-Downloaded.frx

J'ai remarqué que, contrairement à tous les répertoires, je ne pouvais renommer aucun de ces fichiers. J'ai également remarqué que les noms de fichier + dir étaient extrêmement longs:

Répertoire d'origine = 194 caractères
Noms de fichiers = 100+ caractères
Ensemble, la longueur dépasse la limite de 255 caractères, ce qui est mauvais et expliquerait le message d'erreur que j'ai publié dans la mise à jour # 1.

Solution partielle:

Renommez tous les répertoires jusqu'à ce que la longueur totale du chemin soit inférieure à 100. Par la suite, j'ai pu renommer les .frxfichiers, sans parler de tout supprimer dans le Local Settingsrépertoire.

Ceci n'est qu'une solution partielle car ces répertoires (vides) ne sont toujours pas supprimables,

C: \ 1 \ 2 \ Favorites \ Wien \ What To Do ..
C: \ 1 \ 2 \ Favorites \ Photography \ FIRE

Même erreur que ci-dessus:

texte alternatif

Voici ce que les propriétés de l'explorateur montrent pour les deux dossiers:

texte alternatif

Mise à jour # 4 (une autre solution partielle):

Utiliser la réponse de harrymc combinée à une lecture approfondie de cet article MS-KB étonnant qui contient l'idée de presque tout le monde, puis certaines, sans le remarquer : Vous ne pouvez pas supprimer un fichier ou un dossier sur un volume de système de fichiers NTFS .

J'ai pu supprimer le 2ème dossier C:\1\2\Favorites\Photography\FIRE- le problème étant qu'il y avait un espace de fin invisible à la fin. J'ai eu de la chance quand j'ai fait une auto-complétion en jouant avec la del "\\?\<path>"commande qu'il a suggérée.

REMARQUE: Une normale deln'a PAS fonctionné, pas plus que la suppression de explorer.

Maintenant, tout ce qui reste est le premier répertoire C:\1\2\Favorites\Wien\What To Do..(oui j'ai essayé sans fin avec plusieurs combinaisons de la solution ci-dessus;)

glenneroo
la source
@glenneroo essayez d'utiliser LockHunter au lieu de Unlocker et voyez ce qu'il dit. De plus, que se passe-t-il lorsque vous cliquez sur "Oui" ou "Oui à tous" dans la case "Confirmer la suppression du fichier"?
ubiquibacon
LockHunter indique également qu'aucun processus ne verrouille ce fichier ou dossier.
glenneroo
J'ai eu un problème similaire à celui de certains fichiers Adobe enfouis profondément dans certains dossiers à partir d'une installation de Windows sauvegardée. J'ai essayé de renommer tous les dossiers en «x» pour raccourcir le chemin, mais cela n'a pas fonctionné. Je les ai laissés comme ça pour me rappeler qu'ils n'étaient rien et je les ai laissés reposer pendant quelques années jusqu'à ce que je finisse par DBANner le disque avant de l'envoyer à quelqu'un.
Tofystedeth
1
En raison des propriétés de fichier extrêmement petites que vous voyez (pas même des dates), je pense que c'est un pointeur de fichier qui pointe vers un fichier qui n'existe pas. Je ne sais pas comment résoudre ce problème, mais cela pourrait donner une idée à quelqu'un qui sait ...
impressionné le
1
Tout simplement parce qu'il y a des fichiers morts qui n'utilisent même pas beaucoup d'espace? Le lecteur est ~ 2 ans et je préfère ne pas avoir à réinstaller à nouveau . En ce qui concerne les lectures SMART, Google a publié un rapport ici qui dit essentiellement que vous ne pouvez pas mettre trop de poids sur la plupart de ces lectures: labs.google.com/papers/disk_failures.pdf De plus, chkdsk / R n'a signalé aucun problème. Pouvez-vous recommander un outil pour Windows comme réponse?
glenneroo

Réponses:

29

del est pour supprimer des fichiers, rd aka rmdir est pour supprimer des dossiers, donc ...

rd /s "\\?\C:\1\2\Favorites\Wien\What To Do.."

... devrait faire l'affaire! :-)

Le /sparamètre

supprime tous les répertoires et fichiers du répertoire spécifié en plus du répertoire lui-même.
Utilisé pour supprimer une arborescence de répertoires.


Si cela ne fonctionne pas; même pas avec des caractères génériques / auto-complétion; alors vous avez des problèmes de corruption.

Tom Wijsman
la source
oh mec qui ressemble à ça pourrait être la réponse juste là :-)
James T
Wow incroyable quelqu'un l'a finalement compris! Vous gagnez un double bonus! :)
glenneroo
@glenneroo: Ont voté pour tous ceux qui ont contribué à cela en retour. :-)
Tamara Wijsman
6

J'essaierais d'abord d'exécuter chkdsk comme Jeff l'a suggéré. Si cela ne fonctionne pas, vous pouvez démarrer avec un live cd linux, monter le disque dur et supprimer les dossiers de l'environnement live linux.

byachna
la source
J'hésite beaucoup à utiliser une alternative (au NTFS à source fermée) pour supprimer des fichiers d'une partition NTFS. D'après mon expérience, l'aide à la lecture fonctionne généralement bien, mais l'écriture peut être dangereuse.
glenneroo
1
le support d'écriture sur NTFS est maintenant très bon sur les distributions Linux modernes, surtout si l'on considère que même WinXP n'implémente pas complètement la spécification NTFS.
Jonathan
1
D'accord, Linux a un excellent support NTFS.
Jeff F.
Il n'y a pas longtemps (été 2010), j'ai utilisé ntfs-3g pour supprimer des fichiers avant de réinstaller XP. Ensuite, lors de l'installation de XP, a chkdsktrouvé une décharge métrique de fichiers corrompus. J'ai également réussi à tuer des pilotes ntfs dans le passé juste en faisant des lectures. Certes, les deux cas se trouvaient sur des partitions extrêmement fragmentées avec plusieurs 100 000 fichiers.
glenneroo
6

Vous avez très probablement une corruption FS (système de fichiers). Exécutez un chkdsk puis essayez de supprimer les fichiers.

Assurez-vous également que rien n'est utilisé dans le répertoire, comme l'indique l'avertissement.

Je recommanderais également de faire une sauvegarde de vos fichiers importants avant tout.

Jeff F.
la source
J'ai utilisé l'outil Unlockerpour vérifier qu'aucune poignée n'était ouverte sur aucun de ces fichiers.
glenneroo
C'est ce que je m'étais dis. Vous devez probablement exécuter chkdsk / f
Jeff F.
1
@Moab: Non, le nettoyage d'index avec chkdsk est normal. C'est un artefact de la façon dont ils sont stockés, ils ne peuvent être nettoyés que lors d'une vérification du disque. Je ne me souviens pas où j'ai lu ça.
afrazier
1
@glennroo - les bsod pendant les opérations d'écriture sont également des signes de défaillance du disque. Je ne serais pas surpris de voir votre disque durer une autre année, mais je ne serais pas surpris non plus de le voir mourir demain.
Joel Coehoorn
1
Je vois que tu as trid chkdsk /F; essayez également chkdsk /Rqui effectue 2 étapes supplémentaires pour tenter de marquer les secteurs défectueux et récupérer les données.
AniDev
5

Je reçois toujours la boîte de dialogue Erreur 99 ci-dessus lorsque j'essaie de supprimer.

99 n'est pas un numéro d'erreur - c'est le nom d'un fichier ou d'un dossier dans le dossier que vous souhaitez supprimer. Recherchez cet article.

Une fois que vous l'avez trouvé, il se plaint simplement d'une erreur d'autorisation. Cela est probablement dû au fait que certaines choses dans les dossiers de profils des utilisateurs sont configurées pour avoir uniquement des autorisations pour cet utilisateur et personne d'autre, et sont définies pour ne pas hériter des autorisations de leur parent, ou pour une autre raison, toutes les autorisations sur le fichier ont été perdues. Le résultat est qu'aucun compte d'utilisateur sur votre ordinateur n'a la possibilité de faire quoi que ce soit avec le fichier ou le dossier.

Pour résoudre ce problème, faites un clic droit sur le fichier (ou il contient un dossier pour vous assurer que vous obtenez tout), choisissez Propertiesdans le menu contextuel, puis l' Securityonglet dans la boîte de dialogue qui s'ouvre. Cet écran aura un Advancedbouton sur lequel vous devrez cliquer. Recherchez l' Owneronglet dans la boîte de dialogue qui s'ouvre. Vous devriez maintenant pouvoir utiliser cette fenêtre pour vous en approprier, ce qui attribuera de nouvelles entrées d'autorisations à l'élément et vous permettra enfin de le supprimer.

Joel Coehoorn
la source
Bon point sur le nom de fichier! La définition des autorisations n'a pas aidé, mais j'ai d'ailleurs trouvé la moitié de la réponse!
glenneroo
5

Ce que j'ai lu sur le site de support de Microsoft :

1) utiliser dir /xpour obtenir les noms courts (notation 8.3) des fichiers / dossiers répertoriés 2) utiliser rmdir /s shortnamepour supprimer un dossier dont le nom long n'est pas standard

pt3
la source
Bonne idée! Malheureusement, tous les dossiers que je ne peux pas supprimer n'ont pas de nom court, c'est-à-dire qu'ils sont vides quand je tape dir /x:(
glenneroo
3

Vous pourrez peut-être utiliser la \\?\syntaxe Unicode dans cmd pour supprimer des répertoires trop longs, car la longueur du chemin d'accès avec cette syntaxe est "limitée" à 32 767 caractères:

del /s /f /q "\\?\C:\Documents and Settings.OLD\User\Local Settings\Application Data\Microsoft\Messenger\[email protected]\SharingMetadata\[email protected]\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788}\"
rmdir "\\?\C:\Documents and Settings.OLD\User\Local Settings\Application Data\Microsoft\Messenger\[email protected]\SharingMetadata\[email protected]\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788}\"

Il peut être utile d'appuyer sur la touche de tabulation pour parcourir les noms de répertoire une fois que vous obtenez un \, afin que Windows commence à compléter automatiquement les répertoires qui existent sous ce dossier.

Voir Fichiers de nommage, chemins et espaces de noms de Microsoft .

harrymc
la source
Cela fonctionnera, mais je crois que la delcommande a la MAX_PATHlimite :(
Billy ONeal
Joli tour! J'ai contourné les noms de fichiers longs en renommant les répertoires en 1-2 caractères. J'ai essayé ces commandes sur les deux répertoires restants: Could not find file.suivi d'unThe system cannot find the file specified.
glenneroo
Mis à jour ma réponse. En utilisant cette version de deli, j'ai pu supprimer l'un des deux délinquants restants (qui avait un espace de fin). Bounty est à vous, mais l'intrigue s'épaissit!
glenneroo
Dans les cas ultra problématiques, vous pourrez peut-être supprimer le répertoire contenant à la place (après avoir retiré les éléments que vous souhaitez conserver).
harrymc
Très heureux, j'ai un nom de répertoire corrompu depuis 3 ans et j'ai finalement trouvé ça! L'utilisation de la commande rmdir ci-dessus m'a permis de me débarrasser du répertoire cassé.
hazymat
2

Personnellement, je suis d'accord avec byachna et CarlF qu'un cd live linux est votre meilleur choix. Linux ne se soucie pas des autorisations, vous pouvez donc entrer et supprimer des éléments sans se plaindre. Je n'ai jamais eu de problème avec l'écriture NTFS depuis Linux. Je le fais régulièrement depuis plusieurs années.

Je comprends que vous ne voulez pas jouer avec Linux, donc je vais suggérer autre chose. Quelque chose qu'Ashimema a déjà suggéré ... mais a oublié quelques liens. Au lieu d'un live cd linux, vous pouvez essayer l'un des nombreux cd live de windows.

http://www.ubcd4win.com/ (nécessite le CD d'installation xp pour créer)

http://www.reatogo.de/REATOGO.htm (nécessite un cd d'installation xp pour créer)

http://www.nu2.nu/pebuilder/ (nécessite un cd d'installation xp pour créer)

http://www.vistape.net/index.php (nécessite un DVD d'installation de Vista pour créer)

Essayez de démarrer dans le CD live que vous décidez d'utiliser et supprimez les dossiers qui causent tous les problèmes. Comme il s'agit de Windows, il appliquera les autorisations de fichier. Vous devrez peut-être modifier les autorisations ou la propriété des fichiers afin de les supprimer. Perhapse peut même essayer l'astuce "\? \" À partir du CD Windows Live.

Une autre chose à essayer serait la commande cacls ou icacls pour voir si vous pouvez vous accorder des autorisations sur les dossiers.

James T
la source
Je vais leur donner un essai et faire un rapport (quand j'ai quelques heures).
glenneroo
0

Démarrez votre système à l'aide d'une distribution Linux compatible NTFS, par exemple un liveCD Ubuntu.

Montez le système de fichiers Windows.

Supprimez tout ce que vous voulez, car Windows ne pourra pas dire "Non".

AVANT DE FAIRE CECI, FAITES UNE SAUVEGARDE COMPLÈTE.

CarlF
la source
1
Merci mais byachna l'a déjà suggéré. J'hésite à essayer car j'ai eu des problèmes dans le passé avec des systèmes de fichiers corrompus. De plus, ce cas traite de fichiers corrompus, c'est-à-dire que l'utilisation d'un pilote NTFS non pris en charge pourrait tout simplement boucher complètement mon système.
glenneroo
Les pilotes NTFS actuels sous Linux sont en fait moins susceptibles de corrompre les systèmes de fichiers que Windows, dans mon expérience limitée.
CarlF
3
J'aimerais vraiment vraiment voir des données pour sauvegarder cette déclaration. Je n'ai jamais eu Windows corrompu un FS, sauf pour le matériel défaillant.
Billy ONeal
Il y a une raison pour laquelle j'ai écrit "dans mon expérience limitée". J'ai eu quelques problèmes comme glenneroo avec Windows (XP et Vista) et aucun avec NTFS-3G. Je pensais que l'avertissement clarifierait cela.
CarlF
0

Il y a un certain nombre de moyens compliqués et difficiles à résoudre, comme je l'ai découvert par le passé.

Maintenant que je suis confiant avec ce que je fais, je lance simplement un chkdsk, puis démarre un cd live pour supprimer les fichiers s'il y avait toujours un problème (si vous vous inquiétez des capacités de linux avec ntfs, puis essayez soit BartPE ou [Windows PE] [2], à la fois disponible gratuitement)

Si vous allez loin, toutes les autres suggestions vous aideront certainement à réduire l'erreur réelle.

Ashimema
la source
Merci James d'avoir ajouté les liens que je ne pouvais pas (étant trop nouveau ici) dans un post ci-dessous!
Ashimema
0

Tard dans la soirée, mais cette méthode fonctionne la plupart du temps, sinon démarrer à partir d'une distribution Linux et supprimer à partir de là.

Ouvrez une fenêtre d'invite de commandes élevée et laissez-la ouverte.

Fermez tous les programmes ouverts.

Cliquez sur Démarrer, Exécuter et entrez TASKMGR.EXE Accédez à l'onglet Processus et terminez le processus sur "Explorer.exe" Laissez le Gestionnaire des tâches ouvert.

Revenez à la fenêtre d'invite de commandes et accédez au répertoire dans lequel se trouve AVI (ou tout autre fichier non supprimable). À l'invite de commandes, tapez DEL <chemin d'accès complet au fichier que vous souhaitez supprimer> ou à la commande de votre choix.

Revenez au Gestionnaire des tâches, cliquez sur Fichier, Nouvelle tâche et entrez EXPLORER.EXE pour redémarrer le shell GUI. Fermez le Gestionnaire des tâches.

Moab
la source
-1

La réponse de Joel est à moitié droite, vous devez d'abord activer l'onglet sécurité, allez dans le panneau de configuration> options des dossiers et le deuxième onglet (j'ai oublié son nom) à la fin de la liste avec des options il y a quelque chose à propos de la gestion avancée des dossiers (encore une fois je je ne sais pas quel est le nom en anglais) une fois que vous faites cela, vous pouvez ensuite définir les autorisations pour votre utilisateur dans l'onglet de sécurité comme mentionné précédemment.

Guillermo Siliceo Trueba
la source
J'avais déjà activé ces options, et j'ai déjà essayé ce qu'il recommandait, mais cela n'a pas aidé. Lisez la mise à jour # 3 et la solution partielle pour savoir ce qui se passe. Le dossier que je ne peux pas supprimer n'a même pas de propriétés, encore moins d'options de sécurité.
glenneroo
Assurez-vous d'ajouter un accès complet et des options à l'utilisateur TOUT LE MONDE, avec le vérificateur d'utilisateur inclus, vous pouvez le faire.
Guillermo Siliceo Trueba