El día 24 de mayo de 2013 22:04, jors <worby...@gmail.com> escribió:
> Buenas lista,
>
> Me estoy volviendo un poco tarumba con el tema de los hardlinks y cuánto
> ocupan, a ver si alguien puede arrojarme un poco de luz al tema.
>
> La teoría dice que un hardlink no es más que una referencia a un inodo de un
> fichero existente. Y por tanto entiendo que sólo debería ocupar el espacio
> necesario para guardar esa referencia.
>
> Pues bien, para calcular el espacio ocupado en disco por lo visto uno no se
> puede fiar de "ls" porque toma el mismo espacio para los hardlinks que para
> los ficheros que éstos referencian:
>
> user@host:~$ mkdir test
> user@host:~$ cd test
> user@host:~/test$ mkdir test1 test2
> user@host:~/test$ dd if=/dev/zero of=test1/test.dd count=1 bs=1M
> user@host:~/test$ ls -lh test1/
> total 1,0M
> -rw-r--r-- 1 user user 1,0M may 24 21:09 test.dd
> user@host:~/test$ ln test1/test.dd test1/test.ddhl1
> user@host:~/test$ ls -lh test1/
> total 2,0M
> -rw-r--r-- 2 user user 1,0M may 24 21:09 test.dd
> -rw-r--r-- 2 user user 1,0M may 24 21:09 test.ddhl1
>
> Eso lo tengo asumido. En cambio, el comando "du" de serie parece algo más
> listo porque sabe qué es y qué no un hardlink y a no ser que le indiques la
> opción -l, no cuenta en espacio ocupado por los hardlinks:
>
> user@host:~/test$ du test1/
> 1028    test1/
> user@host:~/test$ du test1/*
> 1024    test1/test.dd
> user@host:~/test$ du -l test1/*
> 1024    test1/test.dd
> 1024    test1/test.ddhl1
>
> Pero ahora creemos sólo 2 hardlinks en el segundo directorio:
>
> user@host:~/test$ ln test1/test.dd test2/test.ddhl2
> user@host:~/test$ ln test1/test.dd test2/test.ddhl3
> user@host:~/test$ du test2/
> 1028    test2/
> user@host:~/test$ du -hs test1/*
> 1,0M    test1/test.dd
> user@host:~/test$ du -hs test2/*
> 1,0M    test2/test.ddhl2
>
> ¿Qué sucedió en el último paso? Du contó el espacio ocupado por un hardlink
> a pesar de no haberle indicado que los tenga en cuenta para el recuento de
> espacio :(
>
> Todo este rollo viene porque tengo un directorio lleno sólo de hardlinks
> (comprobado con "stat" archivo a archivo) que según "du" ocupa 5.8GB y la
> verdad es que no lo entiendo:
>
> root@vg:/dir/bck# for i in `ls`; do echo -ne "File ${i}: "; stat ${i} | grep
> Links | awk '{ print $5" "$6 }'
> File a1.dmp: Links: 4
> File a1.log: Links: 4
> File a2.dmp: Links: 4
> File a2.log: Links: 4
> (...)
>
> root@vg:/dir/bck# cd ..
> root@vg:/dir# du bck/
> 5997988 bck/
> root@vg:/dir# du -h bck/
> 5.8G    bck/
>
> Si a alguien se le ocurre algo, agradecido.
>
> Salut,
> jors
>
>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
> listmas...@lists.debian.org
> Archive: http://lists.debian.org/519fc7cd.9000...@gmail.com
>


--
To UNSUBSCRIBE, email to debian-user-spanish-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/CAGw=rhgibguv-mzyzszr_sfxzsq3ar45tq+qhg4wbeznr4e...@mail.gmail.com

Reply via email to