A la découverte de linux pour le Raspberry Pi
Publié le 21 février 2014La distribution Raspbian est livrée avec LXDE (Lightweight X11 Desktop Environment), un environnement de bureau graphique simplifié qui tourne sur des ordinateurs Unix et Linux depuis les années 1980. Une partie des outils visibles sur le Bureau et dans le menu (l’éditeur de texte Leafpad et le shell LX Terminal, par exemple) sont fournis avec LXDE.
Openbox est un gestionnaire de fenêtres (window manager) qui contrôle l’aspect des fenêtres et des menus sous LXDE. Pour modifier l’apparence de votre Bureau, lancez simplement l’outil de configuration d’Openbox. Pour cela, cliquez sur le menu Desktop en bas à gauche et choisissez Other>Openbox Configuration Manager. Contrairement à Mac OS X et Windows, il est facile de personnaliser votre environnement de travail ou d’installer d’autres gestionnaires de fenêtres. D’autres distributions Linux pour le Raspberry Pi offrent des environnements différents, destinés à des applications telles que les lecteurs multimédias, les systèmes téléphoniques et les pare-feu pour les réseaux. Pour obtenir la liste complète et actualisée des distributions, consultez la page suivante : http://elinux.org/RPi_Distributions.
Les différents outils que vous serez amené à utiliser fréquemment sont les suivants.
Le gestionnaire des fichiers (File Manager)
Si vous préférez déplacer vos fichiers sans passer par la ligne de commande (voir plus loin), sélectionnez File Manager dans le menu Accessories. Vous pourrez alors naviguer dans le système de fichiers grâce à des icônes et des dossiers, comme vous en avez probablement l’habitude.
Le navigateur web
Le navigateur web par défaut, Midori, a été élaboré de manière à pouvoir fonctionner avec peu de ressources. On oublie facilement la multitude de tâches effectuées par les navigateurs de nos jours. Raspbian a été conçu pour être une distribution très légère et certaines fonctionnalités que vous attendez d’un navigateur peuvent faire défaut. Par exemple, les plug-ins Flash et Java ne sont pas installés sur Midori, vous ne pourrez donc pas accéder à YouTube, ni lire de vidéos HTML5. Nous verrons plus loin comment installer d’autres logiciels tels que Java. Vous trouverez les outils et les options de Midori dans le menu déroulant situé en haut à droite de la fenêtre (figure 2-2). Vous pouvez également installer d’autres navigateurs comme NetSurf et Dillo.
La vidéo et l’audio
La lecture multimédia est assurée par omxplayer, un logiciel encore en version bêta, et qui existe seulement en ligne de commande. omxplayer a été conçu pour fonctionner avec le GPU (Graphics Processing Unit) du SoC Broadcom, ce qui libère le CPU de lourds calculs. D’autres logiciels gratuits comme VLC et mPlayer fonctionnent moins bien car ils ne sont pas adaptés pour travailler avec le GPU.
Pour réduire son prix de vente, le Raspberry Pi n’est pas fourni avec les licences permettant de décoder certains types de vidéos. Si vous souhaitez regarder des programmes télévisés ou des DVD encodés au format MPEG-2 (ou le format VC-1 de Microsoft), vous serez obligé d’acheter une clé de licence sur la boutique en ligne de la fondation Raspberry Pi. Une licence de décodage et d’encodage H.264 (MPEG-4) est toutefois livrée avec le Raspberry Pi.
L’éditeur de texte
Leafpad est l’éditeur de texte par défaut disponible dans le menu principal. En ligne de commande, nano est un autre éditeur très simple et facile à utiliser. Les autres éditeurs de texte traditionnels Unix (comme vim et emacs) ne sont pas installés par défaut mais sont faciles à obtenir (voir la section « Installation de nouveaux logiciels », page 41).
La fonction copier-coller
Les fonctions Copier et Coller fonctionnent la plupart du temps sans problème entre les applications, mais certains programmes ne gèrent pas ces fonctions correctement. Si votre souris est équipée d’une molette centrale, sélectionnez le texte à copier comme vous le feriez habituellement (cliquez-glissez avec le bouton gauche de la souris). Placez ensuite le curseur de la souris sur la fenêtre de destination et collez le texte en appuyant sur la molette centrale.
Le shell
Beaucoup de tâches nécessitent l’utilisation de la ligne de commande. Le programme LXTerminal vous permet d’accéder à cette ligne de commande et au shell. Le shell par défaut sur Raspbian, ainsi que sur la majorité des systèmes Linux, s’appelle Bourne-Again Shell (ou bash). Il existe une alternative appelée dash. Vous pouvez changer de shell par le menu Programme ou par la commande chsh
.
Utilisation de la ligne de commande
Si cela peut vous aider, vous pouvez imaginer la ligne de commande comme un jeu d’aventure textuel à la Zork, dans lequel les fichiers et le système de fichiers remplacent les monstres et les labyrinthes. Si cette métaphore ne vous aide pas, ne vous inquiétez pas. Toutes les commandes et tous les concepts que nous allons aborder dans cette section sont des standards Linux qu’il est intéressant de connaître.
Avant toute chose, ouvrez le programme LXTerminal (figure 2-3). Deux fonctionnalités vous faciliteront la vie dans le shell : l’autocomplétion et la mémorisation des dernières commandes. La plupart du temps, vous n’aurez qu’à saisir que les premiers caractères d’une commande ou du nom d’un fichier, puis à appuyer sur la touche Tab. Le shell vous proposera de compléter la commande en fonction des noms de fichier qui se trouvent dans le répertoire courant, ou des programmes situés dans les répertoires souvent utilisés (le shell va chercher les programmes exécutables à des emplacements tels que /bin
ou /usr/bin/).
Si vous appuyez sur la flèche du haut dans la ligne de commande, vous reviendrez en arrière dans l’historique des commandes. Cette fonction s’avère fort utile si vous avez mal saisi un caractère dans une longue chaîne de commandes ou si vous devez répéter et modifier des opérations.
Les fichiers et le système de fichiers
Le tableau 2-1 liste certains des répertoires les plus importants dans le système de fichiers de Raspbian. La plupart d’entre eux suivent le standard Linux pour leur structure. Quelques-uns sont spécifiques au Raspberry Pi. Le répertoire /sys
permet d’accéder à tout le matériel de votre Pi.
RÉPERTOIRE | DESCRIPTION |
/ |
La « racine », c’est l’entrée du labyrinthe du système de fichiers. |
/bin |
Programmes et commandes pour tous les utilisateurs |
/boot |
Tous les fichiers nécessaires au démarrage du noyau |
/dev |
Fichiers spéciaux qui représentent les périphériques installés.
Des fichiers virtuels qui permettent de communiquer avec des périphériques, comme les ports série, l’écran… |
/etc |
Fichiers de configuration du système |
/etc/init.d |
Scripts pour démarrer les services du système |
/etc/X11 |
Fichiers de configuration pour le mode graphique X11 |
/home |
Répertoires personnels des utilisateurs |
/home/pi |
Répertoire personnel pour l’utilisateur Pi |
/lib |
Bibliothèques partagées et modules du noyau |
/media |
Points de montage pour les supports amovibles (c’est ici qu’apparaîtra votre clé USB Flash, par exemple) |
/proc |
Répertoire virtuel contenant des informations sur les processus en cours et le système d’exploitation. |
/sbin |
Programmes pour l’administration du système |
/sys |
Répertoire spécial contenant des fichiers qui contrôlent le matériel. |
/tmp |
Emplacement dans lequel les programmes peuvent créer des fichiers temporaires (ils sont effacés à chaque redémarrage). |
/usr |
Programmes et données accessibles par tous les utilisateurs |
/usr/bin |
La plupart des programmes du système d’exploitation se trouvent ici. |
/usr/games |
Oui, des jeux |
/usr/lib |
Autres bibliothèques partagées pour fournir des fonctions standards à la plupart des applications |
/usr/local |
Logiciels spécifiques à une machine |
/usr/sbin |
Autres programmes d’administration du système |
/usr/share |
Fichiers communs aux applications, comme les icônes et les polices de caractères |
/usr/src |
Linux est open source, voici donc les codes sources. |
/var |
Journal des messages du système et données en attente |
/var/backups |
Sauvegardes des fichiers système les plus critiques |
/var/cache |
Contient les fichiers de cache des programmes (comme apt−get ou un navigateur web). |
/var/log |
Archive des messages du système (logs) |
/var/mail |
Les e-mails sont mis en attente ici, si votre Pi est paramétré pour les gérer. |
/var/spool |
Les données en attente (e-mails entrants, documents à imprimer, etc.) |
Votre répertoire actuel s’affichera devant l’invite de commande, aussi appelée le prompt. Sous Linux, votre répertoire personnel (home) est aussi représenté avec le caractère ~ pour faire plus court. À l’ouverture de LXTerminal, vous vous trouverez dans votre répertoire personnel et votre prompt ressemblera à ceci :
pi@raspberry ~ $
Voici une explication de ce prompt :
pi @raspberry ~ $
Votre nom d’utilisateur, pi,
suivi du caractère arobase (@).
Le nom de votre ordinateur (raspberry
est le nom par défaut).
Le répertoire courant (current working directory) du shell. Lorsque vous démarrez une session, vous vous trouverez toujours dans votre répertoire personnel (~).
Le prompt du shell (ou invite de commande). Tout texte que vous saisirez apparaîtra à sa droite. Appuyez sur la touche Entrée après chacune de vos commandes pour les exécuter.
La commande cd
(change directory) vous permet de naviguer dans le système de fichiers. Les deux commandes suivantes ont le même résultat (aller dans le répertoire personnel) pour l’utilisateur du Pi :
cd /home/pi/
cd ~
Si le nom du répertoire que vous indiquez commence par le caractère /,
il sera interprété comme un chemin « absolu » (c’est-à-dire par rapport à la racine). Sinon, le répertoire sera considéré comme « relatif », c’est-à-dire par rapport au répertoire courant. Vous pouvez aussi employer.
pour indiquer le répertoire courant et ..
pour le répertoire parent. Par exemple, voici comment remonter vers la racine du système de fichiers :
pi@raspberrypi ~ $ cd ..
pi@raspberrypi /home $ cd ..
Vous pouvez aussi y arriver directement avec le chemin absolu (/) :
pi@raspberrypi ~ $ cd /
Dès que vous arrivez dans un répertoire, utilisez la commande ls
pour afficher tous les fichiers et sous-répertoires :
pi@raspberrypi / $ ls
bin etc lost+found opt run srv var
boot home media proc sbin sys usr
dev lib mnt root selinux tmp
La plupart des commandes proposent des paramètres supplémentaires ou « arguments » pour activer des options et comportements divers. Par exemple, l’argument −l
de ls
fournit une liste plus détaillée montrant la taille des fichiers, leurs dates et leurs permissions :
pi@raspberrypi / $ ls –l
total 8
drwxr−xr−x 2 pi pi 4096 Oct 12 14:26 Desktop
drwxrwxr−x 2 pi pi 4096 Jul 20 14:07 python_games
L’argument −a
liste tous les fichiers, même ceux qui sont normalement invisibles :
pi@raspberrypi ~ $ ls −la
total 80
drwxr−xr−x 11 pi pi 4096 Oct 12 14:26 .
drwxr−xr−x 3 root root 4096 Sep 18 07:48 ..
−rw−−−−−−− 1 pi pi 25 Sep 18 09:22 .bash_history
−rw−r−−r−− 1 pi pi 220 Sep 18 07:48 .bash_logout
−rw−r−−r−− 1 pi pi 3243 Sep 18 07:48 .bashrc
drwxr−xr−x 6 pi pi 4096 Sep 19 01:19 .cache
drwxr−xr−x 9 pi pi 4096 Oct 12 12:57 .config
drwx−−−−−− 3 pi pi 4096 Sep 18 09:24 .dbus
drwxr−xr−x 2 pi pi 4096 Oct 12 14:26 Desktop
−rw−r−−r−− 1 pi pi 36 Sep 18 09:35 .dmrc
drwx−−−−−− 2 pi pi 4096 Sep 18 09:24 .gvfs
drwxr−xr−x 2 pi pi 4096 Oct 12 12:53 .idlerc
−rw−−−−−−− 1 pi pi 35 Sep 18 12:11 .lesshst
drwx−−−−−− 3 pi pi 4096 Sep 19 01:19 .local
−rw−r−−r−− 1 pi pi 675 Sep 18 07:48 .profile
drwxrwxr−x 2 pi pi 4096 Jul 20 14:07 python_games
drwx−−−−−− 4 pi pi 4096 Oct 12 12:57 .thumbnails
−rw−−−−−−− 1 pi pi 56 Sep 18 09:35 .Xauthority
−rw−−−−−−− 1 pi pi 300 Oct 12 12:57 .xsession−errors
−rw−−−−−−− 1 pi pi 1391 Sep 18 09:35 .xsession−errors.old
Utilisez la commande mv
pour renommer ou déplacer un fichier. La commande touch
peut être employée pour créer un fichier vide :
pi@raspberrypi ~ $ touch foo
pi@raspberrypi ~ $ ls
foo Desktop python_games
pi@raspberrypi ~ $ mv foo baz
pi@raspberrypi ~ $ ls
baz Desktop python_games
Pour effacer un fichier, utilisez la commande rm
. Si vous souhaitez supprimer un répertoire, vous pouvez utiliser rmdir
si le répertoire est vide, et rm −r
s’il ne l’est pas. L’argument −r
est ajouté à la commande rm
, il indique que tout le contenu du répertoire doit être supprimé récursivement (y compris les sous-répertoires).
Si vous voulez connaître tous les arguments proposés par une commande particulière, utilisez la commande man
ou l’argument −−help
:
pi@raspberrypi ~ $ man curl
pi@raspberrypi ~ $ rm −−help
Pour créer un nouveau répertoire, utilisez mkdir
.
Pour regrouper tous les fichiers d’un répertoire dans un seul fichier d’archive, utilisez la commande tar
(créée à l’origine pour gérer les archives sur bandes magnétiques). Vous noterez que beaucoup d’archives de fichiers, d’applications ou de codes sources sont distribués sous forme de fichiers de type tar
. Ces fichiers sont souvent compressés avec la commande gzip
et sont semblables à des archives au format .zip
sur d’autres plates-formes. Essayez ceci :
pi@raspberrypi ~ $ mkdir myDir
pi@raspberrypi ~ $ cd myDir
pi@raspberrypi myDir $ touch foo bar baz
pi@raspberrypi myDir $ cd ..
pi@raspberrypi ~ $ tar −cf myDir.tar myDir
pi@raspberrypi ~ $ gzip myDir.tar
Les deux dernières commandes peuvent être combinées avec l’argument −z
de tar
:
pi@raspberrypi ~ $ tar −czf myDir.tar.gz myDir
Vous obtenez une archive au format .tar.gz
contenant tous les fichiers de ce répertoire. Elle pourra être sauvegardée ou encore partagée par e-mail ou via Internet.
D’autres commandes Linux
Le succès de Linux (et d’Unix) tient, entre autres, à sa philosophie modulaire, qui encourage la création de systèmes complexes à partir des programmes simples et qui peuvent communiquer entre eux facilement. Nous allons comprendre comment y arriver en examinant deux techniques : les tuyaux et les redirections.
Les tuyaux sont un moyen simple de chaîner deux programmes ensemble pour que la sortie de l’un aille dans l’entrée de l’autre. La plupart des programmes Linux peuvent lire des données sur leur « entrée standard » (souvent appelée stdin
), écrire des données sur leur « sortie standard » (stdout
) et envoyer les messages d’erreur sur leur erreur standard (stderr
). Un tuyau vous permet de connecter le stdout
d’un programme au stdin
d’un autre (figure 2-4) au moyen de l’opérateur |,
comme dans cet exemple :
pi@raspberrypi ~ $ ls −la | less
Appuyez sur la touche Q pour sortir du programme less
.
Et maintenant, quelque chose de plus amusant à essayer :
pi@raspberrypi ~ $ sudo cat /boot/kernel.img | aplay
Il vaut mieux vérifier le volume des haut-parleurs avant de tenter cela. En effet, cette commande lit l’image du kernel et « crache » tous ses bits dans le lecteur audio. Vous pouvez entendre votre kernel !
Comme vous le verrez plus loin dans d’autres exemples de ce livre, nous allons aussi utiliser les redirections afin d’exécuter une commande et envoyer sa sortie stdout
dans un fichier. L’autre philosophie de Linux, héritée de son inspiration Unix, est que « tout est fichier ». Linux traite donc beaucoup de choses de la même manière qu’il traite des fichiers ordinaires (comme les broches d’entrées et sorties généralistes de la carte Pi). Les redirections sont souvent très utiles. Pour rediriger la sortie stdout
d’un programme dans un fichier, utilisez l’opérateur >
:
pi@raspberrypi ~ $ ls > directoryListing.txt
La liste des fichiers du répertoire courant est alors écrite dans un fichier.
En plus de l’autocomplétion (touche Tab) et de l’historique des commandes (flèche de direction vers le haut), il existe aussi des combinaisons de touches dont vous aurez besoin pour utiliser le shell. En voici quelques-unes :
• Ctrl + C
Termine le programme en cours d’exécution. Cette combinaison ne fonctionne pas pour tous les programmes, comme les éditeurs de texte qui l’interprètent différemment.
• Ctrl + D
Termine la session dans le shell, lorsque cette combinaison de touches est tapée dans une ligne de commande vide (ne saisissez rien après le $
avant de taper Ctrl + D).
• Ctrl + A
Déplace le curseur au début de la ligne (équivalent de la touche Début).
• Ctrl + E
Déplace le curseur à la fin de la ligne (équivalent de la touche Fin).
Il existe d’autres touches et combinaisons spéciales, nous ne vous présentons que celles que vous serez amené à utiliser tous les jours.
Vous voudrez parfois afficher le contenu d’un fichier sur votre écran. S’il s’agit d’un fichier texte et que vous avez envie de le lire page à page, utilisez less
:
pi@raspberrypi ~ $ ls > flob.txt
pi@raspberrypi ~ $ less flob.txt
Si vous voulez simplement envoyer tout le contenu d’un fichier sur la sortie standard, utilisez cat
(pour concatenate). Ceci peut s’avérer pratique si vous souhaitez transmettre votre fichier à un autre programme ou le rediriger quelque part. Et puisque sous Linux, « tout est fichier », on peut « brancher » le générateur de nombres aléatoires sur la mémoire de l’écran :
pi@raspberrypi ~ $ cat /dev/urandom > /dev/fb0
La commande cat
permet aussi de concaténer des fichiers, dont on indique les noms en argument. Par exemple, l’exemple suivant crée un fichier, le recopie, puis concatène ces deux fichiers dans un troisième :
pi@raspberrypi ~ $ ls > wibble.txt
pi@raspberrypi ~ $ cat wibble.txt > wobble.txt
pi@raspberrypi ~ $ cat wibble.txt wobble.txt > wubble.txt
Pour examiner les dernières lignes d’un fichier, comme les derniers ajouts à un fichier de log, utilisez tail
. Pour voir le début, utilisez head
.
Si vous cherchez un mot ou une chaîne de caractères à l’intérieur d’un ou plusieurs fichiers, utilisez le vénérable programme grep
. Ici, on lui demande de chercher le mot-clé « Puzzle » dans tous les fichiers des sous-répertoires :
pi@raspberrypi ~ $ grep Puzzle */*
grep
est un outil puissant grâce à son système d’expressions régulières sophistiquées spécialement conçu pour lui. Ces dernières permettent de décrire la suite de caractères à rechercher mais sa syntaxe devient rapidement absconse et participe injustement à la réputation de Linux comme étant un système compliqué pour les novices.
LES PROCESSUS
Chaque programme du Pi s’exécute séparément et simultanément, et une application peut se décomposer en un ou plusieurs processus. À tout moment, il peut y avoir des dizaines de processus en cours d’exécution. Quand vous démarrez le Pi pour la première fois, 75 processus environ sont lancés, chacun réalisant une tâche ou fournissant un service différent. Si vous voulez voir les processus, lancez le programme top
, qui affichera également des informations sur l’utilisation du processeur et l’occupation de la mémoire. Ce programme vous aidera à reconnaître les processus qui consomment le plus de ressources. Utilisez la commande ps
pour afficher tous les processus et leurs identifiants (PID pour Process IDentifier, première colonne à droite). Essayez :
pi@raspberrypi ~ $ ps −aux | less
Vous pouvez filtrer la sortie avec un mot-clé grâce à grep
:
pi@raspberrypi ~ $ ps −aux | grep bash
Il peut arriver que vous vouliez arrêter un processus qui ne fonctionne pas correctement ou qui ne répond plus. Pour ce faire, utilisez ps
pour trouver son identifiant, puis kill
pour l’arrêter.
pi@raspberrypi ~ $ kill 95689
Vous ne pouvez pas tuer les processus que vous n’avez pas lancés vous-même, en particulier ceux du système d’exploitation. Nous allons justement parler de sudo
, commande qui vous permettra parfois d’intervenir dans ce genre de cas.
SUDO ET LES PERMISSIONS
Linux est un système d’exploitation multi-utilisateur. En règle générale, chacun est propriétaire de ses propres fichiers et a le droit de les créer, de les modifier et de les effacer dans son propre espace du système de fichiers.
pi
, vous ne risquez pas de causer beaucoup de dégâts au système. Cependant, quand vous vous connectez avec sudo
au compte administrateur (appelé root
), vous pouvez faire des ravages, par accident ou intentionnellement. Il faut faire attention quand vous utilisez sudo
, surtout quand vous déplacez ou modifiez des fichiers. En cas d’accident, il n’est pas possible d’annuler les commandes et vous devrez charger une nouvelle image dans la carte SD (voir annexe A).Il existe quelques outils comme sudo
qui permettent aux utilisateurs d’obtenir les droits d’administration sans les risques (et les responsabilités) qui peuvent exister en étant constamment connecté au compte root
. Vous utiliserez souvent sudo
pour manipuler le matériel directement, ou lorsque vous souhaiterez modifier les paramètres du système.
Chaque fichier appartient à un utilisateur spécifique et à un groupe en particulier. Utilisez les commandes chown
et chgrp
pour changer le propriétaire ou le groupe d’un fichier. À noter que vous devez être l’utilisateur root
pour employer l’une de ces deux commandes :
pi@raspberrypi ~ $ sudo chown pi garply.txt
pi@raspberrypi ~ $ sudo chgrp staff plugh.txt
Chaque fichier possède aussi un ensemble de permissions (ou droits d’accès) qui spécifient si un fichier peut être lu, écrit ou exécuté. Ces permissions peuvent être accordées au propriétaire du fichier, au groupe ou à toute autre personne (figure 2-5).
Pour définir des autorisations individuelles, utilisez la commande chmod
(pour change mode). Les arguments de chmod
sont décrits dans le tableau 2-2.
ARGUMENT | DESCRIPTION |
u |
Utilisateur |
g |
Groupe |
o |
Autres utilisateurs (ne faisant pas partie du groupe) |
a |
Tout le monde (affecte u, g et o) |
r |
Autorisation de lire |
w |
Autorisation d’écrire |
x |
Autorisation d’exécuter |
+ |
Ajouter une autorisation |
− |
Supprimer une autorisation |
Voici quelques exemples qui vous montrent comment combiner ces arguments :
chmod u+rwx,g−rwx,o−rwx wibble.txt
chmod g+wx wobble.txt
chmod −xw,+r wubble.txt
Autorise uniquement l’utilisateur à lire, écrire et exécuter.
Ajoute une permission d’écriture et d’exécution pour les membres du groupe.
Permission de lecture uniquement pour tout le monde.
Mais comme cela peut vite devenir illisible, les arguments sont souvent condensés en notation octale :
chmod 744 wabble.txt
744
signifie « tout le monde peut lire le fichier mais seul le propriétaire peut le modifier ou l’exécuter ». Comme il y a peu de combinaisons d’arguments utiles ou sûres, on n’a besoin de mémoriser que quelques nombres.
À noter que la seule chose qui protège votre système de fichiers et vos fichiers est votre mot de passe. Par conséquent, nous vous conseillons d’en choisir un qui soit très fiable et difficile à trouver. Pour le modifier, utilisez la commande passwd,
notamment lorsque vous connectez votre Raspberry Pi à un réseau.
LE RÉSEAU
Lorsque vous serez connecté à un réseau, vous utiliserez régulièrement un certain nombre d’outils Linux. Par exemple, si votre connexion est défectueuse, utilisez ifconfig
qui affiche toutes les interfaces de votre Pi ainsi que les éventuelles adresses IP associées (figure 2-6).
La commande ping
est l’outil le plus basique pour vérifier si une connexion réseau fonctionne. ping
teste s’il y a une connexion bidirectionnelle entre deux adresses IP sur un réseau local ou sur Internet. Notez que beaucoup de sites web bloquent les paquets de ping
, donc vous aurez probablement besoin de « pinger » plusieurs sites avant de valider votre connexion :
ping yahoo.com
ping altavista.com
ping lycos.com
ping netscape.com
Ne répond pas, bien que son site web fonctionne.
Pour vous connecter sur un autre ordinateur à distance, en toute sécurité et avec des mots de passe cryptés, vous utiliserez ssh
, le terminal sécurisé (Secure Shell). L’ordinateur distant doit faire tourner un serveur de protocole SSH pour que ça marche. Le programme client ssh
est fourni par défaut avec Raspbian. C’est le meilleur moyen de travailler sur votre Raspberry Pi sans l’équiper d’un moniteur ou d’un clavier dédiés (voir l’encadré suivant « Travailler sans écran »).
Dans la même catégorie que ssh
, le programme sftp
vous permet de transférer des fichiers d’un ordinateur à un autre en sécurité. Le programme scp
, quant à lui, vous permet de copier les fichiers d’un compte à un autre par un réseau ou par Internet (il est plus puissant que sftp
). Le point commun de ces outils est qu’ils utilisent tous le protocole SSL (Secure Sockets Layer) pour transférer les informations dans une connexion cryptée. Ces outils standards font partie des piliers de Linux.
Si vous avez envie de travailler sur votre Raspberry Pi sans moniteur ni clavier ni souris, voici quelques astuces pour le configurer dans ce mode, appelé headless. Si vous n’avez besoin que d’un accès à la ligne de commande, vous pouvez simplement brancher votre Pi à un réseau et utiliser un client ssh
pour vous y connecter (nom d’utilisateur : pi,
mot de passe par défaut : raspberry).
L’application Terminal du Mac fonctionnera, ainsi que PuTTY sous Windows ou Linux, ou encore ssh
sous Linux. Le serveur ssh
du Raspberry Pi est activé par défaut (exécutez raspi−config
s’il ne se lance pas au démarrage).
Un autre moyen de vous connecter à votre Pi via un réseau consiste à installer un serveur VNC (Virtual Network Computing) sur le Pi et à vous y connecter grâce à un client VNC. Vous pouvez alors faire tourner une interface graphique complète dans une fenêtre de votre ordinateur portable ou de bureau. Cette solution est idéale pour un environnement de développement portable. Rendez-vous sur la page du hub Raspberry Pi relative à l’installation détaillée de TightVNC, un serveur VNC léger.
Le répertoire /etc
Le répertoire /etc
contient tous les fichiers de configuration du système et les scripts de démarrage. Lorsque vous avez lancé le programme de configuration raspi−config
au premier démarrage, vous avez modifié des valeurs dans différents fichiers du répertoire /etc
. Pour éditer ces fichiers, utilisez la commande sudo
pour obtenir les droits du super utilisateur root
. Ensuite, utilisez un éditeur de texte comme nano
et lancez-le avec sudo
:
pi@raspberrypi ~ $ sudo nano /etc/hosts
Réglage de la date et de l’heure
Les ordinateurs portables et les ordinateurs de bureau standards sont équipés de circuits et d’une pile (une petite batterie rechargeable ou une pile bouton au lithium) pour sauvegarder et rafraîchir l’heure et la date. Le Raspberry Pi n’en a pas, mais Raspbian est configuré pour synchroniser l’heure et la date automatiquement quand il est branché à un réseau, en communiquant avec un serveur NTP (Network Time Protocol, le protocole de synchronisation de l’heure).
Il est important que votre Pi soit à l’heure, surtout pour certaines applications. Pour régler l’heure et la date manuellement, utilisez le programme date
:
$ sudo date −−set="Sun Nov 18 1:55:16 EDT 2012"
La commande man date
liste tous les arguments, toutes les options et tous les formats pour l’affichage et la modification de l’heure et de la date.
Installation de nouveaux logiciels
En ce qui concerne la gestion de l’installation et de la mise à jour des logiciels et des applications, Linux domine incontestablement les autres systèmes d’exploitation tels Windows et Mac OS. Les gestionnaires de paquets (Package Managers) gèrent automatiquement le téléchargement et l’installation des logiciels. Chaque distribution dispose de son propre gestionnaire, couplé avec une énorme bibliothèque de logiciels précompilés et prêts à télécharger : plus de 29 000 paquets pour Debian, dont Raspbian est dérivé. Vous trouverez certainement ce qu’il vous faut et même beaucoup plus !
Les gestionnaires de paquets détectent aussi les autres paquets nécessaires au fonctionnement de chaque application. Ils les téléchargent et les installent dans le bon ordre. En effet, fidèles à l’approche modulaire de Linux, de nombreuses applications dépendent d’autres logiciels et partagent même des modules entre eux. Les gestionnaires de paquets sous Linux sont remarquablement robustes et assurent la cohérence et la stabilité du système.
Raspbian est une distribution plutôt minimaliste et vous aurez rapidement besoin de télécharger et d’installer de nouveaux programmes. Les exemples de ce livre utilisent tous la ligne de commande, moyen le plus flexible et le plus rapide pour installer un logiciel.
Le programme apt−get
avec l’argument install
va télécharger et installer des logiciels dont vous connaissez déjà le nom. apt−get
va aussi télécharger les modules nécessaires à votre paquet pour que vous n’ayez pas besoin de chercher partout les dépendances. Les logiciels doivent être installés par l’administrateur, donc il faut toujours employer sudo
. Par exemple, la commande suivante installe l’éditeur de texte emacs
:
pi@raspberrypi ~ $ sudo apt−get install emacs
Une des premières fonctionnalités dont nous avons eu besoin pour rédiger ce livre a été de pouvoir réaliser des captures d’écran du Raspberry Pi. Pour ce faire, nous avons trouvé un programme nommé scrot
(SCReenshOT). Une autre solution consiste à installer Gimp (GNU Image Manipulation Program) ou ImageMagick. Pour installer scrot,
qui a bien fonctionné pour nous, tapez
sudo apt−get install scrot