Article mis à jour le 31/08/2022.
Pour démarrer un Raspberry Pi neuf, il y a plusieurs opérations à réaliser. On trouve énormément de documents sur internet et je ne veux pas en ajouter un énième. Cet article vise simplement à établir une check-list pour me simplifier la vie.
Mettre l’OS sur la carte SD
Mise à jour du 31/08/2022 :
L’OS du Raspberry Pi est à télécharger sur le site de la fondation Raspberry Pi. J’ai choisi une version 64 bit compatible avec mon Pi 3B. J’ai pris la version lite, sans desktop. J’ai une carte sd 8 Go. J’ai utilisé Raspberry Pi Imager (téléchargeable sur le site de la fondation Raspberry Pi également).
Avec Raspberry Pi Imager j’ai effectué les réglages suivants avant de flasher la carte SD :
- définir hostname de ce pi
- définir l’utilisateur de base et le mot de passe correspondant (pi/raspberry n’est plus défini par défaut ! 😜)
- cocher que le ssh doit être activé et indiquer le user name et le password. Je prévois en effet de connecter le Pi de manière « headless » (sans écran, clavier et souris)
- configurer le wifi (j’ai mis un dongle wifi)
- Et dire que clavier français et surtout timezone française.
Si nécessaire
Dans le cas où on n’utilise pas le paramétrage si dessus, on peut quand même autoriser la liaison ssh et régler le wifi autrement :
Autoriser la liaison SSH (headless)
On doit placer un fichier vide nommé ssh (sans extension) dans le répertoire boot de la carte SD. Pour plus d’explications voir cet article sur le site officiel du Raspberry Pi. On réalise cette opération par l’intermédiaire du lecteur de carte SD. Ensuite, lorsque le Pi démarre, il recherche ce fichier. S’il le trouve, il active le SSH puis détruit le fichier
Régler le wifi
Si on veut que le Pi se connecte en wifi, il faut lui donner les paramètres wifi. Sur cette page on voit comment faire. En l’occurence j’ai placé le fichier wpa_supplicant.conf dans le répertoire boot de la carte sd. Ce fichier contient les informations suivantes :
# wpa_supplicant.conf
# see https://github.com/binnes/tobyjnr/wiki/Raspberry-Pi-Initial-setup
# place this file named wpa_supplicant.conf in the /boot directory
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=FR
network={
ssid="mon-reseau1"
psk="password1"
id_str="home 1"
priority=1
}
network={
ssid="mon-reseau2"
psk="password2"
id_str="home 1"
priority=2
}
Encrypter le mot de passe wifi
En principe on ne devrait pas mettre les mots de passe en clair. Une bonne pratique est d’encrypter cette information par un « hash ». J’ai découvert comment faire dans cet article en anglais.
Sur un Pi (on peut le faire plus tard si on n’a pas de deuxième pi), en ligne de commande, on tape wpa_passphrase mon-reseau2 password2 et en retour on obtient l’information cryptée : network={ ssid="mon-reseau2" #psk="password2" psk=261066f1ec70322a9b305031fd2164401fbae41235107dc66eaad93ed991abcf }
Je n’ai plus qu’à placer ce mot de passe cryptée à la place de celui que j’avais initialement mis en clair.
Brancher le Pi
Equipement nécessaire :
- un chargeur 5V et au moins 1A avec un cable micro-USB ;
- un cable ethernet.
Et c’est tout ! Il n’y a pas besoin de connecter le Pi à un clavier et un écran car il autorise la connexion SSH si on a placé un fichier ssh comme indiqué ci-dessus.
Premier démarrage
Dans l’écran du routeur, on voit apparaître un nouvel appareil, nommé RASPBERRYPI. Pour moi il a l’adresse IP 192.168.1.14.
Dans l’invite de commande Windows, ping RASPBERRYPI ne fonctionne pas mais ping 192.168.1.14 donne une réponse.
Accès SSH avec Cygwin
J’utilise Cygwin pour l’accès ssh. C’est très bien mais d’autres préfèrent PuTTY, que je n’ai jamais essayé. Pour l’installer, voir cet article : Installer et utiliser Cygwin pour le ssh avec un Pi.
Démarrer la session avec ssh pi@192.168.1.14
(l’adresse est donnée en allant regarder quelle est l’adresse du dispositif « RASPBERRYPI », dans le tableau de bord du routeur ou de la box.
Nota : si on s’est déjà connecté en SSH à la même adresse, on peut avoir une erreur « @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! ». Dans ce cas, ssh-keygen -R 192.168.1.14 va générer une nouvelle clé SSH et la commande ssh pi@192.168.1.14 va fonctionner correctement.
Le mot de passe pour l’utilisateur pi est raspberry.
Et voilà !
Premiers paramétrages
sudo raspi-config
nous amène à la configuration du Pi.
Au démarrage on est en anglais, on peut le changer si on préfère. Je ne le change pas.
On navigue avec les flèches de direction, on sélectionne avec la tabulation puis <ENTREE>.
Voici les changements à faire :
expand FileSystem (advanced options) | Oui, pour utiliser toute la carte SD |
Time zone (internationalisation) | Europe / Paris |
Wait for network at boot | Par défaut sur « non » dans Jessie ou stretch mais sur « oui » dans Jessie Lite ou stretch. Régler sur « NON » |
Hostname (Network options) | Mettre un nom unique (AlRadio) |
Password: | Modifier, ça ne doit plus être ‘raspberry’ pour l’utilisateur pi |
Noter qu’en principe on ne modifie pas ces éléments :
configure keyboard | Inutile si pas de clavier |
ssh (dans interfacing options) | activer est déjà réalisé |
Boot Option | B1 console (on n’accède pas en mode graphique) – on pourra toujours accéder à l’interface graphique avec la commande startx |
Ensuite on tape init 6
pour redémarrer le Pi.
On peut vérifier l’espace libre sur la carte SD en tapant
sudo df -h
Si on a utilisé une carte SD de 8 Go, on devrait voir que /dev/root fait environ 7 Go, avec environ 50% used, 50% available (disponible) si Raspbian Buster"normal", 12% si Buster "lite".
Autres réglages préliminaires
créer un utilisateur
Pour créer un utilisateur ‘al’ :
sudo useradd -m -G adm,dialout,cdrom,audio,plugdev,users al
puis créer son mot de passe
sudo passwd al
Changer le mot de passe root
sudo passwd root
nous demande le nouveau mot de passe. On peut ensuite devenir root en tapant su – puis le mot de passe correspondant.
Changer le mot de passe pi
Cet article, déjà cité, insiste sur l’importance du changement du mot de passe par défaut de l’utilisateur pi afin contrer les pirates qui utilisent l’internet des objets pour faire tomber des sites.
sudo passwd pi
nous demande le nouveau mot de passe, qui ne doit pas être ‘raspberry’ !
On peut aussi supprimer l’utilisateur pi, comme proposé dans « SECURING YOUR RASPBERRY PI« .
installer l’éditeur mc
Pour installer l’éditeur MidnightCommander, en tant que root (avec su – , sinon sudo devant la commande) :
sudo apt-get install mc
Ca prend plusieurs minutes.
Ensuite, pour le démarrer
sudo mc
Dans mc, on peut utiliser la souris, cliquer sur options / Configuration puis entre [ ] devant « Use Internal Editor ». Comme ça on n’aura jamais besoin d’utiliser l’affreux éditeur nano fourni par défaut.
Si pour une raison ou une autre la souris ne fonctionne pas, on accède au menu avec F9 puis les flèches de direction.
Sortir de mc avec F10.
autoriser la connexion en tant que root (ssh ou ftp)
Editer, avec mc (sudo avant), le fichier /etc/ssh/sshd_config
Trouver la ligne sous # Authentication: contenant PermitRootLogin without-password .
La changer en PermitRootLogin yes.
permettre à windows de trouver le hostname
On a vu précédemment que ping ne fonctionnait pas avec le nom du Pi et c’est toujours le cas. On est obligé d’utiliser l’adresse IP du Pi, ce qui n’est pas pratique.
Pour y parvenir, il faut installer Samba sur le Pi et régler le « workgroup » au même groupe que celui de l’ordinateur windows utilisé.
Installer Samba avec cette commande (qui met longtemps à s’exécuter…) :
sudo apt-get install samba samba-common-bin
Editer, avec mc (sudo avant), le fichier /etc/samba/smb.conf et changer la ligne workgroup = WORKGROUP pour que WORKGROUP corresponde au bon nom.
Redémarrer avec init 6 ou reboot .
Samba permet également de partager des répertoires entre un ordinateur windows et un Pi. A ce sujet voir cet article, en anglais, de raspberrypi.com.
Changer le fichier .bashrc
C’est le fichier qui contient la configuration du « shell » de l’utilisateur. Il définit en particulier les couleurs employées pour différents éléments.
Le plus simple est de prendre un fichier .bashrc d’un autre Pi, par exemple en FTP (cf plus bas). Ensuite, dans le nouveau Pi, renommer le fichier .bashrc en .bashrcOLD et copier le nouveau fichier .bashrc.
A faire pour tous les utilisateurs définis dans le Pi (/home/pi/.bashrc) et pour root aussi (/root/.bashrc).
J’ai en particulier défini la ligne PS1 comme suit :
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\] \[\033[01;34m\]\w \$\[\033[00m\] '
Redémarrer
init 6 ou reboot .
Notre Raspberry Pi est prêt.
Vérifier le paramétrage
est-ce que le pi est repérable par son nom ?
Depuis mon ordinateur Windows, je « ping » le pi dans l’invite de commande.

Si le ping ne renvoie rien, c’est probablement que le paramétrage de Samba n’a pas été fait correctement.
Vérifier le nom ‘hostname’ du pi et autres infos
La commande hostnamectl
nous indique différentes informations comme le nom de l’appareil, sa version de Raspbian, etc

Faire une copie de la carte sd
A ce stade, si l’on veut éviter de devoir tout refaire pour un autre Pi, on peut faire une copie de la carte SD à l’aide de cet article. Attention si on fait ainsi la copie, on ne pourra restaurer la sauvegarde que sur une carte sd au moins égale à celle d’origine. Si besoin voir cet article en anglais, sur la manière de réduire (shrink) la taille d’une image disque.
On peut voir aussi ces deux articles :
- Comment sauvegarder la carte SD d’un Raspberry Pi sous Windows?
- Raspberry PI – creating a backup image while the Raspberry PI is running
Accéder au Pi en ftp
J’utilise Filezilla.
Hôte : hostname du pi
protocole « sftp-ssh file transfer protocol »
Type d’authentification : demander le mot de passe
identifiant utilisateur ou root
mot de passe : selon l’utilisateur désigné
Commandes utiles
Quelques commandes utiles
apt update | génère une liste de ce qui doit être mis à jour |
apt full-upgrade | fait la mise à jour des paquets. Voir la différence avec apt upgrade dans cet article. |
rpi-update | Update the Pi firmware. Si la réponse est « rpi-update: command not found », lancer apt-get install rpi-update avant. Voir cet article. |
apt-get clean | efface les paquets téléchargés pour la mise à jour |
Pour redémarrer : reboot ou init 6
Pour éteindre le Pi : init 0 ou halt -p . Il est préférable d’éviter de le débrancher sans l’avoir éteint avant.
Si nécessaire (affichage de The following packages were automatically installed and are no longer required), on peut exécuter apt autoremove pour enlever tous les paquets qui ne sont plus utiles.
Pour mettre à jour le Pi avec des correctifs de sécurité :
sudo apt-get update sudo apt-get dist-upgrade sudo apt-get install -y pprompt
Et maintenant ?
On peut avoir d’autres éléments à installer ou régler :
- installer apache et transformer le Pi en serveur web : Un serveur Web sur mon Raspberry Pi ;
- régler une connexion wifi ou donner une adresse IP fixe : ces deux points sont expliqués dans l’article Raspberry Pi : connexion internet en wifi et/ou IP fixe.
Et maintenant, notre Pi est prêt pour une belle aventure !