Cet article présente, via un cas pratique d'installation d'une SD Card, ce que le Zaurus attend de ces périphériques de stockage pour les reconnaître. Il sera également l'occasion de jeter un oeil aux différents systèmes de fichiers exploitables sur le Zaurus.
J'utilise un zaurus SL5500 avec la rom de sharp v3.10. et une carte Nokia. Sur la carte on peut lire :
![]() |
Memory Card Minitel 8 Mbyte Nokia |
![]() |
Nokia Type: DTS-8f MADE IN USA BH08 V1 REV.-P D0002DT USA |
Il s'agit d'une carte récupérée sur un vieux Nokia Communicator qui ne servait plus.
N'ayant pas les moyens de m'acheter un carte mémoire dans l'immédiat et ayant toujours besoin d'un peu d'espace sur le zaurus, je me suis dit que j'allais utiliser cette SD Card laissée à l'abandon ;-). L'emplacement compact flash sur le zaurus me servant à d'autres applications (Réseau 802.11b, Bluetooth, Transferts de fichiers sur CF 256Mb, ...), le lecteur de cartes sd est l'emplacement idéal pour ajouter de l'espace.
J'enfiche donc la carte dans le lecteur et, ô déception, ... rien ne se passe ...
Je décide alors de visiter quelques pages sur internet et ne trouve rien (malgré des années d'expériences sur google ;-) ).
Sur le zaurus, dans le terminal ou via ssh, je tape les commandes suivantes :
# mount /dev/mmcda1 /mnt/card mount: Mounting /dev/mmcda1 on /mnt/card failed: Invalid argument # mount /dev/mmcda /mnt/card # df Filesystem 1k-blocks Used Available Use% Mounted on /dev/ram1 44 44 0 100% /dev /dev/mtdblock1 28785 14130 13119 52% /home /dev/mmcda 7810 0 7810 0% /usr/mnt.rom/card # cat /etc/mtab /dev/root / cramfs ro 0 0 /proc /proc proc rw 0 0 /dev/ram1 /dev minix rw 0 0 /dev/mtdblock1 /home ext2 rw,sync 0 0 none /dev/pts devpts rw 0 0 /dev/mmcda /usr/mnt.rom/card vfat rw 0 0
On tire plusieurs enseignements de cet ensemble de commandes.
/dev/mmcda
pour que ça fonctionne automatiquement).lsmod
m'apprend que le module utilisé est celui par défaut de
sharp sharp_mmcsd_m
.Je décide donc de mettre la carte en conformité avec ce que s'attend à trouver mon zaurus, c'est à dire une carte partitionnée avec un système de fichier valide sur la première partition. Les systèmes de fichiers à ma disposition sont dos, vfat, ext2 et minix. Je choisis ext2, principalement pour pouvoir utiliser des liens symboliques.
Sous linux, quand on pense partition, on pense fdisk. fdisk (comme nombre d'utilitaires indispensables, à l'instar de ssh) n'est pas fourni avec le zaurus. Qu'à celà ne tienne, on le trouve sur le Zaurus Software Index sous forme d'ipk, on le transfère sur le zaurus ou dans son feed préféré et on l'installe en trois clics.
Viennent ensuite les opérations chirurgicales de préparation de la carte (ce que vous avez à taper est en rouge):
# umount /mnt/card # fdisk /dev/mmcda Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-245, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-245, default 245): Using default value 245 Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: If you have created or modified any DOS 6.x partitions, please see the fdisk manual page for additional information. Syncing disks. # mkfs.ext2 /dev/mmcda1 mke2fs 1.19, 13-Jul-2000 for EXT2 FS 0.5b, 95/08/09 Filesystem label= OS type: Linux Block size=1024 (log=0) Fragment size=1024 (log=0) 1960 inodes, 7824 blocks 391 blocks (5.00%) reserved for the super user First data block=1 1 block group 8192 blocks per group, 8192 fragments per group 1960 inodes per group Writing inode tables: done Writing superblocks and filesystem accounting information: done
J'éjecte la carte et la réinsère ... Ca marche ! Vite, on vérifie !
# df Filesystem 1k-blocks Used Available Use% Mounted on /dev/ram1 44 44 0 100% /dev /dev/mtdblock1 28785 14130 13119 52% /home /dev/mmcda1 7574 15 7168 0% /usr/mnt.rom/card
Et sur le zaurus, on trouve le bel icône sd card à droite de la barre des tâches...
L'avantage principal de la vfat est qu'elle laisse plus de place disponible que l'ext2 et offre le support des noms longs. Vous l'utiliserez donc pour du stockage (répertoires de mp3, archives, documents).
Les systèmes "dos" (msdos et vfat) sont les plus répandus. Votre carte
servira donc plus facilement de vecteur de transfert de fichiers entre le
zaurus et votre appareil photo, votre palm ou votre pocket pc. En plus, à
condition d'utiliser une FAT16, ce sont les seuls systèmes de fichiers que vous
pouvez utiliser poue flasher votre Zaurus. Pour rappel mkfs.vfat formatte en
FAT16 par défaut, pour formatter en FAT32, il faut taper mkfs.vfat -F 32,
man mkfs.vfat
pour de plus amples informations.
Le principal avantage de l'ext2 est la prise en charge des liens symboliques. Il est à utiliser si on veut se servir de la carte pour installer des applications supplémentaires. En effet, les installations provoquent presque à coup sûr la création de liens symboliques, non pris en charge par la vfat.
La technique est la même (création d'une partition, création d'un système de fichier, utilisation). Le zaurus crée de lui même les répertoires nécessaires une fois la carte reconnue. Vous n'avez qu'à créer le système de fichiers. Pour les CF comme pour les SD, vous avez le choix du type parmi les trois cités plus haut et minix (ce dernier n'est utilisé à ma connaissance que pour la partition /dev, créée en ram. Pour plus d'informations sur la création de la partition /dev sur /dev/ram1 (cocasse ?) voyez la page "the Z boot process [8a]" sur docs.zaurus.com.
Voici un tableau récapitulatif des points de montage de votre zaurus :
Périphérique | Point de montage | Système de fichiers |
/dev/root | / | cramfs |
/proc | /proc | proc |
/dev/ram1 | /dev | minix |
/dev/mtdblock1 | /home | ext2 |
none | /dev/pts | devpts |
/dev/mmcda1 | /mnt/card | A votre goût |
/dev/hda1 | /mnt/cf | A votre goût |
cramfs (vous avez bien dû vous posez la question, non ?) est un
système de fichiers compressé dans lequel on ne peut écrire mais ne nécessitant
que très peu de place. Il est donc tout naturellement employé dans les ROM des
ordinateurs de poche tel que le zaurus. La meilleure source de documentation
sur cramfs est son code source, dans les sources du kernel linux et la
documentation succinte trouvable sur votre système dans les fichiers
/usr/src/linux/Documentation/filesystems/cramfs.txt
et
/usr/src/linux/fs/cramfs/README
, à condition que vous ayez
installé les sources d'un kernel. Enfin, signalons que pour créer un système de
fichiers cramfs, on utilise la commande mkcramfs
et pour le
vérifier cramfsck
... Vous savez tout maintenant...
@+
Xavier Garreau - <xavier@xgarreau.org>
http://www.xgarreau.org/
Ingénieur de recherche PRIM'TIME TECHNOLOGY
http://www.prim-time.fr/
Membre fondateur du ROCHELUG
http://www.rochelug.org/
Précédent | Index | Suivant |
Auteur : Xavier GARREAU
Modifié le 11.06.2003