Вводная часть Установка системы на Raspberry Pi 2.3 Опишу самый простой, на мой взгляд, способ для новичков.
Все действия будут происходить в Ubuntu 18.04. Для помощи с командами используйте команду «man» + нужная команда.
Или требуемую команду с ключом --helpman ls
ls --help
1. Установка операционной системы Raspbian Stretch Lite на карту microSD. Карта microSD должна быть класса 10 и иметь емкость не менее 8 гигабайт. Вставьте SD-карту в компьютер и введите команду:
lsblk
В примере карта определена как mmcblk0, дальше я буду использовать это имя.
Затем, чтобы очистить карту от ранее записанной информации (позже мы сделаем образ диска), нужно стереть ее командой: dd if=/dev/zero of=/dev/mmcblk0
Данная команда требует прав суперпользователя, для этого нужно в начале добавить ключевое слово "судо" .
Здесь и ниже я даю команды без судо .
При вводе команд используйте автодополнение (клавиша Tab) это необходимо для контроля правильности ввода команд и путей к файлам.
Пока команда работает, вы можете скачать последний дистрибутив операционной системы.
Скачать отсюда: raspberrypi.org Нам нужен Raspbian Stretch Lite. Распаковываем скачанный zip, нам нужен файл с расширением img — это образ диска, который мы скопируем на карту.
Итак, если образ диска у нас есть и команда dd завершилась, то идем дальше.
Скопируйте изображение на карту: dd if=/path/to/raspbian.img of=/dev/mmcblk0 bs=4M status=progress
после завершения введите команду: sync
Вынимаем карту и вставляем обратно.
Создаем пустой файл на загрузочном диске нашей карты: touch /media/$USER/boot/ssh
Это необходимо для работы ssh-сервера на Raspberry.
Карту необходимо безопасно извлечь, вставить в Raspberry, подключить и включить питание.
Если нет блока питания на 2 ампера, то можно запитать от компьютера через USB3. При первой загрузке система увеличит размер дисков до размера карты, это займет некоторое время.
Для того, чтобы узнать IP-адрес нашего RPi, можно воспользоваться утилитой «arp-scan».
Если он не установлен, установите: apt install arp-scan
Узнаем название нашей сетевой карты: ip a
или netstat -i
У меня есть карта Wi-Fi с именем wlp1s0.
Запустите arp-сканирование: arp-scan -I wlp1s0 -l
Мне нужен RPi с IP 192.168.0.114, адрес назначается по DHCP и может быть любым.
Вход в RPi через ssh: ssh [email protected]
нужно войти да при первой идентификации, затем введите пароль пользователя pi - малина .
Если нам удалось войти в Raspberry, вводим команду: init 0
Эта команда отключает RPi.
Вам необходимо повторно вставить карту в компьютер.
Теперь вам понадобится программа «gparted»; если он не установлен, установите: apt install gparted
Запустим gparted, нам нужно изменить размер диска mmcblk0p2, оставить в конце неразмеченную область 300-500 мегабайт или 2-3% от размера карты, это нужно для того, чтобы наш образ поместился на картах разных производителей , и они могут различаться по размеру.
Результат должен выглядеть примерно так:
После окончания работы с gparted вы можете сделать резервную копию карты, чтобы в случае проблем в дальнейших экспериментах у вас был готовый образ.
dd if=/dev/mmcblk0 | bzip2 > raspbian.bz2
Теперь мы всегда можем восстановить наш диск командой: bzcat raspbian.bz2 | dd bs=4M of=/dev/mmcblk0
В результате мы имеем карту microSD с готовой к использованию операционной системой и ее резервную копию.
2. Настройка Raspbian Stretch Lite. Войдите в RPi через ssh. Чтобы настроить статические адреса проводной сети и Wi-Fi, вам необходимо добавить следующие настройки в конец файла /etc/dhcpcd.conf: интерфейс eth0 статический ip_адрес=192.168.0.10/24 статические маршрутизаторы = 192.168.0.1 статическое имя_домена_серверы=8.8.8.8, 8.8.4.4 интерфейс wlan0 статический ip_адрес=192.168.0.10/24 статические маршрутизаторы = 192.168.0.1 статическое имя_домена_серверы=8.8.8.8, 8.8.4.4 С этими настройками RPi будет иметь один и тот же IP-адрес в проводной сети или сети Wi-Fi. Файл для настройки wifi — /etc/wpa_supplicant/wpa_supplicant.conf добавьте в него следующие настройки: сеть={ ссид="ИМЯ" пск="ПАСС" } где NAME и PASS — имя и пароль для сети Wi-Fi. Если заранее неизвестно, где будет использоваться наш RPi, то имя и пароль можно будет ввести позже.
Добавляем задачи в программу cron crontab -e
При первом запуске вам нужно будет выбрать текстовый редактор, наиболее привычным будет nano.
Для того, чтобы расписания работали, добавьте следующие настройки: ПУТЬ=/usr/sbin:/usr/bin:/sbin:/bin
SHELL=/bin/bash
А в самих задачах мы будем фиксировать время каждой загрузки и продолжительность непрерывной работы, это будет полезная информация в дальнейшем.
перезагрузить спать 60 && дата > > my-reboot.txt
@еженедельное время работы > > my-uptime.txt
Для выхода используется комбинация клавиш Ctrl+x, Y, Enter.
Часовой пояс настраивается командой: dpkg-reconfigure tzdata
Чтобы увеличить ресурс SD-карты, можно прекратить логирование и удалить файл подкачки:
(Думаю, это должно снизить вероятность сбоя SD-карты или повреждения данных при внезапном отключении RPi во время работы): apt update
apt purge dphys-swapfile
apt autoremove --purge
apt install busybox-syslogd
dpkg --purge rsyslog
Установка программ: 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
Для homekit2mqtt вам необходимо установить nodejs: curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
apt-get install -y nodejs
Проверяем установленную версию node -v
nodejs -v
Установка узла-красного: npm install -g --unsafe-perm node-red
Запустим: node-red
В адресной строке браузера введите IP-адрес RPi 192.168.0.10:1880.
Завершите работу с node-red, нажмите Ctrl+c и перейдите в каталог .
node-red. cd .
node-red
А пакеты для node-red устанавливаем, они могут понадобиться для тестирования, настройки и общения с различными устройствами.
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
Возврат в домашний каталог cd
Установка homekit2mqtt: apt install libavahi-compat-libdnssd-dev
npm install -g homekit2mqtt --unsafe-perm
Вы можете попробовать запустить Homekit с помощью команды homekit2mqtt
Он запустится с настройками по умолчанию, и вы сможете добавить новое устройство в приложении «Дом» на своем iPhone или iPad.
Пользовательский пароль Пи Оставим нынешний.
Теперь, когда все установлено и проверено, нам нужно сделать резервную копию нашей SD-карты так же, как и раньше.
Теперь все готово для установки системы автоматизации.
Теги: #linux #Разработка на Raspberry Pi #Умный дом
-
Введение В Смарт-Карты
19 Oct, 24 -
Tizen Получит Поддержку Android-Приложений
19 Oct, 24 -
Выпуск Pycharm 2.0
19 Oct, 24 -
Портативный Python — Все Ношу С Собой!
19 Oct, 24 -
Олап Для Небольшой Компании
19 Oct, 24 -
Youtrack Теперь С Эмоциями
19 Oct, 24