Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

278
Views
problema de uso del disco con rsync y --link-dest

Tengo un problema de uso del disco con rsync y --link-dest La copia de seguridad incremental ocupa todo el espacio del disco:

 @localhost media]$ ls orig ---------------------------------------------------- localhost media]$ du -sh . 25M . ---------------------------------------------------- localhost media]$ rsync -avh orig/ full ---------------------------------------------------- @localhost media]$ du -sh . 49M . ---------------------------------------------------- localhost media]$ echo 1111 > orig/foo111 ---------------------------------------------------- localhost media]$ rsync -avh --link-dest=full orig/ orig_1 ---------------------------------------------------- localhost media]$ ls orig_1/foo111 orig_1/foo111 _____________________________________________________ localhost media]$ ls full/foo111 ls: cannot access full/foo111: No such file or directory

Todo se ve bien hasta ahora. El último cambio se refleja en orig_1 pero los directorios no están vinculados y todos están en tamaño completo.

 ----------------------------------------------------- localhost media]$ du -sh . 74M . --------------------------------------------- localhost media]$ du -sh orig_1/ 25M orig_1/ -------------------------------------------- localhost media]$ du -sh orig 25M orig --------------------------------------------- localhost media]$ du -sh full 25M full

¿Se supone que debo tener el tamaño orig_1 como 0? Y el comando stat no muestra enlaces duros. ¿Qué estoy haciendo mal?

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Cuando ejecutó rsync -avh --link-dest=full orig/ orig_1 , ignoró este mensaje de error (es más obvio si elimina -v ):

 --link-dest arg does not exist: full

Si luego echamos un vistazo a man rsync en --link-dest , encontramos:

 If DIR is a relative path, it is relative to the destination directory.

Y ahí está. full es relativo al directorio actual. En relación con el directorio de destino, sería ../full .

Si vuelve a intentarlo con rsync -avh --link-dest=../full orig/ orig_1 , obtiene lo que espera:

 $ du -sh * 149M full 149M orig 232K orig_1 $ du -sh . 298M .

Tenga en cuenta que, cuando se cuentan individualmente, los directorios siguen apareciendo ocupando todo el espacio:

 $ du -sh orig_1 149M orig_1

Esto se debe a que du realiza un seguimiento de los archivos que ya ha visto y evita contarlos dos veces.

over 4 years ago · Santiago Trujillo Report

0

--link-dest toma una ruta relativa al destino. Quiere --link-dest=../orig .

over 4 years ago · Santiago Trujillo Report

0

Los sistemas de archivos estándar de Unix no permiten enlaces duros a directorios, excepto el especial . y .. enlaces. --link-dest solo crea enlaces duros para archivos, el resto de la estructura de directorios se recrea como directorios reales.

E incluso si se permitieran los enlaces duros a los directorios, du seguiría mostrando el tamaño completo de cada enlace. Cuando se usan enlaces duros, no hay distinción entre el original y el enlace, cada uno de ellos son solo nombres que se refieren a un inodo en particular, y du los escanearía de manera equivalente.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!