lundi 26 septembre 2016

RPi 3 - Démarrage

Raspbian


Cet article résume comment installer un système Raspbian, sur une Raspberry Pi 3 Model B

Accessoires


Installation d'un serveur


Le système d’exploitation est une distribution de type Linux Debian appelée Raspbian.
La distribution en usage actuellement dérive d'une Debian Jessie. Celle-ci est disponible en téléchargement sur le site de raspberrypi.

La distribution Raspbian peut se télécharger depuis un poste Linux avec la ligne de commande suivante:
wget http://downloads.raspberrypi.org/raspbian_latest

Décompresser le fichier contenant la distribution: unzip  raspbian_latest

Inserer la carte SD dans son logement puis rechercher son point de montage.
La commande dmesg permet d'identifier le type de périphérique: 
[15362.326489] mmcblk0: mmc0:0001 SD16G 14.6 GiB
[15362.329144]  mmcblk0: p1
[15362.496985] FAT-fs (mmcblk0p1): utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive!


La commande umount permet de démonter la partition qui contiendra la distribution:
umount /dev/mmcblk0p1

Puis recopier l'image Raspbian sur la carte SD (Une procèdure détallée est disponible sur le site raspberry): dd bs=4M if=./2016-05-27-raspbian-jessie.img of=/dev/mmcblk0

Après cette opération de copie assez longue, la carte SD peut être insérée dans le logement de la carte du Raspberry Pi.

1er démarrage


Après insertion de la carte SD et mise sous tension, le systéme de fichier est redimensionné puis le serveur X est démarré. Ensuite, il est possible de lancer le menu de configuration en saisissant la commande raspi-config dans un terminal (avec les droits de root).


Configuration depuis raspi-config


Voici les options de menu raspi-config:
  • Expand_Filesystem: par défault la partition système fait 2Go. Cette option permet de l'agrandir afin d'occuper tout l'espace disponible.
  •  Change User Password: pour modifier le mot de passe de l'utilisateur par default (pi/raspberry) .
  •  Enabled boot to Desktop/Scratch: pour lancer une console ou un environnement graphique au boot. 
  •  Internationalisation Options: pour changer la langue. Pour mettre  et mettre le clavier en français. Pour changer l'heure locale.
  •  Advanced Options: Pour activer le service SSH afin de se connecter à distance. Pour redéfinir le nom de la machine sur le réseau. Pour définir les quantités de mémoire allouées respectivement aux CPU et au GPU.

Utiliser le français

Depuis le menu:  raspi-config | Internationalisation Options | Change locale

Définir l'heure locale

Depuis le menu:  raspi-config | Internationalisation Options | Change Timezone

Obligatoirement définir la localisation Wifi pour GB

Depuis le menu:  raspi-config | Internationalisation Options | Change Wi-fi country

Mettre le clavier en français

Depuis le menu:  raspi-config | Internationalisation Options | Change Keyboard layout

Etendre le système de fichier

Depuis le menu:  raspi-config | Expand Filesystem

Changer de mot de passe

Depuis le menu:  raspi-config | Change User Password

Démarrer le systéme en mode console

Depuis le menu:  raspi-config | Enable boot to Desktop / Scratch

Activer le serveur SSH

Depuis le menu:  raspi-config | Advanced Options | SSH

Définir le nom utilisé pour ce système

Depuis le menu:  raspi-config | Advanced Options | Hostname

Définir la quantité de mémoire allouée au GPU

Depuis le menu:  raspi-config | Advanced Options | Split

Utiliser 32Mib de RAM pour le GPU et le reste disponible pour le CPU.

Activer le chargement des modules noyau SPI

Depuis le menu:  raspi-config | Advanced Options | SPI

Activer le chargement des modules noyau I2C

Depuis le menu:  raspi-config | Advanced Options | I2C

Redémarrage et poursuite de la configuration


Ensuite, on pourra effectuer les actions suivantes:
  • Définir la liste des dépots sources
  • Mettre à jour les paquets
  • Définir une adresse IP statique

Définir la liste des dépots sources

Pour une distribution dérivée de la version Debian Jessie, le fichier de définition des paquets devrait contenir les entrées suivantes:
cat /etc/apt/sources.list
deb http://mirrordirector.raspbian.org/raspbian/ jessie main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspbian.org/raspbian/ jessie main contrib non-free rpi

Mettre à jour les paquets

Dans ce cas, on peut mettre à jour le système depuis Internet avec la commande suivante:
sudo apt-get update

Définir une adresse IP statique

Afin de faciliter les accès ultérieurs par ssh, on peut remplacer l'adressage DHCP par une IP statique:

/etc/network/interfaces
# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

auto lo
iface lo inet loopback

iface eth0 inet manual

allow-hotplug wlan0
iface wlan0 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

allow-hotplug wlan1
iface wlan1 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Attention:

  • Mon routeur est une LivePlay Orange qui utilise le masque de sous réseau  192.168.1.xxx mais certains utilisent 192.168.0.xxx.
  • DHCP est désormais pris en charge par un nouveau paquet appelé dhcpcd. Dans ce cas, le fichier de configuration des interfaces réseaux ne comprend plus la ligne d'instruction iface eth0 inet dhcp. Celle-ci est remplacée par la ligne d'instruction iface eth0 inet manual.Pour définir un IP statique le fichier  /etc/network/interfaces reste désormais inchangé. Il faudra ajouter les instructions suivantes à la fin du fichier /etc/dhcpcd.conf
# Static IP configuration for eth0.
interface eth0
static ip_address=192.168.1.xxx/24
static routers=192.168.1.1

Résolution des noms de domaines

Lorsque la carte réseau possède une adresse IP définie de manière statique, la résolution de noms (DNS) ne se fait plus et le fichier de configuration /etc/resolv.conf est vide ! Dans ce cas, il sera nécessaire d'ajouter les entrées de DNS dans le fichier de configuration /etc/dhcpcd.conf qui prendra finalement la forme suivante:
# Static IP configuration for eth0.
interface eth0
static ip_address=192.168.1.xxx/24
static routers=192.168.1.1
static domain_name_servers=8.8.4.4 8.8.8.8

Redémarrage


Pour redémarrer la raspberry, il faudra saisir la commande suivante:
sudo reboot

Ensuite le systéme sera rendu accessible à distance depuis un client ssh avec la commande suivante:
ssh pi@192.168.1.xxx

Etat des lieux


Mémoire

La commande free -mh pernet de visualiser la quantité de RAM utilisée par le systéme:
                   total         used        free        shared      buffers     cached
Mem:          957M        91M       865M       6,5M       7,7M        45M
-/+ buffers/cache:        39M       918M
Swap:          99M         0B        99M

Espace disque

La commande df -h permet d'obtenir la liste des systémes de fichiers montés ainsi que leur point de montage et taux d'occupation:

Sys. de fichiers   Taille     Utilisé     Dispo   Uti%     Monté sur
/dev/root               30G        3,3G         25G    12%    /
devtmpfs             475M           0        475M      0%    /dev
tmpfs                   479M           0        479M      0%    /dev/shm
tmpfs                   479M       6,5M     473M       2%    /run
tmpfs                    5,0M       4,0K       5,0M       1%    /run/lock
tmpfs                   479M          0         479M       0%    /sys/fs/cgroup
/dev/mmcblk0p1   63M        21M        43M      33%    /boot
tmpfs                     96M          0           96M        0%    /run/user/1000

Adressage IP

Les commandes ifconfig et ip addr permettent d'afficher les infomations sur les interfaces réseau configurées:

Aucun commentaire:

Enregistrer un commentaire