Strona 1 z 1

Wolno działająca Samba w połączeniu z programami CDN-owymi

: 08 lipca 2010, 09:58
autor: -Robo-
Witam.
Proszę o pomoc, sprawdzenie konfiguracji samby do pracy z programami cdn-owymi (fpp, kh, płace).
Serwer pracuje w sieci z komputerami Windows XP, Windows2000, Windows98, Windows Me, około 30 klientów z czego 15 to klienci innych podsieci pracujących po vpn.

Wszystko działa, kopiowanie i dostęp do plików spod klientów jest bardzo szybki, niestety przy korzystaniu z programów typu kh, płaca zaczyna się rozpacz. Wygląda to tak jakby przywieszał się przy próbie przeglądania baz danych (oplocki).

Testowo udostępniłem katalog pod Windows XP, do którego przeniosłem bazy i uruchomiłem programy - i wszystko działa idealnie, więc, problem musi być po stronie samby.

Samba: 3.2.5 na Debianie Leny 2.6.26-2-686
Komputer Dell Pe2650 (2x36G-Raid1(Scsi) + 2x500G-Raid1(Sata), 2x2,8Xeon, 4GRam).

Konfiguracja smb.conf

Kod: Zaznacz cały

[global]
workgroup = xxxx
server string = Dell Server %v
unix charset = UTF8
display charset = UTF8 
dos charset = CP852
 
netbios name = server
 
log file = /var/log/samba/log.%m
max log size = 50
debug level = 1
log level = 2
 
socket options = TCP_NODELAY SO_SNDBUF=8192 SO_RCVBUF=8192 IPTOS_LOWDELAY
interfaces = lo eth0
bind interfaces only = yes
 
hosts allow = 127.0.0.1 192.168.1. 192.168.2. 192.168.4.
hosts deny = 0.0.0.0/0
 
 
security = user
# guest ok = yes
 
browseable = yes
read raw = yes
write raw = yes
dont descend = /dev,/proc,/root,/stand,/bin,/dist,/lkm,/mnt,/sbin,/sys,/usr
 
domain master = no
local master = yes
preferred master = yes
wins support = yes
os level = 64
 
lanman auth = Yes
client lanman auth = Yes
client plaintext auth = Yes
name resolve order = wins bcast hosts
time server = True 
unix password sync = false
encrypt passwords = yes
update encrypted = yes
 
create mode = 0777
directory mask = 0777
# admin users = robert
 
# dos file times = yes
# preserve case = yes
# short preserve case = yes
# hide dot files = yes
 
 
# dead time = 15
# keep alive = 15
# nt pipe support = yes
# nt acl support = yes
# passwd program = /usr/bin/passwd %u
# passwd chat debug = false
# passwd chat = *Nowe*hasło* %n\n *Potwierdż*nowe*hasło* %n\n *zmiana*zakończona*
# null passwords = no
# getwd cache = yes
# force group = samba
 
 
 
[homes]
comment = Twój wlasny katalog
path = /home/%u
create mode = 0700
directory mode = 0700
public = no
writable = yes
browsable = no
oplocks = yes
level2 oplocks = yes
 
[cam]
comment = dla kamer
path = /cam
volume = cam
 
# root preexec = /usr/bin/pon yyyyy
# root postexec = /bin/umount /home/pptp/yyyyy
 
browseable = yes
create mode = 0777
directory mode = 0777
write list = @samba
# oplocks = false
# level2 oplocks = No
 
 
[cdrom]
comment = Samba server's CD-ROM
path = /media/cdrom0
volume = cdrom
read only = yes
fake oplocks = yes
locking = no
writable = no
share modes = no
root preexec = /bin/mount /media/cdrom0
root postexec = /bin/umount /media/cdrom0
 
[backup]
comment = Backup
path = /home/backup
volume = backup
browseable = yes
create mode = 0777
directory mode = 0777
write list = robert
 
[public]
comment = Katalog lokalny
volume = pub
path = /home/pub
browseable = yes
create mode = 0777
directory mode = 0777
write list = @samba
 
[kh]
comment = Bazy danych programow
volume = kh
path = /home/kh
browseable = yes
create mode = 0777
directory mode = 0777
write list = @samba
# oplocks = false
# level2 oplocks = No
# veto oplock files = /*.dbf/*.ntx/*.NTX/*.mem/*.MEM/*.dat/*.DAT/*.k0*/*.K0* 
# dos filetime resolution = True
 
 
[fpp]
comment = Bazy danych programow
volume = fpp
path = /home/fpp
browseable = yes
create mode = 0777
directory mode = 0777
write list = @samba ewa
# oplocks = false
# level2 oplocks = No
# dos filetime resolution = True
 
[place]
comment = Bazy danych programow
volume = fpp
path = /home/place
browseable = yes
create mode = 0777
directory mode = 0777
write list = @samba ewa
# oplocks = false
# level2 oplocks = No
# dos filetime resolution = True
 
[serwer]
comment = Inne
volume = serwer
path = /home/serwer
browseable = yes
create mode = 0777
directory mode = 0777
write list = @samba
# oplocks = false
# level2 oplocks = No
# dos filetime resolution = True

W logach niestety nic nie widać, przynajmniej nic niepokojącego:

Kod: Zaznacz cały

example:
marcin opened file FPP/PKS_SP.002/NOTY.K05 read=Yes write=No (numopen=71)
[2010/07/08 08:35:06, 2] smbd/close.c:close_normal_file(586)
marcin closed file FPP/PKS_SP.002/NOTY.K05 (numopen=70) NT_STATUS_OK
[2010/07/08 08:35:06, 2] smbd/open.c :o pen_file(407)
marcin opened file FPP/PKS_SP.002/NOTY.K05 read=Yes write=Yes (numopen=71)
[2010/07/08 08:35:06, 2] smbd/open.c :o pen_file(407)
marcin opened file FPP/PKS_SP.002/RACHIDX.DAT read=Yes write=No (numopen=72)
 
[2010/07/08 08:35:06, 2] smbd/close.c:close_normal_file(586)
marcin closed file FPP/PKS_SP.002/RACHIDX.DAT (numopen=71) NT_STATUS_OK
 
[2010/07/08 06:40:24, 2] lib/access.c:check_access(406)
Allowed connection from 192.168.1.50 (192.168.1.50)
[2010/07/08 06:40:24, 2] smbd/sesssetup.c:setup_new_vc_session(1363)
setup_new_vc_session: New VC == 0, if NT4.x compatible we would close all old resources.
[2010/07/08 06:40:24, 2] smbd/sesssetup.c:setup_new_vc_session(1363)
setup_new_vc_session: New VC == 0, if NT4.x compatible we would close all old resources.
[2010/07/08 06:40:53, 2] lib/access.c:check_access(406)
Allowed connection from 192.168.1.50 (192.168.1.50)
[2010/07/08 06:40:53, 2] smbd/sesssetup.c:setup_new_vc_session(1363)
setup_new_vc_session: New VC == 0, if NT4.x compatible we would close all old resources.
[2010/07/08 06:40:53, 2] smbd/sesssetup.c:setup_new_vc_session(1363)
setup_new_vc_session: New VC == 0, if NT4.x compatible we would close all old resources.
[2010/07/08 06:42:36, 2] lib/access.c:check_access(406)
Allowed connection from 192.168.1.50 (192.168.1.50)
[2010/07/08 06:42:36, 2] smbd/reply.c:reply_special(425)
netbios connect: name1=SERVER name2=EWA 
[2010/07/08 06:42:36, 2] smbd/reply.c:reply_special(432)
netbios connect: local=server remote=ewa, name type = 0
[2010/07/08 07:14:41, 2] lib/access.c:check_access(406)
Allowed connection from 192.168.1.50 (192.168.1.50)
 
Allowed connection from 192.168.4.122 (192.168.4.122)
[2010/07/08 05:55:41, 1] smbd/service.c:make_connection_snum(1198)
skrzyszow (192.168.4.122) connect to service kh initially as user sk (uid=1013, gid=100) (pid 5974)
[2010/07/08 05:55:41, 2] lib/access.c:check_access(406)
Allowed connection from 192.168.4.122 (192.168.4.122)
 

Jest problem z przeglądarką sieciową ale wydaje mi się, że bez wpływu na pracę:

Kod: Zaznacz cały

process_node_status_request: status request for name XXXXXX<1b> from IP 192.168.1.122 on subnet UNICAST_SUBNET - name not found.
[2010/07/08 08:37:41, 1] nmbd/nmbd_incomingrequests.c :p rocess_node_status_request(327)
process_node_status_request: status request for name XXXXXX<1b> from IP 192.168.1.122 on subnet UNICAST_SUBNET - name not found.
[2010/07/08 08:37:46, 0] nmbd/nmbd_browsesync.c:domain_master_node_status_fail(247)
domain_master_node_status_fail:
Doing a node status request to the domain master browser
for workgroup XXXXXX at IP 192.168.1.122 failed.
Cannot sync browser lists.
 


Proszę o pomoc, sugestie, ciekawy pomysł - jestem w stanie szsybko przetestować.

P
s. Dodam iż wczesniej na wolniejszej maszynie i starszej sambie działało dużo szybciej.
W sambie 3.2.5 na pewno zmieniony został sposób autoryzacji. Wyłączona obsługa LANMAN i szyfrowanie między innymi dla Windows 9x/Me, moze coś jeszcze jest zmienione w domyślnych ustawieniach.

Pozdrawiam
-Robo-

: 08 lipca 2010, 10:53
autor: adasiek_j

: 09 lipca 2010, 09:19
autor: -Robo-
Niestety, konfiguracja samby z opcjami blokad, buforów odczytu i zapisu, i innymi dostrajającymi nie przynosi większych efektów.

T
est szybkości samby przy kopiowaniu dużych plików pokazuje 100% wykorzystanie sieci, są to prędkości w granicach 10-12MB/s, więc tu jest super.

Robert

: 09 lipca 2010, 14:45
autor: Pacek
Odpowiedz mi jeszcze na te pytania:
- Czy aplikacje uruchamiane z udziału sieciowego mają dużą ilość małych plików?
- Czy używasz na stacjach roboczych, które korzystają z tych programów aplikacje antywirusowe?
- Czy przy mapowaniu udziału sieciowego pod Windowsem wykorzystujesz nazwę NetBIOS (np. \\serwer\nazwa_udzialu), czy adres IP (np. \\192.168.1.1\nazwa_udzialu)?

: 14 lipca 2010, 14:15
autor: -Robo-
Pacek,

- Jeśli chodzi o ilość małych plików, to nie wiem czy dużo, ale jest ich nie więcej niż 20, które muszą zostać wczytane w aplikacje na kliencie,
- z Nod-a wykluczyłem sprawdzanie dysków sieciowych i rozszerzeń typu: /*.dbf/*.ntx/*.NTX/*.mem/*.MEM/*.dat/*.DAT/*.k0*/*.K0*; sprawdzałem również z wyłączonym całkowicie silnikiem noda, jak również wyłączonym CalmAV na Debianie (choć w sumie w sam.conf nie ma wpisu o korzystaniu z antywirusowego programu),
- mapowanie odbywa się przez nazwy netbios-owe.

Dziękuję za zainteresowanie.

: 14 lipca 2010, 14:40
autor: Pacek
Spróbuj do mapowania wykorzystać adres IP zamiast nazwy hosta. Możliwe, że rozwiązanie nazwy trwa bardzo długo.

: 16 lipca 2010, 08:07
autor: -Robo-
Pacek, wczoraj miałem okazję testować inne konfigurację i do czego doszedłem.

Po pierwsze mapowanie po adresach IP niewiele zmienia.

Natomiast:

Kod: Zaznacz cały

force user = nobody
W udostępnianym udziale zmienia wszystko!

Nie miałem okazji się po zastanawiać dlaczego, ale jak będę miał wyjaśnienie to też napiszę.

Dziękuję.