[Samba] Reliable Samba just stopped mounting Windows machine

Larry Alkoff labradley at mindspring.com
Tue Feb 1 20:54:12 GMT 2005


I have been mounting a Windows machine with no problems whatsoever for 
the year.  Suddenly this afternoon it won't mount any more.  No recent 
changes have been made on the machine.  The only thing I've done 
recently is load and get Thunderbird working.  Most things are done as 
user not root in KDE xterms.

My Linux machine is Slackware Linux 10.0.
There is an iptables firewall that allows tcp input on port 139 but not 445.
I have fsck checked all the filesystems with a Knoppix cdrom.
smbd and nmbd are running.

The Windows machine runs Windows 98SE
and is on the same local subnet as the Linux machine.
In fact they are next to each other on my desk.
The Windows machine can browse all usual shares on the Linux machine.

The drive is shared as C with full access, no password
and the Network settings allow share level access control with no pwd.

My smb.conf is attached.

What should I be looking at?
Any idea what went wrong with this previously super reliable system?

============
More details below:
============

When I run mount this is the result:
-------------------------------------------------
root at linda root #
          smbmount //wanda/c /mnt/wanda  -o guest,uid=lba,gid=users

Mounting wanda
Using /lib/modules/2.4.26/kernel/fs/smbfs/smbfs.o.gz
insmod: a module named smbfs already exists
opts: guest
opts: uid=lba
opts: gid=users
mount.smbfs started (version 3.0.4)
added interface ip=192.168.0.5 bcast=192.168.0.255 nmask=255.255.255.0
Connecting to 192.168.0.6 at port 445
timeout connecting to 192.168.0.6:445
Connecting to 192.168.0.6 at port 139
timeout connecting to 192.168.0.6:139
Error connecting to 192.168.0.6 (Operation already in progress)
1738: Connection to wanda failed
SMB connection failed

Here is /var/log/samba.wanda:
------------------------------------------
[2005/02/01 14:15:58, 3] smbd/sec_ctx.c:set_sec_ctx(288)
  setting sec ctx (0, 0) - sec_ctx_stack_ndx = 0
[2005/02/01 14:15:58, 1] smbd/service.c:close_cnum(801)
  wanda (192.168.0.6) closed connection to service lba
[2005/02/01 14:15:58, 3] smbd/connection.c:yield_connection(69)
  Yielding connection to lba
[2005/02/01 14:15:58, 3] smbd/sec_ctx.c:set_sec_ctx(288)
  setting sec ctx (0, 0) - sec_ctx_stack_ndx = 0
[2005/02/01 14:15:58, 3] smbd/process.c:process_smb(890)
  Transaction 70 of length 39
[2005/02/01 14:15:58, 3] smbd/process.c:switch_message(685)
  switch message SMBtdis (pid 1732)
[2005/02/01 14:15:58, 3] smbd/sec_ctx.c:set_sec_ctx(288)
  setting sec ctx (0, 0) - sec_ctx_stack_ndx = 0
[2005/02/01 14:15:58, 3] smbd/sec_ctx.c:set_sec_ctx(288)
  setting sec ctx (0, 0) - sec_ctx_stack_ndx = 0
[2005/02/01 14:15:58, 1] smbd/service.c:close_cnum(801)
  wanda (192.168.0.6) closed connection to service temp
[2005/02/01 14:15:58, 3] smbd/connection.c:yield_connection(69)
  Yielding connection to temp
[2005/02/01 14:15:58, 3] smbd/sec_ctx.c:set_sec_ctx(288)
  setting sec ctx (0, 0) - sec_ctx_stack_ndx = 0
samba.wanda byte 1812942/1812942 (END)

Here is /var/log/samba.192.168.0.6    (Wanda windows machine)
------------------------------------------------
[2005/02/01 14:12:26, 3] smbd/process.c:process_smb(890)
  Transaction 0 of length 72
[2005/02/01 14:12:26, 2] smbd/reply.c:reply_special(208)
  netbios connect: name1=LINDA           name2=WANDA
[2005/02/01 14:12:26, 2] smbd/reply.c:reply_special(215)
  netbios connect: local=linda remote=wanda, name type = 0
[2005/02/01 14:12:29, 3] smbd/oplock.c:init_oplocks(1226)
  open_oplock_ipc: opening loopback UDP socket.
[2005/02/01 14:12:29, 3] smbd/oplock_linux.c:linux_init_kernel_oplocks(303)
  Linux kernel oplocks enabled
[2005/02/01 14:12:29, 3] smbd/oplock.c:init_oplocks(1257)
  open_oplock ipc: pid = 1732, global_oplock_port = 32770
[2005/02/01 14:12:29, 3] lib/access.c:check_access(313)
  check_access: no hostnames in host allow/deny list.
[2005/02/01 14:12:29, 2] lib/access.c:check_access(324)
  Allowed connection from  (192.168.0.6)
[2005/02/01 14:12:29, 3] smbd/process.c:process_smb(890)
  Transaction 0 of length 72
[2005/02/01 14:12:29, 2] smbd/reply.c:reply_special(208)
  netbios connect: name1=LINDA           name2=WANDA
[2005/02/01 14:12:29, 2] smbd/reply.c:reply_special(215)
  netbios connect: local=linda remote=wanda, name type = 0
samba.192.168.0.6 byte 142493/142493 (END)

Thanks for any help or tips.
Larry

-- 
Larry Alkoff N2LA - Austin TX
Using Thunderbird on Slackware Linux

-------------- next part --------------
# smb.conf.new

# lba: This is the main Samba configuration file. Read smb.conf(5) manual page.
#
# File begain with Slack 8.1 smb.conf-sample (unchanged in Slack 9.1)
# File extensively modified 12/03 using O'Reilly Using Samba book.
#
# Any line which starts with a ; (semi-colon) or a # (hash) is a comment.
# We 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. 
#
#
# Sources of Information:
# /usr/doc/samba-2.2.8a/docs/textfiles (for Slackware 9.1)
#    Esp BROWSING-Config.txt, BROWSING.txt, Netbios.txt, hints.txt
#

#======================= Global Settings =====================================
[global]

    # lba set netbios name allows share names to show in Network Neighborhood
netbios name = linda

    # workgroup = NT-Domain-Name or Workgroup-Name, eg: LINUX2
    # if domain is not specified it defaults to workgroup
workgroup = lanet

    # server string is the equivalent of the NT Description field.  
    # Click Network Neighborhood | view | details.
server string =  Samba Server %v on %h

    # Allow domain logins for Windows Domain Settings
# This stops Network Neighborhood from working
# stopnn domain logons = yes

    # browseable = yes | no	Built-in default is yes
    # Place browseable = yes | no  here as global default and/or in each share.
    # browseable = yes _apparently_ allows shares to show up in Network Neighborhood
browseable = yes

    # This option is important for security. Default is allow ALL.
    # 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. 
    # If hosts allow is used, localhost _must_ be included.
    # For more examples of the syntax see the smb.conf man page
    # Impt note: global hosts allow means any hosts allow in shares will not be recognized.
    ; hosts allow = 192.168.1. 192.168.2. 127.
hosts allow = 192.168.0.            127.
; stopnn hosts allow = lanet localhost	# kills browsing - hosts not setup right?

    # 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
; stopnn guest account = pcguest

# Even if all your services are not available to "guest" you will need a
# guest account. This is because the browsing is done as guest. In many
# cases setting "guest account = ftp" will do the trick.
; stopnn did not work guest account = ftp

    # Tell Samba to use a separate log file for each machine that connects
; stopnnx log file = /var/log/samba.%m
log file = /var/log/samba.%m

    # Put a cap on the size of the log files (in Kb).
; stopnn max log size = 50
   
    # Increase debug level gives more (useless) info.
    # Make sure there is no # comment in the line below.
; stopnnx debug level = 3   
debug level = 3

# ----------------   Security Settings  ------------------------------

    # 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>

    # 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
    # Default is encrypt passwords = no
    # Use smbpasswd -a to add each user to smbpasswd file
encrypt passwords = yes

smb passwd file = /etc/samba/private/smbpasswd

unix password sync = yes

    # password level sets number of capital letters allowed in passwd
password level = 2

    # hosts equiv specifies shares that can be trusted w/o passwd
hosts equiv = /etc/hosts.equiv


    # Where to find the SSL certificates:
; stopnn 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

    # 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:
    #   SO_RCVBUF=8192 SO_SNDBUF=8192
; stopnnx socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

    # 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.12.2/24 192.168.13.2/24 

# ----------------   Window Domain Settings  ------------------------------

    # The current browse list is stored in /var/cache/samba/browse.dat
        
    # Note: Do NOT use the now deprecated option of "domain controller"
    # This option is no longer implemented.

    # 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
local master = yes

    # OS Level determines the precedence of this server in master browser
    # elections. The default value should be reasonable ( lba but 65 is better),
    ;   os level = 33
; stopnn os level = 65

# changed 9/27/04
os level = 65


    # 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 
; stopnn 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
; stopnn preferred master = yes

    # Enable this if you want Samba to be a domain logon server for Windows95 workstations. 
    # See [netlogon] share which is required!
    ;   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

    # name resolve order default is wins lmhosts hosts bcast
    # where:  "host" refers the the native methods used by the Unix system
    #         to implement the gethostbyname() function call. This is normally
    #         controlled by:  /etc/host.conf, /etc/nsswitch.conf or /etc/resolv.conf
; stopnn name resolve order = lmhosts hosts bcast
        
                                                                                

    # WINS (Windows Internet Name Serving Support) Section:
    # 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
    #   for wins server use wins support = yes
    #   for wins client use wins support = IP_of_server
    # Don't use both or nmbd will not start.
    # 
    # After the WINS server has been configured you must ensure that all
    # machines participating on the network are configured with the address of this WINS server.  
    # If your WINS server is a Samba machine, fill in the Samba machine IP address 
    # in the "Primary WINS Server" field of the "Control Panel->Network->Protocols->TCP->WINS Server" 
    # dialogs in Windows 95 or Windows NT.  
    # To tell a Samba server the IP address of the WINS server add the following line to the [global] section of
    # all smb.conf files :  wins server = <name or IP address>
    #  where <name or IP address> is either the DNS name of the WINS server machine or its IP address.
        

    ;   wins server = w.x.y.z
;stopnn wins support = yes


    # 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.
; stopnn dns proxy = no 

# ============================ Time Server ==============================

    # time server 12/03 lba
    # This parameter  determines  if  nmbd(8)  advertises
    # itself as a time server to Windows clients.
    # Default: time server = no
time server = yes      

    # It is easy to check if time server is running ok.
    # just go to a DOS Prompt on your Windows box, type
    #   net time \\server\ /set
    # after a couple seconds, it should ask you for a Yes or No
    # say y enter and your local time should adjust in within about 5 seconds.

      

# ============================ Share Definitions ==============================

    # Share defaults:  guest ok = no, 
    
# Use individual home directories to prevent duplicate home and lba share.    
; [homes]
;   comment = Home Directories
;   browseable = no
;   writable = yes

[lba]
   path = /home/lba
   comment = Larry's home directory
   browseable = yes
   writable = yes

[kna]
   path = /home/kna
   comment = Karen's home directory
   browseable = yes
   writable = yes


# This one is useful for people to share files
[temp]
   comment = Temporary file sharing space
   path = /tmp
   writeable = yes
   ; read only = no
   ; public = yes
   guest ok = yes

    # A test share 12/03 from O'Reilly book
; [data]
;   path = /export/data
;   comment = data drive
;   volume = sample-data-drive
;   writable = yes
;   guest ok = yes

    # Create the netlogon directory for Domain Logons. 
    # Required with domain logons = yes (above) to work.
; stopnn [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

# 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

# Other examples. 
#
# A private printer, usable only by fred. Spool data will be placed in fred's
# home directory. Note that fred must have write access to the spool directory,
# wherever it is.
;[fredsprn]
;   comment = Fred's Printer
;   valid users = fred
;   path = /homes/fred
;   printer = freds_printer
;   public = no
;   writable = no
;   printable = yes

# A private directory, usable only by fred. Note that fred requires write
# access to the directory.
;[fredsdir]
;   comment = Fred's Service
;   path = /usr/somewhere/private
;   valid users = fred
;   public = no
;   writable = yes
;   printable = no

# a service which has a different directory for each machine that connects
# this allows you to tailor configurations to incoming machines. You could
# also use the %U option to tailor it by user name.
# The %m gets replaced with the machine name that is connecting.
;[pchome]
;  comment = PC Directories
;  path = /usr/pc/%m
;  public = no
;  writable = yes

# A publicly accessible directory, read/write to all users. Note that all files
# created in the directory by users will be owned by the default user, so
# any user with access can delete any other user's files. Obviously this
# directory must be writable by the default user. Another user could of course
# be specified, in which case all files would be owned by that user instead.
;[public]
;   path = /usr/somewhere/else/public
;   public = yes
;   only guest = yes
;   writable = yes
;   printable = no

# The following two entries demonstrate how to share a directory so that two
# users can place files there that will be owned by the specific users. In this
# setup, the directory should be writable by both users and should have the
# sticky bit set on it to prevent abuse. Obviously this could be extended to
# as many users as required.
;[myshare]
;   comment = Mary's and Fred's stuff
;   path = /usr/somewhere/shared
;   valid users = mary fred
;   public = no
;   writable = yes
;   printable = no
;   create mask = 0765




More information about the samba mailing list