Apprendre ou enseigner le codage avec la météo et le climat : Mise en route d'une Raspberry Pi "Codage"

Cet article explique comment utiliser une raspberry Pi comme serveur web d'outils graphiques ou textuels d'apprentissage du codage (jupyter et snap!byop (scratch) en classe ou à la maison.

Motivations

Le but de cet article est de décrire la procédure de démarrage d'une Raspberry Pi, en utilisant l'image proposée par le projet Tremplin de l'ENS-IFÉ, pour apprendre et enseigner le codage avec des outils interactifs web. La marche à suivre est détaillée depuis la récupération en ligne de l'image jusqu'à la mise à disposition de données, il ne requiert pas de compétences avancées en programmation ou en administration système, ce blog reprend les traces de la mise en oeuvre réalisée et devrait correspondre à ce qu'un utilisateur va effectivement observer.

Le processus de construction et de mise à disposition du système d'exploitation utilisé ici est décrit dans le blog de création de l'image. Ce processus est aussi intégralement ouvert et met en oeuvre des logiciels libres et des ressources sous licence creative commons mais requiert une maîtrise un peu plus avancée de la configuration d'un ordinateur. Il n'est pas nécessaire de consulter le processus de création pour utiliser ce blog.

Remerciements

Carole Larose, Myriam Bentoumi, Éric le Jan, Charles-Henri Eyraud


Sommaire

  1. Récupération de l'image en ligne et copie sur la micro-SD de la Raspberry Pi

    a. Préambule de précaution : Formatage de la SD sous GNU/Linux

    b. Préambule de précaution : Formatage de la SD avec windows et MacOs

    c. Téléchargement de l'image mise à disposition

    d. Préparation de la micro-SD cible

    • Copier l'image téléchargée sur la microSD sous Linux
    • Copier l'image téléchargée sur la microSD sous Windows
    • Copier l'image téléchargée sur la microSD sous MacOs

    e. Ajustement de la taille de l'image avant le démarrage

  2. Modifications sur la SD pour que la Raspberry Pi puisse se connecter au réseau

    a. Utilisation du serveur de terminaux

    b. Configuration manuelle

  3. Premier démarrage et configuration opérationnelle de la Raspberry Pi

    a. Ajustement de la taille de l'image après le démarrage

    b. Changement de nom des mots de passe, ajout d'utilisateurs et finalisation du réseau et du système

    • utilisateurs connus
    • interfaces réseau disponibles
    • Nom de la Raspberry
  4. Configuration d'une box pour utilisation d'une RaspberryPi à distance


Téléchargements

  1. image pour RaspberryPi du projet Tremplin de l'ENS-IFÉ

1. Récupération de l'image en ligne et copie sur la micro-SD de la Raspberry Pi

La procédure proposée ici est homologue de celle utilisée pour installer n'importe quel système d'exploitation pour une Raspberry Pi. Le principe est de recopier puis de configurer un système d'exploitation sur une micro-SD qui est l'espace de stockage de la Raspberry Pi. Avant d'effectuer une installation, nous allons vérifier que la carte micro-SD que nous allons utiliser est correctement formatée.

1.a Préambule de précaution : Formatage de la SD sous GNU/Linux

Formater la micro-SD avec une seule partition FAT32 occupant la totalité de l'espace disponible. Attention si la mico-SD contient des données que vous souhaitez conserver sauvegardez-les AVANT le formatage.

sudo gparted

Si on n'utilise pas une carte neuve, il peut se produire que la carte ne soit pas montée automatiquement par l'ordinateur, il est probable que la carte soit abîmée ou impropre à l'usage qu'on lui destine. Toutefois, on peut utiliser la commande dmesg pour obtenir des informations sur l'erreur; si le message est du type :

mmc0: cannot verify signal voltage switch
mmc0: error -110 whilst initialising SD card

cela confirme que la carte est en mauvais état; la meilleure solution est probablement d'en prendre une neuve ! Toutefois, en cas de besoin, il est possible de tenter d'utiliser un adaptateur mico-SD-> USB; dans beaucoup de cas la carte est montée comme une clef USB et permet d'effectuer les opérations proposées ci-dessous en contournant une partie des vérifications spécifiques aux cartes SD. La micro-SD construite a des chances de fonctionner correctement mais elle doit cependant être considérée comme douteuse.

1.b Préambule de précaution : Formatage de la SD avec un autre OS

Windows ne reconnait pas et ne sait pas traiter les systèmes de fichiers ext4 qu'utilisera la Raspberry Pi, il est donc nécessaire d'installer sur votre ordinateur un logiciel fournissant cette fonctionnalité, par exemple SD Card Formatter) voir image ci-dessous.

SD Card Formatter

1.c Téléchargement de l'image mise à disposition

L'image Raspberry Pi3 se trouve sur le serveur de media du projet Tremplin des Sciences.

  • Les chiffres YYYY-MM-DD représentent la date de création,
  • rpi3 rpiW3 et rpi2 représentent la Raspberry Pi cible :
  • rpi3 -> Raspberry Pi3,
  • rpiW3 -> Raspberry Pi3 pour station météo sans gestionnaire graphique,
  • rpi2 -> Raspberry Pi2,
  • stretch ou buster la distribution cible.

La valeur est à paramétrer dans ce qui suit en fonction de ce qui est disponible en ligne. Pour obtenir ce numéro, se connecter avec un navigateur web à l'adresse Raspberry Pi3 http://mediaserv.climatetmeteo.fr/images/RaspBerry/. Pour télécharger l'image, il suffit de copier-coller le nom de l'image dans la barre d'adresse du navigateur et le téléchargement sera lancé, ou alors utiliser la commande linux wget ou curl. Les deux commandes ci-dessous permettent de télécharger l'image et le fichier bmap (non obligatoire) qui avec l'outil bmaptool permet de minimiser les temps de transfert. Par exemple pour l'image buster 2019-11-30

wget https://media.tremplin.ens-lyon.fr/isoImages/RaspBerry/DebianBusterPi3/2019-11-30-rpi3-buster.bmap 
wget https://media.tremplin.ens-lyon.fr/isoImages/RaspBerry/DebianBusterPi3/2019-11-30-rpi3-buster.img.xz

1.d Préparation de la micro-SD cible

Copier l'image téléchargée sur la microSD sous Linux

L'image est en format compressé (.xz), si on utilise l'outil bmaptool proposé ici car avec lui il n'est pas nécessaire de la décompresser pour la copier ce qui économise de la bande passante et du temps :

  • le fichier avec l'extension bmap qui est un fichier de configuration permettant une copie accélérée par l'utilitaire bmap-tool (ce fichier est inutile si vous utilisez un sytème d'exploitation moins puissant ne sachant pas exploiter le descriptif de l'image)

  • l'image compressée avec l'extension .img.xz fait une taille d'environ 1/4 de l'image non compréssée avec l'extension .img.

L'utilitaire bmap-tools utilise la description de l'image et raccourcit le temps nécessaire en ne copiant pas les blocs vides et en optimisant la taille des blocs copiés. Ci-dessous, exemple de trace de la copie en utilisant un adapteur SD (/dev/mmcblk0). Avec un adaptateur USB, on aurait un autre device cible (/dev/sdc) pour la copie. Les commandes ci-dessous sont exécutées depuis le répertoire où ont été téchargés les fichiers avec l'image buster du 2018-04-08; changer les valeurs en fonction de l'image choisie. Attention bien copier l'intégralité de la ligne de commande si un ascenseur horizontal apparait au pied.

sudo bmaptool copy --bmap 2019-11-30-rpi3-buster.bmap 2019-11-30-rpi3-buster.img.xz /dev/mmcblk0
bmaptool: info: block map format version 2.0
bmaptool: info: 1894400 blocks of size 4096 (7.2 GiB), mapped 1882112 blocks (7.2 GiB or 99.4%)
bmaptool: info: copying image '2018-04-08-rpi3-buster.img.xz' to block device '/dev/mmcblk0' using bmap file '2018-04-08-rpi3-buster.bmap'
bmaptool: info: 100% copied
bmaptool: info: synchronizing '/dev/mmcblk0'
bmaptool: info: copying time: 2m 49.9s, copying speed 43.3 MiB/sec

Copier l'image téléchargée sur la microSD sous Windows

L'image téléchargée depuis le site est en format compressé (img.xz), elle ne doit pas être recopiée sous forme compressée, pour la décompresser utiliser un logiciel de décompression come par exemple 7z.

Sous windows la manipulation d'images ISO n'est pas non plus possible en standard, télécharger le logiciel Win32Disk puis l'utiliser pour recopier l'image téléchargée sur la carte SD (voir image ci-dessous):

Logiciel Win32diskmanager

Vous disposez maintenant d'une carte micro-SD, qui une fois insérée dans la RaspBerri Pi, va lui permettre de démarrer et de récupérer le réseau filaire. Pour se connecter à un réseau WIFI, le plus simple est de connecter un écran, un clavier et une souris pour le configurer avec l'interface graphique, il est possible de se connecter au WIFI sans écran voir le paragraphe ci-dessous.

Copier l'image téléchargée sur la microSD sous MacOS

L'image doit être également décompressée avec le Logiciel Unarchiver

Ouvrir l'utilitaire de disque et effacer la carte en la formattant en MS-DOS (FAT)

Chercher l'adresse de votre carte SD avec la commande

diskutil list

On trouve , par exemple /dev/disk2

Ouvrir ensuite un terminal et écrire la ligne de commande

sudo dd bs=8m if=2019-11-30-rpi3-buster.img of=/dev/disk2
dd bs=<taille des blocs> if=<source> of=<cible> 

bs=8m signifie une taille des blocs de 8x1024x1024 Voir Commande dd

1.e Ajustement de la taille de l'image avant le démarrage

L'image qui vient d'être recopiée est inscrite sur une partition ajustée à sa taille (inférieure à 8 Go), afin de pouvoir travailler confortablement et utiliser tout l'espace disponible, il est impératif d'agrandir la partition. Cette opération peut se faire avant ou après le premier démarrage. Pour modifier la taille avant le premier démarrage utiliser le commande gparted :

sudo gparted

Dans le logiciel gparted :

  • démonter les deux partitions de la SD
  • redimensionner la seconde partition (ext4)
  • choisir une dimension compatible avec la SD utilisée ou avec les SD cibles, penser à prendre un peu de marge car toutes les SD ne proposent pas effectivement tout l'espace annoncé et par ailleurs ne pas oublier que les constructeurs annoncent les tailles en unités du Système International (puissances de 10), alors que les ordinateurs mesurent les tailles en binaire (pussances de 2). Ainsi une SD achetée pour 8 Gio contiendra au mieux 8 x 10 ^ 9 octets = 8 000 000 000 octets et pas les 8Go 8 x 2 ^ 30 = 8 x 1073741824 = 8 589 934 592 que vous souhaiteriez y mettre ! (Dans cet exemple 7.4 Go est voisin de la limite des 8Gio)

2. Modifications sur la SD pour que la Raspberry Pi puisse se connecter à un réseau WIFI sans écran

La connection a un réseau WIFI impose une authentification et pour qu'elle soit possible, il faut fournir à la raspberry Pi les paramètres d'authentification de l'usager. Quand on ne dispose pas d'écran et donc pas de visualisation de l'application graphique directe depuis la raspberry pi, deux solutions sont possibles : * utiliser le serveur de terminaux pré-installé et lancé au démarrage sur la raspberry qui va permettre d'afficher sur n'importe quel ordinateur disposant d'un client de serveur de terminaux l'écran de notre Raspberry Pi (cette opération se fait après le premier démarrage de la raspberry pi avec une connection filaire)

2.a Utilisation du serveur de terminaux

Démonter et retirer la micro-SD puis l'installer dans la Raspberry Pi, connecter au réseau filaire puis brancher l'alimentation, la Raspberry démarre et se connecte avec une adresse IP fournie par le DHCP. Il est impératif d'avoir quelques connaissances minimales des paramètres du réseau sur lequel a été connecté la raspberry : * S'il s'agit d'un réseau personnel ou d'un réseau pour lequel on a accès à la table d'attribution d'adresses, se connecter au routeur (ou à la box) et récupérer l'adresse IP; la raspberry porte le nom raspife3 * Si on n'a pas accès au routeur utiliser la machine linux déjà employée pour les premières étapes et taper la commande : nmap -sP -n XXX.XXX.XXX.XXX/YY les nombres XXX.XXX.XXX.XXX et YY désignat les paramètres du réseau. Ils sont fournis si on ne les connait pas par la commande ip addr sur la ligne contenant le mot inet.

Utiliser un client de serveur de terminaux comme tightvnc viewer ou remmina pour afficher l'écran de la raspberry Pi sur l'écran de l'ordinateur compagnon (le user est "tsuser" et le mot de passe "raspife3") Gestionnaire de terminaux

Cliquer sur l'outil de gestion du réseau en bas à droite, choisir le réseau WIFI et donner le mot de passe du réseau wifi choisi.

Choisir le Wifi
Gestionnaire de WiFI de la raspberry Pi
Donner le mot de passe
Gestionnaire de WiFI de la raspberry Pi

Eteindre la RaspberryPi en mode terminal avec le user "localadm" car "tsuser" n'a pas ce droit.

 su localadm
 ...
 sudo shutdown -h now

 ```

 Enlever le cable réseau puis remettre la RaspberryPi sous tension : elle doit prendre le réseau wifi sélectionné automatiquement.



**Les modifications ci-dessous sont cruciales** pour la connexion au réseau de l'image lors de son premier démarrage, elles doivent être faites directement sur la SD depuis un environnement capable de lire les partitions ext4. Éditer le fichier `/etc/systemd/network/50-wired.network`  de la micro-SD. **Attention à ne pas modifier le `/etc/systemd/network/50-wired.network` de l'ordinateur utilisé pour faire la configuration** s'il existe. Par défaut, le fichier contient des `***` à la place des numéros de l'IP fixe qui sera utilisée, et un domaine local est utilisé `192.168.***.***`.

```shell
[Match]
Name=enx*

[Network]
DHCP=no
Address=192.168.***.***/24
Gateway=192.168.***.***
DNS=192.168.***.***

Il doit être transformé avec l'adresse IP fixe choisie pour la Raspberry Pi, l'adresse de la passerelle du serveur de noms du réseau qui va l'accueillir. Dans notre exemple, la Raspberry Pi est installée dans le réseau 10.5.10.0/24 à l'adresse 10.5.10.111/24 la passerelle et le DNS se trouvent à l'adresse 10.5.10.253 qui conduit au fichier suivant :

[Match]
Name=enx*

[Network]
DHCP=no
Address=10.5.10.111/24
Gateway=10.5.10.253
DNS=10.5.10.253

tant que l'adresse de l'interface réseau n'est pas connue, on conserve le nom d'adresse générique enx*.

Éditer ensuite le fichier /etc/hosts pour attribuer la bonne adresse au nom de la Raspberry pi (encore par défaut pour le moment). Modifier également le nom "raspife3" si vous le souhaitez (Dans ce cas vous devrez aussi modifier le nom dans le fichier /etc/hostname)

127.0.0.1       localhost
10.5.10.111       raspife3

::1             localhost ip6-localhost ip6-loopback
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters

L'image est pré-configurée pour qu'elle puisse démarrer et se connecter au réseau filaire ou au réseau WIFI, il n'est pas nécessaire de modifier le fichier /etc/systemd/network/55-wireless.network car le réseau WIFI porte le nom générique de wlan0.

3. Premier démarrage et configuration opérationnelle de la Raspberry Pi

Démonter et retirer la micro-SD puis l'installer dans la Raspberry Pi, connecter au réseau filaire puis brancher l'alimentation, la Raspberry démarre et se connecte avec une adresse IP fournie par le DHCP. Il est impératif d'avoir quelques connaissances minimales des paramètres du réseau sur lequel a été connecté la raspberry : * S'il s'agit d'un réseau personnel ou d'un réseau pour lequel on a accès à la table d'attribution d'adresses, se connecter au routeur (ou à la box) et récupérer l'adresse IP; la raspberry porte le nom raspife3 * Si on n'a pas accès au routeur utiliser la machine linux déjà employée pour les premières étapes et taper la commande : nmap -sP -n XXX.XXX.XXX.XXX/YY les nombres XXX.XXX.XXX.XXX et YY désignat les paramètres du réseau. Ils sont fournis si on ne les connait pas par la commande ip addr sur la ligne contenant le mot inet.

On se connecte avec la commande ci-dessous (dans cet exemple la Raspberry se trouve à l'IP 10.5.10.111), on fournit le mot de passe par défaut "AChanger1$" et on accède à la Raspberry.

ssh localadm@10.5.10.111


localadm@10.5.10.111's password: 
Linux raspife3 4.15.14-v7 #1 SMP Tue Apr 3 00:36:04 CEST 2018 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.

3.a Ajustement de la taille de l'image après le démarrage

Si la modification n'a pas été effectuée avant le démarrage, elle peut être effectuée maintenant en utilisant la commande fdisk en tant que superutilisateur comme proposé ci-dessous. Si la modification de taille a déjà été effectuée il est inutile de la refaire!

sudo fdisk /dev/mmcblk0
  • Taper m pour voir la liste des commandes (juste pour information)
  • Taper p pour voir la liste des partitions disponibles, normalement il y en deux

    • une FAT : /dev/mmcblk0p1 * 2048 133119 131072 64M c W95 FAT32 (LBA)
    • une linux : /dev/mmcblk0p2 133120 62517247 62384128 29,8G 83 Linux
  • Taper ensuite

    • d puis
    • 2 puis
    • n puis
    • p puis
    • 2 puis
    • accepter la valeurs par défaut qui correspondent au premier bloc disponible
    • +7600M afin de produire une image qui puisse fonctionner sur une petite carte SD
    • N pour "remove signature",
    • pour finir taper w.

puis :

sudo resize2fs /dev/mmcblk0p2

3.b Changement de nom des mots de passe, ajout d'utilisateurs et finnalisation du réseau et du système

La Raspberry démarre avec le nom générique raspife3 et le même mot de passe générique pour tous les utilisateurs et tous les services sauf moon, ce qui est commode mais absolument pas sécurisé. Pour des raisons de sécurité, il est impératif de changer immédiatement les mots de passe des utilisateurs. On commence par l'utilisateur localadm qui est connecté avec la commande suivante :

localadm@raspife3:~$  passwd
Changement du mot de passe pour localadm.
Mot de passe UNIX (actuel) : 
Entrez le nouveau mot de passe UNIX : 
Retapez le nouveau mot de passe UNIX : 
passwd: password updated successfully

utilisateurs connus

Pour avoir la liste des utisateurs créés pour le projet, on utilise la commande ci-dessous. Attention on ne touchera qu'aux utilisateurs créés pour le projet, le reste du système devant rester dans l'état standard.

localadm@raspife3:~$ cat /etc/passwd

Les utilisateurs ajoutés à modifier se trouvent à la fin du fichier.

root:x:0:0:root:/root:/bin/bash

.../...

localadm:x:1001:1003:localadm user,,,:/home/localadm:/bin/bash
weewx:x:1002:1004:weewx user,,,:/home/weewx:/bin/bash
moon:x:1003:1005:moon user,,,:/home/moon:/bin/bash
callisto:x:1004:1006:callisto user,,,:/home/callisto:/bin/bash
tsuser:x:1005:1007:tsuser user,,,:/home/tsuser:/bin/bash

On conserve à localadm son mot de passe que l'on vient de changer et on change les mots de passe de tsuser, moon, callisto et weewx.

localadm@raspife3:~$ sudo passwd moon
Entrez le nouveau mot de passe UNIX : 
Retapez le nouveau mot de passe UNIX : 
passwd: password updated successfully
localadm@raspife3:~$ sudo passwd tsuser
Entrez le nouveau mot de passe UNIX : 
Retapez le nouveau mot de passe UNIX : 
passwd: password updated successfully
localadm@raspife3:~$ sudo passwd weewx
Entrez le nouveau mot de passe UNIX : 
Retapez le nouveau mot de passe UNIX : 
passwd: password updated successfully
localadm@raspife3:~$ sudo passwd callisto
Entrez le nouveau mot de passe UNIX : 
Retapez le nouveau mot de passe UNIX : 
passwd: password updated successfully

En cas de besoin, pour des connexions sécurisées ajouter les clés ssh des utilisateurs dans le répertoire .ssh des usage(par exemple weewx pour accéder à la base de données de centralisation des données opendata).

Mise à jour du système

Il a pu s'écouler du temps entre la création de l'image et sa mise en oeuvre, il est important de faire une mise à jour du système avec les 3 commandes énumérées ci-dessous.

localadm@raspife3:~$ sudo apt-get update
Ign:1 http://debian.mirrors.ovh.net/debian stretch InRelease
Réception de:2 http://debian.mirrors.ovh.net/debian stretch-updates InRelease [91,0 kB]
Réception de:3 http://security.debian.org stretch/updates InRelease [63,0 kB]
Réception de:4 http://debian.mirrors.ovh.net/debian stretch Release [118 kB]
272 ko réceptionnés en 2s (94,1 ko/s)                       
Lecture des listes de paquets... Fait

localadm@raspife3:~$ sudo apt-get upgrade
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Calcul de la mise à jour... Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.

localadm@raspife3:~$ sudo apt-get dist-upgrade
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Calcul de la mise à jour... Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.

Interfaces réseau disponibles

Pour obtenir la liste des interfaces disponibles, on utilise la commande ip token, on a deux interfaces par défaut, l'une (WIFI) est identifiée par wlan0 l'autre commence par enx et ajoute des informations tirées de l'adresse MAC de l'interface filaire.

localadm@raspife3:~$ ip token
token :: dev enx123456789abc
token :: dev wlan0

L'adresse trouvée doit être copiée dans le fichier /etc/systemd/network/50-wired.network qui devient :

[Match]
Name=enx123456789abc

Le reste du fichier est inchangé, de même le fichier /etc/systemd/network/55-wireless.network n'est pas touché.

Il est possible pour des raisons de sécurité de choisir pour les connexions ssh un autre port que le port 22 en modifiant le paramètre port du fichier /etc/ssh/sshd_config.

Port xxxxx

Nom de la Raspberry

On obtient le nom de la Raspberry par la commande hostname, on cherche ensuite toutes les occurrences de ce nom dans le répertoire de confguration /etc

localadm@raspife3:~$ hostname
raspife3
localadm@raspife3:~$ sudo rgrep -e 'raspife3' /etc

.../...

/etc/systemd/network/50-wired.network:Host=raspife3
/etc/systemd/network/55-wireless.network:Host=raspife3
/etc/hosts:127.0.1.1       raspife3

Le fichier /etc/hostname contient aussi l'identification de la Raspberry Pi.

On modifie les fichiers trouvés en remplaçant raspife3 par le nom choisi pour cette Raspberry (ici six fichiers doivent être modifiés). Pour terminer, on réalise une mise à jour du système et on vérifie la langue ansi que le fuseau horaire utilisés. La commande suivante permet de reconfigurer les langues français-UTF8 et anglais-UTF8 dans cet exemple. Puis fuseau horaire Europe/Paris.

localadm@raspife3:~$ sudo dpkg-reconfigure locales
Generating locales (this might take a while)...
  en_US.UTF-8...
 done
  fr_FR.UTF-8... done
Generation complete.

localadm@raspife3:~$ sudo dpkg-reconfigure tzdata

Current default time zone: 'Europe/Paris'
Local time is now:      dimanche 21 janvier 2018, 17:09:29 (UTC+0100).
Universal Time is now:  Sun Jan 21 16:09:29 UTC 2018.

Ajout d'utilisateurs personnalisés et de services

Il est possible d'ajouter autant d'utilisateurs qu'on le souhaite ainsi que tous les services et toutes les fonctions que propose un ordinateur portable à un serveur. La seule limitation est la puissance délivrée par le processeur ARM de la Raspberry et la mémoire disponible. Les services Snap (programmation par blocs identique à scratch), jupyter et jupyterhub ont été testés en situation de formation avec une vingtaine d'usagers. Il est possible d'activer la connexion à un annuaire de type LDAP ou à un serveur d'espaces personnalisés du cloud et bien d'autres choses...

Pour ajouter un utilisateur, utiliser la commande sudo adduser :

sudo adduser vidal
[sudo] Mot de passe de ens-ife : 
Ajout de l'utilisateur « vidal » ...
Ajout du nouveau groupe « vidal » (1008) ...
Ajout du nouvel utilisateur « vidal » (1006) avec le groupe « vidal » ...
Création du répertoire personnel « /home/vidal »...
Copie des fichiers depuis « /etc/skel »...
Entrez le nouveau mot de passe UNIX : 
Retapez le nouveau mot de passe UNIX : 
passwd: password updated successfully
Changing the user information for vidal
Enter the new value, or press ENTER for the default
    Full Name []: vidal gerard
    Room Number []: 
    Work Phone []: 
    Home Phone []: 
    Other []: 
Cette information est-elle correcte ? [O/n]

Ne pas oublier d'ajouter les nouveaux utilisateurs dans les groupes requis. La commande ci-dessous ajoute le user vidal aux groupes dialout, audio, video, plugdev, users, netdev, i2c, gpio, jupyterhub.

for i in dialout audio video plugdev users netdev i2c gpio jupyterhub ; do sudo adduser vidal $i; done

3.3 Services web opérationnels pour le codage : snap (->scratch), jupyter(python et JS IDE Arduino

La raspberry propose plusieurs services permettant d'accomoder une large gamme de stratégies pour enseigner ou apprendre le codage. La raspberry IFÉ-ENS propose même l'IDE Arduino pour programmer le microcontroleur le plus célèbre du monde des makers !

Les bus GPIO, i2c, SPI sont tous opérationnels et les Cahiers de programmes, développés par le projet Tremplin, peuvent immédiatement être mis en oeuvre. Les cahiers de programmes de codage sont pré-installés pour l'utilisateur moon

Snap

Le serveur snap (équivalent scratch) est directement opérationnel et disponible à l'adresse : http://XXX.XXX.XXX.XXX/snap.

Jupyterhub

Le serveur jupyterhub est directement accessible à l'adresse http://XXX.XXX.XXX.XXX:8000 avec tout login, mot de passe d'un utilisateur enregistré sur la raspberry (la connexion à un LDAP est possible mais requiert un savoir plus avancé hors du champ de cette introduction).

4. Configuration d'une box pour utilisation d'une RaspberryPi à distance

Affectation d'une IP Fixe

Paramètres de la Box/DHCP/Baux statiques

Gestion des ports

3 redirections

Transfert de port pour ssh

Transfert de port pour ssh

Transfert de port pour http

Sur un port différent du port 80 qui est le port par défaut susceptible d'être attaqué

Transfert de port pour http

Transfert de port pour la vidéo

Transfert de port pour Vidéo


Webographie

  1. Création de l'image
  2. Présentation des images disponibles
  3. Source des images g_vidal rpi23-gen-image

Commentaires