We have a vendor who is going to install an application server, and it requires samba to behave as much like windows as possible. There is a particular case they are complaining about. 1. Run samba on redhat server 2. Map a drive from windows. Let's say the Z: drive 3. Run a script to open and continuously modify a file on the samba share 4. Observe the samba share in Windows Explorer You will see that the file size does not get updated until you hit "refresh". In a pure windows, environment, the filesize will be modified every few seconds. So, samba is apparently not alerting the windows client that the filesize has changed. Is this a configurable setting? Can this be fixed? Here is an example perl script to run on the client side: open FILE, ">", "Z:/test.txt"; while (1) { print FILE "jkasdklfjaskldfjaskl;dfjakl;sdfgjaklfghjkadfghajklsasdfjklasjdflkasjdfk lajsdfklajsdfl"; print FILE "jkasdklfjaskldfjaskl;dfjakl;sdfgjaklfghjkadfghajklsasdfjklasjdflkasjdfk lajsdfklajsdfl"; print FILE "jkasdklfjaskldfjaskl;dfjakl;sdfgjaklfghjkadfghajklsasdfjklasjdflkasjdfk lajsdfklajsdfl"; } print "sleeping\n"; sleep 1; } Thanks, Sam Darwin samueldarwin at yahoo dot com
On Wed, May 5, 2010 at 4:56 PM, Darwin, Samuel <darwins at thirteen.org> wrote:> We have a vendor who is going to install an application server, and it > requires samba to behave as much like windows as possible. ?There is a > particular case they are complaining about. > > > 1. ?Run samba on redhat server > 2. ?Map a drive from windows. ?Let's say the Z: drive > 3. ?Run a script to open and continuously modify a file on the samba > share > 4. ?Observe the samba share in Windows Explorer > > You will see that the file size does not get updated until you hit > "refresh". > In a pure windows, environment, the filesize will be modified every few > seconds. ? ?So, samba is apparently not alerting the windows client that > the filesize has changed. ?Is this a configurable setting? ?Can this be > fixed? > > Here is an example perl script to run on the client side: > > > > open FILE, ">", ?"Z:/test.txt"; > > > > while (1) { > > ? ? ? ?print FILE > "jkasdklfjaskldfjaskl;dfjakl;sdfgjaklfghjkadfghajklsasdfjklasjdflkasjdfk > lajsdfklajsdfl"; > > ? ? ? print FILE > "jkasdklfjaskldfjaskl;dfjakl;sdfgjaklfghjkadfghajklsasdfjklasjdflkasjdfk > lajsdfklajsdfl"; > > ? ? ? print FILE > "jkasdklfjaskldfjaskl;dfjakl;sdfgjaklfghjkadfghajklsasdfjklasjdflkasjdfk > lajsdfklajsdfl"; > > ? ? ? ? ? ?} > > > > ? ? ? ?print "sleeping\n"; > > ? ? ? ?sleep 1; > > ? ? ? ?} > > >I believe you need fam support compiled into samba and inotify support in your kernel. John
By the way, I have isolated the problem to a subset of cases. To review the problem case again briefly: mount Z: drive from Windows. Actively modify a file. The Windows Explorer doesn't "update" things like file size or modification date. This is only broken when the modification happens across the samba share. If I log onto the Linux server that is running samba, and I modify a file there (in any number of ways), the "update" actually does work. It does show up on my Z: drive. So, for the problem to occur, one must make the changes to the file from Windows, across the samba share, as well as be observing the file from Windows Explorer.
Darwin, Samuel writes:> So, for the problem to occur, one must make the changes to the file from > Windows, across the samba share, as well as be observing the file from > Windows Explorer.We have encountered similar (bot not identical) problems and they were solved by setting csc policy = disable for the particular share. Perhaps you could give that a try? Regards, roel
The csc policy = disable did not seem to affect the issue. -----Original Message----- From: Roel van Meer [mailto:rolek at bokxing.nl] Sent: Monday, May 10, 2010 2:33 AM To: Darwin, Samuel Cc: samba at lists.samba.org Subject: Re: [Samba] non-windows behavior of samba Darwin, Samuel writes:> So, for the problem to occur, one must make the changes to the filefrom> Windows, across the samba share, as well as be observing the file from > Windows Explorer.We have encountered similar (bot not identical) problems and they were solved by setting csc policy = disable for the particular share. Perhaps you could give that a try? Regards, roel