¿Cuáles son las ventajas / desventajas de los montajes duros frente a los blandos en UNIX?

23

Esta pregunta puede variar entre las distribuciones, pero, en general, ¿cuáles son las ventajas / desventajas de usar una montura dura o blanda en el mundo UNIX?

¿Existen ciertas situaciones en las que uno es más beneficioso o los usos son bastante universales?

Aaron K
fuente

Respuestas:

21

Un montaje duro se usa generalmente para bloquear recursos como un disco local o SAN. Un montaje suave generalmente se usa para protocolos de archivos de red como NFS o CIFS.

La ventaja de un montaje suave es que si su servidor NFS no está disponible, el kernel expirará la operación de E / S después de un período de tiempo preconfigurado. La desventaja es que si su controlador NFS almacena datos en caché y el montaje suave agota el tiempo de espera, es posible que su aplicación no sepa qué escrituras en los volúmenes NFS se comprometieron realmente en el disco.

duffbeer703
fuente
8

los montajes duros y "intr" (interrumpible) es un buen compromiso (para núcleos anteriores a 2.6.25, ver comentario de Ryan Horrisberger). La aplicación no se deja engañar por las escrituras exitosas, pero puedes matarlas si algo obstruye los tubos.

hayalci
fuente
8
la opción intr está en desuso y se ignora en las versiones recientes en linux de: linux.die.net/man/5/nfs : la opción de montaje intr / nointr está en desuso después del kernel 2.6.25. Solo SIGKILL puede interrumpir una operación NFS pendiente en estos núcleos, y si se especifica, esta opción de montaje se ignora para proporcionar compatibilidad con versiones anteriores de los núcleos.
Ryan Horrisberger
5

Un montaje rígido que utiliza algún tipo de sistema de archivos de red (nfs o fusible) puede (a veces) bloquearse para siempre mientras intenta restablecer una conexión interrumpida. Esto significa que cada proceso que intenta acceder a ese montaje pasa al modo de suspensión del disco (D) hasta que el dispositivo vuelva a estar disponible o el sistema se reinicie.

La suspensión del disco no se puede interrumpir ni matar. Es como el proceso zombie de zombie.

En resumen, nunca use montajes rígidos para sistemas de archivos de red. Desea que el sistema de archivos falle (inmediatamente, a los procesos que utilizan llamadas al sistema) si no es posible la E / S. De lo contrario, la memoria que afirman también podría perderse si falla el FS.

Tim Post
fuente
Estoy de acuerdo con su recomendación general sobre montajes duros. Sin embargo, algunas personas que implementan VMWare en NFS recomiendan utilizar soportes rígidos. No estoy 100% familiarizado con por qué lo hacen, pero es algo a considerar e investigar detenidamente antes de implementar.
duffbeer703
Dado que las monturas duras se cuelgan para siempre, y en las máquinas de Olden Days a veces se bloqueaba al reiniciar debido a una montura NFS dura, ¿no es posible perder datos en las monturas duras? Imagine que su servidor de archivos NFS se cae, ahora sus clientes no pueden alcanzarlo, están totalmente confundidos, los reinicia ... sus posibles escrituras se han ido. En los días anteriores a la existencia de las monturas suaves, las monturas duras causaban problemas para reiniciar las computadoras. Si arrancó un servidor de archivos antes que un cliente, el cliente se colgaría. Tendríamos que apagarlos, a veces. La gente comete errores. ¿Sigue siendo un problema hoy?
Mike S
@MikeS Hay muchas configuraciones de este tipo que funcionan felizmente. Nunca se sabe con qué se encontrará en laboratorios o fábricas donde las máquinas de hace una década todavía controlan felizmente los equipos. No es tanto un problema para las personas que trabajan en cosas modernas. Pero sí, los montajes duros pueden costarle datos (¡pero los montajes blandos también pueden hacerlo!), Pero cualquier sistema de archivos de red que no use E / S de almacenamiento en caché con respaldo de batería tiene el mismo potencial para ese problema. Las monturas rígidas lo hacen aún más horrible cuando se trata de automatizar la detección y recuperación.
Tim Post
2

soft solo es utilizado por personas que no entienden el principio de nfs. soft / hard depende del uso del sistema de archivos. para aplicaciones de misión crítica, utilice siempre montajes duros para evitar la corrupción de archivos (esta es la razón por la cual es la opción predeterminada para la mayoría de los sistemas). para el sistema de archivos ro es seguro usar soft y therfor preferido. por cierto nfsv4 ya no es compatible con soft ....

manitou
fuente
nfsv4 ya no es compatible con soft? Según la página de manual, "Opciones compatibles con todas las versiones. Estas opciones son válidas para usar con cualquier versión de NFS. Soft / hard Determina el comportamiento de recuperación del cliente NFS después de que se agota el tiempo de espera de una solicitud NFS. Si no se especifica ninguna opción (o si el "se especifica la opción fija), las solicitudes NFS se vuelven a intentar indefinidamente. Si se especifica la opción programable, el cliente NFS falla una solicitud NFS después de que se hayan enviado retransmisiones de retransmisión, lo que hace que el cliente NFS devuelva un error a la aplicación que realiza la llamada". Ver linux.die.net/man/5/nfs
Mike S
Creo que te estás contradiciendo a ti mismo ... "soft solo es utilizado por personas que no entienden ..." y "para el sistema de archivos ro es seguro usar soft ..." Además, vea la publicación de @Tim Post, arriba .
Mike S