Backup de diretórios do sistema Linux

Publicado por Amaury Borges Souza (última atualização em 01/06/2020)

[ Hits: 3.699 ]

Homepage: https://amaurybsouza.medium.com/

Download system-backup.sh




Basicamente esse script faz o backup de diretórios do sistema Linux,  basta você escolher o diretório de origem e destino que ele salva todo o conteúdo. Utilizei duas funções, algumas variáveis e o código todo escrito em if/else.

  



Esconder código-fonte

#!/usr/bin/env bash
# ------------------------------------------------------------------------ #
# Script Name:   system-backup.sh 
# Description:   Backup from /etc directory
# Site:          https://medium.com/@amaurybsouza
# Written by:    Amaury Souza
# Maintenance:   Amaury Souza
# ------------------------------------------------------------------------ #
# Usage:         
#       $ ./system-backup.sh
# ------------------------------------------------------------------------ #
# Tested on:  
#       Bash 4.2.46
# ------------------------------------------------------------------------ # 
# History:        v1.0 30/05/2020, Amaury:
#                - Start de program
#                - Add function
#                v1.1 30/05/2020, Amaury:
#                - Adding new variables
#                v1.2 30/05/2020, Amaury:
#                - Executing new tests in my system
# ------------------------------------------------------------------------ #
# Thankfulness: Amaury Souza
#
#VARIABLES --------------------------------------------------------------- #
ROOT_UID=0
data=`date +%d-%m-%y-%H:%M`
dir_source=/etc
dir_dest=/backup
#FUNCTIONS --------------------------------------------------------------- #
compact() {
   tar -cjvf $dir_dest/bkp-$data-usr.tar.bz2 $dir_source
}
isroot() {
   if [ "$UID" -ne "$ROOT_UID" ]
then
   echo ""
        echo "Must be root to run this script!"
   echo ""
        exit $E_NOTROOT
fi
}
#CODE -------------------------------------------------------------------- #
isroot
if [ -d $dir_dest ]
then
   compact
else
   if [ -f $dir_dest ]
   then
      echo "Not a dir $dir_dest it is a file"
      sleep 2
   else
      mkdir $dir_dest
      compact
   fi
fi
#FINISHED ---------------------------------------------------------------- #

Scripts recomendados

Script de Backup de Sistema

Realiza backup de VMs ligadas no XenServer 6.5

Script de backup Zabbix

Ferramenta de backup do HD para dispositivos externos

Backup Database MySQL Automatizado


  

Comentários
[1] Comentário enviado por maurixnovatrento em 08/06/2020 - 22:47h


Ficou bem organizado.

___________________________________
Conhecimento não se Leva para o Túmulo.

[2] Comentário enviado por amaurybsouza em 08/06/2020 - 22:56h


[1] Comentário enviado por mauricio123 em 08/06/2020 - 22:47h


Ficou bem organizado.

___________________________________
Conhecimento não se Leva para o Túmulo.


Massa, aprendi em um curso na Udemy sobre documentar scripts. Antes usava um tosco modelo de documentação, agora detalho tudo, procuro deixar o máximo documentado para que as outras pessoas possam entender a estrutura.

[3] Comentário enviado por maurixnovatrento em 09/06/2020 - 22:14h


Também faço assim.

___________________________________
Conhecimento não se Leva para o Túmulo.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts