If-Koubou

Как да конфигурирате вашият Raspberry Pi за отдалечен корпус, настолен компютър и пренос на файлове

Как да конфигурирате вашият Raspberry Pi за отдалечен корпус, настолен компютър и пренос на файлове (Как да)

Така че имате Raspberry Pi и бихте искали да увеличите своя малък отпечатък, като се превърнете в напълно самостоятелна кутия - без монитор, клавиатура или други входни периферни устройства. Прочетете, докато ви показваме как да настроите отдалечен достъп за черупки, компютри и файлове на вашия Pi.

Защо искам да направя това?

Pi, дори облицован в здрав калъф, е малък компютър. Това е идеално за поставяне на място някъде отстрани, без да се налага да се захващате с кабели - за много проекти просто не се нуждаете от постоянен монитор и периферен придружител.

Че не означава, че няма да се налага да се свързвате с кутията, за да правите промени, да актуализирате неща, да прехвърляте файлове и т.н. Перфектен пример за това е хладният индикатор за дъжд, който построихме като част от нашия LED индикатор "Изграждане на LED" с статия "Малина Пи" (за имейл, метеорология или нещо). Не е нужно всичко свързано с него, но все пак бихме искали да се впуснем в устройството и лесно да правим промени или да изпробваме нови експерименти със светодиодния модул, без да се налага да го плъзгаме обратно в цеха и свържете го към монитор, клавиатура, мишка и т.н. Чрез конфигурирането му за отдалечен корпус, отдалечен работен плот и отдалечен пренос на файлове, правим супер прост да взаимодействате винаги с нашето устройство Pi от удобството на нашия настолен компютър, - включихте устройството до пълна работна станция.

От какво се нуждая?

Ако сте съвсем нови, за да работите с Raspberry Pi, силно ви препоръчваме да разгледате Ръководството на HTG за Първи стъпки с Raspberry Pi, за да се справите с основите на устройството и да постигнете скорост.

За този урок ще ви трябват следните неща:

  • Малина Пи, изпълняваща Raspbian.
  • Настолен или преносим компютър.
  • Локална Wi-Fi или кабелна мрежа за свързване на Pi и компютъра.

Първо, повечето от стъпките в този урок трябва да работят с други Linux дистрибуции на Pi но ние ще използваме Raspbian. Трябва да имате малко проблеми при адаптирането на урока към други дистрибуции.

Второ, използваме машина на Windows като нашият мрежов компютър, за да взаимодействаме с устройството Raspberry Pi като дистанционно управление / интерфейс. Когато е подходящо, ще направим всичко възможно да свържем уроци и да предложим четене относно изпълнението на паралелни задачи и инструменти на OS X и Linux.

Настройване и свързване към сървъра SSH

Достъпът до отдалечен команден ред към вашата Raspbian инсталация е за най-удобната малка ощипвам, която можете да направите във вашата система, и е прав, просто просто да активирате.

Отворете терминала в Rasbian, а прякорът е LXTerminal на работния плот и въведете следната команда:

sudo raspi-config

Отидете надолу до SSH и натиснете клавиша enter. Когато получите подкана за SSH сървъра, изберете Активиране и натиснете Enter отново. Ще бъдете върнати в панела Raspi-config; навигирайте надолу до завършек и натиснете Enter, за да затворите конфигурационния инструмент. Това е всичко, което трябва да направите, за да включите SSH до вашия Pi. Стандартното влизане и парола за SSH е пи и малина, съответно.

Докато все още седите на командния ред, сега е чудесно време да проверите IP адреса на вашия Raspberry Pi блок в локалната мрежа. Тип фоп на ред и след това погледнете изхода на командата. Ако използвате 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 тук.

Ще разгледаме по-близо по-лесни за ползване / GUI базирани техники за прехвърляне на файлове по-късно в урока.

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

Достъпът до отдалечен команден ред е страхотно, но има и достъп до работния плот за дейности, насочени към GUI. Нека да съберем заедно правомощията на командния ред и правомощията на работния плот.

Въпреки че ние го наричаме "отдалечен работен плот" до този момент, инструментът, който всъщност инсталираме, е познат като Виртуална мрежова изчислителна система (VNC), чиито познати са много, като RealVNC и TightVNC. За този урок ние ще инсталираме TightVNC на Pi. За да получите достъп до сесията TightVNC, базирана на Pi, ще ви е необходим отдалечен клиент като:

  • TightVNC настолен клиент за Windows
  • TightVNC настолен клиент за Linux / Unix-подобни системи
  • RealVNC настолен клиент за OSX

Вземете копие сега и ние ще го направим по-късно в този раздел. Засега нека да се постараем да инсталирате TightVNC сървъра на Вашата малина. Отворете терминала. Въведете следната команда, за да започнете:

sudo apt-get инсталирате tightvncserver

Това ще изтегли и разопакова инсталационните файлове; когато бъдете подканени да продължите да натиснете 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 сървъра, недокоснат). За да решите този проблем, преди той дори да се превърне в проблем за вас, се насочете директно към командния ред и въведете следната команда:

sudo chown pi /home/pi/.Xauthority

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

С тази малка малка обиколка на пътя, нека да се върнем към завършването на нашата конфигурация за отдалечен работен плот.

Сега, когато имаме пълен достъп до командния ред и настолния достъп до Raspberry Pi, имаме едно не толкова необичайно ощипване, което трябва да направим. Инструментът за конфигуриране на Raspi зададе SSH сървъра да започне автоматично при зареждане за нас, но VNC сървърът все още не е конфигуриран по такъв начин. Можете да пропуснете тази стъпка и ръчно да стартирате сървъра на командния ред чрез SSH, когато имате нужда от него, но се опитваме да направим това възможно най-безпроблемно за бъдеща употреба. Да вземем една минута и да създадем стартов файл за VNC сървъра.

За да стартираме автоматично VNC сървъра, трябва да настроим файл за инициализация или инициализация, който Raspbian ще използва, за да стартира и затвори сървъра по време на процеса на зареждане и изключване. Нека сега да създадем файла за иницииране. На командния ред въведете следната команда:

sudo nano /etc/init.d/tightvnc

Това ще създаде файл в директорията за инициализиране, наречен "tightvnc", и ще отвори редактора за нано, за да можем да го поставите в нашия скрипт. В редактора за нано добавете следния код (не забравяйте да промените стойността на разделителната способност 1600 × 900, за да съответства на екрана на отдалечения компютър:

#! / Хамбар / од
### ЗАПОЧВА ИНЦИДЕНТ
# Осигурява: tightvncserver
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Описание: стартиране на сървъра vnc
# Описание:
### END INIT INFO

случай "$ 1" в
започнете)
su pi -c 'vncserver: 1 -измерване 1600 × 900 -дълбочина 16-пикселна форма rgb565: "
ехо "VNC започна"
;;
Спри се)
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 старт

sudo /etc/init.d/tightvnc спиране

Последната промяна, която ще направим, е да актуализирате файла rc.d (който проследява кои скриптове за инициализация се намира в /init.d/ папката):

sudo update-rc.d tightvnc по подразбиране

След като въведете тази команда, ще получите потвърждение, че файлът е актуализиран. Сега е време за истинския тест: дали файлът се зарежда правилно след рестартиране? Въведете следното в командния ред, за да рестартирате и да се подготвите с Вашия VNC клиент, за да тествате връзката за момент:

sudo рестартиране

След като системата завърши рестартирането, влезте с вашия VNC клиент. Ако вашият VNC сесия не успее, посетете командния ред и стартирайте командата startvnc start (от тестовата част по-горе), за да проверите отново дали файлът е изпълним и дали паролата е запазена правилно.

В този момент ние сме още по-нататък в мисията ни за напълно дистанционно управление на нашия Raspberry Pi единица. С отдалечен достъп до командния ред чрез SSH и достъпа до отдалечен работен плот чрез VNC под коланите ни, нека преминем към опростяване на процеса на прехвърляне на файлове между нашия Pi и настолния компютър.

Настройване и конфигуриране на инструменти за прехвърляне на файлове

Тъй като вече имаме инсталиран SSH, най-лесният начин да настроите мъртъв прост файлов трансфер между нашите Pi и отдалечени компютри е да пуснете GUI интерфейс на SSH връзката. Помнете ли как говорихме за използването на SCP през SSH по-рано в урока? Стартирането му от командния ред става наистина досадно, реално бързо. С GUI wrapper, ще можем да прекарваме повече време при преместване на файлове и да играем с нашата Pi и по-малко време да кълнем на клавиатурата.

Въпреки че има много GUI обвивки за командата SCP, ще отидем с инструмент от различни платформи, който много хора вече знаят, имат и обичат (и може дори да не са наясно, че правят SCP трансфери): FileZilla. Той е достъпен за Windows, OS X и Linux - можете да вземете копие тук.

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

И накрая, не забравяйте да зададете порт на 22 и сървърния тип на SFTP - SSH File Transfer Protocol. Кликнете върху свързване в долната част на екрана и ще ви бъде приложено подобно на това:

Местните ви директории са в левия панел, а отдалечените директории на Pi са в дясната част на прозореца. Преместването на файлове между двете е толкова просто, колкото и плъзгането и пускането им.

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

Вие сте конфигурирали SSH, сте конфигурирали VNC и сте настроили прост SFTP и / или Samba достъп до вашия Pi - в този момент можете да заредите своя Raspberry Pi, премахнете монитора, клавиатурата и мишката, и го изхвърли като безшумна машина без глава.

Имате идея за проекта Raspberry Pi и умирате за нас, за да напишем урок за това? Излезте от коментарите или ни изпратете имейл на [email protected] и ще направим всичко възможно, за да ви помогнем.