Mode Rescue

Le mode rescue est pensé pour les serveurs linux. Il permet de prendre la main en ssh sur la machine et aussi de vérifier la hardware.

L'avantage est qu'il est inutile de contacter le support pour programmer une intervention, car avec le rescue vous pouvez faire votre test au moment ou cela vous convient le mieux et ou cela gêne le moins l'usage de votre serveur.

Software & Administration
  • lancer un fsck / e2fsck
  • consulter et analyser des logs
  • corriger des problèmes sur les softs
  • reconstruire / vérifier le RAID
  • sauvegarder des données
Hardware
  • memtest: pour contrôler la mémoire ( RAM )
  • cpuburn: pour vérifier votre processeur ( CPU )
  • fsck pour checker le système de fichiers
  • state pour checker le disque
  • explorer pour vos fichiers


Si un des tests échoue ou montre des erreurs, il suffit de vous rendre dans le manager, section Support et puis dans la partie : déclarer un incident.
Postez simplement le résultat de votre test, par exemple: serveur as planté pendant le cpu burn.
Nous allons alors immédiatement intervenir pour remplacer votre hardware.

Attention: il ne faut pas utiliser l'interface web et le ssh en même temps. Il ne faut pas lancer le check des disques sur l'interface web et mounter en ssh les partitions, cela peut entraîner la perte de vos données !!

Activer Mode Rescue


Rendez vous dans votre manager v3, section serveur dédié, puis services, catégorie Netboot et choisissez le 'mode rescue pro'.

Rebootez si possible votre machine en soft (en SSH : /sbin/reboot) et effectuez le reboot hard que si vous n'avez pas d'autre choix.
Vous aller alors recevoir un email qui contient le lien et le mot de pass qui va vous permettre d'accéder à votre serveur en mode 'rescue'.

Il peut également arriver que nos techniciens soient déjà intervenus sur votre serveur. N'ayant diagnostiqué aucun défaut hardware du serveur, ils lancent votre serveur en mode 'rescue' afin que vous procédiez aux vérifications/corrections nécessaires à sa remise en production.



Rescue en SSH

Se connecter


Connectez-vous sous ssh à votre machine comme d'habitude. La seule chose qui change est le mot de pass. Il faut utiliser le pass root temporaire qui arrive par email après le passage en rescue.
angie@amazone:~$ ssh root@213.186.xx.yy
The authenticity of host '213.186.xx.yy (213.186.xx.yy)' can't be established.
RSA key fingerprint is 02:11:f2:db:ad:42:86:de:f3:10:9a:fa:41:2d:09:77.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '213.186.xx.yy' (RSA) to the list of known hosts.
Password:
rescue:~#

Maintenant vous êtes connecté mais vos fichiers ne sont pas accessibles. Il faut 'monter' le système de fichier.

Montage disque


Habituellement, /dev/xda1 est votre partition racine (/) et /dev/xda2 correspond à /home.
Les devices seront du types:
  • /dev/sd pour SCSI, SATA, Raid Hard
  • /dev/hd pour les disques IDE
  • /dev/md pour les RAID Soft
  • /dev/rd/c0d0p pour les raid Mylex
  • /dev/ad4s1 pour les systèmes Freebsd

Vous pouvez également utiliser les dénominations devfs.
Si vous ne savez pas quel disque vous avez, ni quel est sa table de partition servez vous des commandes fdisk ou sfdisk. Voici un exemple avec la commande et ce qu'elle retourne:

rescue:~# fdisk -l

Disk /dev/hda 40.0 GB, 40020664320 bytes
255 heads, 63 sectors/track, 4865 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System
/dev/hda1 * 1 1305 10482381 83 Linux
/dev/hda2 1306 4800 28073587+ 83 Linux
/dev/hda3 4801 4865 522112+ 82 Linux swap / Solaris

Disk /dev/sda 8254 MB, 8254390272 bytes
16 heads, 32 sectors/track, 31488 cylinders
Units = cylinders of 512 * 512 = 262144 bytes

Device Boot Start End Blocks Id System
/dev/sda1 1 31488 8060912 c W95 FAT32 (LBA)

Ici le serveur est équipé de deux devices.
On voit le /dev/hda avec le * qui montre que c'est le disque bootable. En deuxième on peut voir la clef usb.
Pour mounter la / du serveur il suffit de faire:
rescue:~# mount /dev/hda1 /mnt/

Normalement la /home est sur /dev/hda2. On la mounte après la / avec la commande mount /dev/hda2 /mnt/home .
Le /home n'est pas forcement sur /dev/hda2 et aussi il se peut que vos données sont dans /var, pour plesk par exemple. Pour être sure de la configuration vous pouvez mounter la / est faire ensuite cat /mnt/etc/fstab.
Ce fichier contient les partitions du serveur quand il boot sur son disque dur. Voici un exemple:

rescue:# cat /mnt/etc/fstab
/dev/hda1 / ext3 errors=remount-ro 0 1
/dev/hda2 /var ext3 defaults,usrquota,grpquota 1 2
/dev/hda3 swap swap defaults 0 0
/dev/devpts /dev/pts devpts gid=5,mode=620 0 0
/dev/shm /dev/shm tmpfs defaults 0 0
/dev/proc /proc proc defaults 0 0
/dev/sys /sys sysfs defaults 0 0

Le /dev/hda2 est donc dans ce cas /var et non /home.
Il faut donc mounter avec: mount /dev/hda2 /mnt/var .

RPS



Pour les RPS qui sont en nfs il suffit de tapper en rescue : mount -a.
Le nfs va se monter tout seul.


Chroot


On peut maintenant éditer les fichiers en utilisant le chemin /mnt/var/.... par exemple ou encore /mnt/etc/lilo.conf , mais pour pouvoir faire certains choses il faut être en root sur le système qui se trouve installer sur le disque et qui ne sont pas faisable avec le root du rescue.
Pour ces opérations il faut uitilser la commande chroot:

rescue:~# chroot /mnt/
rescue:/#

On voit si dessus que après avoir chrooter le retour de commande me place dans la / du serveur.
Maintenant je peut excuter des commandes sur mon système.

Exemples


Quelques exemples de possibilités en rescue sont en cours d'édition.
Nous allons donner une petite liste des manipulations qu'on nous demande le plus sous peu.


Sortir du Rescue


Après les modifications, nous devons revenir dans le manager afin de restaurer dans Boot notre méthode de boot habituelle.
Une fois le bon kernel selectionné et validé nous effectuons un reboot soft de la machine.

rescue:~# /sbin/reboot
Broadcast message from root (pts/0) (Tue Apr 12 15:56:17 2005):
The system is going down for reboot NOW!
Kas see vastus oli kasulik? 0 Kasutajad peavad seda kasulikuks (0 Hääled)