Vous êtes sur la page 1sur 16

Installation de Debian sur Armadeus APF28

(v1.2) Tuto rdig par Michel de CREVOISIER Mars 2013

SOURCES
Debian on APF28 :
http://www.armadeus.com/wiki/index.php?title=Debian_on_APF

INDEX
SOURCES.............................................................................................................................................................. 1 INDEX................................................................................................................................................................... 2 1. Prparation de la carte Armadeus ............................................................................................................. 3 1.1 1.2 1.3 2. Dtection ............................................................................................................................................ 3 Connexion ........................................................................................................................................... 3 Accs au BIOS U-boot .................................................................................................................. 4

Prparation de la carte SD .......................................................................................................................... 5 2.1 2.2 2.3 2.4 Choix .................................................................................................................................................... 5 Formatage sous Mac .......................................................................................................................... 5 Formatage sous Linux ........................................................................................................................ 5 Montage de la carte SD ..................................................................................................................... 6

3.

Environnement Debian ............................................................................................................................... 7 3.1 3.2 3.3 3.4 3.5 3.6 Prparation du noyau ........................................................................................................................ 7 Prparation du systme .................................................................................................................... 8 BIOS ................................................................................................................................................... 10 Rseau ............................................................................................................................................... 10 Optimisations et paramtrage ........................................................................................................ 11 Screenshots ...................................................................................................................................... 12

4.

Environnement Linux intgr ................................................................................................................... 13 4.1 4.2 4.3 Armadeus software : Buildroot ....................................................................................................... 13 Transfert fichiers .............................................................................................................................. 15 Boot depuis la carte SD ................................................................................................................... 15

5.

Problmes dordre gnral ....................................................................................................................... 16

1. Prparation de la carte Armadeus


1.1 Dtection
Pour commencer, branchez le cble mini-USB sur le port USB debug de votre ordinateur : o Sous Mac et avec le logiciel Growler, la notification suivante apparat :

o Vous pouvez galement vrifier que le priphrique tty.usbmodem1411 est bien dtect en excutant la commande suivante : ls /dev/tty.*

Note : Si le priphrique napparait pas, dmarrez la carte avec le cble USB branch votre ordinateur. Ensuite, enlevez lUSB, dbranchez lalimentation, rebranchez lUSB puis lalimentation.

1.2 Connexion 1.2.1 Via ZTerm


Pour se connecter la carte, nous utiliserons le logiciel Zterm Une fois Zterm install, lancez-le et allez dans : o Settings > Modem Preferences > Serial port : usbmodem1411

o Allez ensuite dans Dial > Directory > New et mettez le Data Rate 115200

Une fois le profil cr et valid, slectionnez-le et cliquez sur Dial:

Vous aboutissez sur la console Shell ci-dessous. Connectez-vous sans mot de passe avec le login root :

1.2.2 Via Screen


Vous pouvez galement utiliser le logiciel Screen intgr nativement Mac et Linux : screen /dev/tty.usbmodem1411 115200

1.3 Accs au BIOS U-boot


Pour pourvoir accder au boot loader U-boot, vous devez tre connect en console sur la carte. Excutez alors la commande reboot jusqu apparition de la squence ci-dessous :

2. Prparation de la carte SD
2.1 Choix
Attention, toutes les cartes ne sont pas supportes. Rendez-vous ici pour connatre les compatibilits. Et attention avec les SD HC ( Haute Capacit ) !

2.2 Formatage sous Mac


Pour formater en EXT2 sous Mac, utilisez le logiciel Macport pour ensuite installer le programme e2fsprogs : sudo port install e2fsprogs mkfs.ext2 /dev/diskX ou mke2fs t ext2/dev/diskX Attention ! Si vous tes sous Mountain Lion (10.8), le logiciel ne fonctionnera pas en raison dune incompatibilit avec le mode 64 bits. Lerreur que vous aurez sera la suivante : /Library/Extensions/ext2fs.kext failed to load - (libkern/kext) requested architecture/executable not found; check the system/kernel logs for errors or try kextutil(8). mount_ext2: ext2 filesystem is not available

2.3 Formatage sous Linux


Pour dfinir le partitionnement, utilisez les utilitaires gparted ou fdisk : fdisk /dev/diskX
Command (m for help):d {enter } Selected partition 1 Command (m for help):n {enter} Command action e extended p primary partition (1-4) p {enter} Partition number (1-4):1 {enter}

Vrifiez le dtail des actions qui vont tre effectues : Command (m for help): p
Disk /dev/sda: 131 MB, 131072000 bytes X heads, X sectors/track, X cylinders Units = cylinders of X * X = X bytes Device /dev/sda1 Boot Start End Blocks Id System 1 X X X Linux

Pour terminer, validez le tout : Command (m for help): w [write table to disk and exit] Crez ensuite le systme de fichier en EXT2 : mke2fs -t ext2 /dev/diskX

2.4 Montage de la carte SD


LINUX (sur carte Armadeus) : Par dfaut, les cartes micro-SD sont montes dans /dev/mmcblk0 mount /dev/mmcblk0 /media/mmc MAC (via MacFuse - source) fuse-ext2 /dev/disk1s1 /Volume/SD WINDOWS : (source) Excutez la commande suivante pour lister les points de montage : cat /etc/fstab

3. Environnement Debian
Lobjectif de ce point est de prparer une Debian ARMel avec lensemble des paquets de base. Cette solution est beaucoup plus commode que la prcdente dans la mesure o lon retrouve nativement un grand nombre doutils facilitant lintgration dapplications dj compiles pour cet environnement. Pour information, cette mthode nexploite pas nativement la carte SD. Au contraire, elle copie lensemble des binaires de Debian Armel sur la NAND de la carte. Cest pourquoi jai adapt la procdure originale disponible ici. Nous utiliserons par ailleurs la version 6 de Debian i386 pour travailler (tlchargement ici).

3.1 Prparation du noyau 3.1.1 Environnement de travail


Installez les prrequis sur votre environnement de travail : apt-get install debootstrap qemu-user-static Crer un rpertoire de travail : mkdir /root/apf_debian cd /root/apf_debian

3.1.2 Boostrap
Tlchargez lensemble des paquets Debian pour larchitecture Armel : debootstrap --foreign --arch=armel squeeze rootfs http://ftp.debian.org/debian Copiez les fichiers obtenus dans un nouveau filesystem : cp /usr/bin/qemu-arm-static rootfs/usr/bin Gnrez les binaires : DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true LC_ALL=C LANGUAGE=C LANG=C chroot rootfs debootstrap/debootstrap --second-stage

3.1.3 Finalisation
Configuration du port srie (sinon rien ne saffichera) : echo 'T0:23:respawn:/sbin/getty -L ttyAM0 115200 vt100' >> rootfs/etc/inittab cp -r /dev/ttySMX0 /root/rootfs/dev/ttySMX0 Si lerreur suivante init: Id "X" respawning too fast: disabled for X minutes apparat au dmarrage, excutez la commande suivante : cp -r /dev/ttySMX0 /root/rootfs/dev/ttySMX0

Modification du hostname: echo 'apf28' > rootfs/etc/hostname echo '127.0.1.1 apf28' >> rootfs/etc/hosts Suppression du mot de passe root: sed -i -e 's/root:\*:/root::/' rootfs/etc/shadow Nettoyage des APT: rm rootfs/var/cache/apt/archives/*.deb Pour terminer, zipper le tout dans un tar et transfrez le sur la NAND via carte SD : tar cvf debian_arm_rootfs.tar rootfs

3.2 Prparation du systme


Note : lensemble de ces actions est effectu depuis le systme intgr la carte

3.2.1 Extraction des fichiers


Dzippez le tar dans la NAND : cd /root tar xvpf debian_arm_rootfs.tar

3.2.2 Script damorage et modules


Crez un script damorage nomm /debinit qui sera appel par la suite dans le BIOS: #!/bin/sh mount -t proc none /root/rootfs/proc mount -o bind /dev /root/rootfs/dev mount -o bind /dev/pts /root/rootfs/dev/pts mount -o bind /sys /root/rootfs/sys exec chroot /root/rootfs /sbin/init Rendez le excutable: chmod 755 /debinit Copiez les modules suivants: cp -r /lib/modules/* /root/rootfs/lib/modules cp -r /lib/firmware /root/rootfs/lib/firmware chroot /root/rootfs /sbin/depmod -a

3.2.3 Dplacement des rpertoires


Etant donn que la NAND ne dispose que de 256 Mo despace, nous allons procder la copie des rpertoires les plus volumineux sur la carte SD. Pour commencer, formatez la carte SD en 3 partitions principales (etc, var, usr) laide de Gparted : usr : 1,5 Go (p1) var : 400 Mo (p2) etc : 100 Mo (p3) Note : Taille des partitions sur une carte de 2 Go Copiez ensuite leur contenu respectif partir des fichiers originaux de la NAND : mount /dev/mmcblk0p1 /media/mmc-usr cp -rfa /root/rootfs/usr/* /media/mmc-usr mount /dev/mmcblk0p2 /media/mmc-var cp -rfa /root/rootfs/var/* /media/mmc-var mount /dev/mmcblk0p3 /media/mmc-etc cp -rfa /root/rootfs/etc/* /media/mmc-etc Dmontage: Sync umount /media/mmc-usr umount /media/mmc-var umount /media/mmc-etc Modifiez le fichier FSTAB afin dindiquer lemplacement de ces 3 nouveaux rpertoires : nano /root/rootfs/etc/fstab et compltez le avec ces lments: /dev/mmcblk0p1 /usr ext2 defaults,auto 0 1 /dev/mmcblk0p2 /var ext2 defaults,auto 0 1 /dev/mmcblk0p3 /etc ext2 defaults,auto 0 1

3.3 BIOS
Pour terminer, ajoutez une nouvelle option de dmarrage dans le BIOS. Concrtement, cette dernire permettra lamorage de votre Debian partir du script du point 3.2.2. BIOS> setenv debboot 'setenv addubifsargs ${addubifsargs} init=/debinit; run ubifsboot' BIOS> saveenv BIOS> run debboot

3.4 Rseau
Les rglages rseau doivent seffectuer directement dans le BIOS. Ces paramtres seront ensuite imports de faon transparente dans le systme install. setenv ipaddr X.X.X.X setenv netmask X.X.X. setenv gateway X.X.X.X setenv write De plus, je vous conseille vivement de fixer les paramtres suivants sur vos switchs Cisco : SW# conf t SW(config)# interface FastEthernet x/x SW(config)# speed 100 SW(config)# duplex half

10

3.5 Optimisations et paramtrage 3.5.1 Paramtrage des dpts


apt-get est le gestionnaire de paquets par dfaut sous Debian. Pour modifier ses sources, modifiez le fichier sources.list : nano /etc/apt sources.list Et renseignez les lignes suivantes votre convenance : deb http://ftp.fr.debian.org/debian stable main contrib non-free deb-src http://ftp.fr.debian.org/debian stable main contrib non-free deb http://ftp.debian.org/debian/ squeeze-updates main contrib non-free deb-src http://ftp.debian.org/debian/ squeeze-updates main contrib non-free deb http://security.debian.org/ squeeze/updates main contrib non-free deb-src http://security.debian.org/ squeeze/updates main contrib non-free

3.5.2 Divers
Modifiez lheure et la date (lheure est perdue chaque dbranchement de lalimentation) : date -s Mettez jour le systme : apt-get update apt-get upgrade Activez le mot de passe root : passw Installez htop pour le monitoring : apt-get install htop Installez SSH server : apt-get install openssh-server

11

3.6 Screenshots

12

4. Environnement Linux intgr


Lobjectif de cette partie sera de prparer un noyau Linux prcompil et personnalis qui pourra tre copi sur une carte SD. Dans notre cas, nous utiliserons la version 6 de Debian i386 (tlchargement ici) qui pourra tre installe dans un environnement physique ou virtuel.

4.1 Armadeus software : Buildroot 4.1.1 Prrequis


Pour pouvoir utiliser le logiciel fournit par Armadeus, installez les prrequis suivants : apt-get install -y build-essential gcc g++ autoconf automake libtool bison flex gettext apt-get install -y patch subversion texinfo wget git-core apt-get install -y libncurses5 libncurses5-dev apt-get install -y zlib1g-dev liblzo2-2 liblzo2-dev apt-get install -y libacl1 gawk cvs curl lzma libacl1-dev apt-get install -y uuid-dev mercurial

4.1.2 Paramtre de langue


Si vous avez install votre distribution dans une langue autre que langlais, excutez la commande suivante afin dajouter le support de en_US.UTF-8 : dpkg-reconfigure locales

Dans le cas contraire, vous rencontrez lerreur ci-dessous : extra/locale/locale_mmap.h:46: error: '__LOCALE_DATA_WCctype_II_LEN' undeclared here (not in a function)

4.1.3 Installation
Une fois les prrequis install, excutez le logiciel Armadeus Buildroot : tar xjvf armadeus-5.2.tar.bz2 cd armadeus-5.2 make apf28_defconfig
13

4.1.4 Choix des paquets


Si toute se passe bien, le menu ci-dessous apparatra. Vous pourrez alors slectionner les paquets intgrer dans votre image :

Pour naviguer, utilisez les flches et pour revenir au menu prcdent faites <Echap><Echap>. Il est recommand de slectionner les paquets ci-dessous, en plus de ceux dont vous avez besoin : Package selection : Compressor o Bzip Debugging o Dmalloc Development tools o Autoconf o Automake o Binutils o Disctcc o Make o Libtool Hardware o USB utils Une fois votre choix de paquets termin, sauvegardez votre fichier de configuration (par dfaut dans buildroot) et quittez le programme :

14

4.1.5 Compilation
Excutez la commande suivante pour compiler le tout selon les prfrences indiques auparavant : make Note : si lerreur suivante On your system /bin/sh is a symbolic link that doesn't point to /bin/bash apparaitt : mv /bin/sh /bin/sh_original ln -s /bin/bash /bin/sh Une fois la compilation lance, soyez patient. En effet, de nombreux logiciels seront tlchargs et compils avec le noyau. Vous trouverez les binaires gnrs dans : buildroot/output/images

4.2 Transfert fichiers


Une fois la compilation termine, copiez les fichiers gnrs sur votre carte micro-SD : cd armadeus-5.2/buildroot/output/images cp apf28-rootfs.ubi apf28-rootfs.ubifs apf28-u-boot.sb /media/SD tar xvf apf28-rootfs.tar -C /media/SD mkdir -p /media/SD/boot cp apf28-linux.bin /media/SD/boot sudo umount /media/disk/SD

4.3 Boot depuis la carte SD


Mode manuel : BIOS> run mmcboot Mode auto : BIOS> setenv bootcmd run mmcboot BIOS> saveenv

15

5. Problmes dordre gnral


Perte de lheure au dbranchement de lalimentation Problme de dtection de carte rseau aprs avoir dbranch le cble rseau pendant que le systme tait en marche Incompatibilit avec un grand nombre de carte SD

Nhsitez pas menvoyer vos commentaires ou retours ladresse suivante : michel_de A-R-0-B-A-5 hotmail . com

16