The Samba copy file call flow
GongJinrong
jinronggong at hotmail.com
Sun May 4 00:15:21 MDT 2014
Thanks Volker and Jeremy for your nice replies, my samba version is 3.5.10,
and the smb.conf is like the following, if I didn't enable any vfs object,
does samba still call functions in vfs_default.c?
----------------------------------------------------------------
smb.conf
----------------------------------------------------------------
#======================= Global Settings
=====================================
[global]
dos charset = GB2312
unix charset = GB2312
display charset = GB2312
directory mask = 0777
force directory mode = 0777
directory security mask = 0777
force directory security mode = 0777
create mask = 0777
force create mode = 0777
security mask = 0777
force security mode = 0777
unix extensions= no
workgroup = WORKGROUP
server string = Samba Server Version %v
log level = 10
log file = /var/log/samba/log.%m
# max 50KB per log file, then rotate
max log size = 5000
security = user
passdb backend = tdbsam
#============================ Share Definitions
==============================
[homes]
comment = Home Directories
browseable = no
writable = yes
; valid users = %S
; valid users = MYDOMAIN\%S
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = no
writable = no
printable = yes
# Un-comment the following and create the netlogon directory for Domain
Logons
; [netlogon]
; comment = Network Logon Service
; path = /var/lib/samba/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 = /var/lib/samba/profiles
; browseable = no
; guest ok = yes
# A publicly accessible directory, but read only, except for people in
# the "staff" group
[public]
comment = Public Stuff
path = /usr/local/Cavium_Networks/OCTEON-SDK
public = yes
writable = yes
printable = no
write list = +John
unix extensions = no
follow symlinks = yes
wide links= yes
-----Original Message-----
From: samba-technical-bounces at lists.samba.org
[mailto:samba-technical-bounces at lists.samba.org] On Behalf Of Volker
Lendecke
Sent: Friday, May 02, 2014 4:09 PM
To: GongJinrong
Cc: samba-technical at lists.samba.org
Subject: Re: The Samba copy file call flow
On Thu, May 01, 2014 at 11:52:12AM +0800, GongJinrong wrote:
> I found that if I enable a vfs object(such as full_audit), I can
> see the
> write_file() print log, but if I don't enable any VFS object, I cannot
> find the file data write operations, can you tell me how samba store a
> file to disk without VFS object? Where is the real file write code?
It's in source3/smbd/vfs.c, lines 456 and following. From there it goes into
source3/modules/vfs_default.c, line 610 and following. From there it goes
into source3/lib/system.c, line 141. In 146 we have a pwrite system call.
>From there it is the C system library and on most implementations it will be
some kind of system call.
But beyond the call to the function pwrite it is essentially out of Samba's
hands and in the hands of someone else.
With best regards,
Volker Lendecke
--
SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
phone: +49-551-370000-0, fax: +49-551-370000-9 AG Göttingen, HRB 2816, GF:
Dr. Johannes Loxen http://www.sernet.de, mailto:kontakt at sernet.de
More information about the samba-technical
mailing list