« Sauvegarder sa Debian en vue d'une Réinstallation ou Reconstruction - Racine et Home séparés » : différence entre les versions
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 : | ||
* Moment partagé, Moment privilégié, ... '''. ^¿^ .''' | |||
<br> | |||
== ''' | == '''Avant propos''' == | ||
À mes | |||
À 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> | |||
==''' | == '''Règles d'or'''== | ||
<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 | |||
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> | |||
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> | |||
<br> | |||
===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 | /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 | ||
=== | :~# 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 | ||
<br> | |||
===='''Conseils'''==== | |||
== | {{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> | ||
<br> | |||
==== | =='''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. | |||
* 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 | |||
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/ | /home/<user>/bin/sauvegardeR | ||
/home/ | /home/<user>/bin/sauvegardeH | ||
==='''Section du script à modifié pour / '''=== | |||
<br> | |||
#----------------- 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/ | 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 | <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> | |||
#----------------- 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/ | ddext=('' '/dev/sdb2' '/dev/sdc2') | ||
systeme_fich=('' 'ext3' 'ext3') | systeme_fich=('' 'ext3' 'ext3') | ||
controle=('' '/home/.controleH') | controle=('' '/home/.controleH') | ||
exclure=('' '/ | 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 ---------------------------- | ||
<br> | |||
===='''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 | |||
:~# | |||
<br> | |||
==='''/home/<user>/.exclureH'''=== | |||
:~# cat /home/<user>/.exclureH | |||
/.ure | |||
/ | /bin | ||
/dev | /boot | ||
/ | /dev | ||
/ | /etc | ||
/ | /lib | ||
/lost+found | /lib32 | ||
/media | /lib64 | ||
:~# | /lost+found | ||
/media | |||
/mnt | |||
/opt | |||
/proc | |||
/root | |||
/sbin | |||
/selinux | |||
/srv | |||
/sys | |||
/tmp | |||
/usr | |||
/var | |||
/initrd.img | |||
/vmlinuz | |||
:~# | |||
<br> | |||
:~# cat / | * 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'''== | ||
===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. | |||
<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_ | 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> | |||
=== | ==='''Temps d'exécution'''=== | ||
Les temps seront variables en fonction de [[# | 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'''== | ||
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 | * {{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> | |||
Loreleil 3 février 2012 à 12:58 (CET) | |||
Loreleil 6 février 2012 à 09:00 (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.
- Son origine, ce fil dans Trucs et Astuces Restaurer un OS depuis une sauvegarde: /home séparée .
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
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 !
Recommandations
Identifiez clairement les disques et partitions
:~# fdisk -l
:~# blkid
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
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.
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 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.
- 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
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
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 ----------------------------
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
- (fr) Restaurer son OS depuis une sauvegarde: / & /home séparées.
- (fr) Comment rendre une sauvegarde bootable ... ?
- (fr) Sauvegarde & Clonage d'un système
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)