[Samba] Re : Re: performance problem ??? AN ANSWER PLEASE ...

vincent blondel
Tue, 18 Jun 2002 13:24:02 -0000

Did someone of you find a solution for our problerm ???

I send you the documented as you asked it but I always got the same
problems. I tried some possibilites for optimizing my system but I always
stay with my problem for writing files. Reading files from my shares is not
a problem but writing causes "buffers" problems with windows and
windows
says he could not write all the blocks.

Since our last mail, I changed two things on my server. I upgraded it from
ext2 to reiserfs ( it seems it is better ??? ) and I worked with blocks of
2048 bytes in ext2 and I heard it was better to upgrade them to 4096.

I am surprised with such a problem because I am the only one using samba
here at the moment and my server is using U-160 SCSI interface so it should
not cause these strange problems.

Thanks for your help.
Vincent

----- Original Message -----
From: "vincent blondel" <vincent.blondel@chello.be>
To: <samba@lists.samba.org>
Cc: "Trey Nolen" <tnolen@internetpro.net>; "Martyn
Ranyard"
<ranyardm@lineone.net>
Sent: Wednesday, June 12, 2002 6:21 PM
Subject: Re: performance problem ???


>
http://www.tldp.org/LDP/solrhe/Securing-Optimizing-Linux-RH-Edition-v1.3.pdf
>
> Thanks
>
> ----- Original Message -----
> From: "Trey Nolen" <tnolen@internetpro.net>
> To: "vincent blondel" <vincent.blondel@chello.be>
> Sent: Tuesday, June 11, 2002 11:25 PM
> Subject: Re: performance problem ???
>
>
> > Where did you find those linux /proc settings mentioned in your post?
I
> > would like to take a look at that documentation.
> >
> > Trey Nolen
> >
> >
> >
> > On Tue, 2002-06-11 at 16:16, vincent blondel wrote:
> > > Hi,
> > >
> > > I got a similar problem with my test configuration.
> > >
> > > I am using share drives from my AMD Athlon XP 1600+ / 512 DDR RAM
> running with NT4 workstation and my linux server is a Slackware 8.0 with
> kernel 2.4.18 and Samba 2.2.4 running on a Pentium 166 MMX / 128 RAM /
U160
> 40Gb SCSI disk.
> > >
> > > My problem is a bit different. I get well a lot of performance
but my
> connections often break. So I can well listen to music ( mp3 files on a
> share drive ) and at the same time loading big *.PDF files ( 15 Mb ) but
it
> doesn't work for a long time. After a few minutes, connection breaks
and
all
> my file windows applications are not responding any more. So I have to
wait
> a few minutes before I can restore my share connections.
> > >
> > > I found on Internet the following ways to optimize samba and/or
linux
> > >
> > > linux
> > >   echo "80 500 64 64  15  6000 6000 1884 2" >
/proc/sys/vm/bdflush
> > >   echo "60 10 60" > /proc/sys/vm/buffermem (
doesn't work because I
> don't have this file in my /proc filesystem ??? )
> > >
> > > samba
> > >   write cache size = 262144
> > >   read size = 65536
> > >   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
> IPTOS_THROUGHPUT
> > >   wide links = yes
> > >
> > > I use all these options but my problem is and stay until now.
This
> option "IPTOS_THROUGHPUT" improved a lot my performance
connections, so I
> can do a lot at the same time with my share drives.
> > >
> > > If you have an idea for my problem, help would be appreciated ...
> > > Thanks
> > > Vincent
> > >
> > >
>
############################################################################
> ########################
> > > # This is the main Samba configuration file. You should read the
> > > # smb.conf(5) manual page in order to understand the options
listed
> > > # here. Samba has a huge number of configurable options (perhaps
too
> > > # many!) most of which are not shown in this example
> > > #
> > > # Any line which starts with a ; (semi-colon) or a # (hash)
> > > # is a comment and is ignored. In this example we will use a #
> > > # for commentry and a ; for parts of the config file that you
> > > # may wish to enable
> > > #
> > > # NOTE: Whenever you modify this file you should run the command
> "testparm"
> > > # to check that you have not many any basic syntactic errors.
> > > #
> > > #======================= Global Settings
> ====================================> > > [global]
> > >
> > > # workgroup = NT-Domain-Name or Workgroup-Name, eg: LINUX2
> > >    workgroup = WORKGROUP
> > >
> > > # server string is the equivalent of the NT Description field
> > >    server string = Samba Server
> > >
> > > # This option is important for security. It allows you to
restrict
> > > # connections to machines which are on your local network. The
> > > # following example restricts access to two C class networks and
> > > # the "loopback" interface. For more examples of the
syntax see
> > > # the smb.conf man page
> > >    hosts allow = 192.168.123.1 192.168.123.2 192.168.123.3
> > >
> > > # If you want to automatically load your printer list rather
> > > # than setting them up individually then you'll need this
> > >    load printers = yes
> > >
> > > # you may wish to override the location of the printcap file
> > > ;   printcap name = /etc/printcap
> > >
> > > # on SystemV system setting printcap name to lpstat should allow
> > > # you to automatically obtain a printer list from the SystemV
spool
> > > # system
> > > ;   printcap name = lpstat
> > >
> > > # It should not be necessary to specify the print system type
unless
> > > # it is non-standard. Currently supported print systems include:
> > > # bsd, sysv, plp, lprng, aix, hpux, qnx
> > > ;   printing = bsd
> > >
> > > # Uncomment this if you want a guest account, you must add this
to
> /etc/passwd
> > > # otherwise the user "nobody" is used
> > > ;  guest account = pcguest
> > >
> > > # this tells Samba to use a separate log file for each machine
> > > # that connects
> > >    log file = /var/log/samba.%m
> > >
> > > # Put a capping on the size of the log files (in Kb).
> > >    max log size = 50
> > >
> > > # Security mode. Most people will want user level security. See
> > > # security_level.txt for details.  NOTE:  To get the behaviour of
> > > # Samba-1.9.18, you'll need to use "security =
share".
> > >    security = user
> > >
> > > # Use password server option only with security = server
> > > # The argument list may include:
> > > #   password server = My_PDC_Name [My_BDC_Name]
[My_Next_BDC_Name]
> > > # or to auto-locate the domain controller/s
> > > #   password server = *
> > > ;   password server = <NT-Server-Name>
> > >
> > > # Note: Do NOT use the now deprecated option of "domain
controller"
> > > # This option is no longer implemented.
> > >
> > > # You may wish to use password encryption. Please read
> > > # ENCRYPTION.txt, Win95.txt and WinNT.txt in the Samba
documentation.
> > > # Do not enable this option unless you have read those documents
> > >   encrypt passwords = yes
> > >
> > > # Where to find the SSL certificates:
> > > ;   ssl CA certDir = /etc/ssl/certs
> > >
> > > # Using the following line enables you to customise your
configuration
> > > # on a per machine basis. The %m gets replaced with the netbios
name
> > > # of the machine that is connecting
> > > ;   include = /usr/local/samba/lib/smb.conf.%m
> > >
> > > # This option allows Samba to improve performance on systems
where the
> disk
> > > # subsystem is a bottleneck. The value of this option is
specified in
> bytes, and a
> > > # size of 262,144 represent a 256k cache size per file
> > > write cache size = 262144
> > > read size = 65536
> > > #read prediction = true
> > >
> > > # Most people will find that this option gives better
performance.
> > > # See speed.txt and the manual pages for details
> > > # You may want to add the following on a Linux system:
> > >    #socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
> > >    socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
> IPTOS_THROUGHPUT
> > >    #socket options = IPTOS_LOWDELAY TCP_NODELAY
> > >
> > > # Configure Samba to use multiple interfaces
> > > # If you have multiple network interfaces then you must list them
> > > # here. See the man page for details.
> > > #   interfaces = 192.168.123.3/24
> > >     interfaces = eth0 192.168.123.3
> > >
> > > # Browser Control Options:
> > > # set local master to no if you don't want Samba to become a
master
> > > # browser on your network. Otherwise the normal election rules
apply
> > > ;   local master = no
> > >
> > > # OS Level determines the precedence of this server in master
browser
> > > # elections. The default value should be reasonable
> > > ;   os level = 33
> > >
> > > # Domain Master specifies Samba to be the Domain Master Browser.
This
> > > # allows Samba to collate browse lists between subnets. Don't
use this
> > > # if you already have a Windows NT domain controller doing this
job
> > > ;   domain master = yes
> > >
> > > # Preferred Master causes Samba to force a local browser election
on
> startup
> > > # and gives it a slightly higher chance of winning the election
> > > ;   preferred master = yes
> > >
> > > # Enable this if you want Samba to be a domain logon server for
> > > # Windows95 workstations.
> > > ;   domain logons = yes
> > >
> > > # if you enable domain logons then you may want a per-machine or
> > > # per user logon script
> > > # run a specific logon batch file per workstation (machine)
> > > ;   logon script = %m.bat
> > > # run a specific logon batch file per username
> > > ;   logon script = %U.bat
> > >
> > > # Where to store roving profiles (only for Win95 and WinNT)
> > > #        %L substitutes for this servers netbios name, %U is
username
> > > #        You must uncomment the [Profiles] share below
> > > ;   logon path = \\%L\Profiles\%U
> > >
> > > # Windows Internet Name Serving Support Section:
> > > # WINS Support - Tells the NMBD component of Samba to enable
it's WINS
> Server
> > > ;   wins support = yes
> > >
> > > # WINS Server - Tells the NMBD components of Samba to be a WINS
Client
> > > # Note: Samba can be either a WINS Server, or a WINS Client, but
NOT
> both
> > > ;   wins server = w.x.y.z
> > >
> > > # WINS Proxy - Tells Samba to answer name resolution queries on
> > > # behalf of a non WINS capable client, for this to work there
must be
> > > # at least one WINS Server on the network. The default is NO.
> > > ;   wins proxy = yes
> > >
> > > # DNS Proxy - tells Samba whether or not to try to resolve
NetBIOS
names
> > > # via DNS nslookups. The built-in default for versions 1.9.17 is
yes,
> > > # this has been changed in version 1.9.18 to no.
> > > ;   dns proxy = no
> > >
> > >
> > > # This option, if set to no, tells Samba not to follow symbolic
links
> outside
> > > # of an area designated as being exported as a share point. In
order
to
> determine if a
> > > # link points outside the shared area, Samba has to follow the
link
and
> then do a
> > > # directory path lookup to determine where on the file system the
link
> ended up.
> > > # This ends up adding a total of six extra system calls per
filename
> lookup, and
> > > # Samba looks up filenames a lot.
> > > wide links = yes
> > >
> > > #============================ Share Definitions
> =============================> > > ;[homes]
> > > ;   comment = Home Directories
> > > ;   browseable = no
> > > ;   writable = yes
> > >
> > > # Un-comment the following and create the netlogon directory for
Domain
> Logons
> > > ; [netlogon]
> > > ;   comment = Network Logon Service
> > > ;   path = /usr/local/samba/lib/netlogon
> > > ;   guest ok = yes
> > > ;   writable = no
> > > ;   share modes = no
> > >
> > >
> > > # Un-comment the following to provide a specific roving profile
share
> > > # the default is to use the user's home directory
> > > ;[Profiles]
> > > ;    path = /usr/local/samba/profiles
> > > ;    browseable = no
> > > ;    guest ok = yes
> > >
> > >
> > > # NOTE: If you have a BSD-style print system there is no need to
> > > # specifically define each individual printer
> > > ;[printers]
> > > ;   comment = All Printers
> > > ;   path = /var/spool/samba
> > > ;   browseable = no
> > > # Set public = yes to allow user 'guest account' to print
> > > ;   guest ok = no
> > > ;   writable = no
> > > ;   printable = yes
> > >
> > > # This one is useful for people to share files
> > > ;[tmp]
> > > ;   comment = Temporary file space
> > > ;   path = /tmp
> > > ;   read only = no
> > > ;   public = yes
> > >
> > > # A publicly accessible directory, but read only, except for
people in
> > > # the "staff" group
> > > ;[public]
> > > ;   comment = Public Stuff
> > > ;   path = /home/samba
> > > ;   public = yes
> > > ;   writable = yes
> > > ;   printable = no
> > > ;   write list = @staff
> > >
> > > [vincent]
> > >     comment = local user
> > >     path = /CORP/HOMES/vincent
> > >     public = no
> > >     writable = yes
> > >
> > > [web]
> > >     comment = web DDEV00
> > >     path = /CORP/www
> > >     public = no
> > >     writable = yes
> > >
> > > [doc]
> > >    comment = documentation
> > >    path = /CORP/shares/doc
> > >    public = no
> > >    writable = yes
> > >
> > > [win32]
> > >    comment = softs win32
> > >    path = /CORP/shares/softs/win32
> > >    public = no
> > >    writable = yes
> > >
> > > [pkg_win32]
> > >    comment = packages
> > >    path = /CORP/shares/install
> > >    public = no
> > >    writable = yes
> > >
> > >
> >
> >
>