Compré un disco duro nuevo para mi servidor y estoy intentando reorganizar mis archivos. Para la primera transferencia, rsync
copié ~3 GB perfectamente. Sin embargo, con el rsync
comando equivalente, la segunda transferencia falla.
$ sudo /usr/bin/nice -n 19 /usr/bin/ionice -c2 -n7 rsync -aEHAXPx /media/a/ /media/b --delete
...
rsync: [sender] write error: Broken pipe (32)
rsync error: error in socket IO (code 10) at io.c(820) [sender=3.1.1]
La primera ejecución copió alrededor de 550 de 800 GB antes de ahogarse. Los intentos más recientes sólo logran copiar 1 GB antes de morir. No estoy seguro si es relevante, pero la fuente es unaatrás en el tiempounidad de copia de seguridad incremental, por lo que contiene un montón de enlaces físicos. ¿Cómo puedo solucionar este error y completar el comando?
Estoy ejecutando rsync versión 3.1.1, versión 31 del protocolo.
Respuesta1
dmesg | grep rsync
[85852.560086] Sin memoria: eliminar el proceso 4242 (rsync) puntuación 194 o sacrificar al niño [85852.562695] Proceso eliminado 4243 (rsync) total-vm:121948kB, anon-rss:65752kB, file-rss:4kB – Sparhawk
soluciones:
- cambie su velocidad de rsync por debajo de la de sus discos.
--bwlimit=6000
.. USB 2 es de 60 MB/s /4 para rw en 2 unidades o /10 para buscar en dispositivos que no sean SSD... u obtenga un XU4 con 2 GB de RAM y USB3. - cambiar los parámetros de la memoria del kernel
echo 100 > /proc/sys/vm/watermark_scale_factor
- forzar una purga de memoria durante la operación
echo 3 > /proc/sys/vm/drop_caches
- asegúrese de estar usando el kernel 4.9.29
uname -r