A seconda di cosa intendi per "errori di falsa cache", eseguendo sync
potrebbe darti ciò di cui hai bisogno. Questo cancellerà tutti i buffer del filesystem.
Se necessario, puoi anche svuotare le cache della VM nel kernel usando /proc/sys/vm/drop_caches
.
# To free pagecache
echo 1 > /proc/sys/vm/drop_caches
# To free dentries and inodes
echo 2 > /proc/sys/vm/drop_caches
# To free pagecache, dentries and inodes
echo 3 > /proc/sys/vm/drop_caches
All'interno di un dato processo, chiamando opendir()
e closedir()
sulla directory padre di un file invalida la cache NFS. L'ho usato durante la programmazione di un job scheduler. Molto, molto utile. Provalo!
Questo è il numero di riga del codice pertinente (che mostra l'uso nel contesto):https://github.com/earonesty/grun/blob/master/grun#L820
Era l'unico modo per risolvere il problema del completamento del lavoro n. 1 e del lavoro n.