gcmd-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [gcmd-dev] SMB browsing crash


From: Micha
Subject: Re: [gcmd-dev] SMB browsing crash
Date: Mon, 4 Dec 2006 17:59:04 +0100
User-agent: Alpenglühn 7.2

Hey i looked up the bug reports and this is a cool user survey isn't it ;)
 
Even if samba access fails, gcmd should not crash in any case.
The question is, what kind of 'crash' is that.

 I. Possible directions of tracking:

(1) network access

This is a shell session log from a debian testing laptop with gcmd 1.2.0, 
 accessing the very same samba server, it says it could connect to the 
 server but it did not show anything, any of the shares, and i could not see
 the slightest hit on the server interface so i think it's lying ;)

address@hidden:~$ gnome-commander -d=ms
[MM] Opening connection
[MM] CON_OPEN_OK detected
[MM] Emitting open_done signal
[MM] on_con_open_done
address@hidden:~$

The weird thing is, a previous attempt lead to a crash (with no useful debug 
trace).
It works without problems with the smbclient commandline tool.

Remember, with 1.3.2 from my own laptop it just asks if 'the module is 
installed'
but does not crash. I see CON_OPEN_FAILED in stderr.

Anyway, this is not Ubuntu specific, if at all it's debian specific.

As a special showcase, on the server PC itself I can launch gcmd, click the 
icon, and after a 
really far too long time it shows the \\ path. In iptable log i can see the 
samba call is based 
on a temproary new interface with IP from the routers DHCP service. 
This is weird, i got a static IP, which is different, and with already working 
interface there is 
no need for any DHCP request. It explains, however, why it needs so long.
Unanswered DHCP requests for an IP can indeed cause a crash (waiting for Godot).
Also, firewall rules may block a request from unexpected IP.

(2) password request

I note these things in backtraces:

thread 0 and 2 end with something like
#24 0x081a19b8 in ?? ()
#25 0x080a1c1c in _IO_stdin_used ()
-- what stdin is that ? 
How would gcmd handle password request (popup box) ?

________________


II. A generic list of questions related to connectig and authentificating to 
the server.
   Bug reporters should be asked to answer only those they can do, and omit 
those 
   which seem to be obsolete.

1. Can you browse your samba/NT network through Nautilus or any other 
filemanager ? 
   This is about the network overview, not specifying any host or path to a 
share.
    How long did you wait for a response ? Please give it some minutes, for 
debugging. 

2.  Are you sure your workgroup is configured properly ?
     Did you configure a special password for samba at any time in the past ?
     Is your samba account connected to LDAP (or any other special environment) 
?

3. What kind of server, samba or native Windows (NT) ? 
    What samba version ? Did your distribution upgrade samba from 2.2 to 3.x 
recently, 
    and did it work with samba 2.2 before ?


III. Useful posts: 

For logging a terminal (shell) session, use the 'script' command,
eg, you start with 'script my-logfile' and after you're done,
press Ctrl-d to end the script log. I will have been written to 'my-logfile'
which you may can attach to bug reports. 

1. output of /sbin/ifconfig, from the users' host.
    Can you ping the server IP ?
    Do you get your IP by DHCP ?
    Can you verify by any method (looking up /var/log/samba/log.smbd, 
    'arp -vn' command, dhcp table, ipfilter log...) that the users' 
samba-request 
    really reaches the server box ? 
    (Note: Ports 137-139 Netbios and 445 CIFS need to be open)

2. If you have access to the samba server, please post the samba servers 
    /etc/samba/smb.conf. Especially the values of these options (if present):
security =
auth methods = 
available = 
guest only =
public = 
bind interfaces only = 

It would be even better to post the output of 'testparm -s /etc/samba/smb.conf'.


3. output of 
   smbclient -d3 -N -L hostname
   smbclient -d3 -N -L //hostname/your-share-name 
  .... launched from a normal user account.


________________


Some explanations about passwords :)

A possible standard configuration of samba (smb.conf) is global "security  = 
share"
plus the share specific option "guest only = yes".
This matches point 6 below.  Another standard setup on small local networks
are public shares, where you don't need a password ("public = yes").

Basically it works this way ( i just paste the manpage section).

1. If  the  client  has  passed a username/password pair and that 
user-name/password 
   pair is validated by the UNIX system's password programs,  the  connection 
is made 
   as that username. This includes the \servervice%username method of passing a 
  username.

2. If the client has previously registered a username with  the system and  now 
 supplies a 
    correct password for that username, the connection is allowed.

3. The client's NetBIOS name and  any  previously  used  usernames  are checked 
against 
    the supplied password. If they match, the connection is allowed as the 
corresponding user.

4. If the client has previously validated a username/password pair with the  
server  and  the  client  
    has passed the validation token, that username is used.

5. If a user = field is given in the smb.conf file for the service  and the  
client  has  supplied  a  
    password,  and  that password matches (according to the UNIX system's 
password checking) 
   with one of  the usernames from the user = field, the connection is made as 
the username in the 
   user = line. If one of the usernames in the user =  list begins  with  a @, 
that name expands to a 
   list of names in the group of the same name.

6. If the service is a guest service, a connection is made as the user-name  
given  in the 
    "guest account =" for the service, irrespective of  the supplied password.



I have to go, cut it here again, cu later.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]