Em Sex, 2008-03-14 às 09:44 -0300, Nilson Chagas escreveu:
> Ainda não testei, mas nos links que tenho lido não encontrei.
> 
> Pelo que entendi o rsync, mantei os dois locais iguais, umas duvidas
> - Se eu apagar um arquivo, ele apaga no outro local??
> - Tem como agendar tarefa??
> - Ele atualiza somente os modificados???
> 
> -- 
> []s
> Nilson Chagas

Segue um material extraido do site http://comunidade.cdtc.org.br


                                C U R S O    D E     R S Y N C



As utilidades do rsync

 O rsync é uma ferramenta para transferência e sincronização de dados
entre máquinas remotas, ou até mesmo entre arquivos locais. Então, você
deve estar pensando : "mais um desses programas de transferência de
arquivos, assim como o FTP, o RCP, entre outros". Porém o rsync possui
um protocolo de transferência muito mais eficaz, que aumenta
consideravelmente a velocidade da transmissão, principalmente quando o
local de destino está sendo atualizado.

O protocolo de atualização do rsync possibilita a transferência somente
dos arquivos, ou parte dos arquivos que foram alterados. Para fazer isso
ele utiliza um algoritmo bastante eficiente de busca, se quiser saber de
detalhes mais aprofundados sobre como funciona esse algoritmo acesse a
página: http://dp.samba.org/rsync/tech_report/ (página em inglês). Porém
não é necessário que você se preocupe com esse funcionamento. O uso
desse algoritmo é bastante vantajoso já que diminui o tempo gasto na
transferência e economiza banda da conexão.

Além desse protocolo de transferência o rsync possui outras
características interessantes:

    * cópia de permissões e outros atributos dos arquivos;
    * não é necessário permissão de super usuário (i.e. root) para
utilizá-lo;
    * permite acesso de usuários anônimos.


Nas seções a seguir falaremos sobre o rsync e como utilizá-lo de maneira
bastante prática. Lembre-se de tirar suas dúvidas no fórum ou com o
instrutor do curso. Bom curso!


Métodos possíveis

Os seguintes métodos de instalação serão abordados nessa lição:

    * Utilizando código fonte
    * Utilizando APT


     Esse curso foi feito utilizando a versão 2.6.4.
Caso já tenha o rsync instalado verifique sua versão com o
seguinte comando: rsync --version
   
      rsync  version 2.6.4  protocol version 29
    Copyright (C) 1996-2005 by Andrew Tridgell and others
    <http://rsync.samba.org/>
    Capabilities: 64-bit files, socketpairs, hard links, symlinks,
batchfiles,
                  inplace, IPv6, 64-bit system inums, 64-bit internal
inums

    rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and
you
    are welcome to redistribute it under certain conditions.  See the
GNU
    General Public Licence for details.

  A
saída acima aparece quando o comando rsync --version é executado, note
que a versão utilizada nesse caso é a versão 2.6.4 e esse número
provavelmente será diferente no seu caso. Caso a sua versão seja mais
antiga do que a apresentada, tente atualizá-la para um melhor
aproveitamento do curso.

Vamos, então, aos possíveis processos de instalação do rsync!


Instalação utilizando o código fonte


Antes de instalarmos o programa devemos baixá-lo. Para isso acesse o
site: http://samba.anu.edu.au/rsync/download.html e baixe a versão mais
nova, o nome do arquivo será: rsync-*.tar.gz, onde o "*" deve ser
substituído pela versão mais atual.

Depois de feito o download, entre no sistema com um super usuário (i.e.
root) utilizando o comando su.

[EMAIL PROTECTED]:~$ su
Password:
capim-vm:/home/capim#

Extraia os arquivos em uma pasta temporária.

capim-vm:~# cd /tmp
capim-vm:/tmp# tar -xvzf ~/rsync-*.tar.gz

Configure o o pacote com o script "configure".

capim-vm:/tmp# cd /tmp/rsync-*
capim-vm:/tmp/rsync-2.6.4# ./configure

Compile e instale:

capim-vm:/tmp/rsync-2.6.4# make
capim-vm:/tmp/rsync-2.6.4# make install

O executável do rsync provavelmente estará instalado no
diretório: /usr/local/bin. Verifique se o rsync está realmente instalado
utilizando o comando: rsync

capim-vm:/etc# rsync
[output]

Se o rsync estiver instalado um output bem longo com os principais
comando do programa aparecerá na tela. Senão uma mensagem de erro
parecida com a escrita em vermelho (abaixo) aparecerá.

capim-vm:/etc# rsync
bash: rsync: command not found

Pronto! Se tudo deu certo o rsync está instalado na máquina.


Instalação utilizando o APT

O APT é um manipulador de pacotes utilizado em sistemas Debian, ou
baseados nele. Nessa seção o APT será utilizado para instalar o rsync.
 
Antes da instalação é importante certificar-se de que o banco de
programas local do APT esteja atualizado, para que a versão mais recente
seja baixada. Para isso entre no sistema com um super usuário (i.e.
root) utilizando o comando su.

[EMAIL PROTECTED]:~$ su
Password:
capim-vm:/home/capim#

E depois utilize o comando apt-get update para atualizar o banco.

capim-vm:/etc# apt-get update
[output]

Para instalar o rsync, utilize o comando apt-get install rsync.

capim-vm:/etc# apt-get install rsync
[output]

Para verificar se o programa está realmente instalado utilize o comando
rsync.

capim-vm:/etc# rsync
[output]

Se o rsync estiver instalado um output bem longo com os principais
comando do programa aparecerá na tela. Senão uma mensagem de erro
parecida com a escrita em vermelho (abaixo) aparecerá.

capim-vm:/etc# rsync
bash: rsync: command not found

Pronto! Se tudo deu certo o rsync está instalado. O executável
provavelmente estará localizado na pasta /usr/bin.

Lembre-se que o rsync quando utilizado para baixar arquivo de uma
máquina remota deve estar instalado tanto na máquina local quanto na
máquina remota. Vamos tratar mais sobre esse assunto nas lições a
seguir.


Preparando os arquivos

Começaremos tratando da transferência de arquivos em uma máquina local e
depois utilizaremos o rsync para sincronizar arquivos entre máquinas
remotas. Para exemplificar os comandos, eu vou criar uma pasta e colocar
o código fonte do rsync dentro dela, para que depois eu possa transferir
esses arquivos utilizando o rsync. Porém, você provavelmente o utilizará
em outros casos. Para que todos os passos possam ser executados, também
por você, vou falar exatamente como fiz para criar as pastas e adicionar
os arquivos dentro dela.

Primeiro, eu criei uma pasta de nome rsync_files, que no meu caso está
localizado no diretório /home/capim/stuff (repare que ~ representa o
home do usuário)

[EMAIL PROTECTED]:~/stuff$ mkdir rsync_files
[EMAIL PROTECTED]:~/stuff$ cd rsync_files

Depois copiei os arquivos fonte compactados na pasta criada.

[EMAIL PROTECTED]:~/stuff/rsync_files$
cp /home/capim/Desktop/rsync-2.6.9.tar.gz /home/capim/stuff/rsync_files/

Então extrai os arquivos nessa pasta.

[EMAIL PROTECTED]:~/stuff/rsync_files$ tar -xzvf rsync-2.6.9.tar.gz

Repare que a pasta rsync-2.6.9, foi criada (lembre-se que a versão do
rsync pode ser diferente da minha, então a pasta não necessariamente
será rsync-2.6.9).

[EMAIL PROTECTED]:~/stuff/rsync_files$ ls
rsync-2.6.9 rsync-2.6.9.tar.gz

Agora vou criar uma pasta de destino para esses arquivos (verifique que
a pasta está realmente vazia).

[EMAIL PROTECTED]:~/stuff$ mkdir rsync_backup
[EMAIL PROTECTED]:~/stuff/rsync_backup$ ls -l
total 0

Antes de utilizarmos o rsync para transferir os arquivos, é importante
que saibamos alguns comandos básicos do programa. Na página seguinte
trataremos sobre esses comandos.

Comandos básicos do rsync

A sintaxe para utilizarmos o rsync é bem parecida com o comando cp,
porém é importante saber alguns argumentos que podem ser passados para o
programa. O rsync deve ser utilizado de acordo com a seguinte sintaxe:

rsync <argumento> <pasta ou arquivo a ser copiado> <pasta em que será
colado>

Alguns argumentos bastante utilizados são:

-r ou --recursive: copia arquivos que estão dentro dos diretórios.
--stats: mostra algumas informações sobre a transferência.

Agora que já sabemos o básico do funcionamento do programa, vamos,
finalmente, utilizá-lo para transferir os arquivos de uma pasta para
outra!

O comando a seguir irá copiar os arquivos da pasta rsync_files para a
pasta rsync_backup.

[EMAIL PROTECTED]:~/stuff$ rsync -r --stats rsync_files/ rsync_backup

Number of files: 229
Number of files transferred: 216
Total file size: 3942735 bytes
Total transferred file size: 3942735 bytes
Literal data: 3942735 bytes
Matched data: 0 bytes
File list size: 4642
File list generation time: 0.002 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 3957681
Total bytes received: 4844

sent 3957681 bytes received 4844 bytes 7925050.00 bytes/sec
total size is 3942735 speedup is 1.00

[EMAIL PROTECTED]:~/stuff$ cd rsync_backup
[EMAIL PROTECTED]:~/stuff/rsync_backup$ ls
rsync-2.6.9 rsync-2.6.9.tar.gz

A parte vermelha do código só foi impressa devido ao argumento --stats.
Utilizamos o argumento -r para que os arquivos dentro da pasta
rsync_files fossem copiados. Sempre que desejarmos copiar uma pasta
inteira devemos utilizar o argumento -r. Só para me certificar entrei na
pasta e verifiquei se os arquivos realmente foram copiados, e está tudo
certo!

Pronto! Fizemos nossa primeira cópia utilizando o rsync. Vamos utilizar
o rsync agora para fazer uma transferência de arquivos entre máquinas
remotas. Por enquanto tudo que fizemos é possível de ser feito com
outros programas. Mas em breve vamos aprender funcionalidades mais
avançadas do rsync. Aguente firme!

apenas os arquivos que foram atualizados


Lição 3 - Operações básicas

Utilizamos o rsync para fazer uma transferência local e aprendemos
alguns comandos básicos dele. Vamos agora fazer uma transferência entre
máquinas remotas, mas antes temos que configurar um servidor para que os
arquivos possam ser acessados.

Preparando o servidor
Fazer o rsync virar um servidor de arquivos é bastante fácil! Para isso,
vamos aprender alguns argumentos novos, editar um arquivo de
configuração e pronto. Um servidor rsync estará instalado em sua máquina
para que outra máquina possa se conectar a ele e sincronizar os
arquivos.

Antes de qualquer coisa devemos configurar o arquivo rsyncd.conf no
computador que servirá os arquivos. Normalmente esse arquivo se encontra
em /etc/rsyncd.conf porém é possível configurar o rsync para utilizar um
arquivo em outro local com o comando rsync --daemon --config <nome do
arquivo>. No exemplo a seguir o arquivo está localizado
em /etc/rsyncd.conf.

[EMAIL PROTECTED]:~$ rsync --daemon --config /etc/rsyncd.conf

Dois novos argumentos foram utilizados nesse comando:

--daemon: qualquer coisa que seja referente ao servidor deve ter esse
argumento. Se utilizado sozinho inicia o servidor.
--config: é utilizado para configurar o local onde se encontra o arquivo
de configuração do rsync. (essa é uma opção do servidor, por isso deve
ser precedido do argumento --daemon)

Vamos então editar o arquivo de configuração. Utilize seu editor de
textos favorito e abra o arquivo de configuração do rsync
(i.e. /etc/rsyncd.conf).

capim-vm:/home/capim# nano /etc/rsyncd.conf

Explicarei o arquivo de configuração utilizando o exemplo:

01 motd file = /etc/rsync.motd
02 log file = /var/log/rsyncd.log
03
04 [nome_remoto]
05 path = /pasta_compartilhada
06 comment = Minha pasta compartilhada
07 read only= no
08 list = yes

Obs.: Os números no começo da linha não fazem parte do arquivo, e servem
apenas para que a explicação fique mais clara.

O item motd file na linha 1 serve para configurar o arquivo que terá uma
mensagem de boas vindas para os usuários que se conectarem ao servidor.
Por exemplo:

capim-vm:/home/capim# cat /etc/rsync.motd

Você está conectado no meu servidor de rsync.
Seja bem vindo!

Obs.: motd (message of the day) vem do inglês e quer dizer mensagem do
dia.

O item log file na linha 2 configura o arquivo de log do rsync, ou seja,
grava as atividades principais que são executadas no servidor do rsync.
Por exemplo:

capim-vm:/home/capim# cat /var/log/rsyncd.log
2006/11/07 11:56:11 [5936] rsyncd version 2.6.4 starting, listening on
port 873
2006/11/07 12:00:07 [5938] name lookup failed for 192.168.0.100: Name or
service not known
2006/11/07 12:00:07 [5938] rsync on home/ from UNKNOWN (192.168.0.100)
2006/11/07 12:00:07 [5938] rsync: opendir "/.links" (in home) failed:
Permission denied (13)
2006/11/07 12:00:07 [5938] rsync: send_files failed to open
"/.bash_history" (in home): Permission denied (13)
2006/11/07 12:00:07 [5938] sent 4408 bytes received 230 bytes total size
4261
2006/11/07 12:00:07 [5938] rsync error: some files could not be
transferred (code 23) at main.c(524)
2006/11/07 12:02:58 [5945] name lookup failed for 192.168.0.100: Name or
service not known
2006/11/07 12:02:58 [5945] rsync on home/ from UNKNOWN (192.168.0.100)
2006/11/07 12:02:58 [5945] sent 1650 bytes received 158 bytes total size
1314
2006/11/08 17:48:11 [3218] rsyncd version 2.6.4 starting, listening on
port 873
capim-vm:/home/capim#


O item [nome_remoto] na linha 4 serve para especificar um "apelido" para
a pasta referente a path (na linha 5), onde nome_remoto deve ser
substituido pelo "apelido" da pasta. Ficará mais fácil entender esse
nome nas seções a seguir.

O item path na linha 5 especifica a pasta em que os usuários terão
acesso e poderão sincronizar arquivos ou pastas.

O item comment na linha 6 serve apenas para fazer um breve comentário
sobre a pasta.

O item read only na linha 7 especifica se a pasta será somente para
leitura, ou se poderá ser alterada também. Utiliza as opções yes (sim) e
no (não).

O item list na linha 8 especifica se a pasta poderá ser vista quando
utilizado o comando de listagem de pastas. Utiliza as opções yes (sim) e
no (não).

Agora que você já sabe como criar um arquivo básico de configuração do
rsync, crie o seu e configure o rsync para lê-lo com o comando (rsync
--daemon --configure).

Com o arquivo de configuração criado, basta executar o comando rsync
--daemon.

[EMAIL PROTECTED]:/home/capim# rsync --daemon

Pronto! Temos um servidor de rsync pronto para "sincronizar" arquivos e
pastas!


Visualizando e transferindo arquivos e pastas remotas

 Antes de baixar os arquivos de um servidor, é possível listar as pastas
que estão sendo compartilhadas por ele. Para isso usamos o comando rsync
nome_do_servidor:: . Veja o exemplo:

[EMAIL PROTECTED]:/home/capim# rsync localhost::
Ola!

web Diretorio de arquivos da Web
home Diretorio de arquivos Home

No exemplo as pastas de "apelido" web e home estão sendo compartilhadas
e a opção list foi marcada como yes no arquivo rsyncd.conf do servidor e
a opção comment aparece do lado direito de cada pasta.

Obs.: Repare que o servidor é o meu próprio computador, sempre que for
necessário se conectar com o próprio computador o nome_do_servidor deve
ser localhost. No entanto não é interessante utilizarmos essa opção no
rsync, já que ele é capaz de copiar pastas locais sem tanto trabalho.
Estabelecemos essa conexão somente para teste. No caso do servidor
teste.sytes.net deveriamos utilizar o comando rsync teste.sytes.net:: .

Veja o arquivo rsyncd.conf do servidor:

[EMAIL PROTECTED]:/home/capim# cat /etc/rsyncd.conf
motd file = /etc/rsync.motd
log file = /var/log/rsyncd.log

[web]
path = /home/capim/web
comment = Diretorio de arquivos da Web
read Xonly= no
list = yes

[home]

path = /home/capim
comment = Diretorio de arquivos Home
read Xonly= yes
list = yes

[EMAIL PROTECTED]:/home/capim#

Então, agora que já sabemos algumas pastas que são compartilhadas no
servidor, vamos aprender como baixar essas pastas. A sintaxe de cópia
remota, segue a mesma de cópia local, porém adicionamos
nome_do_servidor:: antes da pasta ser copiada. Veja o exemplo:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_net# rsync -r --stats
--progress localhost::web /home/capim/stuff/rsync_net
Ola!

receiving file list ...
1 file to consider

Number of files: 1
Number of files transferred: 0
Total file size: 0 bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 20
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 61
Total bytes received: 66

sent 61 bytes received 66 bytes 254.00 bytes/sec
total size is 0 speedup is 0.00
[EMAIL PROTECTED]:/home/capim/stuff/rsync_net#

Repare o argumento --progress que é utilizado para mostrar o progresso
da transferência dos arquivos.

Pronto os arquivos da pasta de "apelido" web, foram baixadas para a
pasta /home/capim/stuff/rsync_net no computador local.

Exercendo as funcionalidades do rsync

Nas seções anteriores vimos que o rsync realmente é capaz de copiar
arquivos de uma pasta para outra, e como isso é fácil! Vamos agora
comprovar que ele realmente copia somente as partes dos arquivos
alterados tornando a transferência muito mais rápida!

Para isso vou criar a pasta rsync_net e compartilhá-la no servidor rsync
da seguinte forma:

[EMAIL PROTECTED]:/home/capim/stuff# mkdir rsync_net

[EMAIL PROTECTED]:/home/capim/stuff# nano /etc/rsyncd.conf

[EMAIL PROTECTED]:/home/capim/stuff# cat /etc/rsyncd.conf
motd file = /etc/rsync.motd
log file = /var/log/rsyncd.log

[web]
path = /home/capim/web
comment = Diretorio de arquivos da Web
read Xonly= no
list = yes

[home]

path = /home/capim
comment = Diretorio de arquivos Home
read Xonly= yes
list = yes

[rsync_source]

path = /home/capim/stuff/rsync_net
comment = Codigo fonte do rsync
read Xonly= no
list = yes

[EMAIL PROTECTED]:/home/capim/stuff# rsync localhost::
Ola!

web Diretorio de arquivos da Web
home Diretorio de arquivos Home
rsync_source Codigo fonte do rsync

Agora vou enviar os arquivos do meu computador para a pasta criada
utilizando o rsync da seguinte forma:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9# rsync
--recursive --stats --progress . localhost::rsync_source
Ola!

building file list ...
227 files to consider
COPYING
[output extenso dos arquivos transferidos]

Number of files: 227
Number of files transferred: 215
Total file size: 3130894 bytes
Total transferred file size: 3130894 bytes
Literal data: 3130894 bytes
Matched data: 0 bytes
File list size: 4041
File list generation time: 0.002 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 3145087
Total bytes received: 4812

sent 3145087 bytes received 4812 bytes 2099932.67 bytes/sec
total size is 3130894 speedup is 0.99


Para verificar a funcionalidade do rsync vou alterar, criar e adicionar
alguns arquivos.

[EMAIL PROTECTED]:/home/capim/stuff/rsync_net# cd
~/stuff/rsync_rsync-2.6.9

[EMAIL PROTECTED]:/home/capim/stuff/rsync_net/rsync-2.6.9# touch
arquivo_novo.list

[EMAIL PROTECTED]:/home/capim/stuff/rsync_net/rsync-2.6.9# ls >
arquivo_novo.list

[EMAIL PROTECTED]:/home/capim/stuff/rsync_net/rsync-2.6.9# nano rsync.c

[EMAIL PROTECTED]:/home/capim/stuff/rsync_net/rsync-2.6.9# rm INSTALL

Criei o arquivo_novo.list, modifiquei o rsync.c e removi o INSTALL.

Para transferir somente as alterações para o servidor, devemos utilizar
o argumento --update de acordo com o exemplo a seguir:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9# rsync
--recursive --stats --progress --update . localhost::rsync_source
Ola!

building file list ...
227 files to consider
arquivo_novo.list
860 100% 0.00kB/s 0:00:00 (xfer#1, to-check=216/227)
rsync.c
8979 100% 8.56MB/s 0:00:00 (xfer#2, to-check=173/227)

Number of files: 227
Number of files transferred: 2
Total file size: 3129656 bytes
Total transferred file size: 9839 bytes
Literal data: 1604 bytes
Matched data: 8235 bytes
File list size: 4571
File list generation time: 0.002 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 6327
Total bytes received: 138

sent 6327 bytes received 138 bytes 12930.00 bytes/sec
total size is 3129656 speedup is 484.09
[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9#

Pronto! Está confirmado que o rsync transfere apenas as alterações!
Porém, repare que o arquivo INSTALL não foi apagado no servidor por uma
questão de segurança. Para atualizar no servidor também os arquivos
apagados localmente devemos utilizar o argumento --delete. Veja o
exemplo:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9# rsync
--recursive --stats --progress --update --delete .
localhost::rsync_source
Ola!

building file list ...
227 files to consider
deleting INSTALL

Number of files: 227
Number of files transferred: 0
Total file size: 3129656 bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 4571
File list generation time: 0.002 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 4587
Total bytes received: 16

sent 4587 bytes received 16 bytes 9206.00 bytes/sec
total size is 3129656 speedup is 679.92

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9#


Tome bastante cuidado com a opção --delete, já que com ela você poderá
remover um arquivo importante do servidor!


Um pouco mais sobre rsync

Nas lições passadas aprendemos o uso básico do programa. Agora
aprenderemos alguns comandos que tornarão o uso do rsync ainda mais
eficiente.

O argumento --verbose (ou -v)

Utilize esse argumento apenas para que algumas informações a mais sejam
impressas. Para utilizá-lo basta adicionar --verbose depois do comando
rsync. Veja o exemplo:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9# rsync -r
--verbose --stats . localhost::rsync_source


O argumento --exclude

É possível configurar o rsync para não sincronizar determinados
arquivos, para isso utilizamos o argumento --exclude="arquivos que serão
excluídos". Veja o exemplo:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9# rsync -rv
--exclude="*.c" . localhost::rsync_source

No exemplo, todos os arquivos foram enviados exceto os que terminavam
com .c.

Últimos Comandos

O argumento --links (ou -l) e --copy-links (ou -L)
Normalmente quando existe um link simbólico o rsync ignora-o na cópia
dos arquivos. Veja o exemplo:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9# rsync -rv
--stats . localhost::rsync_source
skipping non-regular file "rsyncd.conf"

Para que o rsync não ignore um link simbólico, basta adicionar a opção
--links como argumento. Veja o exemplo:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9# rsync -rv
--stats --links . localhost::rsync_source
rsyncd.conf -> /etc/rsyncd.conf

E para que o rsync copie o arquivo ao qual o link simbólico se refere,
utilize a opção --copy-links como argumento. Veja o exemplo:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9# rsync -rv
--stats --copy-links . localhost::rsync_source
rsyncd.conf

Obs.: repare que a opção menor para --links é com um L minúsculo, já a
--copy-links com um L maiúsculo. Lembre-se as letras maiúsculas são
diferenciadas das minúsculas.

O argumento --compress (ou -z)

Para melhorar, ainda mais, o desempenho de transferências remotas,
podemos utilizar o argumento --compress que compacta os arquivos antes
de enviá-los. Veja o exemplo:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9# rsync -rv
--stats --copy-links --compress . 192.168.0.101::home

Obs.: No exemplo acima utilizei o servidor de uma máquina da rede por
isso localhost foi substituído por 192.168.0.101.

O argumento --perms (ou -p)

Em muitos casos é interessante que as permissões do arquivo permaneçam
as mesmas tanto no servidor quanto no cliente, para isso utilizamos o
argumento --perms. Veja o exemplo:

[EMAIL PROTECTED]:/home/capim/stuff/rsync_files/rsync-2.6.9# rsync -rv
--stats --perms . localhost::rsync_source

O argumento --help (ou -h)

Vários argumentos e opções foram tratados nessa seção, porém o rsync
ainda possui várias outras opções, para obter uma ajuda resumida sobre
os comandos do rsync utilize o argumento --help (i.e. rsync --help).
Para obter uma ajuda mais explicativa utilize o comando do linux man
(i.e. man rsync).

E já que estamos falando de ajuda, lembre-se sempre de utilizar o Google
para buscar soluções na internet. Por ser um software livre o rsync
possui uma comunidade de usuários e desenvolvedores bem ampla que
compartilham informações e dúvidas pela internet. Mas se preferir,
utilize o fórum do Moodle para esclarecer sua dúvida com o monitor do
curso, ou com outros participantes.


Links importantes

Caso queira aprofundar seu conhecimento em rsync, sugiro os segunites
links:

Página oficial da documentação do rsync:
http://samba.anu.edu.au/rsync/documentation.html
Artigo do br-linux: http://br-linux.org/tutoriais/002249.html
Artigo do [dicas-L]: http://www.dicas-l.com.br/dicas-l/20041227.php
Google: http://www.google.com.br

O que mais conta é seu interesse! Rsync é uma ferramenta muito útil e
interessante e ainda por cima é livre!

Espero que tenha aproveitado o curso! Qualquer dúvida, sugestão ou
correção entre em contato!







-- 
Interessado em aprender mais sobre o Ubuntu em português?
http://wiki.ubuntu-br.org/ComeceAqui  -
ubuntu-br mailing list
ubuntu-br@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-br

Responder a