"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Filenames Win-> Linux

dosser 23.11.2005 - 16:09 863 9
Posts

dosser

Bloody Newbie
Avatar
Registered: Nov 2005
Location: At Home
Posts: 11
hi

Ich krieg sehr viele Dateien zum bearbeiten und archivieren im Windows-Filname-Format mit teilweise recht kryptischen nationalen sonderzeichen.

Viele davon kann ich daher unter Linux nicht öffnen.

Gibt es ein Progi das mir checkt welche filenamen nicht Linux-conform sind und mir eventuell auch gleich eine rename-möglichkeit anbietet.

Eventuell gibts da vielleicht was, das ich mir per konfigurierbarer konvertierungstabelle selbst einstellen kann ?

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12070
Windows verwendet eine bestimmte Codepage, wenn es Dateinamen in die MFT schreibt. Unter GNU/Linux kannst du wahlen, welche der Kernel unterstuetzt, und mit welcher der Codepages ein "fremdes" Volume interpretiert werden soll. Dann duerfte es eigentlich keine Probleme mit sowas geben. Mit find, mv und sed kannst du dir auch in wenigen Zeilen ein Skrip basteln, das dir Dateien fast beliebig umbenennen kann.

dosser

Bloody Newbie
Avatar
Registered: Nov 2005
Location: At Home
Posts: 11
Zitat von COLOSSUS
Windows verwendet eine bestimmte Codepage, wenn es Dateinamen in die MFT schreibt. Unter GNU/Linux kannst du wahlen, welche der Kernel unterstuetzt, und mit welcher der Codepages ein "fremdes" Volume interpretiert werden soll. Dann duerfte es eigentlich keine Probleme mit sowas geben. Mit find, mv und sed kannst du dir auch in wenigen Zeilen ein Skrip basteln, das dir Dateien fast beliebig umbenennen kann.

Ja wenns so einfach wäre ...

Die shares liegen auf einem 2003er Server - also nix mit Smb.
(ausser ich mach die Linux-Kiste zum Domänenmitglied).

Also mach ich das mit NFS, und da geht nichts mit Codepage oder UTF8

Oder hab ich was an den Augen )

Statistisch kann ich ca 2% der Dateien nicht ansprechen. Nur welche ? Bei 100000 an Tag ist da an ein händisches suchen nicht zu denken.

Wie find ich also raus welche Dateien Linux (auf Grund eines falschen Namens-Formates) nicht anprechen kann.

Der Mist is nur das ich nicht mal seh welche Files mir da fehlen.

Ich hab sowohl am Windows wie am Linux einen Mysql laufen. Der zählt die gefunden files mit.

Unter Windows findet der logischerweise alle files.
Unter Linux fehlt mir jede Menge - aber wie find ich die raus ?

Da Linux die Files offensichtlich nicht mal sieht, kann ich die auch dort nicht bearbeiten oder umbenennen, muss also am Windows passieren.

Für jeden Zweck gibts 100te Progis nur dafür nicht ?

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12070
Kannst du das Szenario durch ein paar Beispiele ausschmuecken? Ich kann mir nicht wirklich vorstellen, wie sich dieses problem jetzt tatsaechlich materialisiert - "siehst" du die FIles ueberhaupt nicht, wenn du die NFS-Shares mountest? (nfsd rennt auf der win2k3-Box, wenn ich das richtig verstanden habe?)

dosser

Bloody Newbie
Avatar
Registered: Nov 2005
Location: At Home
Posts: 11
Erst mal Danke das Du Dir meinen Kopf zerbrichst :-)

Also ich hab:

1)
Win2k3 mit Mysql und OMNI-NFS-Server

Da liegen auch die Files aus denen Mysql die Daten herauszieht. Geht 1a.
Und da seh ich beim DB-Update auch die Anzahl der Files - und die stimmt. Nur is diese Lösung um 30% langsamer als auf Linux

2)
Eine Linux-Sarge Box mit Mysql. Das Mounten der Exports vom Win2k3 geht einwandfrei.

Das Updaten der Mysql-DB funktioniert auch, nur fehlen files ( das seh ich bei der Anzahl der gefundenen files).

Da die Files nicht gefunden (bzw nicht gelesen) werden weiss ich nicht welche. Und das ist das Hauptproblem.

Das ganze händisch zu bearbeiten ist bei 50000 - 100000 files pro tag illusorisch.

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12070
Wodurch und wie werden die Dateien (bzw. deren Pfade) denn in deine Datenbank eingelesen?

Sagt dir der Kernel Debug Ringbuffer (dmesg) vielleicht irgendwas von wegen (zu) alter NFS Version oder dergleichen?

dosser

Bloody Newbie
Avatar
Registered: Nov 2005
Location: At Home
Posts: 11
Ich hab mich mal mit dem auflisten der der files und subdirectories auf der Linux-box befasst, und bin einen Schritt weiter:

Bei einigen Directories krieg ich "Stale NFS file handle"

Schuld daran sind Sonderzeichen in einigen Directory namen, die Linux diese dann nicht als Directory erkennt.

Problem machen zb. "à" (0xE0) und "è" (0xE8)

Erkannt hingegen wird "ù" (0xF9)

Sehr seltsam !!!

SYSMATRIX

Legend
Legend
Registered: May 2000
Location: ~
Posts: 5020
und wie siehts mit CIFS aus?

dosser

Bloody Newbie
Avatar
Registered: Nov 2005
Location: At Home
Posts: 11
Zitat von SYSMATRIX
was ist mit der richtigen codepage?

Geht nicht zum einstellen. Warum ? siehe weiter oben

SYSMATRIX

Legend
Legend
Registered: May 2000
Location: ~
Posts: 5020
jop, ist mir klar geworden. siehe edit.
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz