« Sauvegarder sa Debian en vue d'une Réinstallation ou Reconstruction - Racine et Home séparés » : différence entre les versions

De Le Wiki du Forum-Debian.fr
Aller à la navigation Aller à la recherche
 
m (→‎Pour ce faire, vous devez créer ce qui suit : chg "dossier" par "répertoire")
 
(39 versions intermédiaires par 5 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
{{annonce|texte='''/!\'''  Ce document n'a pas été validé par la communauté. Soyez prudent vis-à-vis de son contenu! '''/!\'''<br>
* Moment partagé, Moment privilégié, ... '''. ^¿^ .'''
'''Attention:''' Si au cours de vos manipulations un problème survenait, vous ne pouvez en aucun cas incriminer ce site. <br>Posez vos questions sur le  [https://www.debian-fr.org/ forum]|image=|fond=#F7FF3C|bord=#2F1B0C}}<br>
<br>


== '''Introduction''' ==
== '''Avant propos''' ==
À mes tout débuts sous Debian, j'ai dû procéder à de '''multiples''' ré-installations.<br> Ce qui implique évidemment de refaire les install des paquets dont j'avais besoins, ainsi que leurs configurations.<br>Pertes de temps ? Oui et non, j'en n'ai tiré beaucoup de leçons.<br>
 
À mes tous débuts sous Debian, j'ai dû procéder à de '''multiples''' ré-installations.<br> Ce qui implique évidemment de refaire les install des paquets dont j'avais besoin, ainsi que leurs configurations.<br>Pertes de temps ? Oui et non, j'en ai tiré beaucoup de leçons.<br>
Cependant, il était grand temps de faire quelque chose ... !!!<br>
Cependant, il était grand temps de faire quelque chose ... !!!<br>


AMHA, vous êtes ici en quête de cette même sérénité!
AMHA, vous êtes ici en quête de cette même sérénité!<br>
 
=='''Avertissement'''==
 
* Ce tutoriel est spécifique à une installation standard, à savoir les partitions racine et home séparées. <br>
 
* Son origine, ce fil dans Trucs et Astuces [https://www.debian-fr.org/recreer-un-os-depuis-une-sauvegarde-home-separee-t35283.html#p356953 Restaurer un OS depuis une sauvegarde: /home séparée] .<br>
<br>
 
 
=='''Mise en garde !'''==
 
'''Ce tuto ne consiste pas en l'installation ou la configuration d'un paquet, d'une application x. Etc ...'''<br>
 
<span style="color:#FF0000;">'''Mais bien de manipulation de disques et partitions!''' </span><br>
 
'''Il vous faut en avoir réellement conscience! <span style="color:#FF0000;">Cela n'est pas sans risque ... s'il est utilisé à mauvaise escient !!!'''</span><br>


<span style="color:#FF0000;">'''Ne prenez pas ces Avertissements, Recommandations, et Mise en garde à la légère.</span> Le bon fonctionnement de votre système en dépend !!!'''<br>


=='''Avertissement'''==
== '''Règles d'or'''==
Ce tutoriel est spécifique à une installation standard, à savoir les partitions racine et home séparées. <br>
 
<br>
 
{{annonce|texte=<span style="color:#FF0000;">''' 1°) Maîtriser la console root en ayant bien conscience, que root est le maître à bord, la relation chaise/clavier !''' <br>
<br>
 
'''Root a tous les pouvoirs !!!!'''<br>
 
 
'''2°) Identifier clairement les disques et partitions sans qu'aucun doute ne subsiste ! ''' <br>
 
 
'''3°) Maîtriser un outil de partitionnement !'''<br>
 
 
'''4°) Les appellations des disques et partitions cités dans ce tuto sont propres à mon installation ! <br>
 
 
'''Veillez donc, à adapter celles-ci à votre situation !''' <br></span>|image=|fond=#F7FF3C|bord=#2F1B0C}}<br>
 
<br>
 
=='''Recommandations'''==
 
<br>
 
==='''Identifiez clairement les disques et partitions'''===
 
:~# fdisk -l
 
:~# blkid
 
<br>
 
{{annonce|texte=<span style="color:#2F1B0C;"> '''1°) Arrêter et déconnecter physiquement (cordon d'alimentation) la machine (mise Hors Tension). ''' <br>
 
'''2° Déconnecter physiquement les disques internes/externes qui ne sont pas concernés par les opérations qui vont suivre.'''<br>
 
'''Cela limitera d'autant plus, les éventuels cafouillages sur les partitions. (L'erreur est humaine!)'''<br>
 
'''3°) Identifier votre disque dur source, prendre des notes.'''<br>
 
'''4°) Arrêter de nouveau votre Debian. Hors Tension!'''<br>
 
'''5°) Connecter le disque interne/externe qui recevra vos sauvegardes. Relancer la machine. En console root identifier celui-ci.'''<br>
 
'''6°) Mêmes opérations si vous désirez utiliser un deuxième disque pour les sauvegardes.'''<br>
 
''' Prenez des notes !'''<br>
 
'''Notes :  Dans le cas de deux disques connectés pour les sauvegardes, vous devriez obtenir  après le dernier démarrage : '''<br>
 
/dev/sda    ### disque source<br>
 
/dev/sdb    ### premier disque des sauvegardes (interne/externe)<br>
 
/dev/sdc    ### deuxième disque des sauvegardes (interne/externe)<br>
 
Sauf erreur de ma part.<br>
 
'''Vous êtes à présent paré pour la suite ... '''<br>
 
</span>|image=|fond=#00FF00|bord=#2F1B0C}}<br>
 
<br>
 
<br>


=='''Pré-requis'''==
=='''Pré-requis'''==


Si ce n'est pas déjà fait.
* Si ce n'est pas déjà fait.


  # aptitude install sudo  
 
  # aptitude install sudo


  # aptitude install rsync
  # aptitude install rsync


===Remarques===
* Configuré par vos soins.
{{annonce|texte=<span style="color:#FF0000;">'''Les sauvegardes seront lancé manuellement.'''<br>
 
Libre à vous d'opter pour une tâche cron. </span>|image=|fond=#F7FF3C|bord=#2F1B0C}}<br>
<br>
 
 
==='''Remarques'''===
 
{{annonce|texte=<span style="color:#FF0000;">'''Les sauvegardes seront lancées manuellement.'''<br>
Libre à vous d'opter pour une tâche cron ou autre ... </span>|image=|fond=#F7FF3C|bord=#2F1B0C}}<br>
 
<br>
 
=='''Avant d'aller plus loin''' ==
 
Je vous invite à lire ce tutoriel  [[Script de double sauvegarde alternée]] afin d'en comprendre l'usage et l'utilisation.<br>
Suite à cela, vous ferez un copier/(coller) dans son intégralité, du script de ricardo.
<br>
 
Avec l'accord de ricardo, Je me permettrai très modestement d'en illustrer les lignes de commande qui vous seront nécessaires, ceci à l'intention des néophytes.
<br>
 
 
{{annonce|texte=<span style="color:#0000FF;">J'en profite au passage, pour remercier ricardo et tous les membres qui ont contribués à son élaboration.<br>
Script sans lequel, ce tuto ne saurait être, et à partir duquel j'ai rédigé cette page.
 
À ...
 
@ ricardo ...
 
@ tous les membres ...
 
Je vous en serre cinq ...  Amicalement, loreleil ...    '''. ^¿^ .'''
 
</span>|image=|fond=#00FF00|bord=#00FF00}}<br>
<br>
 
=='''Mise en place du script pour les néophytes''' ==
<br>


=='''Avant d'aller plus loin ...''' ==
ps : ''Newbies'', je n'aime pas ce terme anglophone, je lui préfère et ce de très loin, (restons Français) néophyte.<br>
Je vous invite à vous rendre à ce tutoriel  [[Script de double sauvegarde alternée]] afin de faire un copier/coller dans son intégralité du script  de ricardo, à partir duquel j'ai rédigé cette page. <br>
<br>
Et de vous référez à la première section (entre autre) '''pour sa mise en place et utilisation!'''<br>
J'en profite au passage pour remercier ricardo et tout les membres qui ont contribué à son élaboration.


=='''Avant toute chose! Faire le point sur les disques/partitions qui seront concernées'''==
Cette idée me paraît judicieuse ...


===Disque source===
* '''Deux types de sauvegardes en fonction de vos besoins.'''
** Sauvegarde de la racine ( / )
** Sauvegarde de la  /home
 
 
Afin de rendre la tâche des sauvegardes plus aisée avec rsync, et de rendre celles-ci plus maniable à la fois dans  son utilisation à volonté et sans aucune modération, quelles soient '''quotidienne''', '''hebdomadaire''', mensuelle, annuelle, ... c'est vous qui voyez ! 
 
<br>
 
=='''Pour ce faire, vous devez créer ce qui suit'''==
 
<br>
 
* Un répertoire "/home/<user>/bin"
<br>
 
* Deux scripts "sauvegarde". C'est '''là'''  qu'il vous faudra faire le coller du script [[Script de double sauvegarde alternée]]
** /home/<user>/bin/sauvegardeR
** /home/<user>/bin/sauvegardeH
* Que vous rendrez exécutables.
<br>
 
* Deux répertoires ".controle"
** /home/<user>/.controleR
** /home/<user>/.controleH
<br>
 
* Deux fichiers "exclure"
** /root/exclureR
** /home/<user>/.exclureH
<br>
 
* Placer maintenant votre répertoire "/home/<user>/bin"  dans le PATH.<br> Ainsi vous n'aurez plus à vous soucier d'où vous enverrez la commande de sauvegarde. <br> Par la suite, vous pourrez (si vous le désirez) placer tous vos scripts personnel dans ce répertoire. (Si vous nommez votre bin personnel sous un autre nom (.bin) il ne sera pas dans votre path)
<br>
 
====C'est parti mon kiki ====
 
<br>
 
* Création du répertoire bin
 
:~$ pwd
/home/<user>
 
:~$  mkdir bin
 
* Création des scripts "sauvegardes"
** Coller le script dans ce fichier et l'enregistrer.
 
:~$ nano /home/<user>/bin/sauvegardeR
 
* Coller le script dans ce fichier et l'enregistrer.
 
:~$ nano /home/<user>/bin/sauvegardeH
 
* Rendons les, exécutables.
 
:~$ chmod +x /home/<user>/bin/sauvegardeR
 
:~$ chmod +x /home/<user>/bin/sauvegardeH
 
* Création des répertoires "controle"
 
:~$ mkdir /home/.controleR
 
:~$ mkdir /home/.controleH
 
* Passer en console root.
 
:~$ su -
Mot de passe :
:~#
 
* Création des fichiers "exclure".
 
:~# touch /root/exclureR
 
:~# touch /home/<user>/.exclureH
 
* Quitter la console root proprement.
 
:~# exit
logout
:~$
 
* Placer le répertoire "/home/<user>/bin"  dans le PATH.
 
echo 'export PATH=$PATH:/home/<user>/bin' >> /home/<user>/.bashrc
 
<br>
 
{{annonce|texte=<span style="color:#0000FF;">''' Vous modifierez/compléterez ces fichiers  plus tard !<br>
 
'''Pour l'heure, "faisons le point ..." '''</span>|image=|fond=#00FF00|bord=#2F1B0C}}<br>
 
=='''Faisons le point sur les disques et partitions qui seront concernées'''==
 
* [[#Recommandations|Cette idée me paraît judicieuse ...]]<br>
 
Plus parlant qu'un discours ...
 
 
{| style="color:000000;background-color:#FFFF6B;" cellpadding="8" cellspacing="0" border="2" {| align="center"
|
|align="center" |'''dd Source'''<br> /dev/sda
|align="center" |''' dd Sauvegardes'''<br> /dev/sdb<br> '''sauve'''<br>
|align="center" |'''dd Sauvegardes'''<br> /dev/sdc<br> '''sauve2'''<br>
|-
|align="center" |Partitions
|
|
|
|-
|align="center" |'''Racine " / " (*)'''
|align="center"  bgcolor="#00FF00" |'''/dev/sda1'''
|align="center" bgcolor="F4661B" |'''/dev/sdb1'''
|align="center" bgcolor="2C75FF" |'''/dev/sdc1'''
|-
|align="center" |extended
|align="center" |''/dev/sda2''
|
|
|-
|align="center" |Swap
|align="center" |''/dev/sda5''
|
|
|-
|align="center" |'''/home'''
|align="center"  bgcolor="#00FF00" |'''/dev/sda6'''
|align="center" bgcolor="F4661B" |'''/dev/sdb2'''
|align="center" bgcolor="2C75FF" |'''/dev/sdc2'''
|-
|}
<br>
 
 
==='''Disque source'''===


  # fdisk -l
  # fdisk -l
 
   Device Boot      Start        End      Blocks  Id  System
   Device Boot      Start        End      Blocks  Id  System
 
  /dev/sda1  *          1      27988  224804864  83  Linux                        ### partition racine bootable
  /dev/sda1  *          1      27988  224804864  83  Linux                        ### partition racine  
  /dev/sda2          27988      121602  751956696    5  Extended                    ### extentions
  /dev/sda2          27988      121602  751956696    5  Extended                    ### extentions
  /dev/sda5          27988      28237    2004992  82  Linux swap / Solaris        ### comme son nom l'indique
  /dev/sda5          27988      28237    2004992  82  Linux swap / Solaris        ### comme son nom l'indique
  /dev/sda6          28237      55009  215040000  83  Linux                        ### partition /home
  /dev/sda6          28237      55009  215040000  83  Linux                        ### partition /home


===Déterminez la taille d'occupation===
:~# blkid
 
/dev/sda6: UUID="28d14850-47ec-40c3-bf96-ffebfa75dfe7" TYPE="ext3" SEC_TYPE="ext2"
/dev/sda1: UUID="d128857f-859e-490e-a9bf-3e7afb2741d8" TYPE="ext3"
/dev/sda5: UUID="795c9836-7500-4444-9332-fb6ff1289cad" TYPE="swap"
 
<br>
 
==='''Déterminer la taille d'occupation des partitions'''===
 
  :~$ df -h /dev/sda1<br>
  :~$ df -h /dev/sda1<br>
 
 
  Sys. de fichiers    Taille  Uti. Disp. Uti% Monté sur
  Sys. de fichiers    Taille  Uti. Disp. Uti% Monté sur
  /dev/sda1            212G  '''6,2G'''  195G  4% /
  /dev/sda1            212G  '''6,2G'''  195G  4% /


  :~$ df -h /dev/sda6 <br>
  :~$ df -h /dev/sda6 <br>
 
  Sys. de fichiers    Taille  Uti. Disp. Uti% Monté sur
  Sys. de fichiers    Taille  Uti. Disp. Uti% Monté sur
  /dev/sda6            202G  '''4,0G'''  188G  3% /home
  /dev/sda6            202G  '''4,0G'''  188G  3% /home


====Conseils====
<br>


{{annonce|texte=<span style="color:#0000FF;"> Je ne saurai que trop vous conseiller d'effectuer vos sauvegardes sur des disques internes autre que la cible source.<br> '''Et''' de doubler (voir plus!) celles-ci sur dd externes. <br>Vous êtes très certainement en mesure de comprendre le pourquoi!<br></span>|image=|fond=#00FF00|bord=#2F1B0C}}<br>
===='''Conseils'''====


===Disques/partitions qui réceptionneront les sauvegardes===
{{annonce|texte=<span style="color:#0000FF;"> Je ne saurai que trop vous conseiller d'effectuer vos sauvegardes sur des disques internes autre que la cible source.<br> '''Et''' de doubler (voir plus !) celles-ci sur disque dur externes. <br>Vous êtes très certainement en mesure de comprendre le pourquoi !<br></span>|image=|fond=#00FF00|bord=#2F1B0C}}<br>
Ben oui, faudrait peut être y penser avant ...<br>
Sa préparation requière la création de quatre partitions  '''minimum''', en ext3 (dans mon cas!)<br>


Inutile de [[#Déterminez la taille d'occupation|surdimensionner]] celles-ci!
<br>


====notes====
=='''Disques et partitions qui réceptionneront les sauvegardes'''==
J'utilise deux disques externes.
 
Ben oui,  peut être y penser avant ... <br>
 
La préparation du disque(s) "des sauvegardes" requière la création de quatre partitions  '''minimum''', en ext3 (dans mon cas !)<br>
 
Inutile de [[#Déterminer la taille d'occupation des partitions|surdimensionner]] celles-ci!
 
<br>
 
===='''Notes'''====
 
* J'utilise deux disques externes.
 
'''/dev/sdb'''  =  #'''sauve'''
 
'''/dev/sdc'''  =  #'''sauve2'''
 
* [[#Faisons le point sur les disques et partitions qui seront concernées|Explications :]]
 
** Sauvegarde de la / ... sur deux partitions (externe)  /dev/sdb1 et /dev/sdc1
 
** Sauvegarde de la /home ... sur deux partitions (externe) /dev/sdb2 et /dev/sdc2
 
* Et je recrée autant de  partitions '''(dans la mesure des possibilités)''' que je le souhaite.<br>
 
Ainsi dans une même journée, il est possible de lancer plusieurs sauvegardes (Racine=sauvegardeR, Home=sauvegardeH), sans pour autant écraser les précédentes.


/dev/sdc  '''='''  #sauve
/dev/sdf  '''='''  #sauve2


Explications :<br>
* Concrètement.
Sauvegarde de la / ... deux partitions ('''mini''') <br>
Sauvegarde de la /home ... idem


Concrètement :
  :~$ sauvegardeR
  :~$ sauvegardeR
 
  1) sauve
  1) sauve
  2) sauve2
  2) sauve2
  3) quitter
  3) quitter
  Entrez le N° de la sauvegarde choisie :  
  Entrez le N° de la sauvegarde choisie :


<br>


=='''Mise en place des Sauvegardes'''==
=='''Mise en place des Sauvegardes'''==
Nous y voici ... Pour ce faire il vous faudra modifier la section du script intitulé "[[#Avant d'aller plus loin ...|Variables]]" <span style="color:#FF0000;"> et l'adapter à votre situation, bien évidemment!</span>
 
 
Nous y voici ... Pour ce faire il vous faudra modifier la section du script intitulé "[[#Avant d'aller plus loin|Variables]]" <span style="color:#FF0000;"> et l'adapter à votre situation, bien évidemment!</span>


Dans mon cas, les scripts sont enregistrés comme suit.
Dans mon cas, les scripts sont enregistrés comme suit.
Ligne 92 : Ligne 373 :
Racine :
Racine :


  /home/mon_login/.bin/sauvegardeR
  /home/<user>/bin/sauvegardeR


/home :


  /home/mon_login/.bin/sauvegardeH
  /home/<user>/bin/sauvegardeH
 
 
==='''Section du script à modifié pour  / '''===
 
<br>


===Section du script à modifié pour la / ===
  #----------------- Variables -------------------
  #----------------- Variables -------------------
  # CETTE PARTIE DOIT RETENIR TOUTE VOTRE ATTENTION, C'EST LÀ QUE VOUS PERSONNALISEREZ CE SCRIPT
  # CETTE PARTIE DOIT RETENIR TOUTE VOTRE ATTENTION, C'EST LÀ QUE VOUS PERSONNALISEREZ CE SCRIPT
  #+ POUR CE FAIRE, JE VOUS CONSEILLE DE VOUS RÉFÉRER AU TUTO ET AU SCRIPT INDIQUÉS DANS LE "PRE-REQUIS" DU "BEGIN INIT INFO"
  #+ POUR CE FAIRE, JE VOUS CONSEILLE DE VOUS RÉFÉRER AU TUTO ET AU SCRIPT INDIQUÉS DANS LE "PRE-REQUIS" DU "BEGIN INIT INFO"
 
  mount_rep="/mnt/"
  mount_rep="/mnt/"
  # la première donnée, vide, figure le [0], de façon à commencer par [1]
  # la première donnée, vide, figure le [0], de façon à commencer par [1]
  ddext=('' '/dev/sdc1' '/dev/sdf1')
  ddext=('' '/dev/sdb1' '/dev/sdc1')
  systeme_fich=('' 'ext3' 'ext3')
  systeme_fich=('' 'ext3' 'ext3')
  controle=('' '/home/.controleR')
  controle=('' '/home/.controleR')
Ligne 113 : Ligne 397 :
  #----------------- Départ du script ----------------------------
  #----------------- Départ du script ----------------------------


{{annonce|texte=<span style="color:#EE1010;"> Pourquoi ce '''slash ?''' <br>Sans lui, rsync va copier '''le''' répertoire mnt. <br> C'est à dire : Ce sera '''le''' contenant et non '''le''' contenu! <br>Ceci dit, vous auriez tôt fait de vous en apercevoir.</span>|image=|fond=#00FF00|bord=#2F1B0C}}<br>
<br>
 
 
{{annonce|texte=<span style="color:#EE1010;"> Pourquoi ce '''slash ?''' <br>Sans lui, rsync va copier '''le''' répertoire /home. <br> C'est à dire : Ce sera '''le''' contenant et non '''le''' contenu! <br></span>|image=|fond=#00FF00|bord=#2F1B0C}}<br>
 
<br>
 
==='''Section du script à modifié pour /home''' ===
 
<br>
 


===Section du script à modifié pour la /home ===
  #----------------- Variables -------------------
  #----------------- Variables -------------------
  # CETTE PARTIE DOIT RETENIR TOUTE VOTRE ATTENTION, C'EST LÀ QUE VOUS PERSONNALISEREZ CE SCRIPT
  # CETTE PARTIE DOIT RETENIR TOUTE VOTRE ATTENTION, C'EST LÀ QUE VOUS PERSONNALISEREZ CE SCRIPT
Ligne 121 : Ligne 414 :
  mount_rep="/mnt/"
  mount_rep="/mnt/"
  # la première donnée, vide, figure le [0], de façon à commencer par [1]
  # la première donnée, vide, figure le [0], de façon à commencer par [1]
  ddext=('' '/dev/sdg6' '/dev/sdc5')
  ddext=('' '/dev/sdb2' '/dev/sdc2')
  systeme_fich=('' 'ext3' 'ext3')
  systeme_fich=('' 'ext3' 'ext3')
  controle=('' '/home/.controleH')
  controle=('' '/home/.controleH')
  exclure=('' '/root/exclureH')
  exclure=('' '/home/<user>/.exclureH')
  sauve=('' '/mnt<span style="color:#FF0000;">'''/'''</span>')
  sauve=('' '/mnt<span style="color:#FF0000;">'''/'''</span>')
  dossier_a_sauver=('' '/home/')
  dossier_a_sauver=('' '/home/')
  #----------------- Départ du script ----------------------------
  #----------------- Départ du script ----------------------------


====Rappel====


* [[Script de double sauvegarde alternée]]<br>
<br>


===='''Vous aurez noté'''====


{{annonce|texte=<span style="color:#FF0000;">AIDE À LA PERSONNALISATION DE CE SCRIPT<br>
/home/.controleR


/root/exclureR


'''CETTE PARTIE DOIT RETENIR TOUTE VOTRE ATTENTION, C'EST LÀ QUE VOUS PERSONNALISEREZ CE SCRIPT'''<br>
/home/.controleH
'''POUR CE FAIRE, JE VOUS CONSEILLE DE VOUS RÉFÉRER AU TUTO ET AU SCRIPT INDIQUÉS DANS LE "PRE-REQUIS" DU "BEGIN INIT INFO" '''<br>


/home/<user>/.exclureH


En principe, vous ne devriez avoir à intervenir que sur la seule partie ..........Variables ......... <br>'''Vous ne devez modifier que la partie droite, c'est à dire après le signe '=' en dehors des parenthèses, des guillemets et des apostrophes.'''<br>''' Attention aussi de ne pas modifier les espaces!'''<br></span>|image=|fond=#F7FF3C|bord=#2F1B0C}}<br>
=='''Le fichier /root/exclureR'''==


===Notes===
* Voir ...
 
  :~# cd /
  :/# ls -la
 
 
:~# cat /root/exclureR
/home              # est une tout autre sauvegarde distinct
/dev
/proc
/sys
/mnt
/lost+found
/media
/opt              # si vous compilez
:~#
<br>


/home/.controleR
/root/exclureR


/home/.controleH
==='''/home/<user>/.exclureH'''===
/root/exclureH


===/root/exclureR===
:~# cat /home/<user>/.exclureH
   
   
:~# cat /root/exclureR
  /.ure
  /home                                                                                                                                                                       
/bin
  /dev                                                                                                                                                                        
  /boot
  /proc                                                                                                                                                                       
  /dev
  /sys                                                                                                                                                                       
  /etc
  /mnt                                                                                                                                                                       
/lib
  /lost+found                                                                                                                                                                
  /lib32
  /media  
  /lib64
  :~#                                
  /lost+found
===/root/exclureH===
  /media
/mnt
/opt
/proc
/root
/sbin
/selinux
/srv
/sys
/tmp
/usr
/var
/initrd.img
/vmlinuz
  :~#
 
<br>


  :~# cat /root/exclureH
* Notes : Il vous sera certainement utile de pouvoir exclure des répertoires/fichiers spécifiques, je pense à des répertoires de votre création tel que téléchargements, Vidéo, Jeux, etc ... et/ou des fichiers.txt par exemples.
  /.ure                                                                                                                                                                      
 
  /bin                                                                                                                                                                        
La solution me fût donné par nykoos dans ce [https://www.debian-fr.org/recreer-un-os-depuis-une-sauvegarde-home-separee-t35283.html#p376085 post].
 
* Il vous suffira de les y inclure.
**Exemple :
 
~# cat /home/<user>/.exclureH
téléchargements
Vidéo
Jeux
mon_beau_fichier.txt
  /.ure
  /bin
  /boot
  /boot
  /dev
  /dev
Ligne 188 : Ligne 525 :
  /initrd.img
  /initrd.img
  /vmlinuz
  /vmlinuz
  :~#  
  :~#


=='''Lancement des sauvegardes en user, quel que soit l'ordre'''==
=='''Lancement des sauvegardes en user, quel que soit l'ordre'''==
Cela tombe plutôt bien, je n'en ai pas effectué depuis 6 jours ... yapuka!


===Sauvegarde de la racine===
Cela tombe plutôt bien, je n'en ai pas effectué depuis 6 jours ... yapuka !
 
<br>
 
==='''Sauvegarde de la racine'''===


  :~$ sauvegardeR
  :~$ sauvegardeR
 
  1) sauve
  1) sauve
  2) sauve2
  2) sauve2
  3) quitter
  3) quitter
  Entrez le N° de la sauvegarde choisie : 1
  Entrez le N° de la sauvegarde choisie : 1
  [sudo] password for loreleil:  
  [sudo] password for loreleil:
  CONTENU de la CORBEILLE
  CONTENU de la CORBEILLE
   
   
Ligne 222 : Ligne 562 :
  bin/bash
  bin/bash
   
   
 
  (...)
  (...)
   
   
Ligne 237 : Ligne 577 :
   
   
  Sauvegarde de / : OK
  Sauvegarde de / : OK
  :~$  
  :~$
 


* Effectué en 9' 49" chrono en main.


Effectué en 9' 49" chrono en main.
<br>


===Sauvegarde de la /home===
==='''Sauvegarde de la /home'''===


  :~$ sauvegardeH
  :~$ sauvegardeH
Ligne 272 : Ligne 614 :
   
   
  loreleil/mediawiki_24012012/Tuto_par_mes_soins/Sauvegarder_sa_Debian_Racine_et_Home_séparées./
  loreleil/mediawiki_24012012/Tuto_par_mes_soins/Sauvegarder_sa_Debian_Racine_et_Home_séparées./
  loreleil/mediawiki_24012012/Tuto_par_mes_soins/Sauvegarder_sa_Debian_Racine_et_Home_séparées./Tuto_Sauvegarder_sa_Debian_racine_et_ home_séparées.txt
  loreleil/mediawiki_24012012/Tuto_par_mes_soins/Sauvegarder_sa_Debian_Racine_et_Home_séparées./Tuto_Sauvegarder_sa_Debian_racine_et_   home_séparées.txt
  loreleil/mediawiki_24012012/l'installation_de_mediawiki_24012012/
  loreleil/mediawiki_24012012/l'installation_de_mediawiki_24012012/
  loreleil/mediawiki_24012012/l'installation_de_mediawiki_24012012/installer.txt
  loreleil/mediawiki_24012012/l'installation_de_mediawiki_24012012/installer.txt
Ligne 281 : Ligne 623 :
   
   
  Sauvegarde de /home/ : OK
  Sauvegarde de /home/ : OK
  :~$  
  :~$


Effectué en 4' 09" chrono.
* Effectué en 4' 09" chrono.
<br>


====Notes====
==='''Temps d'exécution'''===


Les temps seront variables en fonction de [[#Déterminez la taille d'occupation|l'espace occupé.]]<br>
Les temps seront variables en fonction de [[#Déterminer la taille d'occupation des partitions|l'espace occupé.]]<br>


ps : N'oubliez pas de sortir proprement.
ps : N'oubliez pas de sortir proprement.


  Sauvegarde de /home/ : OK
  Sauvegarde de /home/ : OK
  loreleil@machine1:~$  
  loreleil@machine1:~$
 
  :~$ exit
  :~$ exit
<br>


=='''Au final'''==
=='''Au final '''==
Vous pouvez à présent dormir sur vos deux oreilles ...  ;)  
 
* ''' Dans tous les cas, rsync ne doit déclarer aucune erreur en console après une  sauvegarde lancée et terminée, quel qu'elle soit :'''
** sauvegardeR
** sauvegardeH
<br>
 
Vous pouvez à présent dormir sur vos deux oreilles ...  ;)
 
<br>


=='''Post-scriptum'''==
=='''Post-scriptum'''==


Soyez indulgent, c'est ma toute première mise en page sur le wiki ... ;) Merci! <br>
 
Moment privilégié, moment partagé ... '''. ^¿^ .'''
 
Je vous en serre cinq  ... ;) Au plaisir ... '''. ^¿^ .'''
 
Merci. Amicalement, loreleil.
<br>


=='''Discussions'''==
=='''Discussions'''==


* {{fr}} [https://www.debian-fr.org/recreer-un-os-depuis-une-sauvegarde-home-separee-t35283.html#p356953 Restaurer un OS depuis une sauvegarde: /home séparée]
* {{fr}} [https://www.debian-fr.org/recreer-un-os-depuis-une-sauvegarde-home-separee-t35283.html#p356953 Restaurer son OS depuis une sauvegarde: / & /home séparées.]<br>
* {{fr}} [https://www.debian-fr.org/comment-rendre-une-sauvegarde-bootable-t35064.html Comment rendre une sauvegarde bootable ... ?]
* {{fr}} [https://www.debian-fr.org/comment-rendre-une-sauvegarde-bootable-t35064.html Comment rendre une sauvegarde bootable ... ?]
* {{fr}} [http://www.debian-fr.org/sauvegarde-clonage-d-une-sid-t25179.html Sauvegarde & Clonage d'un système]
* {{fr}} [http://www.debian-fr.org/sauvegarde-clonage-d-une-sid-t25179.html Sauvegarde & Clonage d'un système]


<br>
==''' La suite'''==
[http://www.isalo.org/wiki.debian-fr/index.php?title=Restauration_ou_Reconstruction_de_sa_Debian_-_Racine_et_Home_s%C3%A9par%C3%A9s  '''Restauration ou Reconstruction de sa Debian - Racine et Home séparés''']
<br>


[[Catégorie:Sauvegardes]]
Loreleil 3 février 2012 à 12:58 (CET)
[[Catégorie:Sauvegarder sa Debian : / et /home séparées]]<br>


Loreleil 6 février 2012 à 09:00 (CET)


[[Utilisateur:Loreleil|Loreleil]] 28 janvier 2012 à 17:01 (CET)
[[Catégorie:Sauvegardes]]
[[Catégorie:Sécurité]]

Dernière version du 20 août 2014 à 04:49

  • Moment partagé, Moment privilégié, ... . ^¿^ .


Avant propos

À mes tous débuts sous Debian, j'ai dû procéder à de multiples ré-installations.
Ce qui implique évidemment de refaire les install des paquets dont j'avais besoin, ainsi que leurs configurations.
Pertes de temps ? Oui et non, j'en ai tiré beaucoup de leçons.
Cependant, il était grand temps de faire quelque chose ... !!!

AMHA, vous êtes ici en quête de cette même sérénité!

Avertissement

  • Ce tutoriel est spécifique à une installation standard, à savoir les partitions racine et home séparées.



Mise en garde !

Ce tuto ne consiste pas en l'installation ou la configuration d'un paquet, d'une application x. Etc ...

Mais bien de manipulation de disques et partitions!

Il vous faut en avoir réellement conscience! Cela n'est pas sans risque ... s'il est utilisé à mauvaise escient !!!

Ne prenez pas ces Avertissements, Recommandations, et Mise en garde à la légère. Le bon fonctionnement de votre système en dépend !!!

Règles d'or


1°) Maîtriser la console root en ayant bien conscience, que root est le maître à bord, la relation chaise/clavier !


Root a tous les pouvoirs !!!!


2°) Identifier clairement les disques et partitions sans qu'aucun doute ne subsiste !


3°) Maîtriser un outil de partitionnement !


4°) Les appellations des disques et partitions cités dans ce tuto sont propres à mon installation !


Veillez donc, à adapter celles-ci à votre situation !



Recommandations


Identifiez clairement les disques et partitions

:~# fdisk -l
:~# blkid


1°) Arrêter et déconnecter physiquement (cordon d'alimentation) la machine (mise Hors Tension).

2° Déconnecter physiquement les disques internes/externes qui ne sont pas concernés par les opérations qui vont suivre.

Cela limitera d'autant plus, les éventuels cafouillages sur les partitions. (L'erreur est humaine!)

3°) Identifier votre disque dur source, prendre des notes.

4°) Arrêter de nouveau votre Debian. Hors Tension!

5°) Connecter le disque interne/externe qui recevra vos sauvegardes. Relancer la machine. En console root identifier celui-ci.

6°) Mêmes opérations si vous désirez utiliser un deuxième disque pour les sauvegardes.

Prenez des notes !

Notes : Dans le cas de deux disques connectés pour les sauvegardes, vous devriez obtenir après le dernier démarrage :

/dev/sda    ### disque source
/dev/sdb    ### premier disque des sauvegardes (interne/externe)
/dev/sdc    ### deuxième disque des sauvegardes (interne/externe)

Sauf erreur de ma part.

Vous êtes à présent paré pour la suite ...




Pré-requis

  • Si ce n'est pas déjà fait.


# aptitude install sudo
# aptitude install rsync
  • Configuré par vos soins.



Remarques

Les sauvegardes seront lancées manuellement.
Libre à vous d'opter pour une tâche cron ou autre ...



Avant d'aller plus loin

Je vous invite à lire ce tutoriel Script de double sauvegarde alternée afin d'en comprendre l'usage et l'utilisation.
Suite à cela, vous ferez un copier/(coller) dans son intégralité, du script de ricardo.

Avec l'accord de ricardo, Je me permettrai très modestement d'en illustrer les lignes de commande qui vous seront nécessaires, ceci à l'intention des néophytes.


J'en profite au passage, pour remercier ricardo et tous les membres qui ont contribués à son élaboration.

Script sans lequel, ce tuto ne saurait être, et à partir duquel j'ai rédigé cette page.

À ...

@ ricardo ...

@ tous les membres ...

Je vous en serre cinq ... Amicalement, loreleil ... . ^¿^ .



Mise en place du script pour les néophytes


ps : Newbies, je n'aime pas ce terme anglophone, je lui préfère et ce de très loin, (restons Français) néophyte.


  • Deux types de sauvegardes en fonction de vos besoins.
    • Sauvegarde de la racine ( / )
    • Sauvegarde de la /home


Afin de rendre la tâche des sauvegardes plus aisée avec rsync, et de rendre celles-ci plus maniable à la fois dans son utilisation à volonté et sans aucune modération, quelles soient quotidienne, hebdomadaire, mensuelle, annuelle, ... c'est vous qui voyez !


Pour ce faire, vous devez créer ce qui suit


  • Un répertoire "/home/<user>/bin"


  • Deux scripts "sauvegarde". C'est qu'il vous faudra faire le coller du script Script de double sauvegarde alternée
    • /home/<user>/bin/sauvegardeR
    • /home/<user>/bin/sauvegardeH
  • Que vous rendrez exécutables.


  • Deux répertoires ".controle"
    • /home/<user>/.controleR
    • /home/<user>/.controleH


  • Deux fichiers "exclure"
    • /root/exclureR
    • /home/<user>/.exclureH


  • Placer maintenant votre répertoire "/home/<user>/bin" dans le PATH.
    Ainsi vous n'aurez plus à vous soucier d'où vous enverrez la commande de sauvegarde.
    Par la suite, vous pourrez (si vous le désirez) placer tous vos scripts personnel dans ce répertoire. (Si vous nommez votre bin personnel sous un autre nom (.bin) il ne sera pas dans votre path)


C'est parti mon kiki


  • Création du répertoire bin
:~$ pwd
/home/<user>
:~$  mkdir bin
  • Création des scripts "sauvegardes"
    • Coller le script dans ce fichier et l'enregistrer.
:~$ nano /home/<user>/bin/sauvegardeR
  • Coller le script dans ce fichier et l'enregistrer.
:~$ nano /home/<user>/bin/sauvegardeH
  • Rendons les, exécutables.
:~$ chmod +x /home/<user>/bin/sauvegardeR
:~$ chmod +x /home/<user>/bin/sauvegardeH
  • Création des répertoires "controle"
:~$ mkdir /home/.controleR
:~$ mkdir /home/.controleH
  • Passer en console root.
:~$ su -
Mot de passe :
:~#
  • Création des fichiers "exclure".
:~# touch /root/exclureR
:~# touch /home/<user>/.exclureH
  • Quitter la console root proprement.
:~# exit
logout
:~$
  • Placer le répertoire "/home/<user>/bin" dans le PATH.
echo 'export PATH=$PATH:/home/<user>/bin' >> /home/<user>/.bashrc


Vous modifierez/compléterez ces fichiers plus tard !
Pour l'heure, "faisons le point ..."


Faisons le point sur les disques et partitions qui seront concernées

Plus parlant qu'un discours ...


dd Source
/dev/sda
dd Sauvegardes
/dev/sdb
sauve
dd Sauvegardes
/dev/sdc
sauve2
Partitions
Racine " / " (*) /dev/sda1 /dev/sdb1 /dev/sdc1
extended /dev/sda2
Swap /dev/sda5
/home /dev/sda6 /dev/sdb2 /dev/sdc2



Disque source

# fdisk -l
  Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       27988   224804864   83  Linux                        ### partition racine 
/dev/sda2           27988      121602   751956696    5  Extended                     ### extentions
/dev/sda5           27988       28237     2004992   82  Linux swap / Solaris         ### comme son nom l'indique
/dev/sda6           28237       55009   215040000   83  Linux                        ### partition /home
:~# blkid
/dev/sda6: UUID="28d14850-47ec-40c3-bf96-ffebfa75dfe7" TYPE="ext3" SEC_TYPE="ext2"
/dev/sda1: UUID="d128857f-859e-490e-a9bf-3e7afb2741d8" TYPE="ext3"
/dev/sda5: UUID="795c9836-7500-4444-9332-fb6ff1289cad" TYPE="swap"


Déterminer la taille d'occupation des partitions

:~$ df -h /dev/sda1
Sys. de fichiers    Taille  Uti. Disp. Uti% Monté sur
/dev/sda1             212G  6,2G  195G   4% /
:~$ df -h /dev/sda6 
Sys. de fichiers    Taille  Uti. Disp. Uti% Monté sur
/dev/sda6             202G  4,0G  188G   3% /home


Conseils

Je ne saurai que trop vous conseiller d'effectuer vos sauvegardes sur des disques internes autre que la cible source.
Et de doubler (voir plus !) celles-ci sur disque dur externes.
Vous êtes très certainement en mesure de comprendre le pourquoi !



Disques et partitions qui réceptionneront les sauvegardes

Ben oui, peut être y penser avant ...

La préparation du disque(s) "des sauvegardes" requière la création de quatre partitions minimum, en ext3 (dans mon cas !)

Inutile de surdimensionner celles-ci!


Notes

  • J'utilise deux disques externes.
/dev/sdb   =   #sauve
/dev/sdc   =   #sauve2
    • Sauvegarde de la / ... sur deux partitions (externe) /dev/sdb1 et /dev/sdc1
    • Sauvegarde de la /home ... sur deux partitions (externe) /dev/sdb2 et /dev/sdc2
  • Et je recrée autant de partitions (dans la mesure des possibilités) que je le souhaite.

Ainsi dans une même journée, il est possible de lancer plusieurs sauvegardes (Racine=sauvegardeR, Home=sauvegardeH), sans pour autant écraser les précédentes.


  • Concrètement.
:~$ sauvegardeR
1) sauve
2) sauve2
3) quitter
Entrez le N° de la sauvegarde choisie :


Mise en place des Sauvegardes

Nous y voici ... Pour ce faire il vous faudra modifier la section du script intitulé "Variables" et l'adapter à votre situation, bien évidemment!

Dans mon cas, les scripts sont enregistrés comme suit.

Racine :

/home/<user>/bin/sauvegardeR


/home/<user>/bin/sauvegardeH


Section du script à modifié pour /


#----------------- Variables -------------------
# CETTE PARTIE DOIT RETENIR TOUTE VOTRE ATTENTION, C'EST LÀ QUE VOUS PERSONNALISEREZ CE SCRIPT
#+ POUR CE FAIRE, JE VOUS CONSEILLE DE VOUS RÉFÉRER AU TUTO ET AU SCRIPT INDIQUÉS DANS LE "PRE-REQUIS" DU "BEGIN INIT INFO"
mount_rep="/mnt/"
# la première donnée, vide, figure le [0], de façon à commencer par [1]
ddext=( '/dev/sdb1' '/dev/sdc1')
systeme_fich=( 'ext3' 'ext3')
controle=( '/home/.controleR')
exclure=( '/root/exclureR')
sauve=( '/mnt/')
dossier_a_sauver=( '/')
#----------------- Départ du script ----------------------------



Pourquoi ce slash ?
Sans lui, rsync va copier le répertoire /home.
C'est à dire : Ce sera le contenant et non le contenu!



Section du script à modifié pour /home



#----------------- Variables -------------------
# CETTE PARTIE DOIT RETENIR TOUTE VOTRE ATTENTION, C'EST LÀ QUE VOUS PERSONNALISEREZ CE SCRIPT
#+ POUR CE FAIRE, JE VOUS CONSEILLE DE VOUS RÉFÉRER AU TUTO ET AU SCRIPT INDIQUÉS DANS LE "PRE-REQUIS" DU "BEGIN INIT INFO"
mount_rep="/mnt/"
# la première donnée, vide, figure le [0], de façon à commencer par [1]
ddext=( '/dev/sdb2' '/dev/sdc2')
systeme_fich=( 'ext3' 'ext3')
controle=( '/home/.controleH')
exclure=( '/home/<user>/.exclureH')
sauve=( '/mnt/')
dossier_a_sauver=( '/home/')
#----------------- Départ du script ----------------------------



Vous aurez noté

/home/.controleR
/root/exclureR
/home/.controleH
/home/<user>/.exclureH

Le fichier /root/exclureR

  • Voir ...
 :~# cd /

 :/# ls -la


:~# cat /root/exclureR

/home              # est une tout autre sauvegarde distinct
/dev
/proc
/sys
/mnt
/lost+found
/media
/opt               # si vous compilez
:~#



/home/<user>/.exclureH

:~# cat /home/<user>/.exclureH

 /.ure
/bin
/boot
/dev
/etc
/lib
/lib32
/lib64
/lost+found
/media
/mnt
/opt
/proc
/root
/sbin
/selinux
/srv
/sys
/tmp
/usr
/var
/initrd.img
/vmlinuz
:~#


  • Notes : Il vous sera certainement utile de pouvoir exclure des répertoires/fichiers spécifiques, je pense à des répertoires de votre création tel que téléchargements, Vidéo, Jeux, etc ... et/ou des fichiers.txt par exemples.

La solution me fût donné par nykoos dans ce post.

  • Il vous suffira de les y inclure.
    • Exemple :
~# cat /home/<user>/.exclureH

téléchargements
Vidéo 
Jeux
mon_beau_fichier.txt 
/.ure
/bin
/boot
/dev
/etc
/lib
/lib32
/lib64
/lost+found
/media
/mnt
/opt
/proc
/root
/sbin
/selinux
/srv
/sys
/tmp
/usr
/var
/initrd.img
/vmlinuz
:~#

Lancement des sauvegardes en user, quel que soit l'ordre

Cela tombe plutôt bien, je n'en ai pas effectué depuis 6 jours ... yapuka !


Sauvegarde de la racine

:~$ sauvegardeR

1) sauve
2) sauve2
3) quitter
Entrez le N° de la sauvegarde choisie : 1
[sudo] password for loreleil:
CONTENU de la CORBEILLE

.               books_fichiers                             ecran_securite.php        HTMLSax3.php     mypasswd          stardict-Emile-Littre.xdxf-2.4.2
..              Copie_etc_mediawiki_LocalSettings.php.txt  ESSAISAUVEGARDE           info.txt         passwordlist.txt  usr
18112011_19h25  des_fichiers_configurations_original       GBrH0w7X9PLOR5JGSZaCcPoQ  jquery.js        RACINE
19112011_18h50  eaccelerator-0.9.6.1.tar.bz2               home                      mes_options.php  safehtml.php
on peut la vider  ? o/* : n
CORBEILLE CONSERVÉE PLEINE
prêt pour la sauvegarde ? o/* : o
sending incremental file list
./
dead.letter
initrd.img -> boot/initrd.img-2.6.32-5-amd64
lib64 -> /lib
vmlinuz -> boot/vmlinuz-2.6.32-5-amd64
.ure/
.ure/javasettings_Linux_X86_64.xml
bin/
bin/bash

 
(...)


var/tmp/kdecache-root/
var/www/
var/www/....
var/www/.....
var/www/mediawiki/
var/www/mediawiki/mediawiki -> /var/lib/mediawiki/

sent 5988427652 bytes  received 3561164 bytes  10286676.08 bytes/sec
total size is 5975142893  speedup is 1.00

Sauvegarde de / : OK
:~$


  • Effectué en 9' 49" chrono en main.


Sauvegarde de la /home

:~$ sauvegardeH

1) sauve
2) sauve2
3) quitter
Entrez le N° de la sauvegarde choisie : 1
CONTENU de la CORBEILLE

.               books_fichiers                             ecran_securite.php        HTMLSax3.php     mypasswd          stardict-Emile-Littre.xdxf-2.4.2
..              Copie_etc_mediawiki_LocalSettings.php.txt  ESSAISAUVEGARDE           info.txt         passwordlist.txt  usr
18112011_19h25  des_fichiers_configurations_original       GBrH0w7X9PLOR5JGSZaCcPoQ  jquery.js        RACINE
19112011_18h50  eaccelerator-0.9.6.1.tar.bz2               home                      mes_options.php  safehtml.php
on peut la vider  ? o/* : n
CORBEILLE CONSERVÉE PLEINE
prêt pour la sauvegarde ? o/* : o
sending incremental file list
./
.controleH/
.controleH/.controleH/
.controleH/.controleH/.controleH/
.controleH/.controleH/.controleH/loreleil/
.controleH/.controleH/.controleH/loreleil/.bash_history


(...)


loreleil/mediawiki_24012012/Tuto_par_mes_soins/Sauvegarder_sa_Debian_Racine_et_Home_séparées./
loreleil/mediawiki_24012012/Tuto_par_mes_soins/Sauvegarder_sa_Debian_Racine_et_Home_séparées./Tuto_Sauvegarder_sa_Debian_racine_et_   home_séparées.txt
loreleil/mediawiki_24012012/l'installation_de_mediawiki_24012012/
loreleil/mediawiki_24012012/l'installation_de_mediawiki_24012012/installer.txt
loreleil/mediawiki_24012012/l'installation_de_mediawiki_24012012/installer_mediawiki-extensions.txt

sent 3782571434 bytes  received 1281433 bytes  15539436.83 bytes/sec
total size is 3777643575  speedup is 1.00

Sauvegarde de /home/ : OK
:~$
  • Effectué en 4' 09" chrono.


Temps d'exécution

Les temps seront variables en fonction de l'espace occupé.

ps : N'oubliez pas de sortir proprement.

Sauvegarde de /home/ : OK
loreleil@machine1:~$
:~$ exit


Au final

  • Dans tous les cas, rsync ne doit déclarer aucune erreur en console après une sauvegarde lancée et terminée, quel qu'elle soit :
    • sauvegardeR
    • sauvegardeH


Vous pouvez à présent dormir sur vos deux oreilles ...  ;)


Post-scriptum

Moment privilégié, moment partagé ... . ^¿^ .

Je vous en serre cinq ...  ;) Au plaisir ... . ^¿^ .

Merci. Amicalement, loreleil.

Discussions


La suite

Restauration ou Reconstruction de sa Debian - Racine et Home séparés

Loreleil 3 février 2012 à 12:58 (CET)

Loreleil 6 février 2012 à 09:00 (CET)