|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Nick Kostirya 2:5020/400 21 Apr 2006 13:27:33 To : All Subject : NFS and lock --------------------------------------------------------------------------------
Привет.
Реально ли использовать блокировки под NFS?
Все демоны по-поднимал.
NFS сервер был и на FreeBSD и на Linux - результат один.
Если NFS сервер расположен на машине A.
Один процесс блокирует файл с машины B, то второй процесс с этой же машины видит
эту блокировку.
Если второй процесс расположен на машине С, то он ее не видит.
Тестировал вот такими perl скриптом:
use strict;
use warnings;
use Fcntl qw(:DEFAULT :flock);
my $filename = "file.txt";
sysopen(FH, $filename, O_WRONLY | O_APPEND | O_CREAT) or die "can't open
'$filename': $!";
flock(FH, LOCK_EX) or die "can't lock '$filename': $!";
print "File locked for LOCK_EX. Press enter.\n";
<>;
close(FH);
Даже и не знаю, что и думать. Почему это так?
Видел решения на основе жестких ссылок.
Hеужели демон, который используют NFS блокировок не делает их атомарно?
С уважением, Hиколай.
--- ifmail v.2.15dev5.3
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/16700762fe9c6.html, оценка из 5, голосов 10
|