Différences entre versions de « SuperPi-Pi3-Raspbian-config »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(49 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
{{SuperPi-NAV}}
 
{{SuperPi-NAV}}
  
 +
== Raspbian ==
 
Pour les Raspberry-Pi 3 B+ j'ai sélectionné '''Raspbian Lite du 24 juin 2019''' pour limiter l'impact sur les ressources du système (voir [https://fr.wikipedia.org/wiki/Raspberry_Pi_OS historique des versions de Raspberry-Pi OS]).
 
Pour les Raspberry-Pi 3 B+ j'ai sélectionné '''Raspbian Lite du 24 juin 2019''' pour limiter l'impact sur les ressources du système (voir [https://fr.wikipedia.org/wiki/Raspberry_Pi_OS historique des versions de Raspberry-Pi OS]).
 +
 +
Les versions de Raspbian et Raspbian-Lite sont téléchargeables depuis http://downloads.raspberrypi.org et gravé sur une carte de 4 Go.
 +
 +
{{download-box|Téléchargez Raspbian Lite 24 juin 2019|http://downloads.raspberrypi.org/raspbian_lite/images/raspbian_lite-2019-06-24/}}
 +
 +
Cette version de Raspbian apporte:
 +
* Debian 10 Buster
 +
* Kernel 4.19
 +
* GCC 8.3
 +
* Pi 1 à Pi 4
 +
* Python 3.7.3
 +
* Python 2.7.16
 +
 +
== Raspi-Config ==
 +
Démarrer le Raspberry-Pi et se connecter avec l'utilisateur '''pi''' et mot de passe '''raspberry'''.
 +
 +
sudo raspi-config
 +
 +
Voici la configuration effectuée dans Raspi-Config
 +
 +
<nowiki>Localisation options
 +
  Change timezone: Europe, Brussels
 +
  Change keyboard layout: Français/Azerty
 +
 +
Interfacing options
 +
  SSH: enabled
 +
  I2C: enabled
 +
  Serial: enabled
 +
 +
Advanced options:
 +
  Memory Split: 16 Mo (au lieu de 64)
 +
 +
Network options
 +
  Hostname: r1pi02 (Rack 1 Pi #02)
 +
  predictable network interface names: enabled
 +
 +
Boot options
 +
  Wait for network at boot: yes
 +
  Desktop / CLI: console
 +
</nowiki>
 +
 +
== Utilisateur SuperPi ==
 +
 +
Le reste de la configuration se base en partie sur les informations contenues dans l'article "[https://raspberrytips.com/security-tips-raspberry-pi/ 17 tips to secure your Raspberry-Pi]".
 +
 +
Changer le mot de passe de l'utilisateur '''pi'''
 +
 +
passwd
 +
 +
Créer un nouvel utilisateur et lui attribuer le privilège '''sudo'''
 +
 +
sudo adduser superpi
 +
sudo adduser superpi sudo
 +
 +
Lier l'utilisateur '''superpi''' aux mêmes groupes que l'utilisateur Pi.
 +
 +
sudo usermod -a -G adm superpi
 +
sudo usermod -a -G dialout superpi
 +
sudo usermod -a -G cdrom superpi
 +
sudo usermod -a -G audio superpi
 +
sudo usermod -a -G video superpi
 +
sudo usermod -a -G plugdev superpi
 +
sudo usermod -a -G games superpi
 +
sudo usermod -a -G users superpi
 +
sudo usermod -a -G input superpi
 +
sudo usermod -a -G netdev superpi
 +
sudo usermod -a -G gpio superpi
 +
sudo usermod -a -G i2c superpi
 +
sudo usermod -a -G spi superpi
 +
 +
Démarrer le Raspberry-Pi et se connecter avec l'utilisateur '''superpi''' et mot de passe ad-hoc.
 +
 +
Bloquer le compte utilisateur '''pi'''
 +
 +
sudo passwd -l pi
 +
 +
{{ambox | text = il est possible de détruire complètement le compte utilisateur '''pi''' à l'aide de la commande <nowiki>sudo deluser -remove-home pi</nowiki> }}
 +
 +
== WiFi & Bluetooth ==
 +
 +
Il faut aussi désactiver le support Bluetooth et WiFi car ces interfaces sont inutiles (la commande {{fname|rfkill}}) permet d'identifier les périphériques radio qui sont actifs sur le Raspberry-Pi.
 +
 +
Ouvrir le fichier '''/boot/config.txt'''.
 +
 +
sudo nano /boot/config.txt
 +
 +
Trouver la ligne suivante:
 +
 +
# Additional overlays and parameters are documented /boot/overlays/README
 +
 +
Et ajouter les entrées
 +
 +
dtoverlay=pi3-disable-wifi
 +
dtoverlay=pi3-disable-bt
 +
 +
{{ambox|text=pour un Raspberry-Pi 3, il est spécifiquement nécessaire d'ajouter le prefixe "pi3-" dans les "dtoverlay=" }}
 +
 +
== Paquets supplémentaires ==
 +
Pour commencer, il faut autoriser la mise-à-jour des paquets alors même que la suite logiciel est maintenant placée en "oldoldstable".
 +
 +
sudo apt-get update --allow-releaseinfo-change
 +
sudo apt-get upgrade
 +
 +
Après la mise-à-jour, Raspberry-Pi OS utilise SystemD pour la gestion des services.
 +
 +
Normalement, l'utilitaire {{fname|raspi-gpio}} est installé. Si la commande n'est pas disponible, alors l'utilitaire peut être installer à l'aide de
 +
 +
sudo apt install raspi-gpio
 +
 +
== IP Statique ==
 +
L'adresse IP statique dépend du numéro de rack et de la position du Pi dans le rack (voyez [[SuperPi-node-configuration|RPi configuration]]).
 +
 +
Le nom de l'interface peut être identifié à l'aide de la commande {{fname|ifconfig}}.
 +
 +
L'interface peut être '''eth0''' ou quelque-chose comme '''enxb827eb538de6''' (plus probable sous Jessie).
 +
Il est préférable d'avoir un nom d'interface prédéterminé comme '''eth0''', ce qui est possible en modifiant la configuration de l'interface réseau à l'aide de {{fname|raspi-config}}.
 +
 +
sudo raspi-config
 +
 +
* Choisir 2 Options réseaux (''Network options'')
 +
* Choisir N3 Noms d'interface réseau (''Network interface names'')
 +
* Choisir NON (''No'') pour désactiver les noms d'interface déterministe (''predictable ethernet interface name'')
 +
* Choisir OK pour redémarrer
 +
 +
le fichier de configuration peut être modifié à l'aide de {{fname|sudo nano /etc/dhcpcd.conf}}
 +
 +
# Example static IP configuration:
 +
interface eth0
 +
static ip_address=192.168.10.22/24
 +
static routers=192.168.10.254
 +
static domain_name_servers=192.168.10.254
 +
 +
 +
Pour vérifier la configuration:
 +
* {{fname|hostanme}} permet d'obtenir le nom d'hôte,
 +
* {{fname|hostname -I}} retourne n'adresse IP.
 +
 +
{{tmbox | type = speedy | text = L'adresse IP statique n'est assignée à l'interface eth0 que si le Raspberry-Pi est sur un réseau Ethernet.}}
 +
 +
== Contrôle des LEDs ==
 +
Modifier le fichier '''/etc/rc.local''' et ajouter les lignes suivantes juste avant le {{fname|exit 0}}
 +
 +
# Turn on Green LED on GPIO21
 +
#
 +
echo "21" > /sys/class/gpio/export
 +
echo "out" > /sys/class/gpio/gpio21/direction
 +
echo "1" > /sys/class/gpio/gpio21/value
 +
 +
La LED sera éteinte au moment de l'arrêt du système.
 +
 +
== Extinction sur Panic ==
 +
 +
Si le signal panic est placé au niveau HAUT (3.3V) sur le rack alors:
 +
1. le GPIO 17 passe au niveau bas (panic est '''active low''' sur le GPIO 17).
 +
2. le Raspberry doit faire un shutdown.
 +
 +
Edit the file '''/boot/config.txt''' pour activer cette configuration.
 +
 +
Ajouter la ligne suivante dans la section '''[all]'''
 +
 +
dtoverlay=gpio-shutdown,gpio_pin=17,active_low=1,gpio_pull=up,debounce=1000
 +
 +
{{SuperPi-TRAILER}}

Version actuelle datée du 26 juillet 2024 à 23:44

Raspbian

Pour les Raspberry-Pi 3 B+ j'ai sélectionné Raspbian Lite du 24 juin 2019 pour limiter l'impact sur les ressources du système (voir historique des versions de Raspberry-Pi OS).

Les versions de Raspbian et Raspbian-Lite sont téléchargeables depuis http://downloads.raspberrypi.org et gravé sur une carte de 4 Go.

Cette version de Raspbian apporte:

  • Debian 10 Buster
  • Kernel 4.19
  • GCC 8.3
  • Pi 1 à Pi 4
  • Python 3.7.3
  • Python 2.7.16

Raspi-Config

Démarrer le Raspberry-Pi et se connecter avec l'utilisateur pi et mot de passe raspberry.

sudo raspi-config

Voici la configuration effectuée dans Raspi-Config

Localisation options
  Change timezone: Europe, Brussels
  Change keyboard layout: Français/Azerty

Interfacing options
  SSH: enabled
  I2C: enabled
  Serial: enabled

Advanced options:
  Memory Split: 16 Mo (au lieu de 64)

Network options
  Hostname: r1pi02 (Rack 1 Pi #02)
  predictable network interface names: enabled

Boot options
  Wait for network at boot: yes
  Desktop / CLI: console

Utilisateur SuperPi

Le reste de la configuration se base en partie sur les informations contenues dans l'article "17 tips to secure your Raspberry-Pi".

Changer le mot de passe de l'utilisateur pi

passwd

Créer un nouvel utilisateur et lui attribuer le privilège sudo

sudo adduser superpi
sudo adduser superpi sudo

Lier l'utilisateur superpi aux mêmes groupes que l'utilisateur Pi.

sudo usermod -a -G adm superpi 
sudo usermod -a -G dialout superpi 
sudo usermod -a -G cdrom superpi 
sudo usermod -a -G audio superpi 
sudo usermod -a -G video superpi 
sudo usermod -a -G plugdev superpi 
sudo usermod -a -G games superpi 
sudo usermod -a -G users superpi 
sudo usermod -a -G input superpi 
sudo usermod -a -G netdev superpi 
sudo usermod -a -G gpio superpi 
sudo usermod -a -G i2c superpi 
sudo usermod -a -G spi superpi

Démarrer le Raspberry-Pi et se connecter avec l'utilisateur superpi et mot de passe ad-hoc.

Bloquer le compte utilisateur pi

sudo passwd -l pi

WiFi & Bluetooth

Il faut aussi désactiver le support Bluetooth et WiFi car ces interfaces sont inutiles (la commande rfkill) permet d'identifier les périphériques radio qui sont actifs sur le Raspberry-Pi.

Ouvrir le fichier /boot/config.txt.

sudo nano /boot/config.txt

Trouver la ligne suivante:

# Additional overlays and parameters are documented /boot/overlays/README

Et ajouter les entrées

dtoverlay=pi3-disable-wifi
dtoverlay=pi3-disable-bt

Paquets supplémentaires

Pour commencer, il faut autoriser la mise-à-jour des paquets alors même que la suite logiciel est maintenant placée en "oldoldstable".

sudo apt-get update --allow-releaseinfo-change
sudo apt-get upgrade

Après la mise-à-jour, Raspberry-Pi OS utilise SystemD pour la gestion des services.

Normalement, l'utilitaire raspi-gpio est installé. Si la commande n'est pas disponible, alors l'utilitaire peut être installer à l'aide de

sudo apt install raspi-gpio

IP Statique

L'adresse IP statique dépend du numéro de rack et de la position du Pi dans le rack (voyez RPi configuration).

Le nom de l'interface peut être identifié à l'aide de la commande ifconfig.

L'interface peut être eth0 ou quelque-chose comme enxb827eb538de6 (plus probable sous Jessie). Il est préférable d'avoir un nom d'interface prédéterminé comme eth0, ce qui est possible en modifiant la configuration de l'interface réseau à l'aide de raspi-config.

sudo raspi-config
  • Choisir 2 Options réseaux (Network options)
  • Choisir N3 Noms d'interface réseau (Network interface names)
  • Choisir NON (No) pour désactiver les noms d'interface déterministe (predictable ethernet interface name)
  • Choisir OK pour redémarrer

le fichier de configuration peut être modifié à l'aide de sudo nano /etc/dhcpcd.conf

# Example static IP configuration:
interface eth0 
static ip_address=192.168.10.22/24
static routers=192.168.10.254 
static domain_name_servers=192.168.10.254 


Pour vérifier la configuration:

  • hostanme permet d'obtenir le nom d'hôte,
  • hostname -I retourne n'adresse IP.

Contrôle des LEDs

Modifier le fichier /etc/rc.local et ajouter les lignes suivantes juste avant le exit 0

# Turn on Green LED on GPIO21
#
echo "21" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio21/direction
echo "1" > /sys/class/gpio/gpio21/value

La LED sera éteinte au moment de l'arrêt du système.

Extinction sur Panic

Si le signal panic est placé au niveau HAUT (3.3V) sur le rack alors: 1. le GPIO 17 passe au niveau bas (panic est active low sur le GPIO 17). 2. le Raspberry doit faire un shutdown.

Edit the file /boot/config.txt pour activer cette configuration.

Ajouter la ligne suivante dans la section [all]

dtoverlay=gpio-shutdown,gpio_pin=17,active_low=1,gpio_pull=up,debounce=1000

Modèle:SuperPi-TRAILER