Raspberry, installer Raspbian sans écran, ni clavier

Si comme moi, vous ne possèdez pas plusieurs écrans ou bien que vous ne pouvez pas sans arrêt débrancher et rebrancher vos claviers lorsque que vous refaites une petite installation sur votre Raspberry, vous allez être content de voir comment préparer et installer Raspbian sur une micro-sd sans écran, ni clavier.Alors, le titre est un peu tape à l’œil, vous aurez besoin tout de même d’un poste informatique fonctionnement sous Linux et d’une carte micro-sd (disponible ici). J’ai trouvé cette astuce en parcourant le site de Korben (très bon d’ailleurs, n’hésitez pas à y allez ou à vous abonnez).

Au moment où j’écris, le site original en anglais, propose une version qui ne fonctionnait pas mais n’hésitez pas à y jeter un œil si vous avez des soucis avec le mien, ni à poser des questions.

Je vais simplement fournir un tuto en français des différentes actions à effectuer et vous aurez un Raspberry dont le SSH sera activé et le wifi activé ainsi que configuré pour une prise en main à distance directement.

Sur le site original du tuto, il y a une longue partie sur la vérification de l’image de télécharger, je sais que ce n’est pas bien, mais le but n’est pas d’effrayer, si vous voulez faire cette vérification, je vous invite à suivre ce lien qui vous mènera à la page originale.

Téléchargement de Raspbian

Nous allons procéder en ligne de commande, d’ailleurs, c’est ce que nous allons faire durant tout cet article.

Pour ce tuto, j’ai créé un dossier install-raspbian et me suis placé dedans :

mkdir ~/install-raspbian && cd install-raspbian

Copiez ce script et exécutez-le, cela téléchargera la dernière version de Raspbian :

#/usr/bin/bash

URL=https://downloads.raspberrypi.org/raspbian_latest
#URL=https://downloads.raspberrypi.org/raspbian_lite_latest 
EFFECTIVE_URL=$(curl -w "%{url_effective}\n" -I -L -s -S $URL -o /dev/null)
wget "$EFFECTIVE_URL"

Trouver votre carte micro-sd

Ne branchez pas tout de suite votre carte micro-sd, dans un terminal, faites sudo dmesg -wpuis connectez votre carte, dans mon cas, voilà ce qui est apparu :

[291476.851346] sd 4:0:0:0: [sdb] 31116288 512-byte logical blocks: (15.9 GB/14.8 GiB)
[291476.851955] sd 4:0:0:0: [sdb] Write Protect is off
[291476.851958] sd 4:0:0:0: [sdb] Mode Sense: 03 00 00 00
[291476.853583] sd 4:0:0:0: [sdb] No Caching mode page found
[291476.853587] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[291476.858596]  sdb: sdb1
[291476.861582] sd 4:0:0:0: [sdb] Attached SCSI removable disk
[291477.115992] EXT4-fs (sdb1): recovery complete
[291477.117353] EXT4-fs (sdb1): mounted filesystem with ordered data mode. Opts: (null)

Bien sur, cela peut varier en fonction de votre matériel, en l’occurence, ma carte (je passe par un lecteur de carte micro-sd usb) se nomme sd, le nom du matériel est sdb et on voit une partition sdb1.

Préparer et copier l’image

Nous avons vu qu’il y a une partition,  nous allons donc démonter les partitions :

sudo umount /dev/sdb*

Vous l’aurez compris, remplacez sdb par le nom de votre matériel

On décompresse et on copie l’image :

unzip -p votre-image.zip 
sudo dd if=votre-image.img of=/dev/sdb conv=fsync

On recharge la table de partition : sudo partprobe /dev/sdb

Ajout du SSH à la configuration de Raspbian

Pour activer le SSH, on va devoir monter l’image sur notre système mais avant, on va créer un dossier dans lequel on va monter l’image :

mkdir montage
sudo mount /dev/sdb1 montage -o umask=000

Et ajoute le SSH, attention, ce sera compliqué :

touch montage/ssh

C’est fini pour le ssh

Ne reste plus qu’à démonter la partition :

sudo umount montage

Configuration du wifi

Attention car à l’heure où j’écris, en suivant l’article original, je n’arrivais pas du tout à faire la manip, si vous comparez la sienne et la mienne, vous verrez où il s’est trompé.

Voilà, la partie la plus compliqué de cet article, maintenant au travail.

Pour activer le SSH, on n’est passé par la première partition (dans mon cas sdb1) qui correspond à la partition de boot, on commence par monter la partition :

sudo mount /dev/sdb2 montage

Ensuite, copier ce script dans un fichier toujours dans votre dossier de travail :

#/usr/bin/bash
cat > montage/etc/wpa_supplicant/wpa_supplicant.conf << EOT
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
        # garder les guillemets pour le ssid et le mot de passe
  ssid="VOTRE-NOM-RESEAU"
  psk="MOT-DE-PASSE"
  proto=RSN
  key_mgmt=WPA-PSK
  pairwise=CCMP
  auth_alg=OPEN
}
EOT
cat > montage/etc/network/interfaces << EOT
auto wlan0
iface eth0 inet dhcp
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
EOT

Exécutez-le avec les droits administrateurs : sudo bash ./config-wifi.sh.

Cela mettra permettra de configurer les deux fichiers pour le wifi du Raspberry

Pour vérifier, vous pouvez faire : sudo cat montage/etc/wpa_supplicant/wpa_supplicant.conf et sudo cat montage/etc/network/interfaces.

Maintenant, démonter la partition : sudo umount montage

Démarrage du Raspberry

Avant de mettre la carte micro-sd et de démarrer le Raspberry, nous allons surveiller le réseau pour trouver quelle est la nouvelle adresse qui apparaît et qui devrait donc correspondre au Raspberry.

Pour cela, deux possibilités :

  • allez simplement voir sur votre box pour voir quel est le nouveau équipement qui est apparu.
  • dans le terminal, saisir : sudo tcpdump -lenqti any port 68 or arpet allumer le raspberry, assurez-vous que le paquet tcpdump soit installé (sudo apt-get install tcpdump). Cela permet de surveiller sur le réseau, l’attribution d’une adresse IP par la box et/ou serveur

Pour le second cas, vous devriez voir :

Raspberry, scan du réseau
Raspberry, scan du réseau

Dans mon cas, il s’agit de 192.168.0.24, ma box est à l’adresse 192.168.0.1.

Conclusion

Maintenant, vous allez pouvoir prendre la main à distance, pour la configuration, voir cet article sur le SSH. Cela peut être très utile si vous n’avez pas plusieurs écrans, claviers ou câble à disposition mais aussi dans le cas où vous devez réaliser la configuration de plusieurs Raspberry (cas d’un cluster).

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.