Backup automatico em dois computadores via local e NFS
Publicado por David 01/02/2008
[ Hits: 8.920 ]
Homepage: http://twitter.com/dias_david
Esse script realiza backups diários pelo CRON. Compacta pastas e envia localmente; depois por NFS a outra máquina.
Gera logs diários de cada ação, além de não fazer mais do que um backup diários, mantendo o controle e evitando sobrescrição de arquivos.
Como gostei muito mesmo, resolvi compartilhar com todo.
#!/bin/sh #Script para backup dos arquivos automatizados. # Define variaveis. # Pastas a serem dadas backups. Arquivos enderecos completos. pastas="/Curso" # Local do Servidor NFS que devera ser enviado o arquivo de backup. servidor="192.168.20.174" # Pasta de Backup do Servidor NFS. Caminho completo. folder="/bkp" # Caminho completo da pasta onde o servidor devera ser montado. localnfs="/root/bkps" # Caminho completo para onde os arquivos locais devem ser backupeados. folder_local="/home/bkp" # Extensao da data dos arquivos de backup. ext_data="`date +%d-%m-%Y`" # Checka pela execucao do root. if [ `id -u` != 0 ]; then echo "Voce nao e o root" exit 0; fi # Checka se o backup ja foi realizado. if [ -e /home/bkp/log-$ext_data ]; then echo "Um backup ja foi realizado hoje" exit 0; fi # Checka se a pasta existe. if [ ! -d $folder_local ]; then echo "Pasta de backup nao existe, criando uma." mkdir $folder_local; fi #Cria o tar; ls /Curso/* 1> /dev/null 2> /dev/null if [ $? != 0 ]; then echo "Nao haviam arquivos para backup em $ext_data" > $folder_local/log-$ext_dat a ; else tar -cvzf /home/bkp/bkp_$ext_data.tar.gz $pastas/* 1> $folder_local/log-$ext_dat a 2> $folder_local/log-$ext_data; fi #Envia para o servidor. if [ -z $servidor ]; then echo "Nao ha um servidor definido para o backup.. abortando agora" exit 0; fi if [ ! -d $localnfs ]; then echo "$localnfs nao existe, criando... " mkdir $localnfs echo "ok"; fi mount -t nfs $servidor:$folder $localnfs 2> /dev/null if [ $? != 0 ]; then echo "O servidor NFS nao pode ser contatado, notificar administrador" >> $folder _local/log-$ext_data echo "O servidor NFS nao pode ser contatado, notificar administrador"; else if [ -e $localnfs/bkp_status-$ext_data ];then echo "Uma copia do backup ja foi enviada ao servidor hoje" echo "Ok, mas nao houve novas copias no servidor." umount $localnfs exit 0; fi echo "Executando backup no servidor" cp -av $folder_local/bkp_$ext_data.tar.gz $localnfs 1> $localnfs/bkp_status-$ext _data 2> $localnfs/bkp_status-$ext_data echo "Copia finalizada"; umount $localnfs fi # Confirmacao visual echo "Tudo ok" exit 0
Script para montar dispositivo Android
Loop para baixar arquivo em seqüência
CONTROLE DE ACESSOS PELO SQUID
Troca de imagem da tela de bloqueio de usuário no Linux Mint MATE
Nenhum comentário foi encontrado.
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Descritores de Arquivos e Swappiness
tux-gpt - Assistente de IA para o Terminal
Instalação e configuração do Chrony
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
O Que Fazer Após Instalar Ubuntu 25.04
Erro ao atualizar o archlinux [RESOLVIDO] (2)
Erro ao executar o comando para dar um get email (0)