Un archivo en dos directorios

Hoy en clase, el profesor quiso dar un ejemplo, para ello utilizó el sistema de archivos y pregunto al salon:

Acaso es posible tener un archivo en dos directorios la mismo tiempo?

Un vivo por ahí sugirió copiarlos, pero obviamente no era la respuesta correcta. El profesor quería demostrar que un archivo sólo podía estar en una carpeta a la vez. Sin embargo se equivoca…

Un archivo en 2 carpetas

freya test # ls
freya test # mkdir dir1
freya test # mkdir dir2
freya test # touch dir1/me
freya test # cd dir2
freya dir2 # ln ../dir1/me .
freya dir2 # ls
me
freya dir2 # echo "hola" > me
freya dir2 # cd ../dir1
freya dir1 # cat me
hola
freya dir1 # echo "mundo" >> me
freya dir1 # cd -
freya dir2 # cat me
hola
mundo
freya dir2 # ls -l
total 4
-rw-r--r-- 2 root root 11 Sep 26 23:00 me
freya dir2 # cd -
/mnt/Debian/test/dir1
freya dir1 # ls -l
total 4
-rw-r–r– 2 root root 11 Sep 26 23:00 me
freya dir1 #

La respuesta es muy simple, con un poco de conocimientos básicos sobre filesystems, se puede saber que un hardlink es la solución :) (Claro, con las limitaciones que pueda tener un hardlink)

Como el resultado de ls -l delata, el archivo me, tiene 2 referencias, desde los directorios dir1 y dir1

Como el objetivo de la clase, no era discutir sobre sistemas de archivos, no dije nada y se continuó la clase … :?

6 Comments so far

  1. Droper

    September 27th, 2006

    clases de ?, no eres ya egresado ?


  2. soulse

    September 27th, 2006

    Debiste discutir con la gata!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! jaajjaja


  3. Jj

    September 27th, 2006

    Pucha, si… ahora si me da ganas de joderlo

    Droper: Son clases de actualización, para el examen de insuficiencia y sacar el titulo lo mas pronto posible


  4. Slayer_X

    September 30th, 2006

    Podias ir un poco mas alla y usar un ls -i para que veas los numeros de inodo y asi podrias ver que 2 archivos distintos apuntan al mismo inodo ;)


  5. Jj

    October 1st, 2006

    test > ls -i *
    dir1:
    2509 me

    dir2:
    2509 me

    Buen dato!


  6. rogelio

    October 18th, 2006

    hard link, no es mas que eso.


Add yours

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>