Соблюдаем дистанцию — установка Raspberry Pi OS и бесконтактная работа с Raspberry Pi
Привет! Свой первый пост на Хабре я хочу посвятить одноплатникам Raspberry Pi. А конкретнее — я покажу, как установить Raspberry Pi OS и затем настроить ваш Raspberry Pi исключительно используя ssh-подключение.
Итак, нам потребуются:
Raspberry Pi с Wi-Fi модулем (например, Raspberry Pi Zero W);
SD-карта (мин. 8Гб);
Компьютер с ssh-клиентом.
Шаг 1. Установка Raspberry Pi OS
Для того, чтобы установить операционную систему на Raspberry Pi, нам потребуется установить наш компьютер специальную утилиту, именуюмую Raspberry Pi Imager. Скачать её можно на официальном сайте. Если вы, как и я, пользователь Убунты, то можно установить напрямую из репозиториев: sudo apt install rpi-imager
Устанавливаем и запускаем Imager. В стартовом окне программы необходимо указать тип ОС, которую мы хотим установить (а именно Raspberry Pi OS (32-bit)) и указать SD-карту, на которую мы установим эту ОС, жмем Write, и ждем, пока система устанавливается.

Шаг 2. Настройка Wi-Fi подключения и запуск ssh-сервера на Raspberry Pi
После того, как ОС установилась, ищем на SD-карте раздел boot и создаем там два файла:
Файл ssh нужен для старта ssh-сервера. Его оставляем пустым. А вот в файл wpa_supplicant.conf помещаем настройки для подключения к Wi-Fi сети. Я подготовил сниппет с примером конфига. Обратите внимания на поля ssid и psk — скорректируйте их значения в соответствии с настройками вашей Wi-Fi сети.
Шаг 3. Подключение по SSH
Теперь вставляем SD-карту в Raspberry Pi и включаем малинку. Ожидаем загрузки. Первй запуск может потребовать некоторое время, поэтому набираемся терпением. Пробуем подключиться к малинки по ssh. Пользователи Windows для этой цели могут использовать Putty. Тем же, кто на линуксе, достаточно терминала.
По умолчанию Raspberry Pi имеет следующие параметры для подключения:
имя хоста: raspberrypi.local
имя пользователя: pi
Подключаемся к малинке: ssh pi@raspberrypi.local
Если всё получилось, мы попадем в консоль малинки и увидим «приветственное сообщение» с предложением смены дефолтного пароля:
Шаг 4. Графический интерфейс
Для удаленного доступа графическому интерфейсу малинки будем использовать VNC. Для этого:
Идем в настройки малинки. Для этого в терминале пишем: sudo raspi-config
В меню Interface Options -> VNC выбираем Yes. Перезагружаем девайс ( sudo reboot ). VNC сервер запущен.
Устанавливаем VNC клиент. Я использую VNC Viewer. На сайте выбираем вьюер для своей операционной системы и устанавливаем его.
Запускаем программу и создаем новое соединение с помозью меню: File -> New Connection. В настройках соединения указываем:
VNC Server: raspberrypi.local
Name: имя соединения, например Raspberry Pi
Жмем ОК. Появится иконка для созданного соединения. Кликаем на неё и указываем логин и пароль, какой использовали для соединения по SSH.
Если всё получилось, то мы попадем на рабочий стол:
Вот и всё, теперь мы можем работать с Rapberry Pi так, как если бы подключили к одноплатнику монитор и клавиатуру.
Заключение
В данном посте мы познакомились с тем, как:
Установить операционную систему Raspberry Pi OS с помощью Raspberry Pi Imager;
Настроили ssh сервер и Wi-Fi подключение без подключения к Raspberry Pi монитора и клавиатуры;
Connecting to your Raspberry Pi via SSH
The Raspberry Pi can be controlled like any other Desktop computer using a keyboard, mouse, and monitor. However, there are also various ways to command the Raspberry Pi remotely, of which SSH is one of the best and often used.
Table of contents
What is SSH
Secure Shell (SSH) enables you to access the command line of a Raspberry Pi from another computer or device on the same network. This is very handy for quickly installing software or editing configuration files. SSH is pre-installed on Linux, Mac and some Windows operating systems and can also be installed on mobile devices. SSH does not provide any visual access to the Raspberry Pi Desktop. If this is needed, I recommend to use VNC.
Enable SSH on the Raspberry Pi
By default, SSH is disabled on the Raspberry Pi. It is however very easy to enable it, both using the Desktop and via the terminal. To enable SSH via the Desktop, go to the start menu > Preferences > Raspberry Pi Configuration .

Now click on Interfaces and click enable next to SSH and click OK .

To enable SSH via the terminal, open a terminal window and enter sudo raspi-config . Now with the arrows select Interfacing Options , navigate to and select SSH , choose Yes , and select Ok .

If you want SSH to be enabled upon first boot, such as for a headless installation, follow this short guide.
Connecting via SSH
Now SSH is enabled, we need to know the hostname of the Raspberry Pi or use its IP address to connect to it. To know the ip address, on your Raspbery Pi type in:
Now to connect, on the host computer open a terminal window and type in
It is also possible to directly send a single command to your Raspberry Pi, such as to shut it down:
Enable SSH on the host device
SSH is standard available on Linux distributions and on Mac so should work automatically.
To enable ssh on a Windows 10 computer, make sure it has the October 2018 Update or later and go to Settings > Apps > Apps & features > Manage optional features > Add a feature , and choose to install OpenSSH Client.
On other Windows installations you may need to install an SSH client, of which PuTTY is the most commonly used. Go to putty.org, download the 64-bit MSI (Windows Installer), and open it to run the installer. Now launch PuTTY, set the Host Name (or IP address) field, Port to 22 , and Connection type should be set to SSH . Now click Open and a new terminal window should appear prompting you for a user name.
Finally, it is also possible to use SSH on your mobile device. Several good quality clients are available, of which I recommend Termius (termius.com), an application that is availble for both iOS and Android.
Passwordless SSH
When using SSH, each time you connect you will be asked for the password of your Raspberry Pi. In some cases it may be preferable to access your Raspberry Pi from another computer without a password, such as to (automatically) send files using rsync (follow the guide here). To enable password-less access with SSH you will need to generate an SSH key. To do so, open a terminal window and enter:
Now click Enter twice to generate and store the unique key in the default location and with the default passphrase. The private and public keys will now be stored in
Next we need to copy the public key to your Raspberry Pi. To do so, simply enter:
Authenticate this step with your password and you are done. To verify the SSH key was successfully copied to the remote host, SSH to the Raspberry Pi from the host device or vice versa. No password should be required if the key was copied successfully.
Comments
There are currently not any comments yet.
Add a Comment
Please leave your comment below. If you’d like to be notified of my reply, please leave your comment here for others but also send your comment as an email to me. I will try to reply as soon as I can. Thanks!
Raspberry Pi: Настройка сети и удаленная работа
Иногда вам необходимо получить доступ к управлению Raspberry Pi в тех ситуациях когда вы не можете подключить монитор, например, когда микрокомпьютер уже уставнолен внутри какого-нибудь проекта. Или вы хотите произвести настроку системы, подключившись с вашего обычного компьютера. На этот случай в системе Raspbian есть целая куча удобных инструментов, мы постараемся рассмотреть основные из них.
Для всего, что описано в данной статье, необходимо чтобы Raspberry Pi был подключен к локальной сети по Wi-Fi или кабелем Ethernet. Если вас не интересует удаленный доступ, то вы можете перейти к следующему шагу настройки системы — "Работа с камерой".
Первым делом проверьте подключены ли вы к сети. Если ваш Raspberry Pi подключен к беспроводной сети, то рядом с часами вы увидите следующую иконку:

Определение IP адреса
Все настройки сети и удаленного доступа желательно выполнить до начала работы с проектом, пока у вас еще есть возможность подключить монитор. Первое, что нам понадобится для удаленного подключения по сети — это определить IP адрес Raspberry Pi. Именно по этому адресу вы сможете обращаться к своему микрокомпьютеру.
Откройте терминал на Raspberry Pi и введите команду:
В ответ вы увидте следующее сообщение

192.168.1.137 — это и есть ip адрес вашего Raspberry Pi. Дальше все подключения мы будем выполнять через него.
VLC — доступ к графическому интерфейсу
VNC (Virtual Network Computing) — это система, которая позволяет удаленно контролировать графический интерфейс вашего Raspberry Pi. Т.е. вы можете подключиться к рабочему столу микрокомпьютера со своего обычного компьютера и полностью управлять им. Вы моежете не только просматривать что происходит на рабочем столе, но и управлять мышкой и клавиатурой.

Во все свежие версии операционной системы Raspbian входит программа RealVNC, поэтому все что вам необходимо сделать для активации этой функции — это включить VNC в основных настройках Raspberry Pi. Выбираете "Enabled" в строке VNC во вскладке Interfaces, нажимаете ОК и перезагружаете систему.

Если вы работаете через консоль, то VNC можно включить через команду sudo raspi-config, в открывшемся окне переходите в Interfacing Options и выбираете VNC > Yes.
После перезагрузки вы увидите приветственно окно VNC сервера, обо будет ообозначать, что сервер готов к работе и вы можете к нему подключиться. Также в окне будет отображаться ip адрес вашего компьютера для подключения.

Вы можете закрыть окно, сервер продолжит работать. Вы всегда можете открыть его заново нажав на иконку VNC в верхнем меню рядом с часам.
Если в операционной системе на вашем микрокомпьютере нет VNC сервер, тогда вы можете поставить его выполнив следующие команды в терминале:
sudo apt-get update
sudo apt-get install realvnc-vnc-server realvnc-vnc-viewer
Подключение к VNC серверу по локальной сети
Для того, чтобы начать управлять системой вам необходимо подключиться к VNC серверу, а для этого необходио скачать и установить VNC клиент. Самый распостраненный из них VNC Viewer. Он существует для всех операционных систем, а также доступен для Android и iOs. Вы можете выбрать нужную версию на официальном сайте. Скачайте, установите и откройте VNC Viewer для вашей системы. Обратите внимание на то, что VNC сервер и клиент должны находится в одной локальной сети!

Не важно с какого устройства вы будете подключаться, принцип работы везде будет одинаковый. Мы покажем его на примере VNC Viewer для MacOs.
В открывшемся окне создайте новое подключение, выбрав "New connection. ". Появится окно подключения, в котором необходимо ввести название подвключения и ip адрес сервера, к которому вы хотите подключиться. В нашем случае это 192.168.1.137.

Также вы можете настроить дополнительные параметрые, такие как шифрование, качество передаваемой картинки, масштаб, работу кнопок. Во вкладке Expert вы моежете найти много более тонких настроек. Но для первого подключения нам понадобится только ip и название подключения. Сохраните подключение нажав кнопку "ОК". Новое подключение появится в списке подключений на главном экране. Дважды кликните по новому подключению.

В появившемся окне необходимо ввести имя пользователя и пароль пользователя под которым вы обычно работаете на вашем Raspberry Pi. В нашем случае это будет pi и пароль, который мы установили при настройке системы. Если вы не меняли пароль, то используйте пароль по-умолчанию raspberry. Через несколько мгновений VNC клиент подключится к серверу вы увидите рабочий стол своего микрокомпьютера. Теперь вы можете управлять им по сети!

Воспользовавшись иконками в верхней части экрана вы можете посмотреть информацию о системе, отправить сообщения или файлы на удаленный компьютер.
Также если установить на Raspberry Pi пакет Common Unix Printing System (устанавливается через терминал командой sudo apt-get install cups), то вы сможете печатать файлы с VNC сервера на вашем обычно компьютере.
Подключение к VNC серверу через интернет
Кроме обычно подключения по локальной сети RealVNC позволяет подключиться к вашему Raspberry Pi через интернет. Подключение через облако полностью шифруется и позволяет вам получить доступ к вашему микрокомпьютеру из любой точки мира. Нет необходимости дополнительно настраивать домашний роутер или знать ip адрес микрокомпьютера. Облачный сервис предоставляется бесплатно для обучения и некоммерческого использования, но имеет ограничения — к аккаунту можно подключить только 5 удаленных компьютеров.

Все что вам необходимо для это сделать — это зарегистрировать аккаунт на 
Программа войдет в вашу учетную запись и предложит ввести имя данного сервера, которое будет отображаться в списке серверов в вашем аккаунте. Придумайте подходящее имя и нажмите кнопку "Done". Сервер подключен к вашему аккаунту RealVNC, теперь вам необходимо добавить свой аккаунт RealVNC еще и в VNC клиент.
Откройте свой VNC клиент и нажмите на кропку "Sing in".

В появившемся окне введите логин и пароль от вашего RealVNC аккаунта и нажмите Sing in. Не закрывайте это окно. Вам на почту придет присьмо со ссылкой на подтверждение авторизации. Просто нажмите на кнопу "CONTINUE SIGNING IN" в письме и через несколько секунд VNC клиент подключится к вашему аккаунту.
Теперь в VNC клиенте кроме локальных серверов таже отображается список VNC серверов, к которым вы можете подключиться через интернет.

Для подключения к удаленному серверу дважды кликните по его иконке.
Подключение по VNC к системе без монитора
Если вы используете Raspberry Pi в проекте без монитора, то вы можете подключиться к его графическому интерфейсу создав виртуальный рабочий стол! Для этого необходимо сначало подключиться к нему по SSH и ввести команду vncserver. В ответ вы получите адрес для подключения с указанием номера виртуального монитора, например, 192.167.1.147:1. Теперь подключитесь через ваш VNC клиент искользуя 192.167.1.147:1. Когда вы закончите работать с VNC сервером, необходимо будет через терминал прекратить работу виртуального рабочего стола, чтобы он не расходовал ресурсы системы. Для этого в терминале ввидте команду vncserver -kill :<display-number>. В нашем случае это будет vncserver -kill :1.
SSH — удаленный доступ через терминал
Все что надо сделать — включить в настройках и перезагрузить.
Доступ по ssh ключу — https://www.raspberrypi.org/documentation/remote-access/ssh/passwordless.md
Удаленный доступ к файлам
SFTP — начинает работать сразу как только мы вклювили ssh. Статья про то как копировать файлы, SCP — Copy files between your Pi and another computer using SCP (Secure Copy Protocol) — Работает также как SFTP. Также многие используют samba server (Samba/CIFS — Sharing folders from or to Windows-based devices). Еще есть netatalk для работы с маком, но надо проверить есть ли у него возможность выбора папки расшаривания или он только с папкой пользователя pi работает.
rsync — Synchronise folders between the Pi and another computer using rsync over SSH, Resilio Sync
Raspberry Pi: настройка и управление
Когда вы покупаете Raspberry Pi, то вы покупаете только печатную плату, которая приходит даже без источника питания и операционной системы. Данная статья предназначена для того, чтобы дать вам представление, как настроить Raspberry Pi, чтобы можно было начать его использовать.
Raspberry Pi представляет собой миникомпьютер, который имеет много портов, которые могут быть использованы для подключения различных периферийных устройств. Вы можете подключить отдельный монитор через HDMI порт и клавиатуру и мышь через USB разъемы, также у Raspberry Pi имеется Ethernet порт, поэтому вы можете использовать интернет в своих проектах на Raspberry Pi.
В данном руководстве вы пройдете через ряд шагов, которые позволят вам подключить Raspberry Pi к вашему ноутбуку или настольному ПК, что исключает необходимость использования отдельных устройств для Raspberry Pi.
Оборудование и программное обеспечение
- 1 x Raspberry Pi;
- 1 x кабель Ethernet;
- 1 x ноутбук или стационарный ПК;
- 1 x SD карта (минимальный размер 4 ГБ);
- 1 x кабель Micro USB (чтобы запитать Raspberry Pi).
Прежде, чем мы продолжим, нам понадобится программное обеспечение, которое необходимо скачать. Ниже приведен список программного обеспечения и ссылки, откуда вы можете его скачать бесплатно:
- Raspbian OS: когда вы покупаете Raspberry Pi, у вас есть возможность (в некоторых магазинах) купить предустановленную на SD карту операционную систему, либо просто скачать zip-файл c https://www.raspberrypi.org/downloads/, который содержит образ Raspbian OS, чтобы записать его на вашу SD карту;
- SDFormatter: у SD Card Association есть очень хорошее ПО, которое может быть использовано для форматирования вашей SD карты. Посетите https://www.sdcard.org/downloads/formatter_4/index.html и скачайте SDFormatter для вашей операционной системы;
- Win32DiskImager: чтобы записать Raspbian OS на вашу SD карту, вам понадобится полезная утилита Win32DiskImager. Скачать её можно здесь http://sourceforge.net/projects/win32diskimager/;
- Advanced IP Scanner: вам будет необходимо определить IP адрес вашего Raspberry Pi, когда подключите его компьютеру. Просто скачайте эту программу http://www.advanced-ip-scanner.com/;
- PuTTy: PuTTy – это SSH клиент, который будет использоваться для подключения к Raspberry Pi. Вы можете скачать его здесь http://www.putty.org/;
- VNC: и последнее это VNC сервер. Скачать его можно здесь https://www.realvnc.com/download/.
Когда скачаете всё это программное обеспечение, распакуйте и установите его.
Установка операционной системы
- Вставьте SD карту в картридер и проверьте, какая буква была присвоена диску.
- Откройте Win32DiskImager, возможно понадобится запустить его от имени администратора.
- Выберите образ распакованной Raspbian OS.
- Выберите букву, присвоенную вашей SD карте, в выпадающем списке устройств. Убедитесь в том, что выбрали правильную букву диска, чтобы не повредить данные на каком-либо другом диске.
- Нажмите Записать (Write) и ждите завершения.
- Закройте Win32DiskImager, выньте SD карту и вставьте её в Raspberry Pi.
Примечание: после записи операционной системы вы заметите, что на SD карте осталось лишь несколько мегабайт. Это из-за созданного раздела, остальная часть свободного пространства скрыта. Вы сможете это исправить, как только мы подключимся к Raspberry Pi.
Общий интернет через Ethernet порт
Как только SD карта будет готова, вставьте её в Raspberry Pi. Подключите USB кабель питания. А также соедините Raspberry Pi и ноутбук кабелем Ethernet.
Если вы подключаете Raspberry Pi к роутеру с доступом к интернету, то этот шаг можно пропустить.
Этот шаг показывает, как можно поделиться интернетом с компьютера (подключенного к интернету через WiFi) с вашим Raspberry Pi. Это можно легко сделать с помощью сетевого моста.
- Перейдите на компьютере в Центр управления сетями и общим доступом, затем перейдите в Изменение параметров адаптера на левой панели. В этом окне вы увидите несколько сетевых подключений.

- То, что вы собираетесь здесь сделать, создает мост между вашими WiFi и Ethernet подключениями. Выберите WiFi подключение, а затем, удерживая Ctrl , выберите Ethernet подключение.

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

Проверка IP адреса, присвоенного вашему Raspberry Pi
Это просто, убедитесь, что ваш Raspberry Pi подключен к Ethernet сети вашего компьютера (напрямую или через роутер). Если всё работает нормально, вы увидите, что светодиоды на плате мигают.
- Запустите Advanced IP Scanner и нажмите Сканировать.
- Это займет некоторое время, после чего вы увидите список устройств, подключенных к вашей локальной сети.

Подключение к Raspberry Pi через PuTTy
Отлично! Перед тем, как продолжить, посмотрим, что у нас уже сделано к текущему моменту:
- установлена операционная система;
- предоставлен доступ к сети интернет;
- мы знаем IP адрес нашего Raspberry Pi.
Далее мы собираемся подключиться к Raspberry Pi и выполнить окончательные настройки.
- Запустите PuTTy.
- Введите IP адрес вашего Raspberry Pi (вы узнали его с помощью Advanced IP Scanner на предыдущем этапе).

- На левой панели разверните раздел Connection, затем разверните SSH, перейдите к X11 и включите Enable X11 Forwarding.

- Теперь откройте подключение (кнопка Open внизу).
- Появится окно терминала. Для подключения к Raspberry Pi требуются логин ( pi ) и пароль ( raspberry ).
- После ввода логина и пароля вы подключитесь к окну терминала вашего Raspberry Pi. Введите sudo raspi-config и нажмите Enter . Запустится программа настройки Raspberry Pi.

- Перейдите к Expand Filesystem, и после нескольких миганий вы увидите, что размеры разделов были изменены, и проблема с разделом, которую мы упоминали при установке операционной системы, теперь исправлена.

- Перезагрузите Raspberry Pi и подключитесь к нему снова, как делали это только что.
- Теперь запустите команды sudo apt-get update && sudo apt-get upgrade в терминале Raspberry Pi. Это обновит всё установленное программное обеспечение.
Подключение к Raspberry Pi через VNC
Вы уже установили VNC на ваш компьютер, теперь пришло время установить его и на ваш Raspberry Pi.
- Подключитесь к Raspberry Pi через PuTTy.
- В окне терминала Raspberry Pi введите sudo apt-get install tightvncserver .
- Когда VNC будет установлен, запустите команду vncserver :1 . Это запустит VNC сервер. Вам будет предложено ввести пароль, введите любой 8-значный пароль. Этот пароль будет использваться для подключения к этому VNC серверу с вашего компьютера.
- Теперь запустите на вашем компьютере просмотрщик VNC.
- Введите IP адрес VNC сервера. Это IP адрес вашего Raspberry Pi с добавлением :1 в конце IP адреса, что указывает номер монитора. Нажмите Подключить. Вы получите предупреждающее сообщение, нажмите Продолжить.
- Введите свой восьмизначный пароль и нажмите Enter.

Теперь вы можете использовать свою Raspbian OS, как обычную операционную систему, и начать программировать.
На сайте работает сервис комментирования DISQUS, который позволяет вам оставлять комментарии на множестве сайтов, имея лишь один аккаунт на Disqus.com.
В случае комментирования в качестве гостя (без регистрации на disqus.com) для публикации комментария требуется время на премодерацию.
В принципе, первый способ из статьи по ссылке должен работать
http://help.ubuntu.ru/wiki/.
Добрый день,
Уточните как добавить sh скрипт в автозагрузку. Гуглил, пробывал разные варианты, но ни как не срабатывает автозагрузка. Подскажите пожалуйста как это сделать.
из консоли под рутом запускаю скрипт двумя командами:
cd /home/pi/package/
nohup sh /home/pi/package/nix.runNis.sh >/dev/null &
Дело в том, что в последних версиях Raspbian SSH по умолчанию выключен.
Включить его есть два способа:
1) подключить монитор и клавиатуру и в приложении Raspberry Pi Configuration включить SSH
https://uploads.disquscdn.c.
2) если нет монитора и клавиатуры, то можно вставить SD карту в картридер на другом компьютере и в загрузочном разделе в каталоге /boot/ создать файл с именем ssh. Когда Raspberry Pi будет загружаться, он будет искать этот файл. Если файл будет найден, то SSH будет включен, а файл будет удален. После этого, чтобы SSH был включен при следующем включении, необходимо включить его через консоль с помощью программы raspi-config или подключиться через VNC к удаленному рабочему столу и воспользоваться первым способом.
не подключает в TuTTy пишет : network error connection refused Подключен к роутеру.