PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SuSE 9.1 - Samba 3.0.4 - Ordner mit vielen Dateien



READY
29.06.04, 10:25
Hallo,

folgendes Problem: Ich habe kürzlich eine Box mit SuSE9.1 mit Samba 3.0.4 als PDC aufgesetzt. Vorher verwendete ich auf der Box ein SuSE8.1 mit der dazugehörigen Sambaversion. (Neuinstallation, kein Upgrade..)

Ich habe mehrere Ordner welche viele Dateien beinhalten (ca. 7000), die Samba Version der SuSE8.1 Distribution machte mir damit keine Probleme, jedoch werden in der aktuellen Version in einem Listing von einem Windows Client nicht alle Dateien angezeigt, es hört dann zB alphabetisch beim Buchstaben 'm' auf. Wenn ich in einer Applikation einen Dateinamen direkt angebe wird die Datei auch geöffnet, jedoch in einem Listing nicht angezeigt.
Ich habe schon ein wenig in der Samba Dokumentation gesucht und in der SuFu, konnte jedoch keine Lösung für mein Problem finden!
Anbei meine Konfiguration:



[global]
workgroup = PDC.COM
netbios name = OAK
server string = OAK Samba Server, running Samba %v
encrypt passwords = Yes
password level = 4
socket options = SO_KEEPALIVE IPTOS_LOWDELAY TCP_NODELAY
character set = ISO8859-1
logon script = logon.bat
domain logons = Yes
os level = 34
preferred master = Yes
domain master = Yes
wins support = Yes
local master = Yes
#logon path = \\oak\%u\profile
logon path =
logon drive = X:
logon home = \\oak\%u
valid chars = 148:153 132:142 129:154 225
create mask = 0755
printing = lprng
veto files = /*.eml/*.nws/riched20.dll/*.{*}/
map archive = No
mangled names = No

[homes]
comment = Home Directories
read only = No
create mask = 0600
directory mask = 0700

[fax]
comment = FAX Directory
path = /usr/local/fax
read only = No
create mask = 0777
directory mask = 0777
guest ok = No

[apps]
comment = Applications
path = /var/apps
read only = No
create mask = 0777
directory mask = 0777
guest ok = No

[public]
comment = Public
path = /var/public
read only = No
create mask = 0777
directory mask = 0777
guest ok = No

[pdf]
comment = PDF creator
path = /var/tmp
printable = Yes
print command = /usr/bin/smbprngenpdf -J '%J' -c %c -s %s -u '%u' -z %z
create mask = 0600



Hoffe mir kann geholfen werden..
Vielen Dank!

READY
14.07.04, 09:12
*hochschieb*

mamue
14.07.04, 13:17
Generell ist es nicht ratsam so viele Dateien in einem Verzeichniss zu haben, das mit samba freigegeben wird. Samba muß alle Dateien daraufhin untersuchen, ob es mit der Groß-/Kleinschreibung Probleme gibt. Das dauert bei vielen Dateien recht lange.
Gibt es vielleicht Dateien, die als lowercase-namen gleich sind, also etwa "test.mp3" und "Test.MP3"?
Ansonsten mal ins logfile schauen (siehe "log file" und "log level" ).

mamue

READY
16.07.04, 14:00
Erstmal danke für deine Antwort.


Generell ist es nicht ratsam so viele Dateien in einem Verzeichniss zu haben, das mit samba freigegeben wird. Samba muß alle Dateien daraufhin untersuchen, ob es mit der Groß-/Kleinschreibung Probleme gibt. Das dauert bei vielen Dateien recht lange.
Die Geschwindigkeit war als ich die 2er Samba Version verwendet hatte bei dieser Anzahl von Dateien völlig in Ordnung.


Gibt es vielleicht Dateien, die als lowercase-namen gleich sind, also etwa "test.mp3" und "Test.MP3"?
Nein, ausgeschlossen.

Es hört bei dem Buchstaben 'g' Irgendwo auf, die letzte angezeigte Datei heisst "gutche_3.ps".
Es werden genau 1701 Dateien angezeigt von 5368 die vorhanden sein müssten. Ein Rechteproblem ist ebenso ausgeschlossen. Es sind Dateien von [a-zA-Z] vorhanden.


Ansonsten mal ins logfile schauen (siehe "log file" und "log level" ).mamue
Grade mal mit loglevel 5 debugged, sind ca. 20.000 Lines.
Soll ich posten? *gg

Ich konnte daraus jedenfalls keine ernsthaften Fehlermeldungen entnehmen. Ich poste mal ein paar entsprechende Lines welche die zuletzt angezeigte Datei enthalten.



[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/grolm_01.ps fname=grolm_01.ps
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/gromba_1.ps fname=gromba_1.ps
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/gromba_1k.ps fname=gromba_1k.ps
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/grondi_1.ps fname=grondi_1.ps
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/grulke.ps fname=grulke.ps
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/grund_1.ps fname=grund_1.ps
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/gryfsk_1.ps fname=gryfsk_1.ps
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/grzywa_1.ps fname=grzywa_1.ps
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366gle_1.ps)
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/gr366gle_1.ps fname=gr366gle_1.ps
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366gle_1.ps)
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(374n_1.ps)
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/gr374n_1.ps fname=gr374n_1.ps
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(374n_1.ps)
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(374n_2.ps)
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/gr374n_2.ps fname=gr374n_2.ps
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(374n_2.ps)
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/guide_1.ps fname=guide_1.ps
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/gunreb_1.ps fname=gunreb_1.ps
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/gutche_3.ps fname=gutche_3.ps
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366tz_1.ps)
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/g366tz_1.ps fname=g366tz_1.ps
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366tz_1.ps)
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366tz_1a.ps)
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/g366tz_1a.ps fname=g366tz_1a.ps
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366tz_1a.ps)
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366tz_1l.ps)
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/g366tz_1l.ps fname=g366tz_1l.ps
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366tz_1l.ps)
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366tz_2.ps)
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/g366tz_2.ps fname=g366tz_2.ps
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366tz_2.ps)
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366tzl_1.ps)
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/g366tzl_1.ps fname=g366tzl_1.ps
[2004/07/16 13:19:36, 3] lib/charcnv.c:convert_string_internal(236)
convert_string_internal: Conversion error: Illegal multibyte sequence(366tzl_1.ps)
[2004/07/16 13:19:36, 3] smbd/trans2.c:call_trans2findnext(1780)
SMBtrans2 mask=* directory=Documents/pm7/PS dirtype=22 numentries=142
[2004/07/16 13:19:36, 3] smbd/process.c:process_smb(890)
Transaction 54 of length 106
[2004/07/16 13:19:36, 5] lib/util.c:show_msg(456)
[2004/07/16 13:19:36, 5] lib/util.c:show_msg(466)
size=102
smb_com=0x32
smb_rcls=0
smb_reh=0
smb_err=0
smb_flg=24
smb_flg2=51207
smb_tid=1
smb_pid=868
smb_uid=100
smb_mid=34114
smt_wct=15
smb_vwv[ 0]= 34 (0x22)
smb_vwv[ 1]= 0 (0x0)
smb_vwv[ 2]= 8 (0x8)
smb_vwv[ 3]=16384 (0x4000)
smb_vwv[ 4]= 0 (0x0)
smb_vwv[ 5]= 0 (0x0)
smb_vwv[ 6]= 0 (0x0)
smb_vwv[ 7]= 0 (0x0)
smb_vwv[ 8]= 0 (0x0)
smb_vwv[ 9]= 34 (0x22)
smb_vwv[10]= 68 (0x44)
smb_vwv[11]= 0 (0x0)
smb_vwv[12]= 0 (0x0)
smb_vwv[13]= 1 (0x1)
smb_vwv[14]= 2 (0x2)
smb_bcc=37
[2004/07/16 13:19:36, 3] smbd/process.c:switch_message(685)
switch message SMBtrans2 (pid 24293)
[2004/07/16 13:19:36, 4] smbd/uid.c:change_to_user(186)
change_to_user: Skipping user change - already user
[2004/07/16 13:19:36, 3] smbd/trans2.c:call_trans2findnext(1577)
call_trans2findnext: dirhandle = 256, max_data_bytes = 16384, maxentries = 1366, close_after_request=0, close_if_end = 1 requires_resume_key = 1 resume_key = 0 resume name = götzl_1.ps continue=0
level = 260
[2004/07/16 13:19:36, 3] smbd/dir.c:dptr_fetch_lanman2(551)
fetching dirptr 256 for path Documents/pm7/PS
[2004/07/16 13:19:36, 3] smbd/trans2.c:call_trans2findnext(1630)
dptr_num is 256, mask = *, attr = 16, dirptr=(0x83DDFE0,1703)
[2004/07/16 13:19:36, 5] smbd/trans2.c:call_trans2findnext(1763)
call_trans2findnext: closing dptr_num = 256
[2004/07/16 13:19:36, 4] smbd/dir.c:dptr_close_internal(224)
closing dptr key 256
[2004/07/16 13:19:36, 3] smbd/trans2.c:call_trans2findnext(1780)
SMBtrans2 mask=* directory=Documents/pm7/PS dirtype=22 numentries=0
[2004/07/16 13:19:36, 3] smbd/process.c:process_smb(890)
Transaction 55 of length 74
[2004/07/16 13:19:36, 5] lib/util.c:show_msg(456)
[2004/07/16 13:19:36, 5] lib/util.c:show_msg(466)
size=70
smb_com=0x32

Es erden nach der zuletzt angezeigten Datei laut dem log noch einige ausgelesen, diese sind im Windows allerdings nicht mehr zu sehen.
Die "Conversion error" Meldungen werden wohl durch Umlaute verusacht, stufe ich jetzt mal als bedenkenlos ein.

Naja, hoffe jemand hat noch irgendwelche Hinweise oder Ansätze.

mamue
16.07.04, 16:36
Erstmal danke für deine Antwort.
Es hört bei dem Buchstaben 'g' Irgendwo auf, die letzte angezeigte Datei heisst "gutche_3.ps".
Grade mal mit loglevel 5 debugged, sind ca. 20.000 Lines.
Soll ich posten? *gg

Ja, poste mal - aber als Ausgabe der gzipten Datei, damit ich nicht so viel zu lesen habe ;-)





[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/grolm_01.ps fname=grolm_01.ps
[2004/07/16 13:19:36, 5] smbd/trans2.c:get_lanman2_dir_entry(964)
get_lanman2_dir_entry found Documents/pm7/PS/gromba_1.ps fname=gromba_1.ps

Die "Conversion error" Meldungen werden wohl durch Umlaute verusacht, stufe ich jetzt mal als bedenkenlos ein.

Naja, spannend ist schon mal, das tatsächlich etwas Konvertierungsarbeit nötig ist (get_lanman2_dir_entry).
Sehe ich das richtig, dass durch den debug-level 5 weniger Dateien angezeigt werden als mit debug-level 0?
Du könntest doch einmal versuchen den Zeichensatz wieder richtig zu setzen, da hat sich zwischen samba2 und samba3 etwas geändert. Um den alten default zu haben, muß man jetzt explezit etwas einstellen. Ich habe allerdings nicht im Kopf, was es war, vielleicht hilft google, oder das howto auf samba.org.

HTH,
mamue

LKH
16.07.04, 16:57
Hi,

Standardzeichensatz bei Samba 3 ist UTF-8. Trage in die [GLOBAL] Sketion mal ein:

unix charset = iso8859-15
display charset = iso8859-15

Hoffe es hilft,

LKH

READY
19.07.04, 10:35
Erstmal Danke!


Ja, poste mal - aber als Ausgabe der gzipten Datei, damit ich nicht so viel zu lesen habe ;-)
Nicht mehr nötig :-)


Naja, spannend ist schon mal, das tatsächlich etwas Konvertierungsarbeit nötig ist (get_lanman2_dir_entry).
Sehe ich das richtig, dass durch den debug-level 5 weniger Dateien angezeigt werden als mit debug-level 0?
Laut Doku:

Mit diesem Parameter kann dieser Grad eingestellt werden, wobei ein kleiner Wert weniger mitprotokollierte Fehlermeldungen bedeutet und ein hoher Wert viele mitprotokollierte Fehlermeldungen.


Du könntest doch einmal versuchen den Zeichensatz wieder richtig zu setzen, da hat sich zwischen samba2 und samba3 etwas geändert. Um den alten default zu haben, muß man jetzt explezit etwas einstellen. Ich habe allerdings nicht im Kopf, was es war, vielleicht hilft google, oder das howto auf samba.org.
->LKH


Standardzeichensatz bei Samba 3 ist UTF-8. Trage in die [GLOBAL] Sketion mal ein:

unix charset = iso8859-15
display charset = iso8859-15

Hoffe es hilft,

LKH

Jau, das half! Vielen Dank!

Jetzt wird der Ordner wieder komplett angezeigt! Dass es wirklich ein Zeichensatzproblem ist wollte ich erst nicht glauben... ist dieser Bug bekannt dass bei einem falsch eingestelltem Zeichensatz Ordner unvollständig angezeigt werden? Ich konnte nichts finden.

-ready

LKH
19.07.04, 10:50
Hi,

... it's not a bug, it's a feature! :D

Ja, und bekannt ist das mittlerweile auch; es gab auch schon einige Threads darüber, insbesondere zur Zeit, als Samba 3 erschienen ist.

LKH