Table des matières

Raspbian

Une version de Debian compilée pour le Raspberry Pi est disponible sur le site officiel. L'image peut être téléchargée à cette adresse: http://www.raspberrypi.org/downloads

L'installation se fait simplement par copie de l'image du système sur la carte SD.

Écrire l'image

Décompresser l'archive, puis utiliser la commande dd pour écrire l'image sur la carte SD:

$ sudo dd bs=1M if=./2014-09-09-wheezy-raspbian.img of=/dev/mmcblk0

Remarque: L'écriture avec dd et l'option bs=4M peut poser problème (systèmes de fichier illisibles dans mon cas, impossible de les monter). Dans ce cas, diminuer la valeur de l'option à bs=1M.

Exploiter l'espace de la carte SD

Lors de l’écriture de l'image sur le fichier périphérique correspondant à la carte SD, la table des partitions est écrasée. La partition système telle que déclarée sur l'image n'occupe que 2Go. Elle peut être retaillée pour exploiter la totalité de l'espace disponible sur la carte SD.

Les étapes:

Modifier la taille de la partition

Pour modifier la taille de la partition avec fdisk la démarche peut sembler particulière: On doit supprimer la partition et recréer une partition qui commence au même endroit et qui se termine sur le secteur qu'on souhaite (Ici la fin du périphérique disque). La suppression de la partition n'altère pas les données car fdisk travaille sur la table des partitions.

$ sudo fdisk /dev/mmcblk0

On affiche la table des partitions avec la commande p:

Commande (m pour l'aide) : p

Disque /dev/mmcblk0 : 7948 Mo, 7948206080 octets
4 têtes, 16 secteurs/piste, 242560 cylindres, total 15523840 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Identifiant de disque : 0x000981cb

Périphérique Amorçage  Début         Fin      Blocs    Id. Système
/dev/mmcblk0p1            8192      122879       57344    c  W95 FAT32 (LBA)
/dev/mmcblk0p2          122880     5785599     2831360   83  Linux

La partition racine commence au secteur 122880, on la supprime avec la commande d:

Commande (m pour l'aide) : d
Numéro de partition (1-4): 2

On recrée une partition de même type qui commence au même endroit mais qui se termine à la fin du disque avec la commande n:

Commande (m pour l'aide) : n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): p
Numéro de partition (1-4, 2 par défaut) : 2
Premier secteur (2048-15523839, 2048 par défaut) : 122880
Dernier secteur, +secteurs ou +taille{K,M,G} (122880-15523839, 15523839 par défaut) : 
Utilisation de la valeur 15523839 par défaut

On affiche le résultat des opérations, si tout va bien on peut écrire les modifications apportées à la table des partitions avec la commande w:

Commande (m pour l'aide) : p

Disque /dev/mmcblk0 : 7948 Mo, 7948206080 octets
4 têtes, 16 secteurs/piste, 242560 cylindres, total 15523840 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Identifiant de disque : 0x000981cb

Périphérique Amorçage  Début         Fin      Blocs    Id. Système
/dev/mmcblk0p1            8192      122879       57344    c  W95 FAT32 (LBA)
/dev/mmcblk0p2          122880    15523839     7700480   83  Linux

Commande (m pour l'aide) : w
La table de partitions a été altérée.

Modifier la taille du système de fichiers

Pour le moment le système de fichier n'exploite pas encore le nouvel espace disponible. Les outils e2fsprogs permettent de modifier les systèmes de fichiers ext2/3/4: Vérifier le système de fichier avec e2fsck:

$ sudo e2fsck -f /dev/mmcblk0p2

Redimensionner le système de fichier avec resize2fs:

$ sudo resize2fs /dev/mmcblk0p2

Vérifier les opérations

On va monter les systèmes de fichiers créés sur la carte SD:

$ sudo mkdir /mnt/{RPIBoot,RPIRoot}
$ sudo mount /dev/mmcblk0p1 /mnt/RPIBoot/; sudo mount /dev/mmcblk0p2 /mnt/RPIRoot/
$ ls /mnt/RPIBoot/
bootcode.bin  config.txt    fixup.dat    issue.txt             kernel.img      start_cd.elf  start_x.elf
cmdline.txt   fixup_cd.dat  fixup_x.dat  kernel_emergency.img  LICENSE.oracle  start.elf
$ ls /mnt/RPIRoot/
bin  boot  dev  etc  home  lib  lost+found  media  mnt  opt  proc  root  run  sbin  selinux  srv  sys  tmp  usr  var

Activer le serveur SSH

Sur les versions récentes, cette étapes n'est plus nécessaire le serveur ssh est actif par défaut.

Sur des versions plus anciennes, le le serveur SSH n'est pas activé. Pour l'activer monter la partition de boot et renommer le fichier boot_enable_ssh.rc en boot.rc pour qu'il soit executé lors de la phase de boot:

root@hermes:/mnt# mkdir RPIBoot
root@hermes:/mnt# mount /dev/mmcblk0p1 /mnt/RPIBoot/
root@hermes:/mnt/RPIBoot# mv boot_enable_ssh.rc boot.rc
root@hermes:/mnt/RPIBoot# cd ~
root@hermes:~# umount /mnt/RPIBoot/

Une session ssh peut être ouverte avec le compte utilisateur par défaut: pi

Utilisateur pi
Mot de passe raspberry