Gardez votre / la maison en sécurité avec les sauvegardes cron

Gardez votre / la maison en sécurité avec les sauvegardes cron

Objectif

Créez un script de sauvegarde qui recueille régulièrement des fichiers importants à partir de votre /maison annuaire.

Distribution

Cela fonctionnera avec n'importe quelle distribution Linux.

Exigences

Une installation Linux fonctionnelle avec un accès root.

Difficulté

Facile

Conventions

  • # - Exige que les commandes Linux soient exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande
  • $ - Exige que les commandes Linux soient exécutées en tant qu'utilisateur non privilégié régulier

Introduction

Bien sûr, il existe des utilitaires de sauvegarde pour Linux, mais avec quelques scripts, vous pouvez garder vos fichiers importants régulièrement avec peu ou pas d'efforts.

UN très Simple Bash Script fera la majeure partie de l'œuvre. Pour le reste, vous profiterez déjà du système cron sur votre ordinateur.

Créer le script

Vous avez peut-être déjà deviné, mais le script que vous écrirez utilise le goudron. le goudron compressera vos fichiers dans un format plus gérable et à économie d'espace.

Commencez par créer le script. Vous pouvez le mettre n'importe où, donc votre /maison Le répertoire ira bien.

$ vim à domicile.shot
#! / bin / bash # # script de sauvegarde du répertoire domestique # 

Maintenant, vous pouvez commencer à construire le script lui-même. Il y a de fortes chances que vous ne vouliez pas sauvegarder tout dans le répertoire. Il y a probablement beaucoup trop là-bas, et sauvegarder des choses comme des jeux n'est généralement pas la meilleure utilisation des ressources système.

Certes, vous pouvez, et dans ce cas, ignorer l'ensemble du processus de sélection du répertoire, et utiliser simplement / Home / User.

Alors, créez un le goudron ligne qui compresse les répertoires clés dans votre /maison.

TAR -CJPF / Media / Backup / Home-Backup-'date +% D-% M-% Y '.le goudron.XZ / Home / User / documents, téléchargements, photos, musique,.configurer,.XResources,.xinitrc,.i3,.mozilla,.zshrc 

Avec juste cette ligne, votre ordinateur créera un le goudron archiver à / média / sauvegarde Dans un fichier appelé camarade de maison avec la date actuelle taguée sur. Il ajoutera xz Structure et autorisation de compression et de conservation des dossiers.

Sauvegardes incrémentielles

Bien que ce soit bien, ça peut être mieux. le goudron Offre des sauvegardes incrémentielles. Les sauvegardes incrémentielles feront une énorme sauvegarde la première fois et détecteront et les modifications de sauvegarde pour chaque course suivante dans une archive plus petite distincte. De cette façon, votre ordinateur économise du temps et de l'espace en ne sauvegarde pas les mêmes choses à plusieurs reprises.

C'est à quoi ressemble cette même commande.

Tar - co-incriment = / média / sauvegarde / instantané.Fichier -Cjpf / Media / Backup / Home-Backup-'date +% D-% M-% Y '.le goudron.XZ / Home / User / documents, téléchargements, photos, musique,.configurer,.XResources,.xinitrc,.i3,.mozilla,.zshrc 

La sauvegarde incrémentielle a besoin d'un fichier instantané pour suivre les fichiers et les modifications. C'est probablement une bonne idée de le garder dans le même répertoire que les sauvegardes.

Ajoutez-le à Crontab

À présent, vous devriez avoir un script qui ressemble à quelque chose comme ça.

#! / bin / bash # # scénario de sauvegarde du répertoire domestique # TAR - co-incrimental = / media / backup / snapshot.Fichier -Cjpf / Media / Backup / Home-Backup-'date +% D-% M-% Y '.le goudron.XZ / Home / User / documents, téléchargements, photos, musique,.configurer,.XResources,.xinitrc,.i3,.mozilla,.zshrc 

Assurez-vous de rendre le script exécutable.

$ chmod + x / home / utilisateur / home-backup.shot

Si vous en êtes satisfait, vous pouvez passer à la création du crontabCommande Linux comme racine.

# crontab -u nom d'utilisateur -e 

Un éditeur (probablement nano) s'ouvrira pour ajouter votre ligne. Lorsque vous aurez terminé, ça ressemblera à celle-ci.

0 3 * * * / Home / User / Home-Backup.shot 

Horaire

D'accord, la chose qui vous confonde probablement, ce sont les chiffres et les astérisques au début de la ligne. Ils déterminent le timing.

Le premier chiffre contrôle les secondes. La seconde est des heures. Les deux prochains sont des jours et des mois. Le dernier est le jour de la semaine (1-7). Si l'endroit est occupé par un astérisque, le script s'exécutera à chaque fois.

Un nombre signifie que le script s'exécutera à ce moment-là. Pour utiliser l'exemple précédent, qui exécutera le script à 3 heures du matin tous les jours. Si vous vouliez l'exécuter à 3h30 à chaque fois à la place, cela ressemblerait à ça.

30 3 * * * / Home / User / Home-Backup.shot 

Lorsque vous avez un temps qui fonctionne pour vous, sauvegard et sortie. Le script s'exécutera automatiquement au moment où vous avez spécifié à partir de maintenant.

Réflexions de clôture

De toute évidence, vous pouvez obtenir des couches de complexité variables ici, y compris les répertoires cryptés et / ou les répertoires. Vous pouvez choisir d'économiser plusieurs jours de sauvegardes et de supprimer automatiquement les plus anciennes. Bien sûr, ce serait une bonne idée d'inclure également une sauvegarde à un lecteur distant ou en réseau.

Ce pourrait être une bonne idée d'écrire un script qui utilise --enchaîner Flag pour fusionner les archives de temps en temps. Sinon, vous allez avoir beaucoup d'archives avec très peu de fichiers.

Puisqu'il s'agit d'une méthode scriptée, vous n'êtes vraiment limité que par votre capacité de script avec bash.

Tutoriels Linux connexes:

  • Choses à installer sur Ubuntu 20.04
  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux
  • Une introduction à l'automatisation Linux, des outils et des techniques
  • Téléchargement Linux
  • Comment créer un travail cron à Kubernetes
  • Commandes Linux: les 20 meilleures commandes les plus importantes que vous devez…
  • Choses à faire après l'installation d'Ubuntu 22.04 Jammy Jellyfish…
  • Meilleure distribution Linux pour les développeurs
  • Linux peut-il obtenir des virus? Exploration de la vulnérabilité de Linux…
  • Fichiers de configuration Linux: 30 premiers