Настройка raspberry pi 3

Специализированные операционные системы для Raspberry Pi

Необычные, эклектичные и совершенно разочаровывающие операционные системы доступны для Raspberry Pi.

16. Кали Линукс

Kali Linux для тестирования на проникновение и аудита безопасности. Это означает, что вы используете операционную систему и ее установленные инструменты для проверки целостности подключенной сети.

Доступны различные сборки для Raspberry Pi, Pi Zero и Raspberry Pi 2, 3 и 4.

17. FreeBSD

FreeBSD on Raspbery Pi 2FreeBSD on Raspbery Pi 2

BSD – это не Linux, но он выглядит как Linux и работает примерно так же. Происходя из Research Unix через дистрибутив программного обеспечения Беркли (отсюда и название «BSD»), FreeBSD является одной из наиболее широко используемых операционных систем в мире.

Вы найдете код FreeBSD в macOS, Nintendo Switch, а также в Sony PS3 и PS44.

Используйте командную строку для запуска приложений и игр. Удивительно большая коллекция программного обеспечения доступна для FreeBSD. Используйте Raspberry Pi, чтобы проверить FreeBSD – она ​​доступна для всех версий платы Raspberry Pi B. Посетить FreeBSD wiki Чтобы получить больше информации.

18. РИСК ОС Пи

Разработанная в Кембридже ОС RISC была первой операционной системой для процессоров ARM, разработанной в 1980-х годах. Он получил широкое распространение в середине 1990-х годов и в конечном итоге был заменен компьютерами на базе Windows.

Для совместимости используйте мышь с колесом прокрутки, реагирующим на нажатие, чтобы соответствовать трехкнопочному пользовательскому интерфейсу ОС RISC OS. После установки вы найдете бесплатные приложения в Packman и коммерческие опции в приложении Store.

RISC OS совместима со всеми Raspberry Pis вплоть до 3B +, включая платы Pi Zero и Compute.

19. План 9

Plan 9 Operating System for the Raspberry Pi - ported by Richard MillerPlan 9 Operating System for the Raspberry Pi — ported by Richard Miller

Если вы ищете альтернативу настольным операционным системам, UNIX-подобный Plan 9 может быть ответом. Это открытая ОС с открытым исходным кодом, разработанная той же командой за оригинальной UNIX.

Загрузка почти сразу перенесет вас в чрезвычайно трудную ОС Plan 9, управляемую из командной строки в стиле UNIX. Нужны советы? Ознакомьтесь с нашими руководствами по терминалам Raspberry Pi

,

20. motionEyeOS

Ищете способ настроить программное обеспечение домашней безопасности и веб-камеры с помощью Raspberry Pi?

motionEyeOS работает на всех платах Raspberry Pi, включая Raspberry Pi 4, Zero и Compute. Он поддерживает веб-камеры USB и собственную камеру Pi, и вы даже можете синхронизировать отснятый материал на Google Drive. Простая в настройке, если вы ищете домашнюю ОС для домашней безопасности, попробуйте это.

21. IchigoJam

IchigoJam BASIC был портирован на Raspberry Pi. Эта ОС изначально была разработана для маломощного одноплатного компьютера IchigoJam sub-Raspberry Pi из Японии. Точно так же IchigoJam BASIC RPi разработан для базовых вычислений низкого уровня.

Операционная система была разработана для упрощения программирования на языке BASIC и поддерживает функции цифрового ввода-вывода, ШИМ, I2C и UART.

Python – это основной язык Raspberry Pi

Почти все владельцы Raspberry Pi понимают, что означает первое слово в названии одноплатника – «малина». Однако второе многие интерпретируют неверно.

Некоторые считают, что оно означает «Пи» (3,14…), другие думают, что это первые две буквы слова Pie (пирог, и в этом есть смысл – «малиновый пирог»). Однако на деле все иначе.

Pi – это сокращение от Python, только с заменой y на i. Так часто делают в программировании. Взять, например, хотя бы KDE, где во многих программах вместо С написано K (в угоду стилю): Konsole (правильно – Console), Konqueror (Conqueror) и т. д.

То есть, как не трудно догадаться, в Raspberry основным языком является «Пайтон». Поэтому владельцу «Малины», который пока не знает никакого ЯП, рекомендуется изучать именно этот. Причин, почему Raspberry Pi 3 программирование на Python наиболее лучшее решение, существует множество.

Вот лишь некоторые из них:

  • работа из коробки в Raspbian;
  • наличие обширной, хорошо документированной официальной библиотеки, которая уже включена в пакет;
  • простота языка и т. д.

Примеры кода на Python для Raspberry

Здесь по понятным причинам не будем рассказывать о языке и особенностях программирования на нем – это можно и нужно делать на официальных ресурсах (или, если не позволяет плохое знание английского – на специализированных).

Вместо этого будет рассмотрено, насколько легко можно программировать «Малину». Для примера возьмем Raspberry Pi 3 GPIO программирование. Сделаем предположение, что в наличии имеется все необходимое: провода, светодиод, резистор и прочее, а также присутствует понимание распиновки – нумерации пинов. Также предположим, что светодиод подключен к 11 порту.

Написанный ниже код включает лампочку на 5 секунд, а затем выключает ее:

# вначале подключим необходимую библиотеку

import RPi.GPIO as GPIO

# также понадобится библиотека, которая отвечает за ожидание (она нужна, чтобы установить интервал включения и выключения лампочки)

import time

# чтобы запустить GPIO, понадобится выполнить следующую функцию

GPIO.setmode(GPIO.BOARD)

# теперь Python знает о GPIO, и ему можно указать на то, с каким портом нужно будет работать и что он должен делать (в данном случае – 11-м и он будет работать на выход)

GPIO.setup(11, GPIO.OUT)

# далее включим лампочку на 5 секунд (11 – номер порта, а 1 – значит true)

GPIO.output(11, 1)

time.sleep(5)

# теперь выключим (0 – значит false)

GPIO.output(11, 0)

Указанный код можно скопировать, вставить в документ и сохранить его с расширением .py, расположив, например, в домашней директории. Затем его нужно запустить командой: python ~./имя_файла.py.

Если все работает, то оборудование исправно.

Следует отметить, что, если вы плохо понимаете вышеуказанный код, обратитесь к документации и изучите основы программирования на Python, а также библиотеку GPIO. А если у вас есть хотя бы базовое понимание любого ЯП, то осознаете, что приведенный пример предельно прост.

Процесс установки и настройки Raspbian

Существует несколько вариантов установки Raspbian на Raspberry Pi 3. Первый – использование утилиты NOOBS, второй – запись содержимого образа прямо на карточку. Применение специального приложения позволяет выбрать ОС. В рассматриваемом же случае требуется просто поставить Raspbian. Поэтому описываться будет именно второй вариант.

Для начала нужно скачать дистрибутив с сайта Raspbian.org и вставить MicroSD-карточку в кардридер. Затем при помощи утилиты Win32DiskImager (или какой-то другой с аналогичным функционалом) потребуется записать образ на флэшку. Делается это легко – указывается путь к скаченному дистрибутиву; выбирается буква, под которой система примонтировала «диск», а затем нажимается Write.

Когда прогресс-бар полностью заполнится и программа сообщит об успешном окончании процесса записи, можно будет вынуть карту из кардридера и вставить её в «Малину». Затем останется только включить одноплатник, предварительно подключив к нему монитор и периферию.

Настройка Raspbian после установки

После первого включения RPi загрузится не рабочий стол, а встроенная в систему утилита Configuration Tool. В ней достаточно сделать одну вещь – определить подходящее окружение рабочего стола. Для этого нужно перейти к третьему пункту, нажать Enter и определить из списка подходящий вариант. Рекомендуется использовать LXDE, так как это достаточно удобное и самое легкое окружение. Затем останется вернуть в основное меню и нажать на Done. Система перезагрузится.

После загрузки она спросит реквизиты доступа. Стандартными в Raspbian являются: логин – pi, пароль – raspbian. Писать их нужно именно маленькими буквами.

После авторизации Raspbian загрузит рабочий стол. Теперь можно пользоваться всеми возможностями системы. Также может потребоваться дополнительная настройка Raspbian на Raspberry Pi 3. Для этого следует обратиться к официальной документации системы. Следует отметить, что многие инструкции для Debian подходят и для Raspbian.

Как возможно убедиться, ответ на вопрос «как установить Raspbian на Raspberry Pi 3?» является довольно простым. Фактически процесс записи системы для этого одноплатника является даже более легким делом, чем инсталлирование Windows на обычный компьютер. Поэтому с этим может справиться даже ребенок. А весь процесс, в свою очередь, отнимает не более получаса чистого времени.

Raspberry Pi 3 Установка операционной системы RASPBIANRaspberry Pi 3 Установка операционной системы RASPBIAN

Установка операционной системы Raspberry Pi

Для корректной работы Raspberry Pi требуется подключение и настройка. В первую очередь устанавливается операционная система. Чаще всего на устройстве предусмотрена Linux, рекомендуемая ОС Raspbian. Система размещена на официальном сайте производителя Raspberry Pi, образ можно скачать в любое время. После установки необходимо вставить карту памяти в плату и отредактировать файл config.txt, размещенный в корневой папке.

С помощью файла выполняются настройки. Например, фиксируется разрешение экрана (hdmi_group и hdmi_mode). После включения и загрузки устройства запускается raspi_config. Точное определение параметров можно найти на тематических форумах. Как только мини-компьютер настроен, потребуется перезагрузка.

Raspbian

Для корректной установки Raspbian на одноплатный компьютер необходимо следующее:

  • сама плата;
  • компьютер;
  • картридер;
  • кабель USB/MicroUSB, блок питания;
  • проводная клавиатура и мышь;
  • монитор для вывода информации;
  • HDMI;
  • MicroSD от 4 Гб.

Предусмотрены разные варианты установки операционной системы. Это можно сделать с помощью специальной программы NOOBS или сразу записать образ на карту памяти.

Для загрузки ОС на microSD необходимо скачать данные с Raspbian.org, затем с помощью Win32DiskImager образ загружается на носитель. По завершению записи карта памяти извлекается из кардридера и устанавливается в плату. Не забудьте подключить все необходимые периферийные устройства к мини-компьютеру.

После включения системы запускается специальная программа Configuration Tool, в которой достаточно выбрать окружение рабочего стола. Это выполняется быстро, необходимо в третьем пункте отметить LXDE, после чего вернуться в основное меню. Как только система настроена, выполняется перезагрузка. Пользователю остается только ввести логин и пароль. По умолчанию установлен логин pi и пароль raspbian. Настройка Raspberry Pi подробно описана в официальных руководствах и на тематических форумах.

Ubuntu

Для установки ОС Ubuntu нужна SDHC-карта 6 или 10 класса. Минимальный объем памяти составляет 8 Гб. Необходимо перейти на Ubuntu-mate.org/raspberry-pi/, после чего загрузить образ системы. Дополнительно потребуется утилита Win32DiskMager, которая помогает записывать файлы на носитель.

После загрузки в приложении указывается путь к образу с операционной системой, определить карту памяти и кликнуть на Write. Как только файлы запишутся на носитель, нужно установить его в плату.

При включении одноплатного компьютера запускается Ubuntu MATE, требующий настройки. В первую очередь задается имя пользователя и пароль. Остальные настройки не требуют специальных знаний, они указаны на английском языке.

Операционная система оптимизирована для Raspberry Pi, поэтому не придется дополнительно искать драйвера.

Windows

Прежде чем установить на Raspberry Pi Windows 10, необходимо загрузить несколько программ:

  • MSVStudio 15 или 17;
  • Dashboard;
  • Windows IoT Remote Client.

После установки программ нужно запустить Dashboard, открыть страницу “Настройка нового…” и выбрать карту памяти. Затем пользователю необходимо задать имя устройства, пароль для доступа, определить модель Raspberry Pi и версию системы. Оборудование готово к записи ОС.

Если нет желания подключать Raspberry Pi к стационарному компьютеру, можно воспользоваться приложением Remote Client.

Android

ОС Android нежелательна для Raspberry Pi, но если это необходимо, потребуется подготовить следующее:

  • Raspberry Pi;
  • стационарный компьютер;
  • блок питания;
  • microSD объемом от 16 Гб;
  • монитор для вывода изображения и HDMI;
  • программное обеспечение.

Чаще востребована установка Raspberry Pi 3 с Андроид. Операционную систему от Google можно скачать здесь: https://raspbian-france.fr/download/and7_1-tablet-23012017.zip. Кроме этого необходим специальный скрипт для загрузки Play Market и программа Etcher для записи ОС.

Утилита Etcher запускается после того, как карта памяти вставляется в кардридер. После нужно выбрать Select Image и загрузить образ с операционной системой на носитель, нажав кнопку Flash. После записи можно вставить флешку в плату и начинать работу, предварительно запустив Play Market.

Установка OS на Raspberry pi и подключение к нейУстановка OS на Raspberry pi и подключение к ней

Приложения для работы в интернете

В Raspbian и во многих других дистрибутивах GNU/Linux веб-обозреватель поставляется «в коробке». Но если хочется на Raspberry Pi 3 иметь нестандартный браузер, его можно загрузить либо из репозитория, либо установить из пакета, скаченного с сайта официального сайта проекта.

Для загрузки торрентов можно использовать программу DELUGE. Её легко найти в репозитории любого дистрибутива.

Telegram для Raspberry Pi 3 в виде приложения отсутствует. Но, как и Skype, им можно пользоваться через браузер. Однако в некоторых странах с доступом к web-telegram могут быть проблемы из-за блокировок. Поэтому при их наличии прежде всего потребуется решить данную проблему.

Для Raspberry Pi 3 есть Java. Ее можно найти на сайте Oracle (в репозиториях может отсутствовать по причине проприетарности). Но перед загрузкой пакета необходимо выбрать не только операционную систему (Linux), но еще и тип процессора – ARM. В противном случае ничего работать не будет.

Java загрузится в виде архива. Для начала его потребуется распаковать, выполнив следующий ряд команд:

  • cd ПАПКА_КУДА_ЗАГРУЗИЛСЯ_АРХИВ;
  • sudo tar -xvf ПОЛНОЕ_НАЗВАНИЕ_ПАКЕТА.tar.gz -C / opt;
  • ввод пароля.

После того, как это все будет выполнено, останется указать путь к файлу и установить переменную JAVA_HOME. Для этого потребуется выполнить 4 команды:

  1. chmod a+w /etc/profile (суперпользователь);
  2. echo ‘export PATH=/opt/ejre1.7.0_45/bin:$PATH’ >> /etc/profile;
  3. echo ‘export JAVA_HOME=/opt/ejre1.7.0_45’ >> /etc/profile$;
  4. chmod a-w /etc/profile (суперпользователь).

Готово. Можно на всякий случай перезагрузиться.

Приложений для Raspberry Pi 3 существует множество тысяч. Среди них – почти все программы с открытым исходным кодом, так как их практически ничего не стоит перекомпилировать под ARM. Поэтому, чтобы узнать конкретно о том, какие есть приложения для «Малины», следует обратиться к списку OpenSource-проектов. Выбрав те, которые нужны или интересны, останется просто открыть менеджер пакетов или воспользоваться терминалом, чтобы загрузить их из репозитория. А если их там нет, то обратиться к сайту проекта или GitHub.

Raspberry Pi: первое знакомство. Урок 2. Интернет, программы из Pi Store и LibreOfficeRaspberry Pi: первое знакомство. Урок 2. Интернет, программы из Pi Store и LibreOffice

SSH – самый простой, но в то же время эффективный вариант подключения к «Малине»

Любому владельцу RPi рекомендуется установить в нем поддержку протокола SSH. Это может оказаться полезным даже в случаях, когда компьютер используется в качестве, например, медиа-центра. Во всех остальных – это предельно необходимо.

Чтобы установить на Raspbbery Pi 3 SSH, понадобится всего 5-10 минут. Ниже будет рассмотрен процесс инсталлирования всего необходимого ПО под Raspbian или другой дистрибутив, основанный на Debian.

Первое, что нужно сделать – открыть терминал и выполнить команду apt-get install ssh. Конечно, это следует делать из-под суперпользователя (sudo). То же самое станет касаться других операций в консоли, за исключением запроса сведений о сетевых интерфейсах.

Когда пакеты будут загружены и внедрены в систему, понадобится открыть утилиту raspi-config и включить SSH в раздел Interface Option. То есть следует поменять значение напротив пункта SSH на Enable. Теперь останется перезагрузить компьютер. Это возможно сделать прямо в терминале: shotdown –r now. SSH должен работать и без перезагрузки, но во избежание ошибок лучше все-таки дать системе «освежиться».

После загрузки ОС нужно будет ввести в консоли следующую команду: /etc/init.d/ssh start. Это запустит необходимый сервис

Важно: ее потребуется исполнять после каждого ребута. Чтобы этого не делать, добавьте указанную команду в автозагрузку

Все, теперь SSH должен работать. В качестве логина и пароля нужно использовать реквизиты доступа к учетной записи в системе.

Но также осталось еще узнать адрес RPi. Для этого в терминале нужно указать команду ifconfig, после чего найти среди отобразившейся информации пункт eth0, где присутствует строка inet addr. То, что будет после двоеточия – это и есть адрес «Малины».

Подключение к RPi3 по SSH

Теперь, чтобы выполнить подключение к Raspberry Pi 3 по SSH, нужно:

  • открыть на компьютере с Windows или Linux программу для работы с SSH (к примеру, PuTTy);
  • ввести логин/пароль и адрес;
  • подключиться к устройству.

SSH позволяет удаленно взаимодействовать с устройством так же легко, как непосредственно при физическом контакте с ним. Работать приходится через консоль, но в Linux через неё возможно сделать практически все что угодно. А, следовательно, посредством такого удаленного управления Raspberry Pi 3 можно получать доступ к информации обо всех компонентах системы и взаимодействовать с ними.

Первый запуск Raspberry

Подключаем к мини-ПК источник питания, ожидаем загрузку системы и видим окно с настройкой конфигурации;
Выбираем пункт «expand_rootfs» и устанавливаем желаемый размер root (объём файловой системы). Если хотите использовать всё доступное место на карте памяти — вписываете соответствующее значение;
Если хотите изменить драйвера клавиатуры или поставить пароль — заходите в 4 и 5 строчку, если нет — пропускаем эти пункты;
Заходим в change_locate и выбираем русский язык. Советуем использовать кодировку UTF-8, которая поддерживает большинство приложений, имеющих русский интерфейс;
В change_timezone выбираем свой часовой пояс. В дальнейшем, если есть подключение к интернету, время будет синхронизироваться под установленный регион;
Выбираем memory_split и устанавливаем объём памяти, который будет доступен для вытягивания с оперативки и использования графическим процессором. Если хотите проигрывать на Raspberry Pi video-файлы — ставите 128 или 256, если нет — достаточно 16 МБ;
Следующая вкладка «overclock» предназначена для разгона Raspberry Pi. Изменение значений в этой вкладке может привести к повреждению системы при недостаточном энергопотреблении или охлаждении

Если же вам крайне важно повысить частоту процессора — подымайте значение постепенно, начиная с «Modest», затем «Medium». Если система стабильно работает в тестах на производительность — можете попробовать режим «High»

Рекомендуем использование пресета «Turbo» только в рамках эксперимента, иначе восстановить начальное состояние устройства не выйдет;
Для использования Raspberry в режиме удалённого управления включаем ssh, для запуска визуальной оболочки во время запуска устройства — функцию boot_behaviour;
Нажимаем Ctrl и F, выбираем Finish. После этого произойдёт первое включение Raspberry и вы сможете увидеть работу скачанной ранее операционки.

Если всё сделано верно, можете приступать к изучению всех особенностей Raspberry Pi, начав внедрять их в проекты. Однако запуск и выключение гаджета дёрганьем шнура обеспечивает дискомфорт пользователю. Поэтому давайте рассмотрим возможность управления питанием при помощи кнопки на Raspberry Pi.

Кратко о Ubuntu Mate

В OpenSource-сообществе принято так, что, если кому-то не нравится новая веха развития какого-то продукта, они делают форк его старой версии. В результате этот проект продолжает развиваться, но под другим названием.

Так, несколько лет назад произошло с Gnome. Многие привыкли к его второй версии. К тому же она была довольно производительной. Поэтому ее форкнули, и назвали данный продукт Mate.

Сейчас Gnome 2 под указанным названием доступен для всех систем на Linux. Даже делают специальные версии дистрибутивов, в которых «в коробки» поставляется данное окружение. В случае с Убунтой, таковым является Ubuntu Mate.

Загрузить данную систему можно с официального сайта проекта, расположенного по адресу: ubuntu-mate.org. Оказавшись на нем, потребуется:

  • перейти в раздел Download;
  • проскролить страницу до низу;
  • выбрать пункт Raspberry Pi 3;
  • на загрузившейся странице нажать на Download.

Что такое Windows 10 IoT?

Важно понимать, что для Raspberry Pi 3 Windows 10 IoT – это совсем не та операционная система, которую многие привыкли видеть у себя на компьютерах и ноутбуках. Она даже более далека от таковой, чем тот же Windows Phone

Сходство с привычной Windows заключается только в одном – в основе находится ядро Windows NT. Оно отчасти похожа на Виндовс для настольных компьютеров, но очень отдаленно.

То есть если установить на Raspberry Pi 3B Windows 10 IoT, на ней будет невозможно запускать привычные программы (например, офис или даже браузер) и тем более игры. Более того – пользователь не увидит даже привычного рабочего стола.

Но для чего тогда нужна такая операционная система. Для того же, для чего вообще часто применяется «Малина» – реализации различных проектов. Например, этот Виндовс нередко используется в современных промышленных системах и кассовых аппаратах.

Подготовка SD-карты

Перед прошивкой изображения на карту micro SD сначала необходимо отформатировать его в файловую систему FAT32.

Загрузчик Raspberry Pi поддерживает чтение только из файловых систем FAT. Если ваша SD-карта объемом 64 ГБ или больше, убедитесь, что она отформатирована как FAT32, а НЕ как exFAT.

Обратите внимание, что форматирование – это разрушительный процесс, и он удалит все существующие данные. Если у вас есть данные на SD-карте, сначала сделайте резервную копию

Windows

Пользователи Windows могут отформатировать карту, используя стандартное управление дисками.

  1. Вставьте SD-карту в привод Windows SD.
  2. В поле поиска Windows введите «Диск» и выберите «Создать и отформатировать разделы жесткого диска» в окне результатов.
  3. Щелкните правой кнопкой мыши на нераспределенном пространстве карты и запустите мастер, нажав «Новый простой том». Нажмите кнопку “Далее”.
  4. Далее вам будет задан размер тома. Оставьте по умолчанию максимальное дисковое пространство. Нажмите кнопку “Далее”.
  5. Вам будет предложено указать путь монтирования, просто нажмите «Далее».
  6. В следующем окне выберите FAT32 в качестве файловой системы. Нажмите «Далее», а затем «Готово», чтобы завершить создание раздела. Если размер карты составляет 64 ГБ или больше, опция FAT32 будет недоступна. Выберите exFAT и завершите процесс. Чтобы отформатировать SD-карту как FAT32, посетите страницу формата FAT32 (http://www.ridgecrop.demon.co.uk/index.htm?guiformat.htm), где вы можете загрузить инструмент, нажав на картинку. Один файл с именем guiformat.exe будет загружен. Просто дважды щелкните по exe-файлу, выберите диск для форматирования и нажмите «Пуск». Карта будет отформатирована в FAT32 через несколько секунд.

Linux

В Linux вы можете использовать графический инструмент, например GParted, или инструмент командной строки, например fdisk или parted, для создания раздела и форматирования диска.

  1. Вставьте SD-карту в привод Linux SD-карты.
  2. Узнайте название вашей SD-карты с помощью команды lsblk:

    lsblk
    NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    ...
    sdb           8:16   1  59.6G  0 disk
    ...

    В этом случае имя устройства SD будет /dev/sdb, но это может отличаться в вашей системе. Лучший способ определить имя – проверить размер устройства.

  3. Следующим шагом является форматирование карты с помощью parted:

    sudo parted /dev/sdb --script -- mklabel msdos
    sudo parted /dev/sdb --script -- mkpart primary fat32 1MiB 100%
  4. Отформатируйте раздел в FAT32:

    sudo mkfs.fat -F32 /dev/sdb1

Macos

Пользователи macOS могут отформатировать SD-карту с помощью стандартной дисковой утилиты или из командной строки.

  1. Вставьте SD-карту в привод MacOS SD-карты.
  2. Введите следующую команду в окне терминала, чтобы определить имя SD-карты:

    sudo diskutil list
  3. Отформатируйте SD-карту в FAT32, выполнив следующую команду:

    sudo diskutil eraseDisk FAT32 RPI MBRFormat /dev/disk2

    Убедитесь, что вы используете правильный диск.

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
Добавить комментарий