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
Automatizando digitação de códigos 2FA no browser
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Como converter imagens PNG/JPEG para SVG em linha de comando
Fez porcaria no teu repositório Git? Aprenda a restaurar uma versão anterior do seu código!
Restaurando Fontes de Download do Hydra no Linux
Atualizando "na marra" o YT-DLP quando começa a dar erro de downloads
Como instalar o WPS com interface e corretor ortográfico em PT-BR no Arch Linux
Inicializaçao lenta (alguns processos rodando) Debian 11 Bullseye [RES... (2)
Erro na atualização dos pacotes (6)