Hello, We have a small setup where we write files on a Windows system to a samba mounted location coming from a linux system. This linux system has NVME disks and 10gige connections. We are getting slow write performance and our setup should be able to get better write speeds. I am attaching our config files and hoping someone can assist with tuning our smb.conf for getting better performance: -- # cat /etc/samba/smb.conf [global] workgroup = XXX server string = Samba Server %V security = ADS realm = XXX.XXX.XXX.XXX encrypt passwords = yes netbios name = newark netbios aliases = newark map to guest = bad user dns proxy = no log level = 1 log file = /var/log/samba/log.%m max log size = 1000 keepalive = 0 local master = No domain master = No strict locking = no [local_scratch] follow symlinks = yes wide links = yes comment = “local data collection” path = /local/scratch/ browseable = yes guest ok = no writable = yes valid users = @cfygrp4 create mask = 764 directory mask = 775 force group = cfygrp4 # cat /etc/redhat-release CentOS release 6.9 (Final) # rpm -qa | grep -i samba | sort samba-3.6.23-45.el6_9.x86_64 samba4-libs-4.2.10-12.el6_9.x86_64 samba-client-3.6.23-45.el6_9.x86_64 samba-common-3.6.23-45.el6_9.x86_64 samba-winbind-3.6.23-45.el6_9.x86_64 samba-winbind-clients-3.6.23-45.el6_9.x86_64 **dump of all options via testparm -vs** # testparm -vs Load smb config files from /etc/samba/smb.conf rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384) Processing section “[local_scratch]" Loaded services file OK. WARNING: You have some share names that are longer than 12 characters. These may not be accessible to some older clients. (Eg. Windows9x, WindowsMe, and smbclient prior to Samba 3.0.) Server role: ROLE_DOMAIN_MEMBER [global] dos charset = CP850 unix charset = UTF-8 display charset = LOCALE workgroup = XXX realm = XXX.XXX.XXX.XXX netbios name = NEWARK netbios aliases = newark netbios scope server string = Samba Server %V interfaces bind interfaces only = No security = ADS auth methods encrypt passwords = Yes client schannel = Auto server schannel = Auto allow trusted domains = Yes map to guest = Bad User null passwords = No obey pam restrictions = No password server = * smb passwd file = /var/lib/samba/private/smbpasswd private dir = /var/lib/samba/private passdb backend = tdbsam algorithmic rid base = 1000 root directory guest account = nobody enable privileges = Yes pam password change = No passwd program passwd chat = *new*password* %n\n *new*password* %n\n *changed* passwd chat debug = No passwd chat timeout = 2 check password script username map password level = 0 username level = 0 unix password sync = No restrict anonymous = 0 lanman auth = No ntlm auth = Yes raw NTLMv2 auth = No client NTLMv2 auth = Yes client lanman auth = No client plaintext auth = No client use spnego principal = No send spnego principal = No preload modules dedicated keytab file kerberos method = default map untrusted to domain = No log level = 2 syslog = 1 syslog only = No log file = /var/log/samba/log.%m max log size = 1000 debug timestamp = Yes debug prefix timestamp = No debug hires timestamp = Yes debug pid = No debug uid = No debug class = No enable core files = Yes smb ports = 445 139 large readwrite = Yes max protocol = NT1 min protocol = CORE min receivefile size = 0 read raw = Yes write raw = Yes disable netbios = No reset on zero vc = No log writeable files on exit = No acl compatibility = auto defer sharing violations = Yes nt pipe support = Yes nt status support = Yes announce version = 4.9 announce as = NT max mux = 50 max xmit = 16644 name resolve order = lmhosts wins host bcast max ttl = 259200 max wins ttl = 518400 min wins ttl = 21600 time server = No unix extensions = Yes allow dcerpc auth level connect = No use spnego = Yes client signing = required client ipc signing = required server signing = No client use spnego = Yes client ldap sasl wrapping = sign enable asu support = No svcctl list deadtime = 0 getwd cache = Yes keepalive = 0 lpq cache time = 30 max smbd processes = 0 paranoid server security = Yes max disk size = 0 max open files = 16384 socket options = TCP_NODELAY use mmap = Yes hostname lookups = No name cache timeout = 660 ctdbd socket cluster addresses clustering = No ctdb timeout = 0 ctdb locktime warn threshold = 0 smb2 max read = 65536 smb2 max write = 65536 smb2 max trans = 65536 smb2 max credits = 8192 load printers = Yes printcap cache time = 750 printcap name cups server cups encrypt = No cups connection timeout = 30 iprint server disable spoolss = No addport command enumports command addprinter command deleteprinter command show add printer wizard = Yes os2 driver map mangling method = hash2 mangle prefix = 1 max stat cache size = 256 stat cache = Yes machine password timeout = 604800 add user script rename user script delete user script add group script delete group script add user to group script delete user from group script set primary group script add machine script shutdown script abort shutdown script username map script username map cache time = 0 logon script logon path = \\%N\%U\profile logon drive logon home = \\%N\%U domain logons = No init logon delayed hosts init logon delay = 100 os level = 20 lm announce = Auto lm interval = 60 preferred master = No local master = No domain master = No browse list = Yes enhanced browsing = Yes dns proxy = No wins proxy = No wins server wins support = No wins hook kernel oplocks = Yes lock spin time = 200 oplock break wait time = 0 ldap admin dn ldap delete dn = No ldap group suffix ldap idmap suffix ldap machine suffix ldap passwd sync = no ldap replication sleep = 1000 ldap suffix ldap ssl = start tls ldap ssl ads = No ldap deref = auto ldap follow referral = Auto ldap timeout = 15 ldap connection timeout = 2 ldap page size = 1024 ldap user suffix ldap debug level = 0 ldap debug threshold = 10 eventlog list add share command change share command delete share command preload lock directory = /var/lib/samba state directory = /var/lib/samba cache directory = /var/lib/samba pid directory = /var/run utmp directory wtmp directory utmp = No default service message command get quota command set quota command remote announce remote browse sync socket address = 0.0.0.0 nmbd bind explicit broadcast = Yes homedir map = auto.home afs username map afs token lifetime = 604800 log nt token command time offset = 0 NIS homedir = No registry shares = No usershare allow guests = No usershare max shares = 0 usershare owner only = Yes usershare path = /var/lib/samba/usershares usershare prefix allow list usershare prefix deny list usershare template share allow insecure wide links = No async smb echo handler = No multicast dns register = Yes panic action perfcount module host msdfs = Yes passdb expand explicit = No idmap backend = tdb idmap cache time = 604800 idmap negative cache time = 120 idmap uid idmap gid template homedir = /home/%D/%U template shell = /bin/false winbind separator = \ winbind cache time = 300 winbind reconnect delay = 30 winbind max clients = 200 winbind enum users = No winbind enum groups = No winbind use default domain = No winbind trusted domains only = No winbind nested groups = Yes winbind expand groups = 1 winbind nss info = template winbind refresh tickets = No winbind offline logon = No winbind sealed pipes = Yes winbind normalize names = No winbind rpc only = No create krb5 conf = Yes ncalrpc dir = /var/ncalrpc winbind max domain connections = 1 idmap config * : backend = tdb comment path username invalid users valid users admin users read list write list printer admin force user force group read only = Yes acl check permissions = Yes acl group control = No acl map full control = Yes create mask = 0744 force create mode = 00 security mask = 0777 force security mode = 00 directory mask = 0755 force directory mode = 00 directory security mask = 0777 force directory security mode = 00 force unknown acl user = No inherit permissions = No inherit acls = No inherit owner = No guest only = No administrative share = No guest ok = No only user = No hosts allow hosts deny allocation roundup size = 1048576 aio read size = 0 aio write size = 0 aio write behind ea support = No nt acl support = Yes profile acls = No map acl inherit = No afs share = No smb encrypt = auto block size = 1024 change notify = Yes directory name cache size = 100 kernel change notify = Yes max connections = 0 min print space = 0 strict allocate = No strict sync = No sync always = No use sendfile = No write cache size = 0 max reported print jobs = 0 max print jobs = 1000 printable = No print notify backchannel = Yes print ok = No printing = cups cups options print command lpq command = %p lprm command lppause command lpresume command queuepause command queueresume command printer name use client driver = No default devmode = Yes force printername = No printjob username = %U default case = lower case sensitive = Auto preserve case = Yes short preserve case = Yes mangling char = ~ hide dot files = Yes hide special files = No hide unreadable = No hide unwriteable files = No delete veto files = No veto files hide files veto oplock files map archive = Yes map hidden = No map system = No map readonly = yes mangled names = Yes store dos attributes = No dmapi support = No browseable = Yes access based share enum = No blocking locks = Yes csc policy = manual fake oplocks = No locking = Yes oplocks = Yes level2 oplocks = Yes oplock contention limit = 2 posix locking = Yes strict locking = No share modes = Yes dfree cache time = 0 dfree command copy preexec preexec close = No postexec root preexec root preexec close = No root postexec available = Yes volume fstype = NTFS set directory = No wide links = No follow symlinks = Yes dont descend magic script magic output delete readonly = No dos filemode = No dos filetimes = Yes dos filetime resolution = No fake directory create times = No vfs objects msdfs root = No msdfs proxy -- Thanks in advance for your help! -J
On Mon, 14 May 2018 17:20:57 -0700 Jagga Soorma via samba <samba at lists.samba.org> wrote:> Hello, > > We have a small setup where we write files on a Windows system to a > samba mounted location coming from a linux system. This linux system > has NVME disks and 10gige connections. We are getting slow write > performance and our setup should be able to get better write speeds. > I am attaching our config files and hoping someone can assist with > tuning our smb.conf for getting better performance: > > -- > # cat /etc/samba/smb.conf > [global] > workgroup = XXX > server string = Samba Server %V > security = ADS > realm = XXX.XXX.XXX.XXXIt might help if you set up smb.conf correctly or are you using sssd ?> # cat /etc/redhat-release > CentOS release 6.9 (Final) > > # rpm -qa | grep -i samba | sort > samba-3.6.23-45.el6_9.x86_64Samba 3.6.x died quite sometime ago, it had a quite funeral, no flowers by request ;-) If you need help with your zombie, I suggest you ask Centos, or upgrade your distro. Or to put it another way, if there is something wrong with your version of Samba (and I am not saying there is), the chances of getting it fixed is nil. Rowland