хай!никак не могу разобраться с блокировками на файлы на самбовой шаре при передаче файла большого размера.
есть 3 компа, все linux (centos6) - samba-server, client1, client2
на samba-server поднята samba (samba-3.6.23 из centos репа). вот конфиг:
[global]
workgroup = MYGROUP
server string = Samba Server Version %v
netbios name = SAMBA
log level = 0 locking:6
log file = /var/log/samba/log.%m
max log size = 50
security = user
passdb backend = tdbsam
;kernel oplocks = No
[public]
comment = Public Stuff
path = /public
public = yes
writable = yes
printable = no
write list = user1
;oplocks = No
;posix locking = No
;level2 oplocks = No
;veto oplock files = /*.dat/
на обоих клиентах шара смонтирована вот так: mount.cifs //samba/public /samba -o username=user1
затем на client1 я даю команду: cp bigfile.dat /samba
файл начинает копироваться на шару и в процессе копирования на client2 я даю команду:
mv /samba/bigfile.dat /home
и происходит следующее:
на client2) файл перемещается в /home, при этом он "битый", поскольку client1 ещё не успел докопировать его.
на client1) ещё какое то время тупит, "копируя" файл, хотя на шаре файла уже нет.
я как только не игрался опциями lock - никак не получается добиться блокировки файла на время копирования.
поэтому вопрос, можно ли на самбе реализовать следующее поведение: клиент1 начинает копировать файл, клиент2 даёт команду на перемещение файла, но эта команда задерживается на выполнение пока не докопируется файл клиентом1.