Enviado em 21/12/2017 - 10:14h
Bom dia pessoal,
# Cria uma pasta mensal para armazenamento de logs
# Parâmetro -p para não dar erro caso a pasta já exista
mkdir -p /var/log/Backup
mkdir -p /var/log/Backup/$(date +%m)
# Cria o arquivo diário de logs
touch /var/log/Backup/$(date +%m)/Storage.$(date +%d)
touch /var/log/Backup/$(date +%m)/Domain.$(date +%d)
touch /var/log/Backup/$(date +%m)/Users.$(date +%d)
# Testa se servidor de backup está ligado
if ! ping -c 5 <IP>; then
touch /var/log/Backup/$(date +%m)/Error.$(date +%d)
# Servidor não está ligado
echo "Servidor de backup desconectado" >> /var/log/Backup/$(date +%m)/Error.$(date +%d)
else
#Servidor ligado e disponivel para conexão
# Desmonta partição caso tenha algum mapeamento aberto
umount /media/Backup
# Realiza a conexão com o compartilhamento de backup
mount -t cifs //<IP>/Storage/Eros /media/Backup -o username=<usuario>,password=<senha>
# Realiza a cópia de segurança mostrando os arquivos que estão sendo copiados no arquivo de log
# Parâmetro -R para copiar pastas e subpastas
# Parâmetro -u para copiar apenas os arquivos que tiveram alterações ou os que não existam
# Parâmetro -v para mostrando o que está sendo copiado no momento
# Comando >> para adicionar o resultando do comando de cópia em algum arquivo, no caso o de logs
####################################################################
# Backup da pasta setores iniciado
cp -Ruv /media/Setores /media/Backup >> /var/log/Backup/$(date +%m)/Storage.$(date +%d)
chmod 777 -R /media/Backup
# Backup da pasta setores concluido
####################################################################
####################################################################
# Backup dos arquivos do serviço de dominio iniciado
# Criando pastas no diretório de backup
mkdir -p /media/Backup/Domínio/$(date +%m)
mkdir -p /media/Backup/Domínio/$(date +%m)/netlogon
mkdir -p /media/Backup/Domínio/$(date +%m)/etc
mkdir -p /media/Backup/Domínio/$(date +%m)/etc/samba
mkdir -p /media/Backup/Domínio/$(date +%m)/var
mkdir -p /media/Backup/Domínio/$(date +%m)/var/lib
mkdir -p /media/Backup/Domínio/$(date +%m)/var/lib/samba
mkdir -p /media/Backup/Domínio/$(date +%m)/etc/network
#Cria arquivo para armazenamento do ID do dominio
touch /media/Backup/Domínio/$(date +%m)/domainsid
# Exporta o ID do dominio para o arquivo criado
net getdomainsid > /media/Backup/Domínio/$(date +%m)/domainsid
# Realiza a cópia de segurança
cp -uv /etc/fstab /media/Backup/Domínio/$(date +%m)/etc/fstab >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -uv /etc/samba/smb.conf /media/Backup/Domínio/$(date +%m)/etc/samba/smb.conf >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -Ruv /var/lib/samba/private /media/Backup/Domínio/$(date +%m)/var/lib/samba/ >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -uv /etc/krb5.conf /media/Backup/Domínio/$(date +%m)/etc/krb5.conf >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -uv /etc/passwd /media/Backup/Domínio/$(date +%m)/etc/passwd >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -uv /etc/group /media/Backup/Domínio/$(date +%m)/etc/group >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -uv /etc/shadow /media/Backup/Domínio/$(date +%m)/etc/shadow >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -uv /etc/hosts /media/Backup/Domínio/$(date +%m)/etc/hosts >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -uv /etc/hostname /media/Backup/Domínio/$(date +%m)/etc/hostname >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -uv /etc/resolv.conf /media/Backup/Domínio/$(date +%m)/etc/resolv.conf >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -uv /etc/network/interfaces /media/Backup/Domínio/$(date +%m)/etc/network/interfaces >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -Ruv /var/lib/samba/sysvol/adl.com.br/scripts /media/Backup/Domínio/$(date +%m)/netlogon >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
cp -uv /etc/backup.sh /media/Backup/backup.sh >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
# Relata conclusão do backup
echo Backup realizado com sucesso em $(date) >> /var/log/Backup/$(date +%m)/Domain.$(date +%d)
# Backup dos arquivos do serviço de dominio concluido
####################################################################
# Desconecta compartilhamento de backup
umount /media/Backup
####################################################################
# Backup dos arquivos de backup dos usuários iniciado
mount -t cifs //<IP>/Users /media/Backup/Usuarios -o username=<Usuario>,password=<Senha>
# Copia pasta de backup dos usuários
cp -Ruv /media/Usuarios /media/Backup >> /var/log/Backup/$(date +%m)/Users.$(date +%d)
# Backup dos arquivos de backup dos usuários concluido
####################################################################
# Desconecta compartilhamento de backup
umount /media/Backup/Usuarios
fi
# Remove permissão root dos arquivos de logs
chmod 777 -R /var/log/Backup
# Reinicia o servidor para matar qualquer sessão de arquivo aberto
reboot now
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
É cada coisa que me aparece! - não é só 3% (1)
Alguma pessoa pode me ajudar com drriver Core i3 7020u (Debian 12)? (2)
Mikrotik não mostra bytes nem packtes (1)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código [RESOLVID... (4)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta