[root@centos /]# rsync -av --exclude thumbs /storage [email protected]:/storage
[email protected]'s password:
building file list ...
He estado sentado durante aproximadamente una hora ... son 135 GB de imágenes y carpetas
/storage
es una unidad SCSI ext3 montada.
¿Es normal que rsync esté sentado tanto tiempo calculando los archivos / directorios?
df -i
y decirnos qué tienes paraIUsed
el almacenamiento? Nos dará una idea aproximada de cuántos archivos + carpetas tiene.Respuestas:
rsync 2.x crea una lista completa de archivos por adelantado.
Agregue la
-P
opción y verá un indicador de progreso.Si crees que realmente está colgando, en otra terminal encuentra el pid de rsync y luego
Corre
strace -p PID
y mira lo que está haciendo. (Presione ^ C para detener).Ejecute
ps -o wchan PID
para ver dónde está en el núcleo.fuente
strace
es genial! Probablemente encontrará que algo circular está sucediendo: como un enlace que se refiere a uno de sus directorios ancestrales. En mi caso, estaba usando un sistema de archivos virtual que no tenía límite en su profundidad, es decir, tenía "infinitamente" muchos subdirectoriostagfs/books/+/books/+/books/+/ ...
Debería actualizar a rsync 3.0.x donde obtendrá el beneficio de las listas de archivos incrementales, explicadas aquí . Estoy sincronizando millones de imágenes (~ 200 GB en total) y vi una enorme aceleración al pasar de rsync 2.xa 3.x.
Aun así, probablemente tomará mucho tiempo revisar todos esos datos. En mi caso, todavía lleva más de una hora entre dos servidores DL380 G5 bastante potentes.
fuente
--delay-updates
.Usted notó anteriormente que también
du
estaba colgando. Algo está sucediendo con este sistema de archivos, yrsync
está afectando lo que seadu
.Una cosa rápida que puede verificar es si hay mensajes de error del kernel que indican un problema de disco. Escriba
dmesg
y vea lo que está en la parte inferior.fuente
El bloqueo después del mensaje "creando la lista de archivos ..." puede ser causado por una falta de coincidencia de MTU, por ejemplo, si ha configurado las interfaces de red con MTU 9000 pero no el conmutador entre paquetes pequeños (como conectarse al servidor rsync) pasará pero no los más grandes (como enviar la lista de archivos).
fuente
Basado en esto y la otra cuestión de la
du /storage
que cuelga me hace pensar que ningunodu
orsync
es el problema, sino que hay algunos problemas con el/storage
.fuente