PrésentationInstallation du système sur un Raspberry Pi 2.3
Je décrirai la manière la plus simple, à mon avis, pour les débutants.
Toutes les actions se produiront dans Ubuntu 18.04.
Pour obtenir de l'aide sur les commandes, utilisez la commande «man» + la commande souhaitée.
man ls
Ou la commande nécessaire avec la clé --help
ls --help
1. Installation du système d'exploitation Raspbian Stretch Lite sur une carte microSD.
La carte MicroSD doit être de classe 10 et avoir une capacité de 8 gigaoctets.
Insérez la carte SD dans l'ordinateur et entrez la commande:
lsblk

Dans l'exemple, la carte est définie comme mmcblk0, alors j'utiliserai ce nom.
Ensuite, pour effacer la carte des informations précédemment enregistrées (nous ferons ensuite une image disque), vous devez l'effacer avec la commande:
dd if=/dev/zero of=/dev/mmcblk0
Cette commande nécessite des droits de superutilisateur, pour cela vous devez ajouter le mot clé
"sudo" au début. Ci-après, je donne des commandes sans
sudo . Lors de la saisie de commandes, utilisez la saisie semi-automatique (touche Tab), cela est nécessaire pour contrôler l'entrée correcte des commandes et des chemins de fichiers. Pendant l'exécution de la commande, vous pouvez télécharger une nouvelle distribution du système d'exploitation.
Téléchargez ici:
raspberrypi.orgNous avons besoin de Raspbian Stretch Lite. Décompressez le zip téléchargé, nous avons besoin d'un fichier avec l'extension img - c'est l'image disque que nous allons copier sur la carte. Donc, si nous avons une image disque et que la commande dd est terminée, passez à autre chose.
Copiez l'image sur la carte:
dd if=/path/to/raspbian.img of=/dev/mmcblk0 bs=4M status=progress
une fois terminé, entrez la commande:
sync
Nous sortons la carte et la réinsérons.
Créez un fichier vide sur le disque de démarrage de notre carte:
touch /media/$USER/boot/ssh
Ceci est nécessaire pour qu'un serveur ssh soit lancé sur Raspberry.
La carte doit être retirée en toute sécurité, insérée dans le Raspberry, connectée à un réseau câblé et alimentée. S'il n'y a pas d'alimentation 2 apmera, vous pouvez l'alimenter à partir d'un ordinateur avec USB3. Au premier démarrage, le système augmentera la taille des disques à la taille de la carte, cela prendra un certain temps.
Pour connaître l'adresse IP de notre RPi, vous pouvez utiliser l'utilitaire arp-scan. S'il n'est pas installé, définissez:
apt install arp-scan
Nous découvrons le nom de notre carte réseau:
ip a
ou
netstat -i

J'ai une carte wifi nommée wlp1s0.
Exécutez arp-scan:
arp-scan -I wlp1s0 -l

J'ai besoin d'un RPi avec IP 192.168.0.114, l'adresse est attribuée par DHCP et peut être n'importe quoi.
On passe à RPi par ssh:
ssh pi@192.168.0.114
vous devez saisir
oui lors de la première authentification, puis saisir le mot de passe pour pi -
framboise .
Si nous avons réussi à nous connecter à Raspberry, entrez la commande:
init 0
Cette commande désactive RPi.
Vous devez réinsérer la carte dans l'ordinateur. Maintenant, nous avons besoin du programme «gparted», s'il n'est pas installé, définissez:
apt install gparted
Nous commençons par répartir, vous devez changer la taille du disque mmcblk0p2, laisser à la fin une zone non allouée de 300 à 500 mégaoctets ou 2-3% de la taille de la carte, cela est nécessaire pour que notre image tienne sur des cartes de différents fabricants, et leur taille peut varier. Le résultat devrait être quelque chose comme ceci:

Après avoir terminé le travail avec gparted, vous pouvez faire une copie de sauvegarde de la carte, de sorte qu'en cas de problèmes dans d'autres expériences, vous disposez d'une image prête à l'emploi.
dd if=/dev/mmcblk0 | bzip2 > raspbian.bz2
maintenant, nous pouvons toujours restaurer notre disque avec la commande:
bzcat raspbian.bz2 | dd bs=4M of=/dev/mmcblk0
En conséquence, nous avons une carte microSD avec un système d'exploitation prêt à l'emploi et sa copie de sauvegarde.
2. Configuration de Raspbian Stretch Lite.
Nous allons à RPi par ssh. Pour configurer les adresses statiques du réseau filaire et du wifi, ajoutez les paramètres suivants à la fin du fichier /etc/dhcpcd.conf:
interface eth0
adresse IP statique = 192.168.0.10 / 24
routeurs statiques = 192.168.0.1
serveurs_nom_domaine statiques = 8.8.8.8, 8.8.4.4
interface wlan0
adresse IP statique = 192.168.0.10 / 24
routeurs statiques = 192.168.0.1
serveurs_nom_domaine statiques = 8.8.8.8, 8.8.4.4Avec ces paramètres, RPi aura la même IP sur un réseau filaire ou wifi.
Fichier pour configurer le wifi - /etc/wpa_supplicant/wpa_supplicant.conf
ajoutez-y les paramètres suivants:
réseau = {
ssid = "NAME"
psk = "PASS"
}où NOM et PASS nom d'utilisateur et mot de passe du réseau wifi. Si vous ne savez pas à l'avance où utiliser notre RPi, le nom et le mot de passe peuvent être entrés ultérieurement.
Ajouter des tâches au programme cron
crontab -e
Au premier démarrage, vous devrez sélectionner un éditeur de texte, nano - sera le plus familier.

Pour que les plannings fonctionnent, ajoutez les paramètres suivants:
CHEMIN = / usr / sbin: / usr / bin: / sbin: / bin
SHELL = / bin / bashEt les tâches elles-mêmes, nous enregistrerons l'heure de chaque téléchargement et la durée de fonctionnement continu, ce seront des informations utiles à l'avenir.
redémarrer sleep 60 && date >> my-reboot.txt
@ uptime hebdomadaire >> my-uptime.txtPour quitter, la combinaison de touches Ctrl + x, Y, Entrée
Le réglage du fuseau horaire se fait par la commande:
dpkg-reconfigure tzdata
Pour augmenter les ressources de la carte SD, vous pouvez arrêter la journalisation et supprimer le fichier d'échange:
(Je pense que cela devrait réduire la probabilité de défaillance de la carte SD ou de corruption de données lors des arrêts brusques de RPi pendant le fonctionnement):
apt update apt purge dphys-swapfile apt autoremove --purge apt install busybox-syslogd dpkg --purge rsyslog
Installation de programmes:
apt install mosquitto mosquitto-clients sqlite3 libsqlite3-dev mc htop arp-scan vim supervisor python-pip python3-pip python-virtualenv python-dev
pip install psutil paho-mqtt pip3 install psutil paho-mqtt
Pour homekit2mqtt, vous devez installer nodejs:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - apt-get install -y nodejs
Vérification de la version installée
node -v nodejs -v
Installez node-red:
npm install -g --unsafe-perm node-red
Nous lançons:
node-red

Dans la barre d'adresse du navigateur, saisissez l'adresse IP du RPi 192.168.0.10:1880

Terminez node-red, appuyez sur Ctrl + c, accédez au répertoire .node-red
cd .node-red
Et installez des packages pour node-red, ils peuvent être nécessaires pour les tests, la configuration et la communication de divers appareils.
npm i node-red-dashboard node-red-contrib-sonos node-red-contrib-knx node-red-node-serialport node-red-contrib-globalcache node-red-contrib-counter
Nous revenons au répertoire personnel
cd
Installez homekit2mqtt:
apt install libavahi-compat-libdnssd-dev npm install -g homekit2mqtt --unsafe-perm
Vous pouvez essayer d'exécuter homekit avec la commande
homekit2mqtt

Il commencera avec les paramètres par défaut et vous pouvez ajouter un nouvel appareil dans le programme Home sur votre iPhone ou iPad
Le mot de passe
pi laissera celui actuel.
Maintenant que tout est installé et vérifié, vous devez sauvegarder notre carte SD de la même manière qu'auparavant. Maintenant, tout est prêt pour installer le système d'automatisation.