Mi sistema dom贸tico. Crear una imagen del sistema operativo

Introduccion

Instalaci贸n del sistema en una Raspberry Pi 2.3

Describir茅 la forma m谩s f谩cil, en mi opini贸n, para principiantes.

Toda acci贸n ocurrir谩 en Ubuntu 18.04.

Para obtener ayuda sobre los comandos, use el comando "man" + el comando deseado.

man ls 

O el comando necesario con la tecla --help

 ls --help 


1. Instalaci贸n del sistema operativo Raspbian Stretch Lite en una tarjeta microSD.

La tarjeta MicroSD debe ser de clase 10 y con una capacidad de 8 gigabytes.
Inserte la tarjeta SD en la computadora e ingrese el comando:

 lsblk 



En el ejemplo, el mapa se define como mmcblk0, luego usar茅 este nombre.

Luego, para borrar la tarjeta de informaci贸n previamente grabada (luego haremos una imagen de disco), debe borrarla con el comando:

 dd if=/dev/zero of=/dev/mmcblk0 

Este comando requiere derechos de superusuario, para esto debe agregar la palabra clave "sudo" al principio. De aqu铆 en adelante, doy 贸rdenes sin sudo . Al ingresar comandos, use el autocompletado (tecla Tab), esto es necesario para controlar la entrada correcta de comandos y rutas de archivos. Mientras se ejecuta el comando, puede descargar una nueva distribuci贸n del sistema operativo.

Descargar desde aqu铆: raspberrypi.org
Necesitamos Raspbian Stretch Lite. Desempaquete el zip descargado, necesitamos un archivo con la extensi贸n img: esta es la imagen de disco que copiaremos a la tarjeta. Entonces, si tenemos una imagen de disco y se completa el comando dd, entonces contin煤e.

Copie la imagen a la tarjeta:

 dd if=/path/to/raspbian.img of=/dev/mmcblk0 bs=4M status=progress 

despu茅s de completar, ingrese el comando:

 sync 

Sacamos la tarjeta y la volvemos a insertar.

Cree un archivo vac铆o en el disco de arranque de nuestro mapa:

 touch /media/$USER/boot/ssh 

Esto es necesario para que se inicie un servidor ssh en Raspberry.

La tarjeta debe extraerse de forma segura, insertarse en la Raspberry, conectarse a una red cableada y energizarse. Si no hay una fuente de alimentaci贸n de 2 c谩maras, puede alimentarla desde una computadora con USB3. En el primer arranque, el sistema aumentar谩 el tama帽o de los discos al tama帽o de la tarjeta, llevar谩 un tiempo.

Para averiguar la direcci贸n IP de nuestro RPi, puede usar la utilidad arp-scan. Si no est谩 instalado, configure:

 apt install arp-scan 

Descubrimos el nombre de nuestra tarjeta de red:

 ip a 

o

 netstat -i 



Tengo una tarjeta wifi llamada wlp1s0.

Ejecute arp-scan:

 arp-scan -I wlp1s0 -l 



Necesito un RPi con IP 192.168.0.114, la direcci贸n es asignada por DHCP y puede ser cualquier cosa.

Vamos a RPi por ssh:

 ssh pi@192.168.0.114 

necesita ingresar yes en la primera autenticaci贸n, luego ingrese la contrase帽a para pi- raspberry .

Si logramos iniciar sesi贸n en Raspberry, ingresa el comando:

 init 0 

Este comando apaga RPi.

Debe volver a insertar la tarjeta en la computadora. Ahora necesitamos el programa "gparted", si no est谩 instalado, configure:

 apt install gparted 

Comenzamos separados, necesita cambiar el tama帽o del disco mmcblk0p2, dejar al final un 谩rea no asignada de 300-500 megabytes o 2-3% del tama帽o de la tarjeta, esto es necesario para que nuestra imagen encaje en tarjetas de diferentes fabricantes, y pueden variar en tama帽o. El resultado deber铆a ser algo como esto:



Despu茅s de completar el trabajo con gparted, puede hacer una copia de seguridad de la tarjeta, de modo que en caso de problemas en futuros experimentos, tenga una imagen preparada.

 dd if=/dev/mmcblk0 | bzip2 > raspbian.bz2 

ahora siempre podemos restaurar nuestro disco con el comando:

 bzcat raspbian.bz2 | dd bs=4M of=/dev/mmcblk0 

Como resultado, tenemos una tarjeta microSD con un sistema operativo listo para usar y su copia de respaldo.

2. Configuraci贸n de Raspbian Stretch Lite.

Vamos a RPi por ssh. Para configurar las direcciones est谩ticas de la red cableada y wifi, agregue la siguiente configuraci贸n al final del archivo /etc/dhcpcd.conf:

interfaz eth0
ip_address est谩tica = 192.168.0.10 / 24
enrutadores est谩ticos = 192.168.0.1
servidores_nombre_dominio est谩ticos = 8.8.8.8, 8.8.4.4
interfaz wlan0
ip_address est谩tica = 192.168.0.10 / 24
enrutadores est谩ticos = 192.168.0.1
servidores_nombre_dominio est谩ticos = 8.8.8.8, 8.8.4.4

Con esta configuraci贸n, RPi tendr谩 la misma IP en una red cableada o wifi.

Archivo para configurar wifi - /etc/wpa_supplicant/wpa_supplicant.conf
agregue la siguiente configuraci贸n:

red = {
ssid = "NOMBRE"
psk = "PASS"
}
donde NAME y PASS nombre de usuario y contrase帽a de la red wifi. Si no se sabe de antemano d贸nde usar nuestro RPi, el nombre y la contrase帽a se pueden ingresar m谩s adelante.

Agregar tareas al programa cron

 crontab -e 

En el primer inicio, deber谩 seleccionar un editor de texto, nano - ser谩 el m谩s familiar.



Para que los horarios funcionen, agregue la siguiente configuraci贸n:

RUTA = / usr / sbin: / usr / bin: / sbin: / bin
SHELL = / bin / bash

Y las tareas mismas, registraremos el tiempo de cada descarga y la duraci贸n de la operaci贸n continua, esta ser谩 informaci贸n 煤til en el futuro.

reiniciar sleep 60 && date >> my-reboot.txt
@ tiempo de actividad semanal >> my-uptime.txt

Para salir, la combinaci贸n de teclas Ctrl + x, Y, Enter

La configuraci贸n de la zona horaria se realiza mediante el comando:

 dpkg-reconfigure tzdata 

Para aumentar el recurso de la tarjeta SD, puede detener el registro y eliminar el archivo de intercambio:

(Creo que esto deber铆a reducir la probabilidad de falla de la tarjeta SD o la corrupci贸n de datos durante apagados repentinos de RPi durante la operaci贸n):

 apt update apt purge dphys-swapfile apt autoremove --purge apt install busybox-syslogd dpkg --purge rsyslog 

Instalaci贸n de programas:

 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 

Para homekit2mqtt necesita instalar nodejs:

 curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - apt-get install -y nodejs 

Comprobando la versi贸n instalada

 node -v nodejs -v 

Instalar nodo rojo:

 npm install -g --unsafe-perm node-red 

Lanzamos:

 node-red 



En la barra de direcciones del navegador, escriba la direcci贸n IP del RPi 192.168.0.10:1880



Finalice node-red, presione Ctrl + c, vaya al directorio .node-red

 cd .node-red 

E instale paquetes para el nodo rojo, pueden ser necesarios para las pruebas, la configuraci贸n y la comunicaci贸n de varios dispositivos.

 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 

Regresamos al directorio de inicio

 cd 

Instalar homekit2mqtt:

 apt install libavahi-compat-libdnssd-dev npm install -g homekit2mqtt --unsafe-perm 

Puedes intentar ejecutar homekit con el comando

 homekit2mqtt 



Comenzar谩 con la configuraci贸n predeterminada y puede agregar un nuevo dispositivo en el programa Inicio en su iPhone o iPad

La contrase帽a pi dejar谩 la actual.

Ahora que todo est谩 instalado y verificado, debe hacer una copia de seguridad de nuestra tarjeta SD de la misma manera que antes. Ahora todo est谩 listo para instalar el sistema de automatizaci贸n.

Source: https://habr.com/ru/post/446190/


All Articles