[Samba] way to make files not show up until completely transferred?
Mark.Osborne at ni.com
Tue Oct 3 19:45:08 GMT 2006
I have run into an issue with rsync that I’m hoping someone can help with.
We are using rsync to mirror data between a samba share on an internal
staging server and our production ftp servers. The rsync runs from cron
every 15 minutes. Occasionally, the rsync will run while somebody is
uploading a large file to the samba share (for instance an iso image). The
file appears to make it out to the production ftp servers, and an ls shows
it to have the correct file size and timestamp. However, an md5sum of the
file shows that it is different from the file on the staging server.
Subsequent runs of the rsync do not update the file. I have tried to run
the rsync manually with the –c flag even though we wouldn’t really want to
implement that because of how long it makes rysnc take. Even with
checksum turned on, the file still did not get correctly updated. If the
file is completely uploaded to the share before the rsync runs there does
not appear to be an issue.
Originally I thought that there may be a problem with different versions
of rsync on the servers. The staging server was running rsync 2.5.5
while the production servers were running 2.5.7. I have gotten rsync
2.6.8 on both servers and am still experiencing the problem.
More information about the servers
Staging server – Solaris 8, rsync 2.6.8
Ftp1 – Redhat AS 2.1, rsync 2.6.8
Ftp2 – Redhat AS 2.1, rsync 2.6.8
I've also posted this question to the rsync mailing list, but I'm
wondering if there might be a workaround with samba. Is there a way to
make a file not show up in the share until it is completely uploaded?
Web Systems Engineer
mark.osborne at ni.com
More information about the samba