У меня возникли проблемы с кэшированием атрибутов клиентской стороны NFS. Я использую некоторые серверы, один - сервер NFS, а другие - серверы NFS.
Все серверы Debian (lenny, 2.6.26-2-amd64 Linux) и версии следуют.
% dpkg -l | grep nfs
ii libnfsidmap2 0.20-1 An nfs idmapping library
ii nfs-common 1:1.1.2-6lenny1 NFS support files common to client and server
ii nfs-kernel-server 1:1.1.2-6lenny1 support for NFS kernel server
На сервере NFS/etc/exports записывается следующим образом:
/export-path 192.168.0.0/255.255.255.0(async,rw,no_subtree_check)
В клиентах NFS/etc/fstab записывается следующим образом:
server:/export-path /mountpoint nfs rw,hard,intr,rsize=8192,async 0 0
Как вы можете видеть, опция "async" используется для производительности доступа нескольких клиентов. Однако иногда это может вызвать ошибки ложного кэширования.
Так как я поддерживаю много серверов (и у меня нет столь сильного разрешения на изменение параметров монтирования), я не хочу изменять /etc/exports и/etc/fstab. Я думаю, что достаточно, если у меня есть инструмент командной строки, который "очищает" кеш-атрибут клиентской стороны NFS с разрешения пользователя.
Пожалуйста, дайте мне знать, есть ли такие команды.
Спасибо,
(Приложена)
Я имею в виду "ошибки ложного кэширования",
% ls -l /data/1/kabe/foo
ls: cannot access /data/1/kabe/foo: No such file or directory
% ssh another-server 'touch /data/1/kabe/foo'
% ls -l /data/1/kabe/foo
ls: cannot access /data/1/kabe/foo: No such file or directory
Иногда такие случаи случаются. Проблема заключается не в содержимом файла, а в атрибутах файла (= информация о дентинах), поскольку NFS заявляет, что он гарантирует согласованность между концами.