Linux: utilize o rsync para fazer backup
Há muitas formas de se copiar arquivos no linux, desde os básicos cp, rcp, scp, etc… mas uma das melhores é utilizando um pequeno aplicativo chamado rsync. Na verdade o que será feito é mais do que uma cópia, é uma sincronização. Se foi feita alguma mudança o aplicativo ira refletir isso. Ou seja, adicione os arquivos novos, retire os excluídos, altere as propriedades, etc… Se você sincronizar com rsync, alterar um arquivo e fizer uma nova sincronização, apenas as partes alteradas daquele arquivo serão atualizadas, muito mais rápido que refazer tudo.
O formato do comando é muito simples
rsync [OPTION...] origem destino
Há muitas opções no rsync, sugiro um rsync –help para ver todas, mas vou dar uma lista bastante interessante e que serve a quase todos. No exemplo a seguir vou copiar recursivamente TODOS os diretórios e subdiretórios da minha pasta, mantendo as permissões e propriedade (no sentido de dono, ownership) dos arquivos, para um pendrive:
rsync -av /home/compdicas /media/disk/compdicas
a “/” final faz toda a diferença no diretório de origem. Seu eu escrever /home/compdicas/, o aplicativo cria uma pasta compdicas no destino e copia tudo. Seu eu não colocar a barra final, ele apenas copia os diretórios recursivamente para /media/disk/compdicas. Isso é fundamental para backups.
Opções:
-a, –archive: reúne uma série de opções em um mesmo comando, é o mesmo que -rlptgoD. De forma geral, copia recursivamente (-r), copia symlinks como symlinks (-l), preserva as permissões (-p), preserva os horários de criação, alteração, etc dos arquivos (-t), preserva o grupo (-g), preserva o proprietário (-o) e o -D preserva devices e special files
-v, –verbose: o bom e velho verbose mostra o que está acontecendo. Você também pode utilizar -vv e -vvv para saber ainda mais sobre o que está acontecendo.
-z, –compress: Comprime o arquivo durante a transferência. É excencial se a transferência é feita entre dois computadores distintos, na mesma rede ou pela internet. Se for localmente, de um HD para outro do mesmo computador, é melhor não utilizar essa opção.
–delete: deleta no diretório a ser sincronizado os arquivos que foram excluídos no diretório de origem. atenção: muito cuidado com o comando delete, de fato, enquanto você se acostuma com o rsync é melhor não utiliza-lo, ou pelo menos substitui-lo pelo –dry-run
–dry-run: mostra o que o rsync faria (sem chegar a fazer nada). Muito bom para ver se era isso mesmo que você queria. Recomendo fortemente antes de sair utilizando o rsync, “brincar” bastante sempre com essa opção.
Assim, o nosso comando ficaria:
rsync -av –delete /home/compdicas /media/disk/compdicas
Sincronizando remotamente de forma segura (com SSH)
Uma das coisas boas do rsync é a facilidade em se utilizar o SSH para conectar a um servidor remoto de forma segura. Nada de ficar se expondo, basta indicar o destino na forma de um usuário em outra máquina. Antes porém, mais duas opções:
–progress: exibe o progresso da transferência
-e: especifica o shell a ser utilizado, no caso, SSH
O que, substituindo pelo seu nome de usuário, nome do servidor e diretórios, resultaria em :
rsync -avze ssh –delete –progress /home/compdicas/dir/ user@servidorremote.com.br:dir/
O programa, claro, irá solicitar a senha.Caso não queira ficar digitando a senha todas as vezes, utilize o seguinte procedimento para gera uma chave:
Crie uma chave (e pressione ENTER quando o sistema perguntar por uma passphrase):
ssh-keygen -t dsa
Em seguida, copie a chave para o servidor remoto com:
ssh-copy-id -i .ssh/id_dsa.pub user@servidorremoto.com.br
E finalmente o rsync (igual ao anterior):
rsync -avze ssh –delete –progress /home/compdicas/dir/ user@servidorremote.com.br:dir/
Espero que a dica tenha sido útil. Qualquer dúvida ou sugestão (vale elogio também
), não esqueçam de comentar.
O que são e como instalar arquivos .deb no ubuntu
Esse blog é pautado pelas perguntas que recebo. Essa é parece daquelas tão óbvias pra quem está a anos trabalhando com diversas linhas de linux, que provavelmente não me ocorreria a idéia de escrever sobre isso.
Você fez um download de um programa para o seu Ubuntu/Debian e a extensão é .deb, o que é isso?
É um pacote para o formato do debian. Nele já está tudo pronto para o programa ser instalado, todos os caminhos definidos, etc…
Além de simplificar a vida, também ajudam a manter o sistema em dia. De forma simplista, o que as atualizações automáticas fazem é verificar a versão de um pacote instalado com a versão disponível nos repositórios. Se a versão na rede for mais recente que aquela instalada, o download e a instalação são feitos. Por isso, sempre que for possível escolher entre um pacote e uma compilação, sugiro que instale o pacote.
Como instalar um arquivo .deb
A instalação não poderia ser mais simples. Faça o download e abra o arquivo e dê um duplo clique nele. Abrirá o instalador de pacotes (package installer). Apenas clique em “Instalar pacote”. É só isso. Mesmo.
Se preferir utilizar a linha de comando, digite o comando abaixo, trocando pacote-versao.deb pelo nome do arquivo que deseja instalar
dpkg -i pacote-versao.deb
Pronto, seu pacote está instalado. E se estiver nos repositórios, sempre que houver uma atualização você será notificado.
Editar o arquivo hosts no Windows Vista
Quem desenvolve para web costuma configurar o computador para agir como um servidor, Instalando um servidor de web e alguma linguagem para rodar aplicativos (php, asp, java, etc…).
No entanto, é preciso informar em qual endereço está o site de testes. Para isso basta editar o arquivo hosts, que é uma forma estática de ligar IPs a nomes.
Porém, quem tentou fazer isso no windows vista deve ter esbarrado em um aviso de erro, informando que o usuário não possui permissão para editar o arquivo. Eis a receita de como passar por isso.
- Abra o Notepad com privilégios de administrador. Para fazer isso cliquem em Iniciar -> Todos os Programas -> Acessórios e em seguida clique com o botão direito do mouse sobre o programa Notepad e selecione abrir como administrador.
- Agora basta abrir no Notepad o arquivo c:\windows\System32\drivers\etc\hosts
Para inserir um nome meudominio no hosts, basta adicionar a linha abaixo e salvar o arquivo:
127.0.0.1 meudominio





