VFS: connect to share is different with Win98 and smbclient
Rainer Link
link at foo.fh-furtwangen.de
Tue Nov 20 14:07:03 GMT 2001
Hi!
I wrote a VFS module for on-access virus scanning within Samba 2.2.x,
see www.openantivirus.org/projects.php for details.
If I connect to share tmp as nobody (twice) and as user rainer to my
homedir via smbclient, smbd is forked three times, as you can see by the
following log snippet and the ps output.
Nov 20 21:30:23 rlss2 smbd_vscan_sophos[2805]: VFS_INIT: vscan_ops -
$Revision: 1.3 $ loaded
Nov 20 21:30:23 rlss2 smbd_vscan_sophos[2805]: connect to service tmp by
user nobody
Nov 20 21:30:54 rlss2 smbd_vscan_sophos[2817]: VFS_INIT: vscan_ops -
$Revision: 1.3 $ loaded
Nov 20 21:30:54 rlss2 smbd_vscan_sophos[2817]: connect to service rainer
by user rainer
Nov 20 21:31:38 rlss2 smbd_vscan_sophos[2827]: VFS_INIT: vscan_ops -
$Revision: 1.3 $ loaded
Nov 20 21:31:38 rlss2 smbd_vscan_sophos[2827]: connect to service tmp by
user nobody
root 2744 0.0 0.5 4232 1524 ? S 21:28 0:00
/usr/local/samba/bin/smbd -D
nobody 2805 0.6 2.5 9236 6596 ? S 21:30 0:00
/usr/local/samba/bin/smbd -D
rainer 2817 1.0 2.5 9236 6632 ? S 21:30 0:00
/usr/local/samba/bin/smbd -D
nobody 2827 5.7 2.5 9236 6596 ? S 21:31 0:00
/usr/local/samba/bin/smbd -D
If I do the same via Win98 I get:
Nov 20 21:52:38 rlss2 smbd_vscan_sophos[2880]: VFS_INIT: vscan_ops -
$Revision: 1.3 $ loaded
Nov 20 21:52:38 rlss2 smbd_vscan_sophos[2880]: connect to service rainer
by user rainer
Nov 20 21:52:48 rlss2 smbd_vscan_sophos[2880]: VFS_INIT: vscan_ops -
$Revision: 1.3 $ loaded
Nov 20 21:52:48 rlss2 smbd_vscan_sophos[2880]: connect to service tmp by
user rainer
Nov 20 21:53:20 rlss2 smbd_vscan_sophos[2880]: VFS_INIT: vscan_ops -
$Revision: 1.3 $ loaded
Nov 20 21:53:20 rlss2 smbd_vscan_sophos[2880]: connect to service hostfs
by user rainer
root 2744 0.0 0.4 4232 1124 ? S 21:28 0:00
/usr/local/samba/bin/smbd -D
rainer 2880 0.9 2.5 9340 6556 ? S 21:52 0:00
/usr/local/samba/bin/smbd -D
Well, why does smbclient and Windows behave different here? The main
problem with Win* is, that if an user is connected to three shares and
opens a somewhat bigger file (-> virus scanning takes some time) all the
other shares are slowed down, as only one smbd child is forked. I even
had a report that by retrieving a 30 MB ZIP-File, which is scanned
recursively as I've specified within SAVI to scan inside zip files, no
more connections to other shares are possible by this user. With
smbclient, for every share one smbd child (and therefore one
smbd_vscan_sophos "child") is forked. So, retrieving one large file from
one share does not slow down speed of the other shares. At least I
wasn't able to reproduce this behaviour.
Can this issue be solved in any way, i.e. a setting in smb.conf or
within the settings in Win?
TIA
cheers, Rainer
--
Rainer Link | Student of Computer Networking
link at suse.de | University of Applied Sciences, Furtwangen, Germany
rainer.w3.to | http://www.computer-networking.de/
More information about the samba-technical
mailing list