enlace simbólico vs. alias

Descargo de responsabilidad: trabajo con programadores, pero no soy uno y no tengo conocimiento real/formal de cómo funciona un sistema operativo; tenga paciencia si lo siguiente deja en claro mi ignorancia :)

Estoy tratando de organizar un gran grupo de carpetas que contienen muchas subcarpetas y documentos diferentes (a continuación se proporciona el contexto completo, en caso de que sea útil/relevante).

Estoy tratando de evitar la duplicación de carpetas/documentos, pero sería más conveniente que muchas carpetas/documentos se "archivaran" en varios lugares. Como tal, estaba pensando en usar enlaces simbólicos o alias, pero me preguntaba cuál sería el más apropiado o sólido para el desarrollo y los cambios en curso.

No tengo muy clara la diferencia entre ambos (por lo que he leído, un alias de Mac es una especie de enlace simbólico, pero con diferente comportamiento). Sin embargo, mientras trabajaba en otros proyectos en los que, por ejemplo, una aplicación llama a un script que mi programador puede actualizar de forma intermitente, sé que tuvimos que hacer uso de un enlace simbólico para evitar problemas cuando se actualizó el archivo (y un alias no lo haría). trabajo, en ese caso).

Todos estos archivos se almacenan actualmente en DropBox , en caso de que eso añada complicaciones adicionales.

Cualquier sugerencia será muy bienvenida, incluidos consejos sobre cómo estructurar/organizar archivos de manera óptima. Me doy cuenta de que constantemente me debato entre tener carpetas bien organizadas y un acceso rápido a esas carpetas/documentos , ¡e imagino que debe haber una solución que permita ambos!


Contexto: lo siguiente puede o no ser relevante para la solución propuesta y solo se incluye para completar.

Soy profesor y creo una nueva carpeta para cada clase (8-12 clases/semestre); dentro del cual creo versiones actualizadas de mis notas (que se hacen en LaTeX, por lo que se agrupan en carpetas separadas, para cada clase); nuevos recursos a incorporar en el futuro; preguntas de los estudiantes y otra información relacionada.

Durante cualquier semestre dado, mi trabajo vive casi exclusivamente en la carpeta del curso para ese semestre, por lo que trato de asegurarme de que todos, y solo, los archivos relevantes estén en esa carpeta durante la duración del semestre.

Cualquier recurso no utilizado o proyecto que deba transferirse generalmente se mueve a una carpeta de recursos de clase que se transfiere de un semestre a otro. Sería conveniente, sin embargo, hacer que este proceso sea menos exigente de mantener (por ejemplo, tener la carpeta de recursos como un enlace simbólico de la carpeta en cada semestre, de modo que el material a llevar adelante se archive automáticamente allí y se pueda encontrar dentro de cualquier semestre ) . carpeta).

En general, una pregunta por pregunta es lo mejor, pero dado que dedica tanto trabajo a esto, intentaré responder ambas y, en el peor de los casos, podría hacer una pregunta de seguimiento con un enlace más limitado aquí para separar o elaborar cualquiera de las respuestas más cortas. Perdón por la respuesta tan larga, eso podría hacerse mejor en Ask Different Chat
gracias amablemente por la respuesta detallada! Voy a tener que tomarme un tiempo para digerir. Dejaré la pregunta abierta por el momento, solo para ver si hay otras respuestas / puntos de vista útiles, pero por supuesto tiene razón en cuanto a múltiples preguntas. Se me escapó :)
No hay problema. Creo que la idea de búsqueda vs organización vs enlace es profunda y vale la pena alojarla siempre que haya una pregunta clara y la suya sobre enlace vs alias sea bastante clara en este contexto.
Hay dos tecnologías diferentes que debería estar mirando aquí. Uno es el control de versiones para sus desarrolladores y otro es la gestión de contenido para el lado académico. Esto va mucho más allá de lo que puede hacer de manera efectiva con enlaces simbólicos, alias y almacenamiento compartido (en la nube). Descargo de responsabilidad: este es el tipo de consultoría que hago a diario.

Respuestas (2)

Los alias almacenan dos piezas de información sobre el archivo de destino: la ubicación y un identificador de archivo. Los enlaces simbólicos solo almacenan la otra ubicación. Por esa razón, si mueve un archivo, los alias son superiores, ya que a menudo aún pueden apuntar al archivo correcto cuando ocurre un cambio.

Dropbox o mover los archivos a otro sistema de archivos es donde las cosas se complican mucho: lo que funciona en un sistema de archivos a menudo fallará en otro.


En cuanto a su problema general de organización de archivos y filtrado/búsqueda, será mucho más difícil de responder: necesitará algo así como 20 preguntas y un descubrimiento de ida y vuelta con una o más personas. Tampoco habrá una respuesta correcta, ya que lo que funcionaría para 4 años de plan de estudios podría desmoronarse como un castillo de naipes si tiene 25 años de archivos. Del mismo modo, diseñar algo para 3 TB de medios digitales sería excesivo para alguien que trabaja en formatos de archivo delgados como texto de descuento y referencias de archivos simples a imágenes fijas y clips cortos de animación.

Piense en un par de cosas cuando observe por qué su flujo de trabajo actual le está fallando:

  1. ¿Puedes usar la búsqueda de Spotlight de manera efectiva? Para habilidades avanzadas, piense en pasar 3 o 4 horas en clases de 30 minutos durante un par de semanas con personas que saben buscar, carpetas inteligentes, etiquetado, búsqueda avanzada para encontrar archivos por rango de fechas, datos EXIF ​​en imágenes, por tamaño o formato. Tal vez tenga una buena estructura de carpetas y podría reforzar la búsqueda para que no necesite mover archivos; simplemente colóquelos donde están y encuéntrelos rápidamente / use vistas filtradas para ubicar las cosas que necesitará ad hoc durante la clase o la preparación de la lección .
  2. ¿Tiene una buena estrategia de copia de seguridad. Si lo hace, simplemente elimine las cosas que no necesita para que no necesite ser un asistente de búsqueda. Cuando necesite algo, restáurelo y listo (o colóquelo en la nube para que pueda restaurar o explorar los archivos en busca de una "falta" ocasional de lo que necesita en su conjunto de archivos de trabajo. Box.com / Dropbox / iCloud / Google drive complica esto inmensamente ya que la sincronización no es realmente una copia de seguridad y la copia de seguridad ciertamente no es una sincronización. Cuanto más optimice para [búsqueda/sincronización/copia de seguridad/organización], más sufrirán los otros aspectos en mi experiencia.
  3. ¿Está trabajando con aplicaciones clave que pierden funciones? Muchas aplicaciones pueden manejar archivos almacenados en otros lugares y el texto sin formato es tan pequeño que podría transportar el texto sin formato de toda la biblioteca del Proyecto Gutenberg de 56.000 libros electrónicos en 900 MB . Se descarga en aproximadamente 45 segundos para mí, por lo que su situación podría necesitar una forma diferente de indexar y organizar en función de cuáles son realmente sus requisitos para archivos y aplicaciones. (TeX es notoriamente complicado al arrojar archivos por todos lados, e hice mi tesis en LaTeX; sería difícil usar eso ahora para un cuerpo de trabajo que necesitaba sincronizarse / crecer / vincularse durante años. Quizás Apple Notes y otras aplicaciones reemplazan las cosas que no pueden vivir en el texto del plan/rebajas/pdf).

Por favor, no tome ninguno de estos comentarios como una crítica a su esfuerzo y planes. Espero que hayas pensado profundamente en cómo trabajas y habrías cambiado si tuviera sentido, pero va a ser difícil tener una respuesta aquí que sea ampliamente aplicable a todos los que lean tu publicación, además de describir algunos de los elementos relevantes para Considere y evalúe cómo esos elementos afectan el flujo de trabajo actual, ideal u optimizado de cualquier persona.

Si desea que el mismo archivo aparezca en más de una carpeta, continúe y hágalo. No necesita un alias o enlace simbólico.

Cuando se crea un archivo, se coloca un nombre de archivo en una carpeta y se crea un vínculo entre el nombre de archivo y el archivo. Si lo desea, puede crear más de un enlace.

Por ejemplo, digamos que el único archivo visible en una carpeta se llama a.txt. En el ejemplo, este archivo contiene 9 bytes. Si ls -lise ingresa el comando, se produce el siguiente resultado.

total 8
3798081 -rw-r--r--  1 davidanderson  staff  9 Apr 22 09:28 a.txt

Esta salida muestra el número de serie (inodo) del archivo llamado a.txtis 3798081y el número de enlaces es 1. El nombre del archivo b.txtse puede vincular a este mismo archivo ingresando el comando que se indica a continuación.

link a.txt b.txt

A continuación se muestra la salida del comando ls -li.

total 16
3798081 -rw-r--r--  2 davidanderson  staff  9 Apr 22 09:28 a.txt
3798081 -rw-r--r--  2 davidanderson  staff  9 Apr 22 09:28 b.txt

Ambos nombres de archivo a.txttienen b.txtel mismo número de inodo. Además, el recuento de enlaces para ambos nombres de archivo es 2. Ahora puede moverse b.txta una carpeta diferente y luego cambiar el nombre b.txta a.txt.

Para mostrar ambos a.txty b.txtvincular al mismo archivo, uno puede comparar los resultados de copiar el archivo. Si cp a.txt c.txtse ingresa el comando, entonces el ls -licomando produciría el siguiente resultado.

total 24
3798081 -rw-r--r--  2 davidanderson  staff  9 Apr 22 09:28 a.txt
3798081 -rw-r--r--  2 davidanderson  staff  9 Apr 22 09:28 b.txt
3798333 -rw-r--r--  1 davidanderson  staff  9 Apr 22 10:20 c.txt

Aquí, al nombre de archivo c.txtse le ha asignado un número de inodo diferente y el recuento de enlaces para los nombres de archivo a.txtpermanece b.txten 2.

Debo señalar el comportamiento cuando se edita un archivo con múltiples enlaces. Algunos editores (como nano) guardarían los cambios en el mismo archivo, por lo que la vinculación no cambiaría. La aplicación TextEdit crearía un nuevo archivo. Entonces, por ejemplo, si el comando open -a TextEdit.app a.txtse usó para cambiar el archivo, la salida del ls -licomando aparecería de la siguiente manera.

3798637 -rw-rw-rw-@ 1 davidanderson  staff  13 Apr 22 10:52 a.txt
3798081 -rw-rw-rw-@ 1 davidanderson  staff   9 Apr 22 10:51 b.txt
3798333 -rw-r--r--  1 davidanderson  staff   9 Apr 22 10:20 c.txt

Aquí, los tres nombres de archivo se vinculan a archivos diferentes y los recuentos de vínculos se establecen en 1.