Depuis que j’ai fait assistant-plugins, j’ai plusieurs utilisateurs qui m’ont demandé comment l’installer sur leur Raspberry. Ce système est censé être similaire à une Debian, cependant ils semblent y avoir des différences… J’ai donc cherché à émuler cet OS sous mon Windows 10.
Sources :
- https://blogs.msdn.microsoft.com/iliast/2016/11/10/how-to-emulate-raspberry-pi/
- https://enavarro.me/emuler-un-raspberry-pi-avec-qemu.html
Voici les étapes :
- Télécharger la dernière version disponible de QEMU sur le site https://qemu.weilnetz.de/w32/ (par exemple qemu-w32-setup-20171211.exe au moment où j’écris cet article)
- Une fois téléchargé, on va faire un clique-droit et dézipper qemu-w32-setup-20171211.exe vers qemu-w32-setup-20171211
- Télécharger la dernière version de Raspbian via https://www.raspberrypi.org/downloads/raspbian/ dans le répertoire qemu-w32-setup-20171211/ (ou via ce lien https://downloads.raspberrypi.org/raspbian_latest) (par exemple je prends la version lite qui se nomme 2017-11-29-raspbian-stretch-lite.zip)
- Télécharger le kernel dans le répertoire qemu-w32-setup-20171211/ via https://github.com/dhruvvyas90/qemu-rpi-kernel (par exemple j’ai pris kernel-qemu-4.4.34-jessie)
- On va immédiatement agrandir la taille de notre image de 5G (pour éviter d’avoir des problèmes d’espace disque plus tard). Pour cela on va se rendre dans le dossier qemu-w32-setup-20171211/ avec CMD et on va taper :
qemu-img.exe resize 2017-11-29-raspbian-stretch-lite +5G
- On peut lancer l’émulation avec la commande (voir tous les paramètres disponibles) :
qemu-system-arm.exe -kernel
-cpu arm1176 -m 256 -M versatilepb -serial stdio -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" -drive "file= ,index=0,media=disk,format=raw" -redir tcp:2222::22
(ce qui va donner chez moi :qemu-system-arm.exe -kernel kernel-qemu-4.4.34-jessie -cpu arm1176 -m 256 -M versatilepb -serial stdio -append "root=/dev/sda2 panic=1 rootfstype=ext4 rw" -drive "file=2017-11-29-raspbian-stretch-lite.img,index=0,media=disk,format=raw" -redir tcp:2222::22
) - Si tout se passe comme prévu l’image devrait démarrer et arriver jusqu’à vous demander un login (pi) et pass (raspberry) … Attention, par défaut c’est un clavier QWERTY qui est appliqué, il faut donc taper rqspberry pour le password.
- On va passer le clavier en français en tapant :
sudo apt-get install console-data
, puissudo sudo dpkg-reconfigure console-data
On choisit select keymap from fullist puis pc / azerty / French / Same as X11 (latin 9) / Standard. - Si le clavier continue à être en anglais, taper :
sudo dpkg-reconfigure keyboard-configuration
en sélectionnant le clavier par défaut proposé, puis pour la langue, choisir Other puis French, et ensuite les propositions par défaut.
Et finalement la commande :sudo setupcon
- On va maintenant finir d’agrandir notre partition. Pour cela on tape :
sudo fdisk /dev/sda
et on suit les instructions ci-dessous :- On affiche la table des partitions avec la lettre « p ». On va noter le chiffre qui apparait dans la colonne Start pour la deuxième ligne (celle qui correspond à la partition de type Linux) (chez moi cela vaut 94208)
- On efface la partition principale avec la lettre « d » (cela devrait être la 2)
- On crée une nouvelle partition avec la lettre « n », puis on choisit primary avec « p » et la position « 2 »
- Pour le premier secteur on va utiliser la valeur trouvée précédemment (94208 pour moi)
- On appuie sur « Enter » pour le last sector (pour utiliser la valeur proposée)
- À la question Do you want to remove the signature?, répondre « N »
- On écrit la table de partition avec « w »
- Puis on reboot avec
sudo shutdown -r now
- Après le reboot on va terminer par :
sudo resize2fs /dev/sda2
- Maintenant on va augmenter la taille du swap :
sudo nano /etc/dphys-swapfile
où on va remplacer CONF_SWAPSIZE=100 par CONF_SWAPSIZE=1024 - On redémarre le service avec :
sudo /etc/init.d/dphys-swapfile stop
puissudo /etc/init.d/dphys-swapfile start
Maintenant l’émulateur est prêt à être utilisé. Se reporter aux deux sources fournies en début d’article pour plus de détails et des options supplémentaires !