Raspbian est un OS prévu pour le Raspberry Pi, il est basé sur Debian (Jessie).
Sur la page de téléchargement de Raspbian, on a le choix entre une version “normale” et une version “lite”. On peut télécharger l'image en torrent, ce qui va très vite.
Tout d'abord, on vérifie avec la commande lsblk quel est l'emplacement de la carte (µ)SD.
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 465,8G 0 disk ├─sda1 8:1 0 243M 0 part /boot ├─sda2 8:2 0 1K 0 part └─sda5 8:5 0 465,5G 0 part └─sda5_crypt 254:0 0 465,5G 0 crypt ├─debian8--vg-root 254:1 0 14G 0 lvm / ├─debian8--vg-var 254:2 0 5,8G 0 lvm /var ├─debian8--vg-swap_1 254:3 0 7,4G 0 lvm [SWAP] ├─debian8--vg-tmp 254:4 0 380M 0 lvm /tmp └─debian8--vg-home 254:5 0 430G 0 lvm /home sdb 8:16 1 29,8G 0 disk └─sdb1 8:17 1 29,8G 0 part /media/simon/9016-4EF8 sr0 11:0 1 1024M 0 rom
Ici, la carte (µ)SD est à l'emplacement sdb
avec une partition sdb1
et elle est montée dans /media/simon/9016-4EF8
. On démonte la partition sdb1
et on copie l'image sur la (µ)SD avec ddrescue.
#Démonter la partition $ sudo umount /dev/sdb1 #Vérifier $ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT (...) sdb 8:16 1 29,8G 0 disk └─sdb1 8:17 1 29,8G 0 part sr0 11:0 1 1024M 0 rom #Copier l'image sur la SD $ sudo ddrescue -D --force 2016-05-27-raspbian-jessie-lite.img /dev/sdb GNU ddrescue 1.19 Press Ctrl-C to interrupt rescued: 1387 MB, errsize: 0 B, current rate: 5963 kB/s ipos: 1387 MB, errors: 0, average rate: 30828 kB/s opos: 1387 MB, run time: 45 s, successful read: 0 s ago Finished
Une fois que nous avons flashé la carte SD et que nous avons branché la Raspberry Pi, celle-ci doit démarrer et afficher tout un tas de lignes jusqu'à ce qu'on arrive à ceci :
raspberrypi login: pi password: raspberry
Le login pi
et le mot de passe raspberry
sont utilisés par défaut sur Raspbian. Ce n'est pas forcément le cas des autres distributions. HypriotOS utilise par exemple le login pirate
et le password hypriot
par défaut.
Pour faire les premières configurations (clavier, locales, timezone, …), nous utilisons l'outil raspi-config
. Au premier démarrage, avec un clavier configuré en QWERTY, vous devrez taper rqspi-àonfig
.
$ sudo raspi-config
Scanner les réseaux Wifi :
$ sudo iwlist wlan0 scan (...) Cell 03 - Address: 80:37:73:E2:0E:49 Channel:11 Frequency:2.462 GHz (Channel 11) Quality=48/70 Signal level=-62 dBm Encryption key:on ESSID:"un-wifi-qui-traine" Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s 24 Mb/s; 36 Mb/s; 54 Mb/s Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s Mode:Master Extra:tsf=0000000000000000 Extra: Last beacon: 100ms ago IE: Unknown: 000A564F4F2D343433343834 IE: Unknown: 010882848B962430486C IE: Unknown: 03010B IE: Unknown: 2A0104 IE: Unknown: 2F0104 IE: IEEE 802.11i/WPA2 Version 1 Group Cipher : TKIP Pairwise Ciphers (2) : CCMP TKIP Authentication Suites (1) : PSK IE: Unknown: 32040C121860 IE: Unknown: 2D1ABC181BFFFF000000000000000000000000000000000000000000 IE: Unknown: 3D160B080400000000000000000000000000000000000000 IE: Unknown: DD800050F204104A0001101044000102103B00010310470010A8EA96631058A13963C3AFACE4603524102100074E657467656172102300074E6574676561721024000631323334353610420007303030303030311054000800060050F2040001101100094E6574676561724150100800022008103C0001031049000600372A000120 IE: Unknown: DD090010180201000C0000 IE: WPA Version 1 Group Cipher : TKIP Pairwise Ciphers (2) : CCMP TKIP Authentication Suites (1) : PSK IE: Unknown: DD180050F2020101800003A4000027A4000042435E0062322F00 (...)
On peut chercher le nom de son Wifi (ESSID) assez facilement avec grep :
$ sudo iwlist wlan0 scan | grep -B 5 -A 5 "ESSID:\"mon-wifi" Cell 02 - Address: C4:EA:1D:B2:5F:AB Channel:6 Frequency:2.437 GHz (Channel 6) Quality=60/70 Signal level=-50 dBm Encryption key:on ESSID:"mon-wifi" Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s 24 Mb/s; 36 Mb/s; 54 Mb/s Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s Mode:Master Extra:tsf=0000000000000000
On peut configurer l'accès au wifi dans le fichier wpa_supplicant.conf
:
$ sudo cat /etc/wpa_supplicant/wpa_supplicant.conf country=BE ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="mon-wifi" psk="le-password-de-mon-wifi" }
(Sources : raspberrypi.org et framboise314.fr)
Configuration du 26/08/2016 sur une Raspbian “Jessie” Lite.
On peut lire sur ce blog [dadarevue.com (ajouter un GUI à Raspbian Lite)] comment installer un environnement graphique léger par dessus une Raspbian Lite.
Tout d'abord, pensez à mettre à jour :
$ sudo apt-get update $ sudo apt-get dist-upgrade $ sudo reboot
Installer “Xorg” :
$ sudo apt-get install --no-install-recommends xserver-xorg
Installer l'environnement de bureau “PIXEL” (qui utilise OpenBox) :
$ sudo apt-get install raspberrypi-ui-mods
Installer le gestionnaire de session “lightdm” :
$ sudo apt-get install lightdm
Un redémarrage pour terminer :
$ sudo reboot
Voici les instructions pour la configuration d'une clé 4G LTE sous Raspbian.
Pour configurer un système en read-only, je vais suivre ce tutoriel (hallard.me), basé sur cet autre tutoriel (k3a.me). Les détails sont sur la page configuration d'un raspberry pi en read-only.
Voici les instructions pour lancer un programme au démarrage.
Il est possible de sauvegarde d'un coup toute la carte (µ)SD, avec toutes les partitions la composant.
On branche la carte (µ)SD dans un ordinateur sous GNU/Linux et on identifie son emplacement avec lsblk ou fdisk. Ensuite, on lance la sauvegarde et on compresse au vol avec gzip.
$ sudo dd if=/dev/sdb | gzip -9 > /home/user/backup/20160904/raspbian-lite.img.gz 62552064+0 enregistrements lus 62552064+0 enregistrements écrits 32026656768 octets (32 GB) copiés, 1284,63 s, 24,9 MB/s
Le fichier obtenu, raspbian-lite.img.gz
, fait 1,3Go! (La partition sdb3
est presque totalement vide.)
On vérifie l'emplacement avec lsblk ou fdisk puis on décompresse l'archive tout en l'envoyant sur la carte (µ)SD avec dd :
$ gunzip /home/user/backup/20160904/raspbian-lite.img.gz | sudo dd of=/dev/sdb [sudo] password for bob: 0+0 enregistrements lus 0+0 enregistrements écrits 0 octet (0 B) copié, 1069,36 s, 0,0 kB/s
Il est facile mais pas toujours le plus efficace de sauvegarder toute la carte SD. Par exemple, dans le cas d'un système read-only avec une grosse partition data
. Si on veut sauvegarder le système uniquement, autant ne pas sauvegarder cette partition data
de plusieurs Gio.
Comme précédemment, on identifie la carte SD et ses partitions à l'aide de lsblk ou fdisk :
$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 74,5G 0 disk ├─sda1 8:1 0 72,6G 0 part / ├─sda2 8:2 0 1K 0 part └─sda5 8:5 0 2G 0 part [SWAP] sdb 8:16 1 29,8G 0 disk ├─sdb1 8:17 1 63M 0 part ├─sdb2 8:18 1 5,2G 0 part └─sdb3 8:19 1 24,5G 0 part sr0 11:0 1 1024M 0 rom $ sudo fdisk -l (...) Disk /dev/sdb: 32.0 GB, 32026656768 bytes 64 têtes, 32 secteurs/piste, 30543 cylindres, total 62552064 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 : 0x00084648 Périphérique Amorçage Début Fin Blocs Id. Système /dev/sdb1 8192 137215 64512 c W95 FAT32 (LBA) /dev/sdb2 137216 11102207 5482496 83 Linux /dev/sdb3 11102208 62552063 25724928 b W95 FAT32
Une fois les partitions bien identifiées, on utilise à nouveau dd pour les extraire de la carte SD et les archiver :
sudo dd if=/dev/sdb1 | gzip -9 > /home/user/backup/raspberry-20160904-sdb1.img.gz sudo dd if=/dev/sdb2 | gzip -9 > /home/user/backup/raspberry-20160904-sdb2.img.gz
$ sudo fdisk -l $ lsblk
On utilise fdisk pour recréer les partitions sdb1
, sdb2
et éventuellement une partition sdb3
(partition data
d'un système read-only)
$ sudo fdisk /dev/sdb # TO COMPLETE
gunzip /home/user/backup/raspberry-20160904-sdb1.img.gz | sudo dd of=/dev/sdb1 gunzip /home/user/backup/raspberry-20160904-sdb2.img.gz | sudo dd of=/dev/sdb2
$ wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cli.py $ chmod +x speedtest-cli $ ./speedtest-cli Retrieving speedtest.net configuration... Retrieving speedtest.net server list... Testing from *** (**.**.**.**)... Selecting best server based on latency... Hosted by **** (*****) [**.** km]: 32.701 ms Testing download speed........................................ Download: 18.67 Mbit/s Testing upload speed.................................................. Upload: 1.87 Mbit/s