Cuprins:

Pretindeți-vă că sunteți Xyzzy Server pe Raspberry Pi: 19 pași
Pretindeți-vă că sunteți Xyzzy Server pe Raspberry Pi: 19 pași

Video: Pretindeți-vă că sunteți Xyzzy Server pe Raspberry Pi: 19 pași

Video: Pretindeți-vă că sunteți Xyzzy Server pe Raspberry Pi: 19 pași
Video: Încetați să mai pretindeți 2024, Noiembrie
Anonim
Pretindeți-vă că sunteți Xyzzy Server pe Raspberry Pi
Pretindeți-vă că sunteți Xyzzy Server pe Raspberry Pi

Acest ghid vă va arăta cum să configurați un server Pretend You're You're Xyzzy (PYX) pe un Raspberry Pi. Eu îl numesc XyzzyPi

Pretindeți-vă că sunteți Xyzzy este o clonă online open-source Card Against Humanity jucată într-un browser web.

Pe Android poți folosi și aplicația Client for Pretend You're Xyzzy.

Când am început să caut configurarea propriului server PYX, am găsit cu greu instrucțiuni care nu erau depășite și care erau ușor de urmat. Se părea că majoritatea au fost scrise pentru oameni care aveau deja o anumită experiență în configurarea unui server PYX. Am reușit să-mi dau seama de lucruri, dar am vrut să creez un ghid pas cu pas pentru cei care sunt mai puțin pricepuți în tehnologie sau care nu au prea multă experiență cu astfel de lucruri. De asemenea, nu am putut găsi nicio instrucțiune pentru a-l rula pe un Raspberry Pi. După câteva încercări și erori, am reușit să pun serverul PYX să ruleze pe un Pi, doar cu câteva modificări ușoare ale fișierelor. Sper că acest lucru va economisi ceva timp pentru cei interesați.

Am făcut acest lucru pe un Pi 3 model B + și un Pi 4 model B 4GB. Există unele probleme legate de utilizarea unui Pi Zero W din cauza procesorului care nu manipulează corect o mașină virtuală Java. În prezent, încerc să pun în funcțiune un Zero W și voi actualiza instrucțiunile dacă am succes. Nu am un Pi 1 sau 2 de testat, deci acest lucru poate funcționa sau nu cu acestea.

Am încercat să fac acest tutorial ușor de urmărit pentru persoanele de toate nivelurile de calificare, așa că pot exista lucruri pe care le știți deja.

Dacă știți deja cum să instalați Raspbian și să vă conectați la Pi, treceți la pasul 6

Dacă aveți experiență în configurarea unui server PYX și doriți doar să cunoașteți modificările necesare pentru a funcționa pe un Pi, treceți la pasul 13

Declinare de responsabilitate: Nu am creat Pretend You're You're Xyzzy sau aplicația client Android.

Credit pentru crearea Pretend You're You're Xyzzy este acordat utilizatorului GitHub ajanata (https://github.com/ajanata/PretendYoureXyzzy)

Creditul pentru crearea clientului pentru a te preface că ești Xyzzy merge la Gianlu (https://play.google.com/store/apps/dev?id=8675761046824387020)

Dacă este cineva pe care mi-a lipsit vă rog să-mi spuneți.

Provizii

Hardware:

Raspberry Pi 3 sau 4

Card Micro SD (folosesc carduri micro SD de 32 GB pentru că asta am la îndemână. Probabil puteți rezolva cu doar 2 GB, dar aș recomanda cel puțin 4 GB.)

PC cu cititor de card SD (folosesc Windows pentru acest tutorial. Dacă rulați Linux, probabil că sunteți deja familiarizați cu multe din aceste lucruri, așa că ajustați instrucțiunile după cum este necesar.)

Software:

Imagine Raspbian: https://www.raspberrypi.org/downloads/raspbian/ (Orice ar trebui să funcționeze. Folosesc Raspbian Buster Lite în momentul scrierii.)

Win32 Disk Imager: https://sourceforge.net/projects/win32diskimager/ (Există și alte programe pe care le puteți folosi pentru a bloca imaginea Raspbian, dar aceasta este preferința mea personală.)

Masă:

Pasul 1: Flash Raspbian pe cardul SD

Flash Raspbian pe cardul SD
Flash Raspbian pe cardul SD

Introduceți cardul SD în cititorul de card al computerului înainte de a deschide Win32 Disk Imager. Apoi selectați imaginea Raspbian și litera unității cardului SD și dați clic pe „Scrieți”.

ATENȚIE: Orice element de pe cardul SD va fi șters și suprascris. Dacă există date importante pe cardul SD, faceți o copie de rezervă mai întâi. De asemenea, asigurați-vă că ați selectat litera corectă a unității pentru cardul SD. În caz contrar, puteți șterge / suprascrie din greșeală unitatea greșită

După ce ați terminat, veți avea două unități separate pe cardul SD. Odată numit boot și unul pe care Windows nu îl poate citi. Probabil veți obține o fereastră pop-up în Windows care vă va cere să formatați cardul. Doar faceți clic pe anulați. Dacă îl formatați, va trebui să luminați din nou Raspbian.

Pasul 2: Creați un fișier text denumit „wpa_supplicant.conf” pe unitatea de încărcare

Creați un fișier text denumit
Creați un fișier text denumit

Pe unitatea de încărcare a cardului SD creați un fișier text numit wpa_supplicant.conf și lipiți codul de mai jos în interior. Înlocuiți „numele wifi” și „parola” cu numele și parola dvs. wifi reale, dar păstrați ghilimelele în jurul lor. Salvați fișierul.

Acest lucru va permite Pi-ului dvs. să se conecteze la wifi. Dacă utilizați un cablu Ethernet pentru a vă conecta Pi-ul la rețeaua dvs., puteți sări peste acest pas.

Asigurați-vă că extensia de fișier este corectă. Ar trebui să fie wpa_supplicant.conf nu wpa_supplicant.conf.txt

country = usupdate_config = 1 ctrl_interface = / var / run / wpa_supplicant

rețea = {

scan_ssid = 1 ssid = "nume wifi" psk = "parolă"}

Pasul 3: Creați un fișier gol denumit „ssh” pe unitatea de încărcare

Creați un fișier gol denumit
Creați un fișier gol denumit

Pe unitatea de încărcare a cardului SD creați un fișier gol numit ssh

Nu trebuie să aibă nimic, ci trebuie numit corect.

Aceasta va activa ssh pe Pi, care vă va permite să vă conectați la acesta folosind Putty.

Asigurați-vă că fișierul este pur și simplu numit ssh fără nicio extensie. Nu ssh.txt etc

Pasul 4: Scoateți cardul SD de pe computer, puneți-l în Pi și porniți Pi

Scoateți cardul SD de pe computer, puneți-l în Pi și porniți Pi-ul.

Dacă totul a funcționat, Pi-ul dvs. va porni și se va conecta la wifi.

Acordați-i câteva minute pentru a trece prin configurarea inițială.

Pasul 5: Conectați-vă la Pi utilizând Putty

Conectați-vă la Pi folosind Putty
Conectați-vă la Pi folosind Putty
Conectați-vă la Pi folosind Putty
Conectați-vă la Pi folosind Putty

Deschideți Putty și în caseta Nume gazdă tastați raspberrypi asigurându-vă că tipul de conexiune este SSH și portul este 22. Dacă se conectează, veți fi direcționat către un ecran negru cu text pe acesta cunoscut sub numele de terminal. Vă va cere numele de utilizator și parola. Numele de utilizator implicit este „pi”, iar parola implicită este „zmeură”. Este foarte recomandat să schimbați parola, mai ales dacă intenționați să vă expuneți Pi-ul la internet. Pentru aceasta, tastați „passwd” odată ce sunteți conectat și urmați instrucțiunile. Asigurați-vă că alegeți o parolă pe care o veți aminti.

Dacă nu se conectează, poate fi necesar să găsiți adresa IP pe care Pi o folosește. Există mai multe moduri de a face acest lucru, dar personal mă conectez la routerul meu și verific lista dispozitivelor conectate. Odată ce ați găsit adresa IP a tipului dvs. Pi în caseta Nume gazdă din Putty în loc de raspberrypi și încercați să vă conectați din nou.

Dacă tot nu vă puteți conecta, este posibil să nu fi creat fișierul ssh corect. Citiți pașii anteriori și verificați totul.

Pasul 6: Opțional: Schimbați numele gazdei pentru Pi

Opțional: Schimbați numele gazdei pentru Pi
Opțional: Schimbați numele gazdei pentru Pi
Opțional: Schimbați numele gazdei pentru Pi
Opțional: Schimbați numele gazdei pentru Pi
Opțional: Schimbați numele gazdei pentru Pi
Opțional: Schimbați numele gazdei pentru Pi

Acest lucru nu este necesar, dar prefer să am numele de gazdă al Pi-ului meu ca ceva relevant pentru ceea ce este folosit, mai degrabă decât „raspberrypi” generic. În acest caz, l-am numit „xyzzypi”, dar îl puteți numi oricum doriți.

Pentru a schimba tipul de nume de gazdă:

sudo raspi-config

Selectați Opțiuni de rețea

Selectați Nume gazdă

Introduceți orice nume de gazdă doriți

Selectați Finalizare

Vă va întreba dacă doriți să reporniți Pi acum. Noul nume de gazdă nu va intra în vigoare până când nu reporniți. Dacă faceți acest lucru, sesiunea Putty se va deconecta. Odată ce ați terminat repornirea, va trebui să utilizați noul nume de gazdă pe care l-ați setat pentru a vă reconecta cu Putty. Dacă v-ați conectat utilizând adresa IP în locul numelui de gazdă, atunci ar trebui să fie la fel.

Există o mulțime de alte opțiuni pe care le puteți seta folosind instrumentul raspi-config, dar există o mulțime de tutoriale despre acest lucru online, așa că nu voi intra în ele aici.

Pasul 7: Actualizați-vă pachetele de aplicații

Actualizați-vă pachetele de aplicații
Actualizați-vă pachetele de aplicații

Actualizați pachetele de aplicații utilizând următoarea comandă:

sudo apt-get update

Lasă-l să ruleze până se termină.

Notă: Din punct de vedere tehnic, nu mai trebuie să tastați „apt-get”, puteți doar să tastați „apt”. Cu toate acestea, sunt atât de obișnuit să scriu „apt-get” încât este doar o memorie musculară pentru mine în acest moment.

Pasul 8: Instalați Git

Instalați Git
Instalați Git

După finalizarea actualizării pachetelor de aplicații, instalați Git utilizând următoarea comandă:

sudo apt-get -y install git

Lasă-l să ruleze până se termină.

Pasul 9: Instalați Maven

Instalați Maven
Instalați Maven

Instalați Maven folosind următoarea comandă:

sudo apt-get -y install maven

Lasă-l să ruleze până se termină

Pasul 10: Descărcați fișierele pretindeți că sunteți Xyzzy Server

Descărcați fișierele de serviciu Pretindeți-vă că sunteți Xyzzy
Descărcați fișierele de serviciu Pretindeți-vă că sunteți Xyzzy

Descărcați fișierele serverului Pretindeți-vă că sunteți Xyzzy folosind următoarea comandă:

git clone git: //github.com/ajanata/PretendYoureXyzzy.git

Aceasta va crea un director pe Pi numit PretendYoureXyzzy și va descărca fișierele în el.

Lasă-l să ruleze până se termină.

Pasul 11: Treceți la directorul PretendYoureXyzzy

Treceți la directorul PretendYoureXyzzy
Treceți la directorul PretendYoureXyzzy

Treceți la directorul PretendYoureXyzzy folosind următoarea comandă:

cd PretendYoureXyzzy

Notă: comenzile Linux sunt sensibile la majuscule, deci cd PretendYoureXyzzy va funcționa, dar cd pretendyourexyzzy nu.

Pasul 12: Deschideți și editați fișierul „build.properties.example” și salvați-l ca „build.properties”

Deschideți și editați fișierul
Deschideți și editați fișierul
Deschideți și editați fișierul
Deschideți și editați fișierul
Deschideți și editați fișierul
Deschideți și editați fișierul

Deschideți fișierul build.properties.example cu editor de text nano folosind următoarea comandă:

sudo nano build.properties.example

Utilizarea unui editor de text bazat pe terminal poate părea un pic intimidant pentru cei care nu sunt obișnuiți, dar ceea ce facem este foarte simplu.

Folosiți tasta săgeată în jos pentru a derula în jos până găsiți secțiunile care spun „hibernate.username” și „hibernate.password”.

Utilizați tasta săgeată dreapta pentru a trece la sfârșitul acelor rânduri și schimbați numele de utilizator și parola cu altceva. Sincer, nu știu dacă este chiar necesar, dar nu mă simt confortabil să le las pe numele de utilizator și parola implicite cu care au venit.

După ce le-ați modificat, apăsați ctrl + o pentru a deschide dialogul de salvare.

Backspace pentru a elimina „.example” de la sfârșitul numelui de fișier, astfel încât să rămâneți doar „build.properties”

Vă va întreba dacă doriți să salvați fișierul sub un alt nume. Apăsați y pentru da.

Apăsați ctrl + x pentru a închide editorul de text nano.

Pasul 13: Deschideți și editați fișierul „pom.xml” (Acesta este ceea ce îl face să ruleze pe un PI)

Deschideți și editați fișierul
Deschideți și editați fișierul
Deschideți și editați fișierul
Deschideți și editați fișierul

Deschideți fișierul pom.xml cu editor de text nano folosind următoarea comandă:

sudo nano pom.xml

Derulați în jos, așa cum ați făcut înainte. De data aceasta linia pe care o căutați este sqlite-jdbc

Chiar sub acea linie este o linie cu un număr de versiune. Trebuie să schimbați numărul respectiv la 3.28.0, astfel încât să arate astfel:

3.28.0

Odată ce ați editat numărul versiunii, apăsați ctrl + o pentru a deschide dialogul de salvare.

Păstrați numele fișierului ca „pom.xml” și salvați-l.

Odată salvat, apăsați ctrl + x pentru a închide editorul de text nano.

Aceasta este editarea care face ca serverul Pretend You're You're Xyzzy să ruleze pe un Pi. Versiunea sqlite-jdbc cu care vine nu va rula corect pe un Pi. Versiunea 3.28.0 funcționează excelent în testele mele de până acum

Pasul 14: Porniți pretindeți că sunteți Xyzzy Server și asigurați-vă că funcționează

Porniți pretindeți că sunteți serverul Xyzzy și asigurați-vă că funcționează
Porniți pretindeți că sunteți serverul Xyzzy și asigurați-vă că funcționează
Porniți pretindeți că sunteți serverul Xyzzy și asigurați-vă că funcționează
Porniți pretindeți că sunteți serverul Xyzzy și asigurați-vă că funcționează
Porniți pretindeți că sunteți serverul Xyzzy și asigurați-vă că funcționează
Porniți pretindeți că sunteți serverul Xyzzy și asigurați-vă că funcționează

Acum, după ce ați făcut modificările necesare pentru a rula un server Pretindeți-vă că sunteți Xyzzy pe Pi, să-l pornim și să vedem dacă totul funcționează. Porniți serverul utilizând următoarea comandă:

mvn clean package war: exploded dig: run -Dmaven.buildNumber.doCheck = false -Dmaven.buildNumber.doUpdate = false

Va descărca câteva fișiere suplimentare, le va compila și va porni serverul. Acest lucru va dura probabil câteva minute.

Notă: În prezent, acesta este singurul mod în care știu cum să rulez serverul, așa că acesta se va compila de fiecare dată când îl porniți.

Veți ști că s-a terminat când primiți un mesaj care spune „Reîncărcarea consolei este ACTIVATĂ. Apăsați ENTER pe consolă pentru a reporni contextul”.

În acest moment vă puteți deschide browserul și puteți tasta numele gazdei (sau adresa IP) a Pi adăugând portul 8080 la final. Deci, numele gazdei: 8080 sau IP: 8080

Dacă ați folosi xyzzypi ca nume de gazdă, ar fi xyzzypi: 8080 sau, în cazul meu, folosind IP, ar fi 192.168.1.189:8080

Dacă totul a funcționat, veți fi condus la pagina principală Pretindeți-vă că sunteți Xyzzy.

Felicitări! Ai făcut-o

Cu toate acestea, chiar acum, acesta va rula numai dacă vă conectați la Pi cu Putty și executați comanda de mai sus pentru a porni serverul. După ce închideți Putty, serverul se va opri. Acest lucru ar putea fi în regulă pentru unii oameni, dar este posibil să doriți ca serverul Pretindeți-vă că sunteți Xyzzy să ruleze automat ori de câte ori Pi pornește sau este repornit fără a fi nevoie să vă conectați. Următorii pași vor acoperi funcționarea.

Pasul 15: Creați un script pentru a porni pretindeți că sunteți Xyzzy Server

Creați un script pentru a porni pretindeți că sunteți Xyzzy Server
Creați un script pentru a porni pretindeți că sunteți Xyzzy Server
Creați un script pentru a începe să vă prefaceți că sunteți Xyzzy Server
Creați un script pentru a începe să vă prefaceți că sunteți Xyzzy Server

Dacă dorim ca serverul Pretind că ești Xyzzy să pornească automat atunci când Pi pornește sau repornește, primul lucru pe care trebuie să-l facem este să creăm un script.

Apăsați ctrl + c pentru a opri serverul.

Odată ce se oprește, tastați următoarea comandă:

sudo nano xyzzy.sh

Notă: Mi-am numit scriptul xyzzy.sh, dar îl puteți numi oricum doriți. Doar asigurați-vă că are.sh ca extensie de fișier.

Folosind editorul de text nano sau lipiți următoarele în fișier:

#! / bin / bashcd / home / pi / PretendYoureXyzzy mvn clean package war: exploded dig: run -Dmaven.buildNumber.doCheck = false -Dmaven.buildNumber.doUpdate = false

Apăsați ctrl + o pentru a deschide dialogul de salvare

Salvați fișierul și apăsați ctrl + x pentru a închide nano

Pasul 16: faceți scriptul executabil

Faceți scriptul executabil
Faceți scriptul executabil

Trebuie să facem scriptul executabil folosind următoarea comandă:

sudo chmod 755 xyzzy.sh

Notă: dacă ați numit scriptul dvs. ceva diferit în pasul anterior, utilizați în schimb acel nume de fișier.

Pasul 17: Creați o intrare Crontab pentru a rula automat scriptul la pornire

Creați o intrare Crontab pentru a vă rula automat scriptul la pornire
Creați o intrare Crontab pentru a vă rula automat scriptul la pornire
Creați o intrare Crontab pentru a vă rula automat scriptul la pornire
Creați o intrare Crontab pentru a vă rula automat scriptul la pornire
Creați o intrare Crontab pentru a vă rula automat scriptul la pornire
Creați o intrare Crontab pentru a vă rula automat scriptul la pornire

Există mai multe moduri de a face un script să ruleze la pornire. Aici folosesc crontab.

Editați tabelele crontab folosind următoarea comandă:

crontab -e

Vă va întreba ce editor doriți să utilizați. Tastați 1 și apăsați Enter pentru a utiliza nano.

Odată ce se deschide derulați până la capăt și adăugați următoarea linie:

@reboot /home/pi/PretendYoureXyzzy/xyzzy.sh

Notă: Din nou, dacă ați folosit un alt nume de fișier pentru tipul de script, în schimb.

Apăsați ctrl + o pentru a deschide dialogul de salvare.

Salvați și apăsați ctrl + x pentru a închide nano.

Pasul 18: Reporniți Pi-ul și vedeți dacă vă puteți conecta pentru a vă preface că sunteți Xyzzy

Reporniți Pi și vedeți dacă vă puteți conecta pentru a vă preface că sunteți Xyzzy
Reporniți Pi și vedeți dacă vă puteți conecta pentru a vă preface că sunteți Xyzzy

Acum că aveți serverul dvs. Pretend You're You're Xyzzy setat să ruleze la boot, puteți reporni Pi-ul și asigurați-vă că totul funcționează.

Reporniți utilizând următoarea comandă:

sudo reboot

Odată ce reîncărcarea Pi va dura câteva minute pentru a recompila totul pentru server. Acordați-i timp și apoi încercați să vă conectați din nou din browser fie folosind numele de gazdă sau IP-ul Pi adăugând portul 8080 la final.

xyzzypi: 8080 sau IPadresă: 8080

Dacă totul a funcționat, veți fi condus la pagina Pretindeți-vă că sunteți Xyzzy.

Felicitări! Acum aveți serverul Pretindeți-vă că sunteți Xyzzy care rulează automat pe un Raspberry Pi

Pasul 19: Opțional: redirecționați porturile pentru a permite accesul la pretendentul dvs. că sunteți serverul Xyzzy pe internet

Deci, acum aveți un server care funcționează ca pretindeți-vă că sunteți Xyzzy, dar în acest moment este accesibil doar în rețeaua dvs. locală. Acest lucru funcționează bine dacă aveți un grup de prieteni care să se joace acasă, dar persoanele din afara rețelei locale nu se vor putea conecta.

Va trebui să căutați instrucțiuni de redirecționare a porturilor pentru routerul dvs. specific, dacă nu știți deja cum. Pretindeți-vă că sunteți Xyzzy folosește portul 8080, deci acesta este portul pe care doriți să îl redirecționați. După ce ați configurat-o, veți putea oferi prietenilor dvs. adresa IP externă și portul și aceștia se vor putea conecta la serverul dvs. prin internet.

Dacă doriți, puteți configura și DNS dinamic, astfel încât să aveți propria adresă URL (ceva de genul JoesPYXserver.noip.com) pe care să o dați prietenilor pentru a vă conecta la server. Există deja o mulțime de tutoriale pentru astfel de lucruri.

Recomandat: