derwowusste
Goto Top

Unendlicher Ordnerpfad server share name name name name usw ist entstanden

Ein Freitagsschmunzler:

Ein Kollege hatte einen Ordner Projekt1 in seinem Homelaufwerk (Netzlaufwerk auf einem 2008R2-Fileserver). Nun fand sich neben Dateien und Unterordnern noch ein Unterordner "Projekt1" darin, den er selbst nicht erstellt haben will. In diesem ein weiterer "Projekt1" und darunter wieder, immer so weiter, witzigerweise ungelogen 402 Mal!
Also \\server\share\Projekt1\Projekt1\Projekt1\Projekt1\usw ist entstanden

Von Hand kann man sowas nicht anlegen, Skripte oder Tools will er nicht benutzt haben und wir Admins waschen unsere Hände wie immer in Unschuld.

Löschen kann man ihn nicht, die üblichen Tricks misslingen und Tools geben auf.

Hat irgendjemand sowas schon mal gesehen?

Content-ID: 298877

Url: https://administrator.de/contentid/298877

Ausgedruckt am: 26.11.2024 um 12:11 Uhr

tomolpi
tomolpi 11.03.2016 um 17:11:36 Uhr
Goto Top
Zitat von @DerWoWusste:
Hat irgendjemand sowas schon mal gesehen?

Klar, machen die älteren Schüler immer, aber spätestens nach 5 Verschachtelungen geben die auf...

Mal aus Neugier: wieoft ist der Ordner den geschachtelt, kannst du das anzeigen lassen?
DerWoWusste
DerWoWusste 11.03.2016 um 17:18:43 Uhr
Goto Top
So, habe es nochmal genauer angesehen und mich ein wenig geirrt. Die Robocopy-Ausgabe (siehe mein Link) hatte mich verwirrt. Es sind "nur" 402 Ordnerebenen.
114757
114757 11.03.2016 aktualisiert um 18:33:29 Uhr
Goto Top
Ein installiertes cygwin unter Windows und ein
rm -rf /cygdrive/z/ordner/unterordner/etc
hilft normalweise immer zuverlässig.

Gruß jodel32
vossi31
vossi31 11.03.2016 um 19:14:40 Uhr
Goto Top
Moin,

so was ähnliches kenne ich nur von den junctions, aber da geht es ja immer um den Ordner \users\%username%\app data
siehe hier
http://oldblog.schnulpe.de/index.php?/archives/71-Backup-mit-Robocopy-U ...

Henning
manuel-r
manuel-r 11.03.2016 um 21:55:11 Uhr
Goto Top
In ähnlichen Fällen hat mir subst <lw> <pfad> bisher immer gute Dienste erwiesen.
tikayevent
tikayevent 12.03.2016 um 00:41:54 Uhr
Goto Top
Versuch mal über den UNC-Pfad dran zu kommem, also \\.\C:\folder\subfolder\...
127712
127712 12.03.2016 aktualisiert um 00:47:45 Uhr
Goto Top
Hallo,

In solchen Faellen hilft der Totalcommander ungemein.
Eventuell kannst Du auch das Tool "Unlocker" einsetzen. Das hilft mir des oefteren bei "unloeschbaren" Dateien.
Weiterhin kannst Du, wie schon genannt, mit "subst" in die Verzeichnistruktur mounten und dort anfangen mit loeschen. Ist etwas mehr Handarbeit, funktioniert aber zuverlaessig.

Gruss Ralf
kaiand1
kaiand1 12.03.2016 aktualisiert um 01:19:39 Uhr
Goto Top
Nun Anhand der Ordnereigenschaften kannst du ja sehen wer ihn Erstellt hat sowie wann dies war.
Möglich das es über ein Programm war und er dort beim Speichern nugr "\Projekt1" als Copy & mehrfach paste verwendet hat und es dadurch gekommen ist...
Notfalls nimmst du halt Linux dafür face-smile

Was aber sicherlich Hilft ist wenn du nach einigen Ordner drin bist und diesen Verschiebst auf die Rootebende und dann löschen.
Das System kann nicht den ganzen Pfad auf einmal Löschen da dieser zulang ist aber durch das Verschieben kannst du diesen kürzen oder halt auch einen Langen erzeugen.
Hatte auch im laufe der Zeit Ordner die beim Neuordnen aufgefallen sind das diese die Max Ordnerlänge erreicht haben und deshalb Verschieben nicht ging...
Biber
Lösung Biber 12.03.2016, aktualisiert am 14.03.2016 um 01:58:39 Uhr
Goto Top
Moin DerWoWuste,

wenn du - so wie ich - irgendwann mal deinen Kindern einen ausgesonderten Rechner ins Zimmer stellst und die ihren Spieltrieb ausleben dürfen, dann hast du sehr schnell diese Verzeichnisstrukturen.
Und die Kidz brauchen auch keine Tools dafür, es geht mit einer Zeile vom CMD-Prompt.
Vor fast einem Jahrzehnt hatte ich mal mit Kollege Lonesome Walker einen kleinen Test laufen: rekursives Anlegen von Unterordnern mit je 9 Unterordnern, um mal zu testen, wo die Sollbruchstelle ist bei Verzeichnisstrukturen-Anlegen unter Windows (Plattenplatz, Pfädlänge, Hauptspeicher, Programmierfehler im CMD-Interpreter,..).

Du wärest erstaunt, wie viele Tage eine vom CMD-Prompt abgefeuerte Zeile laufen kann face-wink

Zu deinem Problem drei Lösungsansätze:

1. Der Trick mit Robocopy "LeererPfad" "LangerPfad" /MIR funktioniert schon, wenn man den Befehl so lange ausführt, bis
keine Fehlermeldung mehr erscheint (mit einer Ramdisk ausprobiert).

2. Microsofts Löungsvorschlag ist noch einfacher:
Den \\?\LW:\Pfad oder \\?\UNC\Server\Share... - Prefix in der Konsole verwenden:

https://msdn.microsoft.com/en-us/library/aa365247.aspx

Der Link ist schon älter, aber wirklich nur wiederzufinden, wenn man ihn sich mal irgendwann "gemerkt" hat.

3. Und ansonsten wäre die dritte Lösung, die Ordner nach der gleichen Mimik rekursiv löschen zu lassen, wie sie angelegt worden sind
- ab obersten Unterverzeichnis
- wenn Unterverzeichnis vorhanden, gehe eine Verzeichnisnisebene tiefer und führe diese Zeile nochmal aus
- sonst gehe eine Ebene höher und lösche das gerade gefundene Verzeichnis ohne Subfolder, gehe wieder zu Zeile 2

Präferenz wäre Alternative 2.

Grüße
Biber
SamvanRatt
SamvanRatt 12.03.2016 aktualisiert um 12:40:07 Uhr
Goto Top
Hallo DerWoWusste
Bibers Version ist genau das wie ich es löse:
du willst die Dateien/Ordner nicht gelöscht haben, sondern du willst Leere darin. Leerer Ordner mit potenten Tools wie robocopy lösen das sicher! NTFS ist bei 32k Zeichen am Ende, genau da dürfte dein anderes Tool abgebrochen sein. Gehabt habe ich das bereits öfters mit symbolischen +verschachtelten Links. Robocopy hat genau dafür auch die XJ Option. Als wir früher noch Mac's und NFS erlaubt hatten waren Explorer inkompatible Namen eher die Regel und nur lowlevel Tools (robocopy war damals noch nicht) sehr überschaubar. Directory Opus (aus dem Amiga Umfeld entstanden), war damals zusammen mit DTF ...oder so (eher ein Binary Editor für Partitionen) das einzige um dem Herr zu werden. Die berühmten WhiteSpaces kennst du ja sicher oder einen Backslash im Namen.
Naja Fileadmins haben schon merkwürdige Tools in der Schublade face-smile

Gruß
Sam

P.S.: Sollte das löschen wegen genau 32k Zeichen nicht gehen, den obersten Ordner ein Zeichen kürzen und dann geht's.
DerWoWusste
DerWoWusste 12.03.2016 aktualisiert um 18:05:06 Uhr
Goto Top
Moin allerseits.

Wow, rege Anteilnahme! Ich werde Montag vielleicht dazu kommen, die Methoden mal alle durchzugehen.
Totalcommander/UNC-Pfade/Subst/robocopy hatte ich ja alles schon erfolglos durch. Da Biber nun sagt, man hätte Erfolg mit mehrfach robocopy, werde ich darauf als erstes zurückkommen - gleich nach \\?\... natürlich.

Aber das "woher kommt dieser Ordnerwust?" war meine eigentliche Frage. Der Kollege spielt nicht mit seinem Rechner, er arbeitet. Auch verwendet er keine Junctions und mit Sicherheit keine Skripte. Ich bin u.a. Fileserveradmin schon seit Ewigkeiten - habe das noch nie gesehen.
SamvanRatt
SamvanRatt 12.03.2016 um 20:51:07 Uhr
Goto Top
Woher: robocopy ist der ideale Kandidat dafür und hatte ich viele Male, wenn andere Datenumzug machen wollten/durften. Gerade im Bereich: sichere mir mal sicherheitshalber mein Profile....

Behebung:
robocopy /MIR X:\leererOrdern x:woauchimmerdeinböserOrdnerliegt
und warten.
DerWoWusste
DerWoWusste 14.03.2016 aktualisiert um 10:51:22 Uhr
Goto Top
So.

Er ist weg. Nach ca. 10 mal robocopy war er erledigt.
Hatte vorher noch \\?\LW:\Pfad oder \\?\UNC\Server\Share... versucht, das brachte nichts.

Danke Biber, der Hinweis auf wiederholte Ausführung war gut.

Die eigentliche Frage bleibt bestehen, welcher Umstand führt zu sowas? Nutzer spielt nicht rum, hat keine neuen Programme benutzt.
Na ja. Solang das nicht morgen wieder passiert, kann das Thema auch geschlossen werden - ich warte dann mal ab.
114757
114757 14.03.2016 aktualisiert um 10:55:14 Uhr
Goto Top
Zitat von @DerWoWusste:
Die eigentliche Frage bleibt bestehen, welcher Umstand führt zu sowas?
Nutzer spielt nicht rum, hat keine neuen Programme benutzt.
Ein Programm hat misst gebaut(z.B. Schleife aus dem Ruder gelaufen)?, oder ein anderer Admin / User welcher Zugriff auf das Verzeichnis hat es verursacht? Ließe sich ja am Owner ermitteln.
DerWoWusste
DerWoWusste 14.03.2016 um 10:55:04 Uhr
Goto Top
Owner war der Nutzer selbst.
114757
114757 14.03.2016 aktualisiert um 10:57:03 Uhr
Goto Top
User erzählen einem manchmal viel wenn der Tag lang ist. Vor allem Sekretärinnen face-wink, die sind nie schuld face-big-smile
Biber
Biber 14.03.2016 aktualisiert um 11:10:10 Uhr
Goto Top
Zitat von @DerWoWusste:

So.

Er ist weg. Nach ca. 10 mal robocopy war er erledigt.
Hatte vorher noch \\?\LW:\Pfad oder \\?\UNC\Server\Share... versucht, das brachte nichts.
Ein Nachtrag evtl noch, an den ich nicht mehr gedacht habe, weil ... ich habe noch diesen Tipp in meiner Registry eingepflegt :

https://support.microsoft.com/de-de/kb/156276

Ob das Löschen via UNC-Prefix deshalb geklappt hat oder der Registry-Eintrag unter Windows 7 nicht erforderlich ist, weiß ich nicht, ausprobiert habe ich das nicht.

Aber wenn du jetzt eine Lösung hast, reicht es ja.

Die eigentliche Frage bleibt bestehen, welcher Umstand führt zu sowas?
Nutzer spielt nicht rum, hat keine neuen Programme benutzt.
Wie SamVanRatt am 12.03.2016 schrieb: robocopy ist der ideale Kandidat.

Die Kombination von Robocopy x:\subdir1\subsubdir2 x:\subdir1\subsubdir2\subsubsub3 /MIR oder ähnliche Aktionen nach dem Motto "mach mal lustige Aktionen auf dem Ast, auf dem ich gerade sitze" wären auch meine üblichen Verdächtigen.

Grüße
Biber
[Edit]
Zitat von @114757:

User erzählen einem manchmal viel wenn der Tag lang ist. Vor allem Sekretärinnen face-wink, die sind nie schuld face-big-smile
Ja, kann ich bestätigen. Sowohl Sekretärinnen wie Praktikantinnen sind ja oft schon unschuldig bei der Einstellung.
[/Edit]
DerWoWusste
DerWoWusste 14.03.2016 aktualisiert um 11:08:55 Uhr
Goto Top
User erzählen einem manchmal viel wenn der Tag lang ist. Vor allem Sekretärinnen
Das stimmt. Habe testhalber am WE auch probiert, so einen Pfad zu erzeugen, es gelang mir auch, durch eine Schleife a la:
md c:\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk\
subst e: c:\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk
md e:\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk
subst f: e:\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk\wödeljkhnflwkönlkjsdlk
usw.

Was soll's. Wenn er das noch einmal schafft, werde ich ihn den robocopy-Zauberspruch lehren, dann darf er sich selbst helfen.

@Biber
Teste ich noch, danke.