We are in the process of migrating this forum. A new space will be available soon. We are sorry for the inconvenience.

[TUTO] Mode rescue


BBR
09/01/2014, 18h41
Le rescue c'est le mode de survie qui permet de rattraper une grosse erreur genre firewall parano qui nous a fermé la porte au nez, etc.
Il y a un guide officiel http://guides.ovh.com/ModeRescue mais il manque une petite ligne qui fait poser beaucoup de questions pour son utilisation en SSH
Donc déjà on va dans le manager, puis Netboot et là on choisit Rescue-pro, puis on reboote le serveur.
Les accès vont être envoyés sur votre email et ne seront valables que pour ce passage là en rescue.
Ensuite on se connecte avec Putty (ou le terminal selon votre type d'ordinateur perso).
On commence par
Code:
fdisk -l
ce qui va donner quelque chose de ce style (sur cet exemple 2 disques en raid 1)
Code:
root@rescue:~# fdisk -l

Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x000cff0b

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        4096    40962047    20478976   fd  Linux raid autodetect
/dev/sda2        40962048  1952471039   955754496   fd  Linux raid autodetect
/dev/sda3      1952471040  1953517567      523264   82  Linux swap / Solaris

Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x0002b644

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        4096    40962047    20478976   fd  Linux raid autodetect
/dev/sdb2        40962048  1952471039   955754496   fd  Linux raid autodetect
/dev/sdb3      1952471040  1953517567      523264   82  Linux swap / Solaris

Disk /dev/md2: 978.7 GB, 978692538368 bytes
2 heads, 4 sectors/track, 238938608 cylinders, total 1911508864 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

Disk /dev/md2 doesn't contain a valid partition table

Disk /dev/md1: 21.0 GB, 20970405888 bytes
2 heads, 4 sectors/track, 5119728 cylinders, total 40957824 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

Disk /dev/md1 doesn't contain a valid partition table
on constate que md1 est le système, la partition /
et md2 la partition /home, celle où sont vos données, sites, etc.
Ensuite pour y accéder il va falloir monter ces 2 partitions
on monte la partition /
Code:
mount /dev/md1 /mnt/
et enfin on monte la partion home
Code:
mount /dev/md2 /mnt/home
à partir de là on peut faire toutes les modifs nécessaires
On vérifie que les partitions sont bien montées, si le résultat est vide c'est que ce n'est pas le cast (résultat sur Debian), à faire avant un éventuel chroot
Code:
ls -alh /mnt
total 556K
drwxr-xr-x  22 root root 4,0K janv. 29 09:52 .
drwxr-xr-x  22 root root 4,0K janv. 29 09:52 ..
drwxr-xr-x   2 root root 4,0K oct.  13 17:05 bin
drwxr-xr-x   3 root root 4,0K janv. 12 01:26 boot
drwxr-xr-x  12 root root  14K janv. 10 09:06 dev
drwxr-xr-x 113 root root  12K janv. 24 22:17 etc
drwxr-xr-x   3 root root 4,0K nov.  13 23:51 home
drwxr-xr-x  16 root root  12K déc.  23 13:27 lib
drwxr-x---   2 root root 4,0K mars   8  2013 .LOCK
drwx------   2 root root  16K déc.   4  2010 lost+found
drwxr-xr-x   3 root root 4,0K févr.  9  2009 media
drwxr-xr-x   4 root root 4,0K juil. 11  2012 mnt
drwxr-xr-x   7 root root 4,0K déc.  13 19:03 opt
dr-xr-xr-x 177 root root    0 janv. 10 09:06 proc
drwxr-xr-x  26 root root 432K janv. 28 20:33 root
drwxr-xr-x  24 root root  720 janv. 30 03:16 run
drwxr-xr-x   2 root root 4,0K janv. 10 13:50 sbin
drwxr-xr-x   2 root root 4,0K sept. 16  2008 selinux
dr-xr-xr-x  11 root root    0 janv. 10 09:06 sys
drwxrwxrwt   3 root root  28K janv. 30 16:10 tmp
drwxr-xr-x  10 root root 4,0K mai   28  2013 usr
drwxr-xr-x  13 root root 4,0K janv. 29 09:51 var
on fait un chroot au cas où l'on ait besoin de modifier des fichiers systèmes
Code:
chroot /mnt/
Par exemple vous perdez votre mot de passe root
Code:
passwd root
saisir le nouveau mot de passe 2 fois de suite
ouf sauvés !
Ensuite on retourne sur le manager, on met le Netboot sur HD puis on clique sur Redémarrer

Ce mode rescue sert souvent à aller vérifier l'état des disques, voir pour les commandes à faire afin que le support puisse ouvrir un ticket si besoin http://forum.kimsufi.com/showthread....r-sur-incident
mais de grâce, mettez les résultats entre balises CODE (le # dans les icônes) afin de ne pas avoir un post de 25 km de long.

si vous n'avez qu'un seul disque mettez sda au lieu de md
on monte la partition /
Code:
mount /dev/sda1 /mnt/
et enfin on monte la partion home
Code:
mount /dev/sda2 /mnt/home
ah oui, et pour ressortir du rescue me direz-vous ?
Très simple, manager, netboot (sur HD ou netboot) puis reboot du serveur, si vous ne faites pas cela, vous rebooterez en rescue, oui je sais c'est bête mais des fois les choses les plus évidentes peuvent nous échapper

Votre serveur est en mode rescue et vous voulez récupérer vos données :
montez les partitions
puis vous allez sur votre client ftp favori (Filezilla par exemple) hote : ip du serveur, utilisateur : root, mot de passe rescue root, mettez en port 22, ensuite vous aurez toute l'arborescence de votre serveur et vous pourrez donc récupérer vos fichiers
Vous serez dans le répertoire root, remontez à la racine pour ensuite aller récupérer vos données dans /home.
En général les bases de données sont dans /var/lib/mysql (distributions standards) ou dans /home/mysql (release 2 et 3 ovh), en rescue il n'est pas possible de faire un dump, il faut copier les fichiers.
Autre possibilité en SSH vers un autre serveur
Code:
scp -r /chemin/des/dossiers/a/transferer root@ip.du.nouveau.serveur:/emplacement/souhaite
Pour votre survie :
ne jamais mettre sur le manager un email géré sur le serveur car en cas de pépin vous ne recevrez plus les emails contenant les identifiants rescue ou de réinstallation, choisir l'email de votre fournisseur d'accès ou un email sûr qui fonctionnera à tout moment
.