Pourquoi est-ce que je veux faire ça?
Le Pi, même vêtu d'un boîtier solide, est un ordinateur minuscule. Il est parfait pour ranger quelque part hors de la vue sans une multitude de câbles - pour de nombreux projets, vous n'avez simplement pas besoin d'un moniteur permanent ni d'un accompagnement périphérique.
Cette n'est pas Cela signifie toutefois que vous n’avez pas besoin de vous connecter à la boîte pour apporter des modifications, mettre à jour des choses, transférer des fichiers, etc. Un bon exemple de ceci est le petit indicateur de pluie fraîche que nous avons construit dans le cadre de notre article Construire un indicateur à LED avec un Raspberry Pi (pour Email, Météo ou N'importe quoi). Il n’a pas besoin de tout ce qui y est attaché, mais nous aimerions quand même pouvoir sauter sur l’appareil et apporter facilement des modifications ou essayer de nouvelles expériences avec le module LED sans avoir à le glisser dans l’atelier, et connectez-le à un moniteur, un clavier, une souris, etc. En le configurant pour un shell, un bureau et un transfert de fichiers à distance, nous simplifions les choses pour toujours interagir avec notre unité Pi dans le confort de notre avez raccordé l'appareil à un poste de travail complet.
De quoi ai-je besoin?
Pour ce tutoriel, vous aurez besoin des éléments suivants:
- Un Raspberry Pi sous Raspbian.
- Un ordinateur de bureau ou portable.
- Un réseau local Wi-Fi ou câblé pour connecter le Pi à votre ordinateur.
Tout d'abord, la plupart des étapes de ce didacticiel devraient fonctionner avec d'autres distributions Pi basées sur Linux. mais nous allons utiliser Raspbian. Vous devriez avoir peu de difficulté à adapter le tutoriel à d’autres distributions.
Deuxièmement, nous utilisons une machine Windows en tant qu’ordinateur en réseau pour interagir avec l’unité Raspberry Pi en tant que tête / interface distante. Le cas échéant, nous ferons de notre mieux pour vous relier à des didacticiels et à des suggestions de lecture concernant la réalisation de tâches et d’outils parallèles sous OS X et Linux.
Configuration et connexion au serveur SSH
Ouvrez le terminal dans Rasbian, le raccourci est LXTerminal sur le bureau et tapez la commande suivante:
sudo raspi-config
Descendre à ssh et appuyez sur Entrée. Lorsque vous êtes invité à propos du serveur SSH, sélectionnez Activer et appuyez sur Entrée à nouveau. Vous serez redirigé vers le panneau Raspi-config; naviguer jusqu'à terminer et appuyez sur Entrée pour fermer l'outil de configuration. C’est tout ce dont vous avez besoin pour activer l’accès SSH à votre Pi. Le nom d'utilisateur et le mot de passe SSH par défaut sont pi et framboise, respectivement.
Pendant que vous êtes toujours en ligne de commande, le moment est venu de vérifier l’adresse IP de votre unité Raspberry Pi sur le réseau local. Type ifconfig à l'invite, puis regardez le résultat de la commande. Si vous utilisez le port Ethernet, vous souhaitez rechercher le init addr dans le eth0 section; Si vous utilisez le Wi-Fi, vous souhaitez rechercher le init addr dans le wlan0 section. En plus de vérifier et de noter l’adresse IP, c’est également un bon moment pour configurer une entrée IP statique dans votre routeur afin que vous n’ayez plus à chercher l’adresse IP à l’avenir.
Maintenant que le serveur SSH est activé, nous connaissons le login et l’adresse IP de la machine. Il est temps de se connecter via SSH et de le tester. Pour le faire sous Linux et OS X, vous pouvez simplement utiliser le ssh commande au terminal. Les utilisateurs Windows auront toutefois besoin d'un client SSH tel que PuTTY.
Comme nous utilisons un ordinateur Windows pour gérer notre Pi à distance, c'est bien PuTTY. Installez une copie de PuTTY ou extrayez la version portable et lancez-la. Il y a beaucoup vous pouvez jouer avec les paramètres dans PuTTY, mais nous n’avons à nous soucier que d’une seule chose pour nous connecter à notre Pi. Sur l’interface principale de la Session, entrez simplement l’adresse IP de votre Pi et sélectionnez SSH dessous:
Frappé Ouvrir en bas et PuTTY lancera une fenêtre de terminal à votre place, connectera votre Pi et vous invitera à vous connecter. Allez-y et connectez-vous avec pi / framboise:
Avant de poursuivre, il existe quelques fonctionnalités supplémentaires que nous pouvons extraire de SSH. En plus de gérer la ligne de commande à distance, vous pouvez également transférer des fichiers à distance à l'aide de Secure Copy. C’est très pratique en ligne de commande et peu pratique pour transférer un grand nombre de fichiers provenant de plusieurs répertoires, mais pour un transfert de fichier de configuration ponctuel ou un autre petit dump, c’est très pratique. Consultez notre guide sur la copie de fichiers sur SSH à l'aide de la commande SCP ici.
Nous verrons de plus en plus de techniques de transfert de fichiers conviviales / basées sur une interface graphique plus loin dans le didacticiel.
Configuration et configuration de votre bureau à distance
Bien que nous l'appelions «poste de travail distant» jusqu'à présent, l'outil que nous sommes en train d'installer est connu sous le nom de Virtual Network Computing (VNC) - des critères dont beaucoup sont familiers, tels que RealVNC et TightVNC. Pour ce tutoriel, nous allons installer TightVNC sur le Pi. Pour accéder à la session TightVNC basée sur Pi, vous aurez besoin d’un client distant tel que:
- Client de bureau TightVNC pour Windows
- Client de bureau TightVNC pour systèmes de type Linux / Unix
- Client de bureau RealVNC pour OSX
Prenez-en un exemplaire maintenant et nous le repérerons plus tard dans cette section. Pour l'instant, commençons par installer le serveur TightVNC sur votre Raspberry Pi. Ouvrez le terminal. Entrez la commande suivante pour commencer:
sudo apt-get install tightvncserver
Cela va télécharger et décompresser les fichiers d'installation; Lorsque vous êtes invité à continuer, appuyez sur Y. Une fois l'installation terminée, vous serez renvoyé à l'invite. Vous pouvez démarrer le VNC de deux manières. Exécutez simplement la commande pour le serveur comme suit:
tightvncserver
Vous pouvez également utiliser une commande beaucoup plus précise, bien que plus longue à taper, qui vous donne plus de contrôle sur la manière dont l'ordinateur distant verra le bureau. Plus important encore, quelle résolution affichera le bureau pour pouvoir profiter d'un affichage plein écran l'ordinateur distant. Pour spécifier la résolution du bureau VNC, utilisez la commande suivante en remplaçant la valeur de résolution (le quatrième élément de la commande) par la résolution du bureau distant:
vncserver:1 -geometry 1600×900 -depth 16 -pixelformat rgb565:
Si, à un moment quelconque, vous commettez une erreur lors de la configuration de votre instance de serveur VNC et / ou si vous souhaitez arrêter le serveur VNC, entrez simplement ce qui suit (remplacez le nombre après les points deux par le numéro de l'instance VNC à supprimer):
vncserver –kill:1
Maintenant que le serveur VNC est opérationnel, connectez-vous depuis le bureau distant. Lancez la visionneuse TightVNC sur votre ordinateur et connectez l’adresse IP de l’unité Raspberry Pi suivie de: 1 comme suit:
sudo chown pi /home/pi/.Xauthority
Cette commande modifie la propriété du fichier.Xauthority en utilisateur pi. Pour les plus curieux, le fichier.Xauthority est utilisé par le système X-Windows de Rasbian et quelque chose lors du processus d’installation et de configuration du serveur TightVNC ne provoque que peu d’autorisations.
Avec ce petit détour mineur, revenons à la fin de la configuration de notre bureau à distance.
Maintenant que nous avons un accès complet à Raspberry Pi à partir d’une ligne de commande et d’un ordinateur de bureau, il ne reste plus qu’une mise au point à faire. L'outil Raspi-config a configuré le serveur SSH pour qu'il démarre automatiquement au démarrage, mais le serveur VNC n'est pas encore configuré de cette manière. Vous pouvez ignorer cette étape et démarrer manuellement le serveur en ligne de commande via SSH lorsque vous en avez besoin, mais nous essayons de rendre cette tâche aussi simple que possible pour une utilisation ultérieure. Prenons maintenant une minute pour créer un fichier de démarrage pour le serveur VNC.
Afin de démarrer automatiquement le serveur VNC, nous devons configurer un fichier init, ou initialisation, que Raspbian utilisera pour démarrer et arrêter proprement le serveur pendant le processus de démarrage et d'arrêt. Créons maintenant le fichier init. Sur la ligne de commande, tapez la commande suivante:
sudo nano /etc/init.d/tightvnc
Cela créera un fichier dans le répertoire d’initialisation appelé «tightvnc» et ouvrira l’éditeur nano afin que nous puissions coller notre script. Dans l'éditeur nano, collez le code suivant (assurez-vous de modifier la valeur de résolution 1600 × 900 pour qu'elle corresponde à celle de votre ordinateur distant:
#!/bin/sh ### BEGIN INIT INFO # Provides: tightvncserver # Required-Start: # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: start vnc server # Description: ### END INIT INFO
case “$1” in start) su pi -c ‘vncserver:1 -geometry 1600×900 -depth 16 -pixelformat rgb565:’ echo “VNC Started”;; stop) pkill Xtightvnc echo “VNC Terminated”;; *) echo “Usage: /etc/init.d/tightvnc {start|stop}” exit 1;; esac
En plus de modifier la partie résolution du script, vous pouvez modifier un autre élément. À la ligne 14, vous pouvez remplacer la commande "su pi -c" par un autre compte d'utilisateur que "pi" si vous souhaitez utiliser VNC sur le bureau spécifique de ce compte.
Une fois que vous avez collé et modifié le code, il est temps de le sauvegarder. Appuyez sur CTRL + X pour quitter et enregistrer votre travail dans nano. Une fois que vous êtes revenu à la ligne de commande, nous devons apporter quelques modifications rapides aux autorisations du fichier:
sudo chmod 755 /etc/init.d/tightvnc
Maintenant, le fichier d'initialisation est exécutable. Nous pouvons le tester à l'invite:
sudo /etc/init.d/tightvnc start
sudo /etc/init.d/tightvnc stop
La dernière modification que nous allons effectuer consiste à mettre à jour le fichier rc.d (qui répertorie les scripts d’initialisation dans le dossier /init.d/):
sudo update-rc.d tightvnc defaults
Après avoir entré cette commande, vous recevrez une confirmation de la mise à jour du fichier. C’est le moment du vrai test: le fichier se charge-t-il correctement après le redémarrage? Entrez ce qui suit sur la ligne de commande pour redémarrer et préparez-vous avec votre client VNC pour tester la connexion dans un moment:
sudo reboot
Une fois le système redémarré, connectez-vous avec votre client VNC.Si votre session VNC échoue, consultez l'invite de commande et exécutez à nouveau la commande tightvnc start (à partir de la partie test ci-dessus) pour vérifier que le fichier est exécutable et que le mot de passe a été correctement enregistré.
À ce stade, nous sommes encore plus avancés dans notre mission de contrôle total de notre unité Raspberry Pi à distance. Avec un accès à la ligne de commande via SSH et un accès au bureau à distance via VNC, laissez-nous simplifier le processus de transfert de fichiers entre notre ordinateur Pi et un ordinateur de bureau.
Configuration et configuration des outils de transfert de fichiers
Il existe plusieurs types d’interfaces graphiques pour la commande SCP, mais nous allons utiliser un outil multiplateforme que beaucoup de gens connaissent déjà, ont et aiment (et peuvent même ignorer qu’il transfère SCP): FileZilla. Il est disponible pour Windows, OS X et Linux. Vous pouvez en obtenir une copie ici.
Une fois que vous avez installé FileZilla, lancez-le et allez dans Fichier -> Gestionnaire de site. Créez une nouvelle entrée de site, nommez-la et insérez un nom d'utilisateur et un mot de passe pour votre Pi.
Tirer parti du transfert de fichiers SSH existant est le moyen le plus simple d'accéder aux fichiers sur le Pi sans configuration supplémentaire nécessaire. mais Si vous souhaitez configurer votre Pi pour recevoir et partager des fichiers sans que l'utilisateur distant ait besoin d'outils sophistiqués (comme un client FTP compatible SCP tel que FileZilla), nous vous recommandons vivement de consulter la partie relative à la configuration Samba de notre guide: Comment transformer un framboise Pi dans un périphérique de stockage réseau basse consommation. Une lecture qui vous familiarisera avec la configuration d’un partage Samba de base sur Pi pour créer un dossier partagé facilement accessible par n'importe qui sur votre réseau sans outils supplémentaires.
Vous avez configuré SSH, VNC et un simple accès SFTP et / ou Samba à votre Pi. À ce stade, vous pouvez démarrer votre Raspberry Pi, déshabiller le moniteur, le clavier et la souris. et rangez-le comme une machine silencieuse et sans tête.
Vous avez une idée du projet Raspberry Pi et vous avez envie de rédiger un tutoriel? Dans les commentaires, envoyez-nous un message ou envoyez-nous un email à [email protected] et nous ferons de notre mieux pour vous aider.