Raspbian
Cet article résume comment installer un système Raspbian, sur une carte SD depuis un PC fonctionnant sous Linux.Le système installé devra possèder les caractéristiques d'un serveur et non d'une station de travail pourvue d'un environnement graphique. Il sera donc configuré en conséquence.
Accessoires
- Une carte SD.
- Un clavier et une souris USB standard.
- Un chargeur pour smartphome.
- Un câble Ethernet.
- Un câble HDMI.
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 Wheezy. 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:
ls -alh
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
Finalement, on recopie l'image Raspbian sur la carte SD ( Une procèdure détallée est disponible sur le site raspberry):
dd bs=4M if=./2015-05-05-raspbian-wheezy.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, un menu de configuration s'affiche automatiquement lors du premier démarrage. Ensuite, il sera toujours possible de relancer ce menu 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 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 localeDéfinir l'heure locale
Depuis le menu: raspi-config | Internationalisation Options | Change TimezoneMettre le clavier en français
Depuis le menu: raspi-config | Internationalisation Options | Change Keyboard layoutEtendre le système de fichier
Depuis le menu: raspi-config | Expand FilesystemChanger de mot de passe
Depuis le menu: raspi-config | Change User PasswordDémarrer le systéme en mode console
Depuis le menu: raspi-config | Enable boot to Desktop / ScratchActiver le serveur SSH
Depuis le menu: raspi-config | Advanced Options | SSHDéfinir le nom utilisé pour ce système
Depuis le menu: raspi-config | Advanced Options | HostnameDéfinir la quantité de mémoire allouée au GPU
Depuis le menu: raspi-config | Advanced Options | SplitUtiliser 16Mib de RAM pour le GPU et le reste disponible pour le CPU.
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 Wheezy, le fichier de définition des paquets devrait contenir les entrées suivantes:cat /etc/apt/sources.list
deb http://mirrordirector.raspbian.org/raspbian/ wheezy main contrib non-free rpi
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://mirror.ox.ac.uk/sites/archive.raspbian.org/archive/raspbian/ wheezy 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:sudo vi /etc/network/interfaces
Remplacer:
iface eth0 inet dhcp
Par:
iface eth0 inet static
address 192.168.1.xxx
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
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. La suppression de la ligne iface eth0 inet manual est actuellement insuffisante et lors du redémarrage de l'interface réseau, le service dhcpcd continue de collecter une IP dynamique. Le systéme possède alors deux adresses IP: une IP statique définie par l'instruction iface eth0 inet static et une IP dynamique obtenue par le client dhcpcd... Il est nécessaire de supprimer le paquet raspberrypi-net-mods, puis de descativer dhcpcd (voir les deux lignes de commande ci-dessous). Le redémarrage de l'interface réseau conduira enfin à l'obtention d'une seule IP statique.
- sudo apt-get purge raspberrypi-net-mods
- sudo update-rc.d -f dhcpcd remove
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/network/interfaces qui prendra finalement la forme suivante:allow-hotplug eth0
iface eth0 inet static
address 192.168.1.xxx
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
dns-domain home
dns-search home
dns-nameservers 192.168.1.1 8.8.8.8 4.2.2.1
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: 482M 65M 417M 0B 10M 30M
-/+ buffers/cache: 24M 458M
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:Filesystem Size Used Avail Use% Mounted on
rootfs 30G 2.4G 26G 9% /
/dev/root 30G 2.4G 26G 9% /
devtmpfs 238M 0 238M 0% /dev
tmpfs 49M 228K 49M 1% /run
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 97M 0 97M 0% /run/shm
/dev/mmcblk0p1 56M 19M 37M 34% /boot
Aucun commentaire:
Enregistrer un commentaire