comment faire pour désactiver la mise en cache dans CIFS (samba) sur le côté client sous linux
avons développé une application de s'exécuter sur une cible avec le noyau 2.6.10. Un dossier partagé sur un ordinateur windows est monté via la commande:
mount -t cifs -o username=xxx,password=xxx,forcedirectio //192.168.170.67/57 /fsRecord
Comme vous pouvez le comprendre à partir de l'option de commande forcedirectio
, je veux désactiver la mise en cache côté client. Mais je ne peux pas.
La quantité de mémoire RAM disponible sur la cible est de 40 MO. Quand je copie un fichier de la taille d'environ 10 mo, mémoire vive disponible de la taille diminue à 30 MO.
Le noyau 2.6.10 utilise cifs.1.28. J'ai également réglé oplockEnabled à 0 (dans le code source et /proc/fs/cifs/OplockEnabled). Mais il n'a pas arrêté de mise en cache. Comment puis-je désactiver la mise en cache sur le client cifs pour de vrai?
OriginalL'auteur shaneess | 2013-02-17
Vous devez vous connecter pour publier un commentaire.
Peut-être trop tard, mais dans Arch-je accomplir ceci avec l'exemple suivant:
Voici une fonction très pratique pour déterminer la validité options du module.
Voir
man 5 modprobe.d
pour plus d'informations sur modprobe.d syntaxe.En outre, CIFS supports de respecter un
cache
option. Selon le mont.cifs manuel, réglagecache=none
devez désactiver la mise en cache, tandis que la valeur par défaut estcache=strict
.OriginalL'auteur ymek