Samba - einige Datein von Win nicht sichtbar
Moin Moin, ich habe hier ein Problem mit Samba: ich habe eine Samba-Share auf die ich von Win2k aus zugreife. Im Prinzip funtkioniert das auch alles wunderbar. Jetzt ist mir an 2 Dateien aufgefallen, daß diese von Win2k aus nicht sichtbar sind. Linux zeigt mir diese Dateien auch ohne Probleme an. Eine hat z.B. folgenden Namen: "Saar Saarb?cken 82 - Saarburg 11.sdw" Unter Windows heißt das eigentlich SaarbrÜcken. Wenn ich die Datei unter Linux umbenenne, zeigt Windows sie mir auch an! Bei diesen 2 Dateien ist das auch soweit kein Problem, aber ich bin mir ja nicht sicher, ob das alle Dateien sind. Kann mir jemand erklären, woher das Problem kommt, und wie man das lösen kann? Bei der Gelegenheit: wie kann ich mir denn unter Linux die Anzahl der Datein in einem Verzeichnis anzeigen lassen? Das könnte ich dann mit Windows vergleichen. Mir geht es darum, das keine Datein verloren gehen. Gruß & Danke Thilo
Hallo Thilo, Thilo A. Coblenzer schrieb am 27.09.2002 (16:30):
Bei der Gelegenheit: wie kann ich mir denn unter Linux die Anzahl der Datein in einem Verzeichnis anzeigen lassen? Das könnte ich dann mit Windows vergleichen. Mir geht es darum, das keine Datein verloren gehen.
ls | wc -l ist die einfachste Variante und zählt auch Verzeichnisse mit. Nur brauchbar, wenn Du keine Strukturen unterhalb der betroffenen Ebene hast. Mit "find . -type f" kommst Du der Sache schon näher, aber der zählt Dateien in Unterverzeichnissen mit, also mußt Du ihm mit -maxdepth beibringen, wie weit er suchen soll. Gruß, Antje -- Friends may come and go, but enemies accumulate.
Am Freitag, 27. September 2002 16:41 schrieb Antje M. Bendrich:
Thilo A. Coblenzer schrieb am 27.09.2002 (16:30):
Bei der Gelegenheit: wie kann ich mir denn unter Linux die Anzahl der Datein in einem Verzeichnis anzeigen lassen? Das könnte ich dann mit Windows vergleichen. Mir geht es darum, das keine Datein verloren gehen.
ls | wc -l ist die einfachste Variante und zählt auch Verzeichnisse mit. Nur brauchbar, wenn Du keine Strukturen unterhalb der betroffenen Ebene hast.
Mit "find . -type f" kommst Du der Sache schon näher, aber der zählt Dateien in Unterverzeichnissen mit, also mußt Du ihm mit -maxdepth beibringen, wie weit er suchen soll. Das mit dem find ist genau das was ich gesucht habe. Das hat mir 275 genannt, Windows sagt 238 Dateien 13 Ordner. D.h. da sind noch mehr Probleme.
Kann mir da jemand helfen? Gruß Thilo
Hallo Thilo, Thilo A. Coblenzer schrieb am 27.09.2002 (16:46):
Am Freitag, 27. September 2002 16:41 schrieb Antje M. Bendrich:
Thilo A. Coblenzer schrieb am 27.09.2002 (16:30):
Bei der Gelegenheit: wie kann ich mir denn unter Linux die Anzahl der Datein in einem Verzeichnis anzeigen lassen? Das könnte ich dann mit Windows vergleichen. Mir geht es darum, das keine Datein verloren gehen.
Mit "find . -type f" kommst Du der Sache schon näher, aber der zählt Dateien in Unterverzeichnissen mit, also mußt Du ihm mit -maxdepth beibringen, wie weit er suchen soll. Das mit dem find ist genau das was ich gesucht habe. Das hat mir 275 genannt, Windows sagt 238 Dateien 13 Ordner. D.h. da sind noch mehr Probleme.
Kann mir da jemand helfen?
Als Ansatz: Wenn Du Windows dazu kriegst, im DOS-Fenster die Dateien mit langem Namen anzuzeigen, dann kannst Du die Ausgabe auch mit ">dateiname" in eine Datei umleiten. Diese Datei könntest Du (unter linux) mit großzügigem Einsatz von cut, awk oder ähnlichem in eine ordentliche Form überführen. Unter Linux erstellt Du (mit find oder ls) eine ebensolche Datei. Beide Dateien jagst Du erst durch "sort" und danach durch "diff". Schwupps - Du hast eine Liste der problematischen Dateinamen. Das Problem sehe ich dabei vor allem im Windows- bzw. DOS-Bereich. Ich persönlich würde versuchen es zu umgehen, indem ich cygwin installiere (bash für Windows), aber ich weiß nicht, ob der Aufwand gerechtfertigt ist (obwohl man es immer mal brauchen kann) und ob es die korrekten Ergebnisse liefert, sprich mit dem Umlauten genauso umgeht wie Windows. Viel Erfolg, Antje -- When tempted to fight fire with fire, remember that the Fire Department usually uses water.
Tach On Friday 27 September 2002 16:30, Thilo A. Coblenzer wrote:
Moin Moin, ich habe hier ein Problem mit Samba: ich habe eine Samba-Share auf die ich von Win2k aus zugreife. Im Prinzip funtkioniert das auch alles wunderbar. Jetzt ist mir an 2 Dateien aufgefallen, daß diese von Win2k aus nicht sichtbar sind. Linux zeigt mir diese Dateien auch ohne Probleme an. Eine hat z.B. folgenden Namen: "Saar Saarb?cken 82 - Saarburg 11.sdw" Unter Windows heißt das Die Datei heißt also eigentlich Saar_Saarbrücken_82_-_Saarburg_11.sdw". Ich habe vor wenigen Tagen genau das Problem gesehen, als jemand versucht hat ein FAT-Platte unter linux zu mounten ohne beim mount codepage=850 anzugeben. Ein Umbenennen hatte in dem Fall allerdings katastrophale Folgen gehabt. Da haben wir dann den Parameter beim mount angegeben und alles war in Butter. Mit samba war in dem Fall alles in Ordnung.
mfg Axel
Am Freitag, 27. September 2002 17:13 schrieb Axel Heinrici:
On Friday 27 September 2002 16:30, Thilo A. Coblenzer wrote:
ich habe hier ein Problem mit Samba: ich habe eine Samba-Share auf die ich von Win2k aus zugreife. Im Prinzip funtkioniert das auch alles wunderbar. Jetzt ist mir an 2 Dateien aufgefallen, daß diese von Win2k aus nicht sichtbar sind. Linux zeigt mir diese Dateien auch ohne Probleme an. Eine hat z.B. folgenden Namen: "Saar Saarb?cken 82 - Saarburg 11.sdw" Unter Windows heißt das
Die Datei heißt also eigentlich Saar_Saarbrücken_82_-_Saarburg_11.sdw". Ich habe vor wenigen Tagen genau das Problem gesehen, als jemand versucht hat ein FAT-Platte unter linux zu mounten ohne beim mount codepage=850 anzugeben. Ein Umbenennen hatte in dem Fall allerdings katastrophale Folgen gehabt. Da haben wir dann den Parameter beim mount angegeben und alles war in Butter. Mit samba war in dem Fall alles in Ordnung. Danke für den Tip. Bei mir ist es so: Die Dateien wurden mal per Samba auf die Platte kopiert. Jetzt habe ich die Platte in einen anderen Rechner eingebaut und die Partition (ext2) als User gemountet. Der Mountpoint ist per Samba freigegeben. Bei einer ext2-Partition kann ich ja keine codepage angeben. Das ist doch nur für fat, oder?
Gruß & Danke Thilo
On Friday 27 September 2002 17:29, Thilo A. Coblenzer wrote:
Am Freitag, 27. September 2002 17:13 schrieb Axel Heinrici:
On Friday 27 September 2002 16:30, Thilo A. Coblenzer wrote:
ich habe hier ein Problem mit Samba: ich habe eine Samba-Share auf die ich von Win2k aus zugreife. Im Prinzip funtkioniert das auch alles wunderbar. Jetzt ist mir an 2 Dateien aufgefallen, daß diese von Win2k aus nicht sichtbar sind. Linux zeigt mir diese Dateien auch ohne Probleme an. Eine hat z.B. folgenden Namen: "Saar Saarb?cken 82 - Saarburg 11.sdw" Unter Windows heißt das
Die Datei heißt also eigentlich Saar_Saarbrücken_82_-_Saarburg_11.sdw". Ich habe vor wenigen Tagen genau das Problem gesehen, als jemand versucht hat ein FAT-Platte unter linux zu mounten ohne beim mount codepage=850 anzugeben. Ein Umbenennen hatte in dem Fall allerdings katastrophale Folgen gehabt. Da haben wir dann den Parameter beim mount angegeben und alles war in Butter. Mit samba war in dem Fall alles in Ordnung.
Danke für den Tip. Bei mir ist es so: Die Dateien wurden mal per Samba auf die Platte kopiert. Jetzt habe ich die Platte in einen anderen Rechner eingebaut und die Partition (ext2) als User gemountet. Der Mountpoint ist per Samba freigegeben. Bei einer ext2-Partition kann ich ja keine codepage angeben. Das ist doch nur für fat, oder?
Ja, nur da die Dateien auch unter linux falsch angezeigt werden, habe ich vermutet, dass die bereits falsch gemountet wurden. Es ist natürlich auch möglich, dass die Dateien bzw. die Dateinamen bereits beim Kopieren auf die Platte beschädigt wurden. Die Codepage für ext2 wird meines wissen direkt vom Kernel festgelegt und sollte eigentlich bei allen europäischen linuxes richtig sein. Möglicherweise war auf dem Rechner mit dem die Dateien auf die Platte kopiert wurden irgendetwas faul an den leidigen codepages/character sets. Es ist aber definitiv so, dass man "durch samba hindurch" nur Dateien sieht die völlig legale Namen haben. D.h die entsprechenden Zeichen müssen sowohl in der codepage des für den mount zuständigen Kernels liegen, als auch im "character set" des entsprechenden samba liegen. Kannst du eine Datei "äöüß" unter linux erzeugen und dann von windows aus sehen? Wenn ja, musst du wahrscheinlich die Dateinamen der unsichbaren files reparieren. Ob und wie man das durch ein Skript lösen kann weiß ich allerdings nicht. .... Obwohl ich nehme mal stark an, dass man das automatisch reparieren kann.... Wenn nein, ist an deinem samba noch etwas mit diesen, einen in den Wahnsinn treibenden codepages oder character sets, falsch. Die files musst du aber auch dann reparieren. mfg Axel
Am Freitag, 27. September 2002 17:55 schrieb Axel Heinrici:
On Friday 27 September 2002 17:29, Thilo A. Coblenzer wrote:
Am Freitag, 27. September 2002 17:13 schrieb Axel Heinrici:
On Friday 27 September 2002 16:30, Thilo A. Coblenzer wrote:
ich habe hier ein Problem mit Samba: ich habe eine Samba-Share auf die ich von Win2k aus zugreife. Im Prinzip funtkioniert das auch alles wunderbar. Jetzt ist mir an 2 Dateien aufgefallen, daß diese von Win2k aus nicht sichtbar sind. Linux zeigt mir diese Dateien auch ohne Probleme an. Eine hat z.B. folgenden Namen: "Saar Saarb?cken 82 - Saarburg 11.sdw" Unter Windows heißt das
Die Datei heißt also eigentlich Saar_Saarbrücken_82_-_Saarburg_11.sdw". Ich habe vor wenigen Tagen genau das Problem gesehen, als jemand versucht hat ein FAT-Platte unter linux zu mounten ohne beim mount codepage=850 anzugeben. Ein Umbenennen hatte in dem Fall allerdings katastrophale Folgen gehabt. Da haben wir dann den Parameter beim mount angegeben und alles war in Butter. Mit samba war in dem Fall alles in Ordnung.
Danke für den Tip. Bei mir ist es so: Die Dateien wurden mal per Samba auf die Platte kopiert. Jetzt habe ich die Platte in einen anderen Rechner eingebaut und die Partition (ext2) als User gemountet. Der Mountpoint ist per Samba freigegeben. Bei einer ext2-Partition kann ich ja keine codepage angeben. Das ist doch nur für fat, oder?
Ja, nur da die Dateien auch unter linux falsch angezeigt werden, habe ich vermutet, dass die bereits falsch gemountet wurden.
Es ist natürlich auch möglich, dass die Dateien bzw. die Dateinamen bereits beim Kopieren auf die Platte beschädigt wurden. Die Codepage für ext2 wird meines wissen direkt vom Kernel festgelegt und sollte eigentlich bei allen europäischen linuxes richtig sein. Möglicherweise war auf dem Rechner mit dem die Dateien auf die Platte kopiert wurden irgendetwas faul an den leidigen codepages/character sets. Es ist aber definitiv so, dass man "durch samba hindurch" nur Dateien sieht die völlig legale Namen haben. D.h die entsprechenden Zeichen müssen sowohl in der codepage des für den mount zuständigen Kernels liegen, als auch im "character set" des entsprechenden samba liegen.
Kannst du eine Datei "äöüß" unter linux erzeugen und dann von windows aus sehen? Wenn ja, musst du wahrscheinlich die Dateinamen der unsichbaren files reparieren. Ob und wie man das durch ein Skript lösen kann weiß ich allerdings nicht. .... Obwohl ich nehme mal stark an, dass man das automatisch reparieren kann.... Wenn nein, ist an deinem samba noch etwas mit diesen, einen in den Wahnsinn treibenden codepages oder character sets, falsch. Die files musst du aber auch dann reparieren.
OK, ich werde mich dann mal per Hand jedem einzelnen Ordner widmen und nach "Unsichtbaren" suchen. Es langt übrigens nicht, aus Saarbr?cken Saarbrücken zu machen. Ich muß einen komplett anderen Namen nehmen. Dann ist die Datei unter Windows unbeschädigt. Vielen Dank für die Hilfe! Gruß Thilo
On Friday 27 September 2002 18:55, Thilo A. Coblenzer wrote:
OK, ich werde mich dann mal per Hand jedem einzelnen Ordner widmen und nach "Unsichtbaren" suchen. Es langt übrigens nicht, aus Saarbr?cken Saarbrücken zu machen. Ich muß einen komplett anderen Namen nehmen. Dann ist die Datei unter Windows unbeschädigt.
Klappen dennn files mit Umlauten? Wenn nicht würde ich dir dringend empfehlen nochmal die smb.conf zu überprüfen
Vielen Dank für die Hilfe!
gern geschehen mfg Axel
Am Freitag, 27. September 2002 20:27 schrieb Axel Heinrici:
On Friday 27 September 2002 18:55, Thilo A. Coblenzer wrote:
OK, ich werde mich dann mal per Hand jedem einzelnen Ordner widmen und nach "Unsichtbaren" suchen. Es langt übrigens nicht, aus Saarbr?cken Saarbrücken zu machen. Ich muß einen komplett anderen Namen nehmen. Dann ist die Datei unter Windows unbeschädigt.
Klappen dennn files mit Umlauten? Wenn nicht würde ich dir dringend empfehlen nochmal die smb.conf zu überprüfen
Also ich kann eine Datei mit dem Namen äöü unter Linux anlegen und die ist dann auch unter Samba sichtbar! Das Problem scheint wirklich nur mit Dateien auf der alten Platte zu sein. Gruß & Danke Thilo
On Fri, 27 Sep 2002, Thilo A. Coblenzer wrote:
Moin Moin, ich habe hier ein Problem mit Samba: ich habe eine Samba-Share auf die ich von Win2k aus zugreife. Im Prinzip funtkioniert das auch alles wunderbar. Jetzt ist mir an 2 Dateien aufgefallen, daß diese von Win2k aus nicht sichtbar sind. Linux zeigt mir diese Dateien auch ohne Probleme an. Eine hat z.B. folgenden Namen: "Saar Saarb?cken 82 - Saarburg 11.sdw" Unter Windows heißt das eigentlich SaarbrÜcken. Wenn ich die Datei unter Linux umbenenne, zeigt Windows sie mir auch an! Bei diesen 2 Dateien ist das auch soweit kein Problem, aber ich bin mir ja nicht sicher, ob das alle Dateien sind. Kann mir jemand erklären, woher das Problem kommt, und wie man das lösen kann?
folgende Werte der smb.conf anschauen, und pruefen ob das sinnvoll ist: echo|testparm|egrep '(mangl|case|hide)' ggf. die Werte anpassen und Samba stopen und starten (kein restart mit kill -1 sondern ganz neu starten) Von W2k neu Verbindung erstellen. Ausserdem kanst du wie folgt Samba von deinem Linux aus testen: (evtl Usernamen und Passwort angeben) smbclient //server/share dann gibt's 'nen Prompt, dort machst du cd dein-dir und ls Oder das ganze automatisiert, und als Ergebnis Anzahl der Files und Dirs: (echo cd dein-dir;echo ls) \ |smbclient //server/share|awk '(NF>6){x++}END{print x-1}'
Bei der Gelegenheit: wie kann ich mir denn unter Linux die Anzahl der Datein in einem Verzeichnis anzeigen lassen? Das könnte ich dann mit Windows vergleichen. Mir geht es darum, das keine Datein verloren gehen.
find dein-dir -type f|wc -l
Hallo Achim, On Friday 27 September 2002 18:02, Achim Hoffmann wrote:
folgende Werte der smb.conf anschauen, und pruefen ob das sinnvoll ist:
echo|testparm|egrep '(mangl|case|hide)'
hihi, Du hast meine Stimme für den "useless-use-of-echo"-Award. ;-) testparm -s | egrep ... SCNR und schönes Wochenende, Stephan -- /* Stephan Hakuli -=-=-=- http://www.hakuli.de/stephan Encryption with GnuPG/GPG is strongly encouraged, my public key is available on my website or on common public keyservers. # find /usr/src/linux-2.2.20 -name "*.[hc]"|xargs grep "can grep" */
Am Freitag, 27. September 2002 18:10 schrieb Stephan Hakuli:
Hallo Achim,
On Friday 27 September 2002 18:02, Achim Hoffmann wrote:
folgende Werte der smb.conf anschauen, und pruefen ob das sinnvoll ist:
echo|testparm|egrep '(mangl|case|hide)'
hihi, Du hast meine Stimme für den "useless-use-of-echo"-Award. ;-)
testparm -s | egrep ...
thilo@server:~> testparm -s |egrep '(mangl|case|hide)' mangled stack = 50 hide local users = No default case = lower case sensitive = No preserve case = Yes short preserve case = Yes mangle case = No mangling char = ~ hide dot files = Yes hide unreadable = No hide files = mangled names = Yes mangled map = Könnte etwas davon mein Problem verursachen? Leider sagt mir nicht alles davon etwas. Aber ich sehe so direkt kein Problem. Gruß & Danke Thilo
participants (5)
-
Achim Hoffmann
-
Antje M. Bendrich
-
Axel Heinrici
-
Stephan Hakuli
-
Thilo A. Coblenzer