GNU/Linux >> Tutoriales Linux >  >> Linux

¿Hay algún inconveniente al usar Mount –bind como sustituto de los enlaces simbólicos?

Los enlaces simbólicos tienen limitaciones en la forma en que funcionan como ls , mv y cp puede operar en ellos porque, a diferencia de los comandos iniciados por shell como cd , estas funciones no tienen información sobre cómo accedió el usuario al directorio con respecto a la ruta lógica (ver post relacionado). Parece que usar el mount --bind En cambio, la opción puede evitar esto, ofreciendo una mayor funcionalidad y compatibilidad con samba y otros servidores de archivos porque el directorio montado tendrá dos rutas físicas independientes, en lugar de un enlace.

Me gustaría reemplazar todos mis enlaces simbólicos con referencias usando el mount --bind pero esto significaría montar más de 150 puntos en fstab. ¿Hay algún problema de rendimiento que pueda surgir de este u otros inconvenientes que deba considerar?

Respuesta aceptada:

Con mount --bind , existe un árbol de directorios en dos (o más) lugares en la jerarquía de directorios. Esto puede causar una serie de problemas. Las copias de seguridad y otras copias de archivos seleccionarán todas las copias. Se vuelve difícil especificar que desea copiar un sistema de archivos:terminará copiando los archivos montados en enlace dos veces. Búsquedas con find , grep -r , locate , etc., recorrerán todas las copias, y así sucesivamente.

No obtendrá ninguna "funcionalidad y compatibilidad mejoradas" con los montajes de enlace. Se ven como cualquier otro directorio, lo que la mayoría de las veces no es un comportamiento deseable. Por ejemplo, Samba expone enlaces simbólicos como directorios por defecto; no hay nada que ganar con el uso de un montaje de enlace. Por otro lado, los montajes de enlace pueden ser útiles para exponer jerarquías de directorios sobre NFS.

No tendrá ningún problema de rendimiento con los montajes de enlace. Lo que tendrás son dolores de cabeza administrativos. Los montajes de enlace tienen sus usos, como hacer que un árbol de directorios sea accesible desde un chroot, o exponer un directorio oculto por un punto de montaje (esto suele ser un uso transitorio mientras se remodela una estructura de directorios). No los use si no los necesita.

Solo la raíz puede manipular los montajes de enlace. No se pueden mover por medios ordinarios; bloquean su ubicación y los directorios de antepasados.

En términos generales, si pasa un enlace simbólico a un comando, el comando actúa en el enlace en sí mismo si opera en archivos, y en el destino del enlace si opera en el contenido del archivo. Esto también se aplica a los directorios. Esto suele ser lo correcto. Algunos comandos tienen opciones para tratar los enlaces simbólicos de manera diferente, por ejemplo, ls -L , cp -d , rsync -l . Independientemente de lo que intente hacer, es mucho más probable que los enlaces simbólicos sean la herramienta adecuada, a que los montajes de vinculación sean la herramienta adecuada.

Relacionado:Linux – Ubuntu Server, ¿establecer la fuente del terminal en una fuente ttf personalizada?
Linux
  1. ¿Cómo aplicar un parche -p0 desde cualquier directorio de trabajo?

  2. Linux:¿hay alguna interfaz gráfica de usuario para Linux que no use X11?

  3. ¿Hay alguna diferencia entre montar un sistema de archivos /proc dentro de un chroot en comparación con montarlo desde el exterior?

  4. ¿Existen códigos de estado de salida estándar en Linux?

  5. ¿Hay alguna API de C para extraer el nombre del archivo base de su ruta completa en Linux?

¿Existen identificadores de secuencias de comandos de Shell bien conocidos y bien utilizados para Un*x?

¿Hay algún equivalente de WinSCP para Linux?

¿Hay alguna GUI para Linux que no use X11?

¿Existen alternativas al uso de `udev`?

¿Cómo cambiar la propiedad de los enlaces simbólicos?

¿Hay algún sistema de archivos para el que `ln -d` tenga éxito?