[Samba] smbd process eating memory

Alexandre Biancalana biancalana at gmail.com
Wed Jun 20 21:01:00 GMT 2007


Hi list,

 I have a Samba-3.0.25a PDC running on FreeBSD 6.2-STABLE using OpenLDAP
2.3.34 (nss_ldap-1.255) as backend. Everything work's great, the only
problem that I fighting is with an M$ ISA Server 2000, that do ntlm
authentications on my domain. At some times (each 4 hours) the ISA Server
lost the connection with the domain and does not authenticate users until
the connection be reestablished.

Until yesterday I think the problem was the ISA, but today, looking the
problem closely, I see that the smbd process that serve ISA Server
connection is eating memory continuously without release this. My theory is
that this process reach at some system limit and die, consequently the ISA
Server connection die too.


# smbstatus |grep -i isa
IPC$         88122   isaserver        Wed Jun 20 13:02:18 2007
IPC$         88122   isaserver        Wed Jun 20 14:40:19 2007


# date;ps -aux | egrep 88122
Wed Jun 20 17:42:25 BRT 2007
USER         PID %CPU %MEM   VSZ   RSS  TT  STAT STARTED      TIME COMMAND
nobody     88122  2.1 15.7 430388 80780  ??  S     1:02PM
9:12.04/usr/local/sbin/smbd -D -s /usr/local/etc/smb.conf

# date;ps -aux | egrep 88122
Wed Jun 20 17:42:30 BRT 2007
USER         PID %CPU %MEM   VSZ   RSS  TT  STAT STARTED      TIME COMMAND
nobody     88122  2.0 15.7 430536 80764  ??  S     1:02PM
9:12.14/usr/local/sbin/smbd -D -s /usr/local/etc/smb.conf

# date;ps -aux | egrep 88122
Wed Jun 20 17:42:35 BRT 2007
USER         PID %CPU %MEM   VSZ   RSS  TT  STAT STARTED      TIME COMMAND
root       88122  3.1 15.7 430860 80816  ??  R     1:02PM
9:12.72/usr/local/sbin/smbd -D -s /usr/local/etc/smb.conf

# date;ps -aux | egrep 88122
Wed Jun 20 17:42:37 BRT 2007
USER         PID %CPU %MEM   VSZ   RSS  TT  STAT STARTED      TIME COMMAND
nobody     88122  3.9 15.7 430936 80820  ??  S     1:02PM
9:12.79/usr/local/sbin/smbd -D -s /usr/local/etc/smb.conf

# date;ps -aux | egrep 88122
Wed Jun 20 17:42:39 BRT 2007
USER         PID %CPU %MEM   VSZ   RSS  TT  STAT STARTED      TIME COMMAND
nobody     88122  3.8 15.7 431008 80820  ??  S     1:02PM
9:12.84/usr/local/sbin/smbd -D -s /usr/local/etc/smb.conf



============ smb.conf ===============

[global]
  workgroup = DOMAIN1
  netbios name = SAMBAPDC
  server string = SAMBAPDC (running: %v,%h)
  socket options = SO_SNDBUF=32768, SO_RCVBUF=32768
  use sendfile = yes

  deadtime = 15

  ; PDC and Master Browser
  os level = 255
  preferred master = yes
  local master     = yes
  domain master    = yes
  domain logons    = yes

  wins server      = 192.168.0.5
  time server      = yes

  security = domain

  encrypt passwords = yes
  log level = 1 idmap:10 winbind:10
  log file = /var/log/samba/%m.log

  max log size = 10240

  passwd program = /usr/local/sbin/smbldap-passwd %u
  passwd chat = *New*password* %n\n *new*password* %n\n *successfully*


  #
  # Scripts Path
  #
  add user script = /usr/local/sbin/smbldap-useradd -d /dev/null -s
/sbin/nologin "%u"
  add group script = /usr/local/sbin/smbldap-groupadd "%g"
  add machine script = /usr/local/sbin/smbldap-useradd -w -t 0 -w -d
/dev/null -s /sbin/nologin "%u"
  add user to group script = /usr/local/sbin/smbldap-groupmod -m "%u" "%g"
  set primary group script = /usr/local/sbin/smbldap-usermod -g "%g" "%u"

  passdb backend = ldapsam:ldap://127.0.0.1

  idmap alloc backend             = ldap
  idmap alloc config:range        = 20000 - 30000
  idmap alloc config:ldap_url     = ldap://127.0.0.1
  idmap alloc config:ldap_anon    = no
  idmap alloc config:ldap_user_dn = cn=root,dc=company
  idmap alloc config:ldap_base_dn = ou=Idmap,dc=company

  idmap domains                    = DOMAIN2
  idmap config CRC: default        = yes
  idmap config CRC: backend        = ldap
  idmap config CRC: ldap_url       = ldap://127.0.0.1
  idmap config CRC: ldap_anon      = no
  idmap config CRC: ldap_user_dn   = cn=root,dc=company
  idmap config CRC: range          = 20000 - 30000
  idmap config CRC: ldap_base_dn   = ou=Idmap,dc=company

  ldap admin dn = "cn=root,dc=company"
  ldap ssl = off
  ldap suffix = dc=company
  ldap idmap suffix = ou=Idmap
  ldap user suffix = ou=Users
  ldap group suffix = ou=Groups
  ldap machine suffix = ou=Computers
  ldap passwd sync = yes

  logon path =

  logon script = %G.bat

  ea support = Yes
  map acl inherit = Yes
  enable privileges = yes

  veto oplock files =
/*.jnx/*.JNX/*.cdx/*.CDX/*.ntx/*.NTX/*.dbt/*.dbt/*.mbd/*.MDB/*.dbf/*.DBF/

  load printers = no

  veto files = /*.mp3/*.MP3/*.wmv/*.WMV

[netlogon]
   path = /share/netlogon
   browseable     = no
   writeable      = no

============ smb.conf ===============

Here is the log files when the problem ocurs:

[2007/06/20 11:26:27, 1] smbd/service.c:make_connection_snum(1033)
  isaserver (10.2.0.30) connect to service netlogon initially as user
administrato (uid=0, gid=513) (pid 55130)
[2007/06/20 11:26:27, 1] smbd/service.c:close_cnum(1230)
  isaserver (10.2.0.30) closed connection to service netlogon
[2007/06/20 11:26:27, 0] smbd/service.c:make_connection(1191)
  isaserver (10.2.0.30) couldn't find service administrato
[2007/06/20 11:26:27, 0] smbd/service.c:make_connection(1191)
  isaserver (10.2.0.30) couldn't find service administrato
[2007/06/20 11:26:28, 1] smbd/service.c:make_connection_snum(1033)
  isaserver (10.2.0.30) connect to service netlogon initially as user
administrato (uid=0, gid=513) (pid 55130)
[2007/06/20 11:26:37, 1] smbd/service.c:close_cnum(1230)
  isaserver (10.2.0.30) closed connection to service netlogon
[2007/06/20 12:47:26, 0] passdb/pdb_get_set.c:pdb_get_group_sid(211)
  pdb_get_group_sid: Failed to find Unix account for user1
[2007/06/20 12:47:26, 1] auth/auth_util.c:make_server_info_sam(566)
  User ana.moscardo in passdb, but getpwnam() fails!
[2007/06/20 12:47:26, 0] auth/auth_sam.c:check_sam_security(352)
  check_sam_security: make_server_info_sam() failed with
'NT_STATUS_NO_SUCH_USER'
[2007/06/20 12:47:36, 0] passdb/pdb_get_set.c:pdb_get_group_sid(211)
  pdb_get_group_sid: Failed to find Unix account for user1
[2007/06/20 12:47:36, 1] auth/auth_util.c:make_server_info_sam(566)
  User ana.moscardo in passdb, but getpwnam() fails!
[2007/06/20 12:47:36, 0] auth/auth_sam.c:check_sam_security(352)
  check_sam_security: make_server_info_sam() failed with
'NT_STATUS_NO_SUCH_USER'
[2007/06/20 12:48:05, 0] passdb/pdb_get_set.c:pdb_get_group_sid(211)
  pdb_get_group_sid: Failed to find Unix account for user1
[2007/06/20 12:48:05, 1] auth/auth_util.c:make_server_info_sam(566)
  User ana.moscardo in passdb, but getpwnam() fails!
[2007/06/20 12:48:05, 0] auth/auth_sam.c:check_sam_security(352)
  check_sam_security: make_server_info_sam() failed with
'NT_STATUS_NO_SUCH_USER'
[2007/06/20 12:48:19, 0] lib/substitute.c:talloc_sub_specified(592)
  talloc_new failed
[2007/06/20 12:48:19, 0] lib/substitute.c:talloc_sub_specified(592)
  talloc_new failed
[2007/06/20 12:48:19, 0] lib/substitute.c:talloc_sub_specified(592)
  talloc_new failed
[2007/06/20 12:48:19, 0] lib/substitute.c:talloc_sub_specified(592)
  talloc_new failed
[2007/06/20 12:48:19, 0] passdb/pdb_get_set.c:pdb_set_profile_path(701)
  pdb_set_profile_path: talloc_strdup() failed!
[2007/06/20 12:48:20, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:48:20, 0]
rpc_server/srv_pipe_hnd.c:pipe_init_outgoing_data(160)
  pipe_init_outgoing_data: malloc fail.
[2007/06/20 12:49:05, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:49:05, 0]
rpc_server/srv_pipe_hnd.c:pipe_init_outgoing_data(160)
  pipe_init_outgoing_data: malloc fail.
[2007/06/20 12:49:50, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:49:50, 0]
rpc_server/srv_pipe_hnd.c:pipe_init_outgoing_data(160)
  pipe_init_outgoing_data: malloc fail.
[2007/06/20 12:50:37, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:50:37, 0]
rpc_server/srv_pipe_hnd.c:pipe_init_outgoing_data(160)
  pipe_init_outgoing_data: malloc fail.
[2007/06/20 12:51:23, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:51:23, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:51:23, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:51:23, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:51:23, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:51:23, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:52:09, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:52:09, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:52:09, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:52:09, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:52:09, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:52:09, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:52:56, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:52:56, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:52:56, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:52:56, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:52:56, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:52:56, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:53:42, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:53:42, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:53:42, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:53:42, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:53:42, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:53:42, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:54:28, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:54:28, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:54:28, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:54:28, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:54:28, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:54:28, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:55:15, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:55:15, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:55:15, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:55:15, 0] rpc_parse/parse_prs.c:prs_init(111)
  prs_init: malloc fail for 4280 bytes.
[2007/06/20 12:55:15, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(330)
  open_rpc_pipe_p: malloc fail for in_data struct.
[2007/06/20 12:55:15, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:56:01, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:56:01, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:56:01, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:56:01, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:56:48, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:56:48, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:56:48, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:56:48, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:57:34, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:57:34, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:57:34, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:57:34, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:58:21, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:58:21, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:58:21, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:58:21, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:58:55, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:58:55, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:59:07, 0] smbd/vfs.c:vfs_init_custom(162)
  TALLOC_ZERO() failed!
[2007/06/20 12:59:07, 0] smbd/connection.c:claim_connection(208)
  claim_connection: tdb_store failed with error Out of memory.
[2007/06/20 12:59:07, 1] smbd/service.c:make_connection_snum(896)
  too many connections - rejected
[2007/06/20 12:59:30, 0] lib/util.c:Realloc(1073)
  Memory allocation error: failed to expand to 43 bytes
[2007/06/20 12:59:30, 0] lib/charcnv.c:convert_string_allocate(620)
  convert_string_allocate: out of memory!
[2007/06/20 12:59:30, 0] lib/util.c:Realloc(1073)
  Memory allocation error: failed to expand to 51 bytes
[2007/06/20 12:59:30, 0] lib/charcnv.c:convert_string_allocate(620)
  convert_string_allocate: out of memory!
[2007/06/20 12:59:30, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:59:30, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 12:59:30, 0]
rpc_server/srv_pipe_hnd.c:make_internal_rpc_pipe_p(295)
  ERROR! no memory for pipes_struct!
[2007/06/20 12:59:30, 0] rpc_server/srv_pipe_hnd.c:open_rpc_pipe_p(231)
  open_rpc_pipe_p: make_internal_rpc_pipe_p failed.
[2007/06/20 14:42:09, 1] smbd/service.c:make_connection_snum(1033)
  isaserver (10.2.0.30) connect to service netlogon initially as user
administrato (uid=0, gid=513) (pid 88122)
[2007/06/20 14:42:09, 1] smbd/service.c:close_cnum(1230)
  isaserver (10.2.0.30) closed connection to service netlogon
[2007/06/20 14:42:09, 0] smbd/service.c:make_connection(1191)
  isaserver (10.2.0.30) couldn't find service administrato
[2007/06/20 14:42:09, 0] smbd/service.c:make_connection(1191)
  isaserver (10.2.0.30) couldn't find service administrato
[2007/06/20 14:42:09, 1] smbd/service.c:make_connection_snum(1033)
  isaserver (10.2.0.30) connect to service netlogon initially as user
administrato (uid=0, gid=513) (pid 88122)
[2007/06/20 14:42:19, 1] smbd/service.c:close_cnum(1230)
  isaserver (10.2.0.30) closed connection to service netlogon

Could someone help me to track this ?

Any help is very appreciated.

 Best Regards,

Alexandre


More information about the samba mailing list