Mantenha sua casa segura com backups de Cron
- 4602
- 1055
- Mrs. Christopher Okuneva
Objetivo
Crie um script de backup que faça backup regularmente de arquivos importantes do seu /lar
diretório.
Distribuições
Isso funcionará com qualquer distribuição Linux.
Requisitos
Uma instalação do Linux Working com acesso raiz.
Dificuldade
Fácil
Convenções
- # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de
sudo
comando - $ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular
Introdução
Claro, existem utilitários de backup para o Linux, mas com alguns scripts, você pode manter seus arquivos importantes apoiados regularmente com pouco ou nenhum esforço.
A muito O script simples do Bash fará a maior parte do trabalho. Para o resto, você aproveitará o sistema Cron já em seu computador.
Crie o script
Você já deve ter adivinhado, mas o script que você estará escrevendo alcatrão
. alcatrão
Compactará seus arquivos em um formato mais gerenciável e de economia de espaço.
Comece criando o script. Você pode colocá -lo em qualquer lugar, então seu /lar
Diretório vai se sair bem.
$ vim home-backup.sh
#! /BIN/BASH # # Script de backup de diretório doméstico #
Agora, você pode começar a construir o próprio script. Provavelmente, você não quer fazer backup tudo no diretório. Provavelmente há muito lá, e fazer backup de coisas como jogos geralmente não é o melhor uso dos recursos do sistema.
Certamente, você pode, e nesse caso, ignorar todo o processo de seleção de diretórios e apenas usar /casa/usuário
.
Então, crie um alcatrão
linha que comprime os principais diretórios em seu /lar
.
Tar -cjpf/mídia/backup/home-backup-'date +%d-%m-%y '.alcatrão.xz/home/user/documentos, downloads, fotos, música,.Config,.Xresources,.xinitrc,.i3,.Mozilla,.zshrc
Com apenas essa linha, seu computador criará um alcatrão
Arquivo em /mídia/backup
em um arquivo chamado zagueiro
com a data atual marcada em. Vai adicionar xz
Compressão e preservação da estrutura e permissões da pasta também.
Backups incrementais
Embora isso seja bom, pode ser melhor. alcatrão
oferece backups incrementais. Os backups incrementais farão um backup enorme pela primeira vez e detectará as mudanças de backup para cada execução subsequente em um arquivo menor separado. Dessa forma, seu computador economiza tempo e espaço ao não fazer backup das mesmas coisas repetidamente.
É assim que esse mesmo comando parece correr de forma incremental.
alcatrão-incremental listado =/mídia/backup/instantâneo.Arquivo -cjpf/mídia/backup/home-backup-'date +%d-%m-%y '.alcatrão.xz/home/user/documentos, downloads, fotos, música,.Config,.Xresources,.xinitrc,.i3,.Mozilla,.zshrc
O backup incremental precisa de um arquivo instantâneo para rastrear arquivos e alterações. Provavelmente é uma boa ideia mantê -lo no mesmo diretório que os backups.
Adicione -o a Crontab
Até agora, você deve ter um script que se pareça com isso.
#! /bin/bash # # script de backup de diretório doméstico # tar-listado e- encremental =/mídia/backup/snapshot.Arquivo -cjpf/mídia/backup/home-backup-'date +%d-%m-%y '.alcatrão.xz/home/user/documentos, downloads, fotos, música,.Config,.Xresources,.xinitrc,.i3,.Mozilla,.zshrc
Certifique -se de fazer o script executável.
$ chmod +x/home/usuário/home-backup.sh
Se você estiver feliz com isso, pode passar a criar o Crontab
comando linux como root.
# Crontab -u Nome de usuário -e
Um editor (provavelmente nano) abrirá para você adicionar sua linha. Quando você terminar, será algo assim.
0 3 * * */home/usuário/home-backup.sh
Tempo
Tudo bem, o que provavelmente está confundindo você são os números e asteriscos no início da linha. Eles determinam o tempo.
O primeiro dígito controla segundos. O segundo é horas. Os próximos dois são dias e meses. O último é o dia da semana (1-7). Se o local for ocupado por um asterisco, o script será executado sempre.
Um número significa que o script será executado naquele momento. Para usar o exemplo anterior, isso executará o script às 3 da manhã todos os dias. Se você quisesse executá -lo às 3:30 da manhã toda vez, ficaria assim.
30 3 * * */home/usuário/home-backup.sh
Quando você tem um tempo que funciona para você, salve e saia. O script será executado automaticamente no momento em que você especificou a partir de agora.
Pensamentos finais
Obviamente, você pode obter camadas de complexidade adicionais aqui, incluindo diretórios e/ou diretórios criptografados. Você pode optar por economizar vários dias de backups e excluir os mais antigos automaticamente também. Claro, seria uma boa ideia incluir um backup para uma unidade remota ou em rede também.
Pode ser uma boa ideia escrever um script que usa alcatrão --concatenar
sinalize para mesclar os arquivos de vez em quando. Caso contrário, você terá muitos arquivos com muito poucos arquivos.
Como este é um método com script, você é realmente limitado apenas pela sua capacidade de script com o Bash.
Tutoriais do Linux relacionados:
- Coisas para instalar no Ubuntu 20.04
- Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
- Uma introdução à automação, ferramentas e técnicas do Linux
- Download do Linux
- Como criar um trabalho Cron em Kubernetes
- Comandos Linux: os 20 comandos mais importantes que você precisa para…
- Coisas para fazer depois de instalar o Ubuntu 22.04 Jellyfish…
- Melhor distro Linux para desenvolvedores
- Linux pode obter vírus? Explorando a vulnerabilidade do Linux…
- Arquivos de configuração do Linux: os 30 primeiros mais importantes