Un montage dur est généralement utilisé pour les ressources de bloc comme un disque local ou un SAN. Un montage logiciel est généralement utilisé pour les protocoles de fichiers réseau tels que NFS ou CIFS.
L'avantage d'un montage logiciel est que si votre serveur NFS n'est pas disponible, le noyau expirera l'opération d'E / S après une période préconfigurée. L'inconvénient est que si votre pilote NFS met en cache les données et que le montage progressif expire, votre application peut ne pas savoir quelles écritures sur les volumes NFS ont été réellement validées sur le disque.
Un montage dur utilisant une sorte de système de fichiers réseau (nfs ou fusible) peut (parfois) se bloquer pour toujours tout en essayant de rétablir une connexion rompue. Cela signifie que chaque processus essayant d'accéder à ce montage passe en veille disque (D) jusqu'à ce que le périphérique soit à nouveau disponible ou que le système soit redémarré.
La mise en veille du disque ne peut pas être interrompue ou supprimée. C'est comme le zombie des processus zombies.
En bref, n'utilisez jamais de supports rigides pour les systèmes de fichiers réseau. Vous souhaitez que le système de fichiers échoue (immédiatement, aux processus utilisant des appels système) si les E / S ne sont pas possibles. Sinon, la mémoire qu'ils réclament peut aussi bien être divulguée si le FS échoue.
la source
soft n'est utilisé que par des personnes qui ne comprennent pas le principe de nfs. soft / hard dépend de l'utilisation du système de fichiers. pour les applications critiques, utilisez toujours des montages rigides pour éviter la corruption des fichiers (c'est la raison pour laquelle c'est la valeur par défaut pour la plupart des systèmes). pour le système de fichiers ro, il est sûr d'utiliser un logiciel et c'est pourquoi il est préférable. d'ailleurs nfsv4 ne supporte plus soft ....
la source