Innehållsförteckning:

Låtsas att du är en Xyzzy -server på Raspberry Pi: 19 steg
Låtsas att du är en Xyzzy -server på Raspberry Pi: 19 steg

Video: Låtsas att du är en Xyzzy -server på Raspberry Pi: 19 steg

Video: Låtsas att du är en Xyzzy -server på Raspberry Pi: 19 steg
Video: Притворись, что ты счастлив 2024, November
Anonim
Låtsas att du är en Xyzzy -server på Raspberry Pi
Låtsas att du är en Xyzzy -server på Raspberry Pi

Den här guiden visar dig hur du konfigurerar en låtsas att du är Xyzzy (PYX) -server på en Raspberry Pi. Jag kallar det en XyzzyPi

Låtsas att du är Xyzzy är en online-kort med öppen källkod mot mänskligheten med öppen källkod som spelas i en webbläsare.

På Android kan du också använda klienten för låtsas att du är Xyzzy -appen.

När jag började leta efter att skapa min egen PYX -server hade jag svårt att hitta instruktioner som inte var inaktuella och som var lätta att följa. Det verkade som om de flesta var skrivna för personer som redan hade erfarenhet av att konfigurera en PYX -server. Jag kunde räkna ut saker men jag ville skapa en steg-för-steg-guide för dem som är mindre tekniskt kunniga eller som inte har mycket erfarenhet av sådana saker. Jag kunde inte heller hitta några instruktioner om hur den ska köras på en Raspberry Pi. Efter lite försök och fel kunde jag få PYX -servern att köra på en Pi med bara några små ändringar av filerna. Jag hoppas att detta kommer att spara lite tid för dem som är intresserade.

Jag har gjort detta på en Pi 3 modell B+ och en Pi 4 modell B 4GB. Det finns några problem med att använda en Pi Zero W på grund av att processorn inte hanterar en Java -VM korrekt. Jag försöker för närvarande att få det att fungera på en Zero W och kommer att uppdatera instruktioner om jag lyckas. Jag har inte en Pi 1 eller 2 att testa på så det kanske fungerar med dem.

Jag har försökt att göra denna handledning lätt att följa för människor på alla färdighetsnivåer så det kan finnas saker här som du redan vet.

Om du redan vet hur du installerar Raspbian och ansluter till din Pi, gå till steg 6

Om du har erfarenhet av att konfigurera en PYX -server och bara vill veta de redigeringar som är nödvändiga för att få det att fungera på en Pi hoppa till steg 13

Friskrivningsklausul: Jag skapade inte låtsas att du är Xyzzy eller Android -klientappen.

Kredit för att skapa låtsas att du är Xyzzy går till GitHub -användare ajanata (https://github.com/ajanata/PretendYoureXyzzy)

Kredit för att skapa kund För låtsas att du är Xyzzy går till Gianlu (https://play.google.com/store/apps/dev?id=8675761046824387020)

Om det är någon jag saknat, vänligen meddela mig.

Tillbehör

Hårdvara:

Raspberry Pi 3 eller 4

Micro SD -kort (jag använder 32 GB micro SD -kort eftersom det är vad jag har till hands. Du kan förmodligen klara dig med så lite som 2 GB men jag skulle rekommendera minst 4 GB.)

PC med SD -kortläsare (jag använder Windows för den här självstudien. Om du kör Linux är du förmodligen redan bekant med många saker, så justera instruktionerna efter behov.)

Programvara:

Raspbian -bild: https://www.raspberrypi.org/downloads/raspbian/ (Alla borde fungera. Jag använder Raspbian Buster Lite i skrivande stund.)

Win32 Disk Imager: https://sourceforge.net/projects/win32diskimager/ (Det finns andra program du kan använda för att blinka Raspbian -bilden men det här är min personliga preferens.)

Kitt:

Steg 1: Flash Raspbian till ditt SD -kort

Flash Raspbian på ditt SD -kort
Flash Raspbian på ditt SD -kort

Sätt in ditt SD -kort i datorns kortläsare innan du öppnar Win32 Disk Imager. Välj sedan din Raspbian -bild och SD -kortets enhetsbokstav och klicka på "Skriv".

FÖRSIKTIGHET: Allt på SD -kortet raderas och skrivs över. Om det finns viktiga data på SD -kortet säkerhetskopiera det först. Se också till att du väljer rätt enhetsbokstav för ditt SD -kort. Annars kan du oavsiktligt torka/skriva över fel enhet

När det är klart kommer du att ha två separata enheter på ditt SD -kort. En gång kallad boot och en som Windows inte kan läsa. Du kommer förmodligen att få en popup i Windows där du ber dig formatera kortet. Klicka bara på Avbryt. Om du formaterar det måste du blinka Raspbian igen.

Steg 2: Skapa en textfil med namnet "wpa_supplicant.conf" på Boot Drive

Skapa en textfil med namnet
Skapa en textfil med namnet

Skapa en textfil med namnet wpa_supplicant.conf på SD -kortets startdisk och klistra in koden nedanför. Ersätt "wifi -namn" och "lösenord" med ditt faktiska wifi -namn och lösenord men behåll citaten runt dem. Spara filen.

Detta gör att din Pi kan ansluta till ditt wifi. Om du använder en ethernetkabel för att ansluta din Pi till ditt nätverk kan du förmodligen hoppa över detta steg.

Se till att filtillägget är korrekt. Det ska vara wpa_supplicant.conf inte wpa_supplicant.conf.txt

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

nätverk = {

scan_ssid = 1 ssid = "wifi -namn" psk = "lösenord"}

Steg 3: Skapa en tom fil med namnet "ssh" på Boot Drive

Skapa en tom fil med namnet
Skapa en tom fil med namnet

Skapa en tom fil med namnet ssh på startkortet på SD -kortet

Det behöver inte ha något i det, det behöver bara namnges korrekt.

Detta aktiverar ssh på din Pi vilket gör att du kan ansluta till den med hjälp av kitt.

Se till att filen bara heter ssh utan förlängning. Inte ssh.txt etc

Steg 4: Mata ut SD -kortet från din dator, sätt det i din Pi och slå på din Pi

Ta ut SD -kortet från din dator, sätt det i din Pi och slå på din Pi.

Om allt fungerade startar din Pi upp och ansluter till ditt wifi.

Ge det ett par minuter att köra igenom den första installationen.

Steg 5: Anslut till din Pi med hjälp av kitt

Anslut till din Pi med hjälp av kitt
Anslut till din Pi med hjälp av kitt
Anslut till din Pi med hjälp av kitt
Anslut till din Pi med hjälp av kitt

Öppna Putty och skriv in raspberrypi i rutan Host Name och se till att anslutningstypen är SSH och porten är 22. Om den ansluts kommer du till en svart skärm med text på den som kallas en terminal. Det kommer att be om ditt användarnamn och lösenord. Standardnamnet är "pi" och standardlösenordet är "hallon". Det rekommenderas starkt att du byter lösenord, särskilt om du planerar att få din Pi exponerad för internet. För att göra det, skriv "passwd" när du är inloggad och följ anvisningarna. Se till att välja ett lösenord som du kommer att komma ihåg.

Om den inte ansluter kan du behöva hitta IP -adressen som din Pi använder. Det finns flera sätt att göra detta men personligen loggar jag bara in på min router och kontrollerar listan över anslutna enheter. När du hittat IP: n för din Pi -typ i rutan Host Name i Putty istället för raspberrypi och försök ansluta igen.

Om du fortfarande inte kan ansluta kanske du inte har skapat ssh -filen korrekt. Läs igenom föregående steg och dubbelkolla allt.

Steg 6: Valfritt: Ändra värdnamnet för din Pi

Valfritt: Ändra värdnamnet för din Pi
Valfritt: Ändra värdnamnet för din Pi
Valfritt: Ändra värdnamnet för din Pi
Valfritt: Ändra värdnamnet för din Pi
Valfritt: Ändra värdnamnet för din Pi
Valfritt: Ändra värdnamnet för din Pi

Detta är inte nödvändigt, men jag föredrar att ha värdnamnet för min Pi som något relevant för vad det används till snarare än bara det generiska "raspberrypi". I det här fallet kallade jag det "xyzzypi" men du kan kalla det vad du vill.

Så här ändrar du typ av värdnamn:

sudo raspi-config

Välj Nätverksalternativ

Välj Värdnamn

Ange vilket värdnamn du vill ha

Välj Slutför

Den kommer att fråga om du vill starta om Pi nu. Det nya värdnamnet träder inte i kraft förrän du startar om. Om du gör det kopplas din Putty -session från. När den har startat om måste du använda det nya värdnamnet du ställde in för att återansluta med Putty. Om du anslöt med IP -adressen istället för värdnamnet bör det fortfarande vara detsamma.

Det finns många andra alternativ som du kan ställa in med hjälp av raspi-config-verktyget, men det finns gott om självstudier om det redan online så jag kommer inte att gå in på dem här.

Steg 7: Uppdatera dina applikationspaket

Uppdatera dina applikationspaket
Uppdatera dina applikationspaket

Uppdatera dina programpaket med följande kommando:

sudo apt-get uppdatering

Låt det gå tills det är klart.

Obs: Tekniskt behöver du inte skriva "apt-get" längre, du kan bara skriva "apt". Jag är dock så van att skriva "apt-get" att det bara är muskelminne för mig vid denna tidpunkt.

Steg 8: Installera Git

Installera Git
Installera Git

När programpaketen är färdiga med att uppdatera installera Git med följande kommando:

sudo apt -get -y installera git

Låt det gå tills det är klart.

Steg 9: Installera Maven

Installera Maven
Installera Maven

Installera Maven med följande kommando:

sudo apt -get -y installera maven

Låt det gå tills det är klart

Steg 10: Ladda ner låtsasfilerna för Xyzzy

Ladda ner låtsas att du är Xyzzy serverfiler
Ladda ner låtsas att du är Xyzzy serverfiler

Ladda ner låtsas att du är Xyzzy -serverfiler med följande kommando:

git -klon git: //github.com/ajanata/PretendYoureXyzzy.git

Detta skapar en katalog på din Pi som heter PretendYoureXyzzy och laddar ner filerna till den.

Låt det gå tills det är klart.

Steg 11: Ändra till PretendYoureXyzzy -katalogen

Byt till katalogen PretendYoureXyzzy
Byt till katalogen PretendYoureXyzzy

Byt till katalogen PretendYoureXyzzy med följande kommando:

cd låtsasYoureXyzzy

Obs: Linux -kommandon är skiftlägeskänsliga så cd PretendYoureXyzzy fungerar men cd pretendyourexyzzy inte.

Steg 12: Öppna och redigera filen "build.properties.example" och spara den som "build.properties"

Öppna och redigera
Öppna och redigera
Öppna och redigera
Öppna och redigera
Öppna och redigera
Öppna och redigera

Öppna build.properties.example -filen med nano -textredigerare med följande kommando:

sudo nano build.properties.example

Att använda en terminalbaserad textredigerare kan verka lite skrämmande för dem som inte är vana vid det, men det vi gör är väldigt enkelt.

Använd nedåtpilen för att rulla ner tills du hittar sektionerna som säger "dvala.användarnamn" och "dvala.lösenord".

Använd högerpiltangenten för att gå över till slutet av dessa rader och ändra användarnamn och lösenord till något annat. Ärligt talat vet jag inte om det verkligen är nödvändigt, men jag är inte bekväm med att lämna dem på standard användarnamn och lösenord som de följde med.

När du har ändrat dem trycker du på ctrl+o för att öppna dialogrutan för att spara.

Backspace för att ta bort ".example" från slutet av filnamnet så att du bara har "build.properties"

Den kommer att fråga om du vill spara filen under ett annat namn. Tryck på y för ja.

Tryck på ctrl+x för att stänga nano -textredigeraren.

Steg 13: Öppna och redigera "pom.xml" -filen (DET ÄR DET FÖR ATT KÖRA DEN PI)

Öppna och redigera
Öppna och redigera
Öppna och redigera
Öppna och redigera

Öppna pom.xml -filen med nano -textredigerare med följande kommando:

sudo nano pom.xml

Rulla ner som du gjorde förut. Den här gången är linjen du letar efter sqlite-jdbc

Strax under den raden finns en rad med ett versionsnummer. Du måste ändra det numret till 3.28.0 så att det ser ut som:

3.28.0

När du har redigerat versionsnumret trycker du på ctrl+o för att öppna dialogrutan för att spara.

Behåll filnamnet som "pom.xml" och spara det.

När det är sparat trycker du på ctrl+x för att stänga nano -textredigeraren.

Detta är redigeringen som gör att låtsas att du är Xyzzy -servern körs på en Pi. Den sqlite-jdbc-version som den levereras kommer inte att fungera korrekt på en Pi. Version 3.28.0 fungerar utmärkt i mina tester hittills

Steg 14: Starta låtsas att du är Xyzzy -servern och se till att den fungerar

Starta låtsas att du är Xyzzy -servern och se till att den fungerar
Starta låtsas att du är Xyzzy -servern och se till att den fungerar
Starta låtsas att du är Xyzzy -servern och se till att den fungerar
Starta låtsas att du är Xyzzy -servern och se till att den fungerar
Starta låtsas att du är Xyzzy -servern och se till att den fungerar
Starta låtsas att du är Xyzzy -servern och se till att den fungerar

Nu när du har gjort de nödvändiga redigeringarna för att köra en låtsas att du är Xyzzy -server på din Pi, låt oss starta den och se om allt fungerar. Starta servern med följande kommando:

mvn clean package war: exploded brygga: kör -Dmaven.buildNumber.doCheck = false -Dmaven.buildNumber.doUpdate = false

Det kommer att ladda ner några ytterligare filer, kompilera dem och starta servern. Detta kommer antagligen att ta ett par minuter.

Obs: För närvarande är det här det enda sättet jag vet hur servern ska köras så att den kommer att kompileras varje gång du startar den.

Du vet att det är klart när du får ett meddelande som säger "Konsolomladdning är AKTIVERAD. Tryck på RETUR på konsolen för att starta om sammanhanget."

Vid denna tidpunkt kan du öppna din webbläsare och skriva in värdnamnet (eller IP -adressen) för Pi -adderingsporten 8080 i slutet. Så värdnamn: 8080 eller IP: 8080

Om du använde xyzzypi som värdnamn skulle det vara xyzzypi: 8080 eller i mitt fall skulle det vara 192.168.1.189:8080 i mitt fall

Om allt fungerade kommer du att tas till huvudsidan för låtsas att du är Xyzzy.

Grattis! Du har gjort det

Men just nu körs det bara om du loggar in på din Pi med Putty och kör kommandot ovan för att starta servern. När du stänger Putty stannar servern. Detta kan vara bra för vissa människor, men du kanske vill att låtsas att du är Xyzzy -servern körs automatiskt när Pi startar eller startas om utan att behöva logga in. Nästa steg kommer att omfatta att få det att fungera.

Steg 15: Gör ett manus för att starta låtsas att du är Xyzzy -servern

Gör ett manus för att starta låtsas att du är Xyzzy -servern
Gör ett manus för att starta låtsas att du är Xyzzy -servern
Gör ett manus för att starta låtsas att du är Xyzzy -servern
Gör ett manus för att starta låtsas att du är Xyzzy -servern

Om vi vill att låtsas att du är Xyzzy -servern startar automatiskt när Pi startar eller startar om är det första vi behöver göra att skapa ett skript.

Tryck på ctrl+c för att stoppa servern.

När det slutar skriver du följande kommando:

sudo nano xyzzy.sh

Obs! Jag namngav mitt skript xyzzy.sh men du kan namnge det vad du vill. Se bara till att den har.sh som filtillägg.

Använd nano -textredigerare eller skriv in följande i filen:

#!/bin/bashcd/home/pi/PretendYoureXyzzy mvn clean package war: exploded brygga: kör -Dmaven.buildNumber.doCheck = false -Dmaven.buildNumber.doUpdate = false

Tryck på ctrl+o för att öppna dialogrutan för att spara

Spara filen och tryck på ctrl+x för att stänga nano

Steg 16: Gör ditt skript körbart

Gör ditt skript körbart
Gör ditt skript körbart

Vi måste göra skriptet körbart med följande kommando:

sudo chmod 755 xyzzy.sh

Obs! Om du gav ditt skript något annat i föregående steg, använd det filnamnet istället.

Steg 17: Skapa en Crontab -post för att automatiskt köra ditt skript vid start

Skapa en Crontab -post för att automatiskt köra ditt skript vid start
Skapa en Crontab -post för att automatiskt köra ditt skript vid start
Skapa en Crontab -post för att automatiskt köra ditt skript vid start
Skapa en Crontab -post för att automatiskt köra ditt skript vid start
Skapa en Crontab -post för att automatiskt köra ditt skript vid start
Skapa en Crontab -post för att automatiskt köra ditt skript vid start

Det finns flera sätt att göra ett skript kört vid start. Jag använder crontab här.

Redigera crontab -tabellerna med följande kommando:

crontab -e

Det kommer att fråga vilken redaktör du vill använda. Skriv 1 och tryck på enter för att använda nano.

När den öppnas rullar du hela vägen till botten och lägger till följande rad:

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

Obs: Återigen, om du använde ett annat filnamn för din skripttyp istället.

Tryck på ctrl+o för att öppna dialogrutan för att spara.

Spara och tryck på ctrl+x för att stänga nano.

Steg 18: Starta om din Pi och se om du kan ansluta till låtsas att du är Xyzzy

Starta om din Pi och se om du kan ansluta till låtsas att du är Xyzzy
Starta om din Pi och se om du kan ansluta till låtsas att du är Xyzzy

Nu när du har din låtsas att du är Xyzzy -servern inställd på att köra på start kan du starta om Pi och se till att allt fungerar.

Starta om med följande kommando:

sudo starta om

När Pi startar igen tar det ett par minuter att kompilera om allt för servern. Ge det tid och försök sedan ansluta till webbläsaren igen antingen med värdnamnet eller IP: n för Pi -tilläggsporten 8080 i slutet.

xyzzypi: 8080 eller IP -adress: 8080

Om allt fungerade kommer du till sidan Låtsas att du är Xyzzy.

Grattis! Du har nu låtsas att du är en Xyzzy -server som körs automatiskt på en Raspberry Pi

Steg 19: Valfritt: Vidarebefordra portar för att ge åtkomst till din låtsas att du är en Xyzzy -server över internet

Så nu har du en fungerande Låtsas att du är Xyzzy -server men för närvarande är den bara tillgänglig på ditt lokala nätverk. Detta fungerar bra om du har en grupp vänner över för att spela hemma hos dig men människor utanför ditt lokala nätverk inte kommer att kunna ansluta.

Du måste leta upp portvidarebefordran för din specifika router om du inte redan vet hur. Låtsas att du är Xyzzy använder port 8080 så det är porten du vill vidarebefordra. När du har konfigurerat det kommer du att kunna ge dina vänner din externa IP -adress och port och de kommer att kunna ansluta till din server via internet.

Om du vill kan du också ställa in dynamisk DNS så att du har din egen URL (något som JoesPYXserver.noip.com) att ge ut till vänner för att ansluta till din server. Det finns massor av självstudier där ute för den typen av saker.

Rekommenderad: