Backup automatico em dois computadores via local e NFS
Publicado por David 01/02/2008
[ Hits: 8.986 ]
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 de backup em um case USB
Nenhum coment�rio foi encontrado.
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)
Layout do teclado KDE Palsma 5.27.5 com x11 (1)
O que você está ouvindo agora? [2] (216)