RSync – Manual de usuario

¿Requires instalación ou configuración de Linux ou os teus servizos?
Un desenvolvemento web personalizado de negocios?
un curso ou formación personalizada?
Revisar o sitio web de servizo LinuxTotal

LINGOTTAL.COM.MX – Información e servizos en Linux e Open Source
URL: http://www.linuxtotal.com.mx/index.php?cont=rsync-manual-de-uso

Copyright © 2005-2021 LinuxTotal.com.mx
O permiso é concedido para copiar, distribuír e / ou modificar este documento sempre que o autor sexa citado e a fonte de LinuxTotal. Com.mx e de acordo cos termos do GNU gratuíto Licenza de documentación, versión 1.2 ou máis posterior publicada pola Free Software Foundation.

Autor: Sergio González D. ([email protected])

rsync é a ferramenta de copia e sincronización máis poderosa que existe no mundo de Linux / Unix.es un tempo, que segundo a súa páxina , é rápido, versátil Para a copia local e remota dos ficheiros. Ofrece unha lista de descargas de opcións que controlan todos os aspectos posibles do seu comportamento.

O “segredo” de rsync é o seu algoritmo chamado ‘Delta-Transfer ‘que reduce a cantidade de datos que se envía a través de single enviar só as diferenzas entre dous ficheiros no nivel dos seus metadatos (permisos, datas de acceso, etc.) e o contido dos seus datos no nivel do bloque no disco.

Como usar

O modo de uso de rsync é idéntico ao ou scp, é dicir, a orixe RSync

O “destino” en RSync é opcional porque se só se usa a fonte, entón é equivalente a Listar o directorio ou orixe do ficheiro.

Tanto a “orixe” como o “destino” poden ser locais ou remoto

Sincronizar localmente

para exemplificar O uso básico de rsync Crear un par de directorios e algúns contidos:

$> mkdir dir1 dir2 $> touch dir1/reporte{1..5}$> $> ls -l dir1/total 0-rw-rw-r-- 1 user1 user1 0 Jan 9 13:43 reporte1-rw-rw-r-- 1 user1 user1 0 Jan 9 13:43 reporte2-rw-rw-r-- 1 user1 user1 0 Jan 9 13:43 reporte3-rw-rw-r-- 1 user1 user1 0 Jan 9 13:43 reporte4-rw-rw-r-- 1 user1 user1 0 Jan 9 13:43 reporte5$> $> ls -l dir2/total 0$> 

usando mkdir Creamos un par de directorios e despois con touch Xeramos 5 ficheiros chamados Informe1, Informe2, etc.

rsync para sincronizar os directorios requiren polo menos a opción -r que indicar a recursión e copiar o directorio máis todos os subdirectorios ese é o directorio.

$> rsync -r dir1/ dir2$> ls -l dir2/total 0-rw-rw-r-- 1 user1 user1 0 Jan 9 13:45 reporte1-rw-rw-r-- 1 user1 user1 0 Jan 9 13:45 reporte2-rw-rw-r-- 1 user1 user1 0 Jan 9 13:45 reporte3-rw-rw-r-- 1 user1 user1 0 Jan 9 13:45 reporte4-rw-rw-r-- 1 user1 user1 0 Jan 9 13:45 reporte5$>

Se por algunha razón non precisa de recursión, pero se creas os subdirectorios (e non copias o teu contido), use o Opción –dirs que só copia o contido do directorio de orixe, os ficheiros e o nome do directorio, pero non hai recursión.

Nota: Se as opcións -ry -dirs úsanse ao mesmo tempo, entón -r ten preferencia.

Cando sincronizar directorios é importante levar a diagonal / (Slash) en conta ao final do directorio (Dir1) como isto indica “copiar a Dir1” eo seu subdirecto Ríos directamente en Dir2.

Se non, o resultado é o seguinte:

$ rsync -r dir1 dir2$ $ ls -l dir2/total 4drwxrwxr-x 2 user user 4096 Jan 9 13:46 dir1 (El dir1 se copió dentro de dir2 al no indicar /)

Ten que ter en conta que só copia recursivamente pero non preservar ou preservar os permisos e as impresións de tempo dos ficheiros copiados.

O modo máis utilizado

Unha vez entendendo quersyncé similar Uso que o comando

Vexa as opcións máis usadas:

$ rsync -vazh dir1/ dir2
  • -v modo verbose, información extra do Os ficheiros que están sendo copiados, etc.
  • -a arquivo de modo, esta opción é a que necesitará con máis frecuencia, xa que copia os ficheiros e directorios recursivamente e a diferenza da opción -r preserva enlaces, permisos de ficheiros, usuario e grupo do ficheiro e impresións de tempo.
  • -z comprime datos de ficheiros por transferencia, útil especialmente en transferencias ou copias remotas.
  • -h modo humano, saída de números en humanos formato lexible.
$ rsync -avzh file* dir2sending incremental file listfile1file10file2file3file4file5file6file7file8file9sent 56.73K bytes received 206 bytes 22.77K bytes/sectotal size is 57.67M speedup is 1,012.97(Aqui se copía todos los archivos que comienza con "file" al dir2) $ rsync -az file* dir2$ (Lo mismo se logra sin las opciones -v y -h, pero no hay info de avance ni reporte al final)

Copias remotas

Como o seu nome indica rsync “Sync remoto” úsase principalmente para copiar desde e a servidores remotos, a sintaxe é sinxela: o nome de servidor ou a dirección IP do servidor remoto seguido: eo directorio de destino (Host: Dir)
ejamples:

$ rsync -avzh /srv/respaldos/ host2:respaldos/(Del equipo local al equipo "host2" y al directorio /home/user1/respaldos. 
$ rsync -avzh /srv/respaldos/ user1@host2:respaldos/(Se indica específicamente el usuario en el remoto, de acuerdo a laconfiguración se pedira la contraseña)$ rsync -avzhP [email protected]:/srv/respaldos/ /home/sergio/respaldos/(Desde el equipo remoto 192.168.10.10 con el usuario admin al equipo local.Nótese la opción -P, que es igual a la opción --progress, es útil en transferecnias demúltiples archivos para mostrar el avance o progreso de la copia o transferencia.)

Copias remotas con SSH

Se está copiando información confidencial e quere asegurarse de que se transfire de forma segura (cifrada) pode usarse a opción – e co parámetro SSH.

$ rsync -avzhe ssh [email protected]:/backups/file001.log /var/log/[email protected]'s password:receiving incremental file listfile001.logsent 70 bytes received 9.23K bytes 2.17K bytes/sectotal size is 50.12K speedup is 2.66

Excluíndo e / ou incluídos ficheiros

Estas dúas opcións, – incluír e – Excluír executar exactamente o que indican incluír e / ou excluír ficheiros na transferencia de ficheiros.

$ rsync -azP --exclude '*.bkp' 192.168.10.10:/srv/respaldos/ /home/sergio/respaldos/(Copia todo del origen al destino excepto (excluye) todos losarchivos terminados en .bkp)$ rsync -azP --include 'reporte*' --exclude '*' 192.168.10.10:/srv/respaldos/ /home/sergio/respaldos/(Excluye todo, pero incluye solo aquellos archivos que comienzen con 'reporte')

Eliminar no destino

Non é algo moi frecuente, pero supoña que quere manter dous directorios totalmente iguais , Mesmos ficheiros, é dicir, que o directorio de destino é idéntico ao directorio de orixe. Tes entón un ou máis ficheiros que existen no destino, pero que xa non están na fonte, cando se usa rsync coa opción – Chamalo logralo. Os ficheiros que están no destino que xa non existen na fonte eliminaranse.

$ touch dir2/ejemplo.txt$ rsync -avhP --delete dir1/ dir2sending incremental file listdeleting ejemplo.txt./reporte1 0 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=4/6)reporte2 0 100% 0.00kB/s 0:00:00 (xfr#2, to-chk=3/6)reporte3 0 100% 0.00kB/s 0:00:00 (xfr#3, to-chk=2/6)reporte4 0 100% 0.00kB/s 0:00:00 (xfr#4, to-chk=1/6)reporte5 0 100% 0.00kB/s 0:00:00 (xfr#5, to-chk=0/6)sent 337 bytes received 129 bytes 932.00 bytes/sectotal size is 0 speedup is 0.00(Se crea en dir2 ejemplo.txt y nótese que al copiar todo de dir1 a dir2, en dir2 seelimina ejemplo.txt al no existir en dir1. Nótese también como la opción -P muestra elprogreso de la transferencia archivo por archivo)

e eliminación da orixe

Se despois dunha transferencia exitosa ou copia de datos que non quere ocupar máis espazo na fonte, entón use a opción –Remove-fonte-ficheiros, que como o seu nome indicará claramente os ficheiros na fonte. Coidado con esta opción !!! (Checa a seguinte opción)

$ touch dir1/test1.txt dir1/test2.txt$ rsync -avh --remove-source-files dir1/test* dir2/sending incremental file listtest1.txttest2.txtsent 167 bytes received 70 bytes 474.00 bytes/sectotal size is 0 speedup is 0.00$ $ ll dir1/test*ls: cannot access dir1/test*: No such file or directory$ 

simular ou probar a transferencia antes Realmente realizándoo

cando realiza copias ou transferencias críticas, onde ao sobreescribir ou eliminar ficheiros, pode causar consecuencias graves, como a perda de datos ou os ficheiros sensibles (como nas opcións que se amosan arriba –Remove-fonte -Files e – chamar) ou se aínda non está familiarizado co uso de rsync, entón é conveniente usar a opción moi útil – Run (simular ou probar) onde rsync non fará realmente ningunha acción de transferencia, arquivos copiados ou eliminados, pero con todo mostraralle a saída coma se o fose, e deste xeito pode comprobar se as accións son realmente desexados. Unha vez que estea satisfeito, só elimina – executar e executar o comando.

$ rsync -avh --dry-run --remove-source-files dir1/test* dir2/

Establecer límites de ancho de banda e / ou transferencia máxima / mínimo Transferir datos

– max-size = ‘500k’ Esta opción permítelle definir o tamaño máximo dos ficheiros a transferir. Polo tanto, só os ficheiros son copiados iguais ou menos que o tamaño indicado.

– min-size = ‘500k’ Esta opción permítelle definir o tamaño mínimo dos ficheiros a transferir. Así que só os ficheiros iguais ou superiores ao tamaño indicado foron copiados.

$ rsync -avzhP -e ssh --max-size='500k' /home/ventas/reportes/*.xls [email protected]:/backups/[email protected]'s password:sending incremental file list201501.xls201502.xls201505.xls...sent 234.14K bytes received 315 bytes 22.21K bytes/sectotal size is 11.07M speedup is 175.82(Solo se transfieren archivos xls menores o iguales a 500 kilobytes.Prefijos para el tamaño puede ser k, m, g)

– bwlimit = 100 por defecto, rsync Non limitar o ancho de banda nas transferencias entre as computadoras, pero se desexa limitar con esta opción, conséguese.

$ rsync -avzhP -e ssh --max-size='500k' --bwlimit=100 /home/ventas/reportes/*.xls [email protected]:/backups/(Si no se indica prefijo, el default es 'k', en kilobytes.Prefijos para el ancho de banda pueden ser k, m, gSi se indica --bwlimit=0 es ancho de banda ilimitado, o es lo mismono indicar la opción en si.)

Opcións máis útiles

As opcións máis comúns ou útiles de rsync, o uso local ou remoto son as seguintes:

O tempo especifica un tempo de espera en segundos, se non se transfiren datos a tempo indicado rsync terminará o valor predeterminado é de 0 segundos que significa sen tempo de espera.

– compress

opción Descrición
curto long
-a – arquivo Modo de arquivo, é o mesmo que indicar as opcións R, L, P, t, g, oy d
-r – recursive recursive, copia recursivamente os directorios.
-l – ligazóns Cando atopa ligazóns simbólicas (ligazóns simbólicas), estes son recreados no destino.
-p – Perms OPC ION que fai que o destino configura os permisos como na orixe. -t – TIMES Transfire os tempos de ficheiro (Atime, ctime, mtime) ao destino
-g – grupo conxuntos no destino que o ficheiro copiado O grupo é o mesmo que a fonte.
-o – propietario conxuntos no destino que o propietario do copiado O ficheiro é o mesmo que a fonte. -d Isto é o mesmo que indicar as opcións – dispositivos e – -Specials – Exclúe o patrón exclúe os ficheiros que coinciden co patrón ou o patrón indicado.
– Incluír patrón inclúe ficheiros que coinciden co patrón ou patrón indicado.
– Dispositivos Transferencias de ficheiros de dispositivos de bloque e carácter ao destino onde se recrean. Isto só pode ocorrer se os permisos de root están dispoñibles no destino.
– ESPECIALES Transferencias de ficheiros especiais como FIFOS e nomeados Sockets. – Versión Indica o número de versión rsync
-V – verbose Aumenta a cantidade de información que se informa durante a transferencia ou a copia dos rexistros. É contrarrestar en sentido antihorario a
– quetey Dimisión a cantidade de información informada durante a transferencia ou copia dos ficheiros. Normalmente úsase cando rsync úsase nunha tarefa de cron.É a opción contraria a –verbose – ignorar-veces unha das grandes virtudes de rsync é que ao momento de copiar ou transferir ficheiros, se estes son iguais ao destino en termos de horarios e tamaño que xa non a copia, non hai cambios. Esta opción permite ignorarse e todos os ficheiros serán copiados / actualizados no destino. (Ver – só)
– SÓ SÓ Normalmente Só os ficheiros transfírense cos tempos modificados ou o tamaño modificado. Con esta opción, os ficheiros dos ficheiros son ignorados e é transferido cun tamaño diferente no destino.
-N – Dry-Run Crear unha proba de proba do que realmente pasará sen esta opción, sen facer ningún cambio. É dicir, a saída mostrará moi similar ao que realmente ocorrerá se non está incluído -dry-run. Xeralmente, úsase xunto coa opción –verebosey –temize-Cambios
-i – -Temize-Cambios Informa unha lista de cambios feitos en cada ficheiro, incluídos os cambios nos seus atributos. Isto equivale a autilizar -vv en versións obsolas de rsync
– Eliminar-fonte-ficheiros Eliminar os ficheiros da fonte (non directorios) se no destino estes foron duplicados ou copiados correctamente.
– TimeOut =
– – Log-file = file bitacorize o que se fixo no ficheiro indicado.
– estatísticas Imprimir un conxunto informativo de datos estatísticos sobre a transferencia feita.
– Progress Mostra o avance ou o progreso de os ficheiros que están sendo transferidos.
– bwlimit = Kbps Permite configurar un límite de transferencia en kilobytes por segundo. Esta opción é a túa predeterminada é 0, que indica o límite no uso do ancho de banda na transferencia.
– Max-size = Tamaño non transfire ningún ficheiro maior que o tamaño indicado.
– min-size = Tamaño non transfire ningún ficheiro menor que o tamaño indicado.
-z comprimir datos durante a transferencia.

Necesitas unha instalación ou configuración de Linux ou os teus servizos?
Un desenvolvemento web de negocios personalizado?
Un curso ou adestramento á medida?
Revisar o sitio de servizo LinuxToTal

Deixa unha resposta

O teu enderezo electrónico non se publicará Os campos obrigatorios están marcados con *