Домашняя » как » Как настроить Raspberry Pi для удаленной оболочки, рабочего стола и передачи файлов

    Как настроить Raspberry Pi для удаленной оболочки, рабочего стола и передачи файлов

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

    Почему я хочу это сделать?

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

    Тот не означает, однако, что вам не нужно подключаться к коробке, чтобы вносить изменения, обновлять вещи, передавать файлы и так далее. Прекрасным примером этого является крутой маленький индикатор дождя, который мы создали в рамках нашей статьи «Построить светодиодный индикатор с Raspberry Pi» (для электронной почты, погоды или чего угодно). Для этого не нужно, чтобы все это было прикреплено прямо к нему, но нам все еще хотелось бы иметь возможность запрыгивать на устройство и легко вносить изменения или пробовать новые эксперименты со светодиодным модулем, не перетаскивая его обратно в мастерскую, и подключите его к монитору, клавиатуре, мыши и т. д. Конфигурируя его для удаленной оболочки, удаленного рабочего стола и удаленной передачи файлов, мы упростили процесс взаимодействия с нашим устройством Pi, не выходя из настольного компьютера, как будто мы подключил агрегат до полной рабочей станции.

    Что мне нужно?

    Если вы новичок в работе с Raspberry Pi, мы настоятельно рекомендуем ознакомиться с Руководством по HTG по началу работы с Raspberry Pi, чтобы разобраться с основами устройства и освоить скорость..

    Для этого урока вам понадобятся следующие вещи:

    • Raspberry Pi работает Raspbian.
    • Настольный или портативный компьютер.
    • Локальная Wi-Fi или проводная сеть для соединения Pi и вашего компьютера.

    Во-первых, большинство шагов в этом руководстве должны работать с другими дистрибутивами Pi на основе Linux. но мы будем использовать Raspbian. У вас не должно возникнуть проблем при адаптации учебника к другим дистрибутивам.

    Во-вторых, мы используем компьютер с Windows в качестве сетевого компьютера для взаимодействия с устройством Raspberry Pi в качестве удаленного устройства / интерфейса. Когда это уместно, мы сделаем все возможное, чтобы дать ссылку на учебные пособия и предлагаем прочитать о выполнении параллельных задач и инструментов на OS X и Linux.

    Настройка и подключение к серверу SSH

    Удаленный доступ из командной строки к вашей установке Raspbian - это самая удобная небольшая настройка, которую вы можете внести в свою систему, и ее просто включить.

    Откройте терминал в Rasbian, ярлык LXTerminal на рабочем столе и введите следующую команду:

    sudo raspi-config

    Перейдите к SSH и нажмите ввод. Когда появится запрос о SSH-сервере, выберите включить и нажмите ввод снова. Вы вернетесь к панели Raspi-config; перейти к Конец и нажмите Enter, чтобы закрыть инструмент конфигурации. Это все, что вам нужно сделать, чтобы включить SSH-доступ к вашему Pi. Логин и пароль SSH по умолчанию число Пи а также малина, соответственно.

    Пока вы все еще сидите за командной строкой, сейчас самое время проверить IP вашего устройства Raspberry Pi в локальной сети. Тип Ifconfig в командной строке, а затем посмотрите на вывод команды. Если вы используете порт Ethernet, вы хотите найти init addr в eth0 раздел; Если вы используете Wi-Fi, вы хотите найти init addr в wlan0 раздел. В дополнение к проверке и запоминанию IP-адреса, это также отличное время для настройки статической IP-записи в маршрутизаторе, чтобы вам не приходилось искать IP-адрес в будущем..

    Теперь, когда у нас включен SSH-сервер, мы знаем логин и IP-адрес машины, пришло время подключиться через SSH и протестировать его. Для этого из Linux и OS X вы можете просто использовать SSH команда на терминале. Пользователям Windows, однако, понадобится SSH-клиент, такой как PuTTY.

    Так как мы используем Windows для удаленного управления нашим Pi, PuTTY это так. Установите копию PuTTY или распакуйте переносную версию и запустите ее. Есть много настроек, с которыми вы можете связываться в PuTTY, но нам нужно беспокоиться только об одной вещи, чтобы подключиться к нашему Pi. На главном интерфейсе сеанса просто введите IP-адрес вашего Pi и выберите SSH под этим:

    Удар открыто внизу, и PuTTY запустит окно терминала для вас, подключится к вашему Pi и предложит вам войти в систему. пи / малина:

    Как только ваше SSH-соединение станет функциональным, вы можете технически завершить оставшуюся часть этого учебника удаленно, не выходя из своего рабочего стола, хотя мы бы посоветовали оставить головку и клавиатуру в вашей системе до тех пор, пока вы не закончите весь проект и все будет работать гладко..

    Прежде чем мы продолжим, есть некоторые дополнительные функции, которые мы можем выжать из SSH. Помимо удаленного управления командной строкой, вы также можете удаленно передавать файлы с помощью Secure Copy. Он требует интенсивной командной строки и не особенно удобен для передачи большого количества файлов из нескольких каталогов, но для одноразовой передачи файла конфигурации или другого небольшого дампа это довольно удобно. Ознакомьтесь с нашим руководством по копированию файлов через SSH с помощью команды SCP здесь.

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

    Настройка и настройка вашего удаленного рабочего стола

    Удаленный доступ из командной строки - это круто, но он имеет доступ к рабочему столу для работы с графическим интерфейсом. Давайте объединим возможности командной строки и возможности рабочего стола.

    Хотя до этого момента мы называли его «удаленным рабочим столом», инструмент, который мы на самом деле устанавливаем, известен как виртуальные сетевые вычисления (VNC), с которыми многие знакомы, такие как RealVNC и TightVNC. Для этого урока мы будем устанавливать TightVNC на Pi. Для доступа к сеансу TightVNC на основе Pi вам потребуется удаленный клиент, такой как:

    • Настольный клиент TightVNC для Windows
    • Настольный клиент TightVNC для Linux / Unix-подобных систем
    • RealVNC настольный клиент для OSX

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

    sudo apt-get установитьightvncserver

    Это загрузит и распакует установочные файлы; когда будет предложено продолжить, нажмите Y. После завершения установки вы вернетесь к приглашению. Вы можете запустить VNC одним из двух способов. Просто запустите команду для сервера следующим образом:

    tightvncserver

    Вам будет предложено ввести пароль для доступа к рабочему столу VNC, как показано на скриншоте выше. Пароль должен быть длиной 4-8 символов. Как только вы подтвердите пароль, вам будет предложено установить пароль только для просмотра (вы можете отказаться от шага, как мы сделали).

    Кроме того, вы можете использовать гораздо более точную, хотя и более длительную, команду для ввода, которая дает вам больше контроля над тем, как удаленный компьютер будет видеть рабочий стол, что наиболее важно, какое разрешение будет отображать рабочий стол, чтобы вы могли наслаждаться полноэкранным просмотром на удаленный компьютер. Чтобы указать разрешение рабочего стола VNC, используйте следующую команду, меняя значение разрешения (четвертый элемент в команде) для разрешения удаленного рабочего стола:

    vncserver: 1 - геометрия 1600 × 900 - глубина 16 - пиксельный формат rgb565:

    Если в какой-то момент вы допустили ошибку при настройке экземпляра VNC-сервера и / или хотите выключить VNC-сервер, просто введите следующее (изменив число после двоеточия на номер экземпляра VNC, который вы хотите уничтожить) :

    vncserver -kill: 1

    Теперь, когда сервер VNC запущен и работает, давайте подключимся к нему с нашего удаленного рабочего стола. Запустите программу просмотра TightVNC на своем компьютере и подключите IP-адрес устройства Raspberry Pi, а затем: 1 примерно так:

    И вот наша награда за успешную настройку нашего VNC-сервера - прекрасный полноэкранный вид нашего удаленного устройства Raspberry Pi:

    Существует известная проблема с TightVNC и Rasbian, которая, благодаря неожиданному изменению разрешений, вызовет проблемы с фактическим рабочим столом с подключенным монитором (оставляя нетронутым интерфейс удаленного рабочего стола, предоставляемый сервером VNC). Чтобы устранить эту проблему до того, как она станет проблемой, перейдите прямо к командной строке и введите следующую команду:

    Судо Чоун Пи /home/pi/.Xauthority

    Эта команда меняет владельца файла .Xauthority обратно на пользователя pi - для любопытных файл .Xauthority используется системой X-windows в Rasbian и что-то во время процесса установки и настройки сервера TightVNC происходит небольшое отклонение разрешений.

    С этим небольшим обходным путем давайте вернемся к завершению настройки удаленного рабочего стола.

    Теперь, когда у нас есть полная командная строка и доступ к рабочему столу Raspberry Pi, нам нужно сделать один не совсем тривиальный твик. Инструмент Raspi-config установил для нас автоматический запуск SSH-сервера при загрузке, но VNC-сервер еще не настроен таким образом. Вы можете пропустить этот шаг и вручную запустить сервер из командной строки через SSH, когда вам это нужно, но мы стараемся сделать его как можно более беспроблемным для будущего использования. Давайте уделим минуту и ​​создадим файл запуска для сервера VNC.

    Чтобы автоматически запустить VNC-сервер, нам нужно настроить файл инициализации или инициализации, который Raspbian будет использовать для чистого запуска и завершения работы сервера во время процесса загрузки и завершения работы. Давайте создадим файл инициализации сейчас. В командной строке введите следующую команду:

    sudo nano /etc/init.d/tightvnc

    Это создаст файл в каталоге инициализации с именем «tailvnc» и откроет редактор nano, чтобы мы могли вставить его в наш скрипт. В редакторе nano вставьте следующий код (не забудьте изменить значение разрешения 1600 × 900, чтобы оно соответствовало экрану вашего удаленного компьютера:

    #! / Bin / ш
    ### BEGIN INIT INFO
    # Обеспечивает :ightvncserver
    # Требуется-Начало:
    # Требуется-Стоп:
    # Default-Start: 2 3 4 5
    # Default-Stop: 0 1 6
    # Краткое описание: запуск сервера vnc
    # Описание:
    ### END INIT INFO

    дело «1 доллар» в
    Начните)
    su pi -c 'vncserver: 1 - геометрия 1600 × 900 - глубина 16 - пиксельный формат rgb565:'
    эхо «VNC Started»
    ;;
    стоп)
    pkill Xtightvnc
    эхо «VNC прекращено»
    ;;
    *)
    echo «Использование: /etc/init.d/tightvnc start | stop»
    выход 1
    ;;
    ESAC

    Помимо изменения разрешения экрана в части сценария, есть еще одна вещь, которую вы можете изменить. В строке 14 вы можете изменить команду «su pi -c» на любую другую учетную запись пользователя, кроме «pi», если вы хотите использовать VNC для конкретного рабочего стола для этой учетной записи..

    После того, как вы вставили и изменили код, пришло время сохранить его. Нажмите CTRL + X, чтобы выйти и сохранить свою работу в нано. Как только вы вернетесь в командную строку, нам нужно сделать несколько быстрых изменений в разрешениях файла:

    sudo chmod 755 /etc/init.d/tightvnc

    Теперь файл инициализации является исполняемым. Мы можем проверить это из приглашения:

    sudo /etc/init.d/tightvnc start

    sudo /etc/init.d/tightvnc stop

    Последнее изменение, которое мы собираемся сделать, это обновить файл rc.d (который отслеживает, какие сценарии инициализации находятся в папке /init.d/):

    sudo update-rc.d по умолчанию

    После ввода этой команды вы получите подтверждение того, что файл был обновлен. Теперь настало время для реального теста: правильно ли загружается файл после перезагрузки? Введите в командной строке следующую команду для перезагрузки и будьте готовы с вашим VNC-клиентом мгновенно проверить соединение:

    перезагрузка sudo

    После завершения перезагрузки системы войдите в систему с помощью своего клиента VNC. Если ваш сеанс VNC завершается неудачно, зайдите в командную строку и снова запустите команду начала injuvnc (из тестовой части выше), чтобы дважды проверить, является ли файл исполняемым и пароль был сохранен правильно..

    На данный момент, мы еще дальше в нашей миссии, чтобы полностью дистанционно управлять нашим устройством Raspberry Pi. Благодаря нашему удаленному доступу из командной строки через SSH и удаленному доступу к рабочему столу через VNC, давайте перейдем к упрощению процесса передачи файлов между нашим Pi и настольным компьютером..

    Настройка и настройка инструментов передачи файлов

    Поскольку у нас уже есть настроенный SSH, самый простой способ настроить простую передачу файлов между нашим Pi и удаленными компьютерами - это перенастроить графический интерфейс на SSH-соединении. Помните, как мы говорили об использовании SCP поверх SSH ранее в этом уроке? Запуск его из командной строки становится очень утомительным, очень быстрым. Благодаря оболочке с графическим интерфейсом мы сможем тратить больше времени на перемещение файлов и воспроизведение с нашим пи, а также меньше тратить время на прикосновение к клавиатуре..

    Несмотря на то, что для команды SCP существует множество оболочек с графическим интерфейсом, мы собираемся использовать кроссплатформенный инструмент, который многие люди уже знают, имеют и любят (и могут даже не подозревать, что он передает SCP): FileZilla. Он доступен для Windows, OS X и Linux - вы можете скачать его здесь.

    После того, как вы установили FileZilla, запустите его и перейдите в File -> Site Manager. Создайте новую запись на сайте, назовите ее и вставьте имя пользователя и пароль для своего Pi.

    Наконец, убедитесь, что для порта установлено значение 22, а для типа сервера - SFTP - SSH File Transfer Protocol. Нажмите «Подключиться» внизу, и вы получите представление, похожее на это:

    Ваши локальные каталоги находятся на левой панели, а удаленные каталоги на Pi - на правой панели. Перемещение файлов между ними так же просто, как перетаскивание их.

    Воспользоваться преимуществами существующей передачи файлов SSH - это самый простой способ получить доступ к файлам на Pi без дополнительной настройки, необходимой но если вы хотите настроить свой Pi для получения и обмена файлами без удаленного пользователя, требующего каких-либо необычных инструментов (таких как FTP-клиент с поддержкой SCP, например, FileZilla), мы настоятельно рекомендуем ознакомиться с разделом о конфигурации Samba нашего руководства: Как превратить малину Пи в устройство хранения данных с низким энергопотреблением. Читая эту статью, вы узнаете, как настроить общий ресурс Samba на Pi, чтобы создать общую папку, доступную любому человеку в вашей сети без каких-либо дополнительных инструментов..


    Вы настроили SSH, настроили VNC, и вы настроили простой доступ SFTP и / или Samba к вашему Pi. В этот момент вы можете загрузить Raspberry Pi, убрать монитор, клавиатуру и мышь, и убрать его как тихую и безголовую машину.

    У вас есть идея для проекта Raspberry Pi, и вы хотите, чтобы мы написали для нее учебник? Выключите звук в комментариях или напишите нам на электронный адрес [email protected], и мы сделаем все возможное, чтобы помочь.