« Script de double sauvegarde alternée + clonage » : différence entre les versions

Aller à la navigation Aller à la recherche
m
chg "dossier" par "répertoire"
m (chg "dossier" par "répertoire")
Ligne 13 : Ligne 13 :
À vous de juger des périodicités de sauvegarde du clone et/ou de sa /home.
À vous de juger des périodicités de sauvegarde du clone et/ou de sa /home.


Ainsi, en cas d'accroc, j'ai sous la main une vue de ma machine qui date de moins d'une semaine et, si par manque de chance, cette sauvegarde est, elle aussi, défaillante, il m'en reste une seconde qui n'aura que moins de deux semaines d'ancienneté. En cas d'urgence, sans avoir à remplacer les dossiers, vous aurez en plus un clone "prêt à l'emploi".
Ainsi, en cas d'accroc, j'ai sous la main une vue de ma machine qui date de moins d'une semaine et, si par manque de chance, cette sauvegarde est, elle aussi, défaillante, il m'en reste une seconde qui n'aura que moins de deux semaines d'ancienneté. En cas d'urgence, sans avoir à remplacer les répertoires, vous aurez en plus un clone "prêt à l'emploi".


Pour utiliser ce script, il convient, bien entendu, d'y entrer vos données en regard des "variables".
Pour utiliser ce script, il convient, bien entendu, d'y entrer vos données en regard des "variables".
Ligne 19 : Ligne 19 :
Comme pour tout script, une fois vos modifications apportées, vous devrez lui donner un nom (perso, je ne me suis pas fatigué : 'sauvegarde') et rendre le fichier exécutable (# chmod +x /chemin/nom_fichier).  
Comme pour tout script, une fois vos modifications apportées, vous devrez lui donner un nom (perso, je ne me suis pas fatigué : 'sauvegarde') et rendre le fichier exécutable (# chmod +x /chemin/nom_fichier).  


Bien que cela ne soit pas une obligation, vous pouvez le placer dans un dossier présent dans le PATH, ainsi, vous pourrez envoyer ce script de n'importe quel endroit de votre architecture. Pour connaître ces dossiers, tapez en tant qu' 'user' : echo $PATH. Toutefois, l'habitude la plus fréquente veut qu'on place ses scripts perso dans /usr/local/bin
Bien que cela ne soit pas une obligation, vous pouvez le placer dans un répertoire présent dans le PATH, ainsi, vous pourrez envoyer ce script de n'importe quel endroit de votre architecture. Pour connaître ces répertoires, tapez en tant qu' 'user' : echo $PATH. Toutefois, l'habitude la plus fréquente veut qu'on place ses scripts perso dans /usr/local/bin


*Comme pré-requis, il faut installer, si ce n'est fait 'sudo' (voir les tutos existants).
*Comme pré-requis, il faut installer, si ce n'est fait 'sudo' (voir les tutos existants).
Ligne 48 : Ligne 48 :
<code bash>sauve=('' '/mnt/autre/sauve' '/mnt/autre/sauve-ricardo' '/mnt/autre' '/mnt/autre/ricardo')</code>
<code bash>sauve=('' '/mnt/autre/sauve' '/mnt/autre/sauve-ricardo' '/mnt/autre' '/mnt/autre/ricardo')</code>


<code bash>dossier_a_sauver=('' '/' '/home/ricardo/' '/' '/home/ricardo/')</code>
<code bash>répertoire_a_sauvegarder=('' '/' '/home/ricardo/' '/' '/home/ricardo/')</code>




Ligne 56 : Ligne 56 :
<code bash>mount_rep="/mnt/autre"</code>
<code bash>mount_rep="/mnt/autre"</code>


il s'agit du dossier qui sera monté temporairement et qui recevra votre partition de sauvegarde.
il s'agit du répertoire qui sera monté temporairement et qui recevra votre partition de sauvegarde.
il vous appartient de le créer et de le nommer comme bon vous semble.  
il vous appartient de le créer et de le nommer comme bon vous semble.  
'/mnt' étant le dossier habituel pour les montages temporaires, j'ai préféré créer un sous-dossier.
'/mnt' étant le répertoire habituel pour les montages temporaires, j'ai préféré créer un sous-répertoire.




Ligne 73 : Ligne 73 :
<code bash> exclure=('' '/root/exclure' '/home/ricardo/exclure' '/root/exclure' '/home/ricardo/exclure')</code>
<code bash> exclure=('' '/root/exclure' '/home/ricardo/exclure' '/root/exclure' '/home/ricardo/exclure')</code>


Là, il s'agit de créer deux "fichiers texte" dans lesquels vous inscrirez la liste de tous les dossiers/fichiers qui vous semblent devoir être exclus des sauvegardes. Le premier de ces fichiers sera placé dans le dossier /root, tandis que le second le sera dans le dossier ~/ c'est à dire /home/"vous".  En effet, il est inutile de sauvegarder les dossiers/fichiers temporaires, et certains autres qui sont régénérés à chaque reboute. Si vous voulez un exemple de ces fichiers "exclure", vous le trouverez dans le tuto du forum, à cette URL : http://www.debian-fr.org/sauvegarde-clonage-d-une-sid-t25179.html   
Là, il s'agit de créer deux "fichiers texte" dans lesquels vous inscrirez la liste de tous les répertoires/fichiers qui vous semblent devoir être exclus des sauvegardes. Le premier de ces fichiers sera placé dans le répertoire /root, tandis que le second le sera dans le répertoire ~/ c'est à dire /home/"vous".  En effet, il est inutile de sauvegarder les répertoires/fichiers temporaires, et certains autres qui sont régénérés à chaque reboute. Si vous voulez un exemple de ces fichiers "exclure", vous le trouverez dans le tuto du forum, à cette URL : http://www.debian-fr.org/sauvegarde-clonage-d-une-sid-t25179.html   


<code bash> sauve=('' '/mnt/autre/sauve' '/mnt/autre/sauve-ricardo' '/mnt/autre' '/mnt/autre/ricardo')</code>
<code bash> sauve=('' '/mnt/autre/sauve' '/mnt/autre/sauve-ricardo' '/mnt/autre' '/mnt/autre/ricardo')</code>
Ligne 79 : Ligne 79 :
Inutile de créer ces fichiers, ils le seront lors de la première sauvegarde. Il vous appartient toutefois de renommer le second, en fonction de votre nom d'utilisateur.
Inutile de créer ces fichiers, ils le seront lors de la première sauvegarde. Il vous appartient toutefois de renommer le second, en fonction de votre nom d'utilisateur.


<code bash> dossier_a_sauver=('' '/' '/home/ricardo/' '/' '/home/ricardo/')</code>
<code bash> répertoire_a_sauvegarder=('' '/' '/home/ricardo/' '/' '/home/ricardo/')</code>


La première donnée '/' n'est pas à modifier, elle concerne l'ensemble du système, sauf les dossiers et fichiers exclus, portés dans le fichier 'exclure'. La seconde concerne votre dossier personnel ~/ qu'il est préférable d'écrire en entier : /home/"vous".
La première donnée '/' n'est pas à modifier, elle concerne l'ensemble du système, sauf les répertoires et fichiers exclus, portés dans le fichier 'exclure'. La seconde concerne votre répertoire personnel ~/ qu'il est préférable d'écrire en entier : /home/"vous".




Ligne 144 : Ligne 144 :
exclure=('' '/root/exclure' '/home/ricardo/exclure' '/root/exclure' 'home/ricardo/exclure')
exclure=('' '/root/exclure' '/home/ricardo/exclure' '/root/exclure' 'home/ricardo/exclure')
sauve=('' '/mnt/autre/sauve' '/mnt/autre/sauve-ricardo' '/mnt/autre/sauve' '/mnt/autre/sauve-ricardo')
sauve=('' '/mnt/autre/sauve' '/mnt/autre/sauve-ricardo' '/mnt/autre/sauve' '/mnt/autre/sauve-ricardo')
dossier_a_sauver=('' '/' '/home/ricardo/' '/' '/home/ricardo/')
répertoire_a_sauvegarder=('' '/' '/home/ricardo/' '/' '/home/ricardo/')




#----------------- Départ du script ----------------------------
#----------------- Départ du script ----------------------------


# Teste l'existence  du dossier de montage, sinon, on sort avec erreur 1.
# Teste l'existence  du répertoire de montage, sinon, on sort avec erreur 1.
mkdir -p "${mount_rep}"  
mkdir -p "${mount_rep}"  


Ligne 215 : Ligne 215 :
for choix in '1' '2'
for choix in '1' '2'
         do
         do
sauvegarde "${exclure[$choix]}" "${dossier_a_sauver[$choix]}" "${sauve[$choix]}"
sauvegarde "${exclure[$choix]}" "${répertoire_a_sauvegarder[$choix]}" "${sauve[$choix]}"
  done
  done
       ;;
       ;;
     3|4)
     3|4)
sauvegarde "${exclure[$index]}" "${dossier_a_sauver[$index]}" "${sauve[$index]}"
sauvegarde "${exclure[$index]}" "${répertoire_a_sauvegarder[$index]}" "${sauve[$index]}"
       ;;
       ;;
  esac
  esac
editor
621

modifications

Menu de navigation