Команда очистки кэша NFS?

У меня проблема с кэшированием атрибутов на стороне клиента 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 на стороне клиента с правами пользователя.

Пожалуйста, дайте мне знать, если есть такие команды.

Thanks,


(Appended)

Я имею в виду "ошибки ложного кэширования",

 % 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 говорит, что гарантирует согласованность Close-to-Open.

20
задан Tomoya Kabe 30 November 2011 в 01:15
поделиться