Je vous fais part de mes avancées concernant la procédure à suivre pour remplacer la clé USB livrée d'origine dans les routeurs qui nous occupent. Logiquement cette procédure est valable pour les:
- EgdeRouter Lite (3ports)
- EdgeRouteur 5 PoE (5 ports)
- EdgeRouteur 8 +/- PRO (8 ports)
Je n'ai jamais touché de modèle EdgeRouter X, donc je ne me prononce pas.
Première chose, se procurer une clé usb de qualité, pas trop longue, dont la largeur pourrait entrer intgralement dans un port USB. Rien ne doit dépasser en largeur, car il y a a peine 1mm de marge entre la clé insérée suspendue le long de la carte mère.
Pour cette manipulation, j'utilise une Kingston-DTSE9H-16GB
http://www.amazon.fr/Kingston-DTSE9H-16GB-Cl%C3%A9-USB/dp/B006YBARCA/ref=sr_1_1?ie=UTF8&qid=1449483388&sr=8-1&keywords=usb+16go+kingston 39mm de long, pour 12mm pile de large (comme le port USB même). Elle pointe à 5-6mm de la vis du coin de la carte mère.
Soyez prudent avec la clé d'origine, car des manipulations anodines peuvent altérer la partition FAT 16 sur laquelle se trouve le noyau linux qui démarre le routeur. Je n'ai pas vérifié via la console, mais j'ai passé quelques heures de sueur à me demander pourquoi ça ne redémarrait pas. Tout me porte à croire que j'ai involontairement abimé cette partition. Suivez donc scrupuleusement la procédure pour ne pas tout casser.
Avant de commencer, voici une petite capture de la structure de la clé d'origine, de 4Go, partitionnée à n'utiliser que 2Go. Je pense qu'ils ont du commencer la production avec des clés à 2Go, et poursuivre ensuite avec des 4Go, sans modifier leurs images de façon à simplifier le support des premiers modèles.
On voit bien les 2 partitions, et l'espace libre au bout de la clé.
Depuis une fenêtre ligne de commande en root sous linux , on tape la commande:
# dmesg
Ici, une Sabayon, version compilée mixte de Gentoo, mais Ubuntu/Debian/Mint/Arch ou Redhat/Centos/Suse iront bien. Inutile de l'installer, une édition live sur DVD ou clé USB feront l'affaire.
Etape 1.
Sauvegarder sa configuration. Par sauvegarde du fichier config.boot, ou via l'interface. Cette sauvegarde sera importante mais n'assurera pas un rétablissement complet dy système. En effet, l'utilisation de la commande vlan (car mes essais à utiliser les commandes ad hoc pointées pas Zoc directement dans le fichier de config du routeur) impose de transférer les scripts egress et surtout script.sh pour modifier la configuration du serveur PPPoE indispensable à la configuration "avec LiveBox" que j'utilise.
Etape 2.
Il est temps d'éteindre le routeur via l'interface web du routeur AVANT d'EN RETIRER LA CLE. Non non non, il ne faut pas retirer la clé routeur allumé. Mauvaise idée de l'arrêter en retirant l'alimentation à l'arrache (même si logiquement le système est résiliant).
Au passage, notez que vous pouvez en profiter pour mette à jour le système en BIOS 1.8 béta, par sécurité re-flasher la version 1.7. Si du reste vous avez trop trafiqué votre clé USB au point qu'elle refuse de rebooter (ça m'est arrivé), flasher le BIOS depuis l'archive d'origine est une bonne façon de s'en sortir. A la question "Mais si la clé refuse de booter, comment la flasher
" il suffit d'effectuer un reboot hard (10s du bouton reset appuyé au branchement de l'alimentation).
Etape 3: Insertion des clés, et repérage des device linux
Une fois le routeur éteind, on en extrait la clé d'origine.
On insère la clé d'origine dans le système linux, on voit par la commande
dmesg que le device /dev/sdc lui est attribué (enfin dans mon cas, vous devez vérifier chez vous après chaque insertion).
L'insertion de la nouvelle clé de plus grande capacité se fait juste après, et on relance la commande dmesg pour s'assurer de la bonne taille et du bon nom de device.
Là, 2 options. Soit on recopie la vieille clé sur la nouvelle comme ça du premier coup à l'arrache, soit on en fait une sauvegarde prélable sur fichier, ce qui me semble plus raisonnable.
Etape 4: la commande "dd"
La commande dd est représentative de la magie d'un système linux. Pas d'interface, la commande est absconse. Cette commande sert à recopier quelque chose sur autre chose. Un fichier vers un périphérique de type fichier, et inversement. Pour recopier l'intégralité des bits d'une clé USB sur un autre ou sur un fichier, c'est idéal.
Les arguments sont simples:
if= pour l'entrée
of= pour la sortie
bs= taille de donnée à transférer à chaque cycle.
Donc, pour sauvegarder la clé d'origine (/dev/sdc chez moi) vers un fichier:
# dd if=/dev/sdc of=./sauvegarde.img bs=1M
Attention, la commande n'affiche rien, et dure 25 bonnes minutes.
Pour écrire la clé usb d'origine (/dev/sdc) sur la nouvelle (/dev/sdd):
# dd if=/dev/sdc of=/dev/sdd bs=1M
Pour écrire la clé USB (la nouvelle, /dev/sdd chez moi, vérifiez chez vous avec la commande dmesg) depuis le fichier de sauvegarde, en considérant qu'on lance la commande depuis le dossier où se trouve la sauvegarde:
dd if=/chemin/vers/sauvegarde.img of=/dev/sdd bs=1M
Attention, c'est long. Laissez tourner, partez faire les courses, etc.
Pour info, la sauvegarde finale de la clé en 16Go dure une heure et demie.
Logiquement, là, vous disposez d'une clé USB de plus grande taille (16Go chez moi), dotée de 2 partitions, la première de 149Mo en FAT16, la seconde en ext3 de 2Go. Le reste de la clé est inutilisé.
Bon, je dois filer, je finirai plus tard.