OreServer - LED ойноткуч индикатору бар Raspberry Pi арналган Minecraft Server: 9 кадам (сүрөттөр менен)
OreServer - LED ойноткуч индикатору бар Raspberry Pi арналган Minecraft Server: 9 кадам (сүрөттөр менен)
Anonim

MrJymmFollow жөнүндө: Көп идеялар, эч качан убакыт жетишсиз. MrJymm жөнүндө көбүрөөк маалымат »

Июль 2020 ЖАҢЫРТУУ - Бул долбоорду баштоодон мурун, муну эки жыл мурун мен жараткан ар кандай программалык куралдарга көп өзгөрүүлөр жана жаңыртуулар киргизилгенин билиңиз. Натыйжада, көптөгөн кадамдар жазылгандай иштебей калат. Долбоорду дагы деле бүтүрсө болот, жана дагы бир топ кызыктуу, бирок баардыгын ишке ашыруу үчүн өзүңүздүн оюңузду жасаңыз деп күтүңүз. Кээ бир чечимдер көрсөтмө аягында акыркы комментарийлерде табылышы мүмкүн. Рахмат, жана бактылуу кен

Эгерде сиз Minecraftтын күйөрманы болсоңуз, досторуңуз менен бөлүшүү үчүн өзүңүздүн жеке сервериңиз болуунун канчалык кызыктуу болорун ойлогон чыгарсыз. Уулдарым менден дайыма өздөрүнүн жеке дүйнөсүн сурашчу, акыры алардын Minecraftка болгон кызыгуусу Raspberry Piге болгон кызыгуум менен айкалышып, OreServer идеясы пайда болгон.

Бул долбоор сизге кызыктуу жана уникалдуу өзгөчөлүгү бар Minecraft серверин кантип орнотууну көрсөтөт - бул рудалык блокко окшоштурулган жана учурда сиздин дүйнөңүздө канча адам ойноп жатканына жараша ар кандай түстөр менен күйөт!

Бирок муну менен эле токтоп калбайт! Биз дагы серверди Minecraftтын PC версиясы менен баарына жеткиликтүү кылабыз, андыктан сиз сервер дарегиңизди бөлүшүп, досторуңузду дүйнөңүзгө чакыра аласыз. Ал күнү -түнү иштейт, андыктан бош эмес болсоңуз да же үйдөн чыксаңыз да, досторуңуз курулушту уланта алышат. Жана биз трагедия болгон учурда автоматтык түрдө камдык көчүрмөлөрдү орнотобуз (ал убакта тротилдик замбирек жакшы идея сыяктуу угулган …), андыктан мурунку күндөгү жумуштарыңызды баштапкы абалга келтире аласыз.

1 -кадам: Бөлүктөр жана инструменттердин тизмеси

Бөлүктөр жана инструменттердин тизмеси
Бөлүктөр жана инструменттердин тизмеси

Бул бул долбоорду аягына чыгаруу үчүн керек болгон бөлүктөр, куралдар жана программалык камсыздоо. Мен шилтемелерди шилтеме үчүн коштум, бирок бул жабдуулардын көпчүлүгү бир нече сатуучулардан жеткиликтүү, андыктан аларды сиз үчүн эң оңой / эң арзан жерден алыңыз.

Бөлүктөр:

  • Raspberry Pi 3 жана электр менен камсыздоо

    Булар да комплект катары жеткиликтүү

  • Micro USB тик бурчтуу адаптер
  • MicroSD картасы

    Минималдуу 8 ГБ, бирок жогорку сапаттагы 16 же 32 ГБ карта сунушталат

  • Adafruit Neopixel Jewel
  • Үч кыска GPIO зымдары
  • Күмүш же Боз 3D басып чыгаруу жипчеси (Ар кандай түрү)
  • 2,5 мм бурамалар (x4)
  • Пергамент кагаз же ак кагаз

Куралдар:

  • MicroSD карта окугуч
  • Лагердик жабдыктар
  • Чакан отвертка
  • 3D принтер

Программалык камсыздоо:

  • Minecraft (Java PC Edition)
  • Raspbian Lite ISO

    "Үстөл менен" версиясы эмес

  • etcher.io
  • Putty же ушуга окшош SSH терминалдык кардары
  • Filezilla же окшош FTP кардары

2 -кадам: Raspberry Pi орнотуу жана даярдоо

Raspberry Pi орнотуу жана даярдоо
Raspberry Pi орнотуу жана даярдоо
Raspberry Pi орнотуу жана даярдоо
Raspberry Pi орнотуу жана даярдоо
Raspberry Pi орнотуу жана даярдоо
Raspberry Pi орнотуу жана даярдоо
Raspberry Pi орнотуу жана даярдоо
Raspberry Pi орнотуу жана даярдоо

Серверди орнотууну баштаардан мурун, Пи боюнча бир нече негизги орнотуу жана конфигурация кадамдарын бүтүрүшүбүз керек.

1. MicroSD картасын даярдаңыз

Биринчиден, биз etbian.io аркылуу Rasbian операциялык тутумун MicroSD картабызга коюшубуз керек.

  1. MicroSD картаңызды карта окугучуңузга, ал эми картаңызды компьютериңиздеги USB портуна салыңыз
  2. Etcherди иштетип, Rasbian Lite ISO жүктөө үчүн Сүрөттү тандоо баскычын колдонуңуз
  3. Орнотуу үчүн MicroSD картасын тандаңыз
  4. Flashти басыңыз!

Процесс аяктагандан кийин etcher MicroSD дискин системадан ажыратат, бирок биз дагы бир файлды кошушубуз керек, ошондуктан аны сууруп, кайра туташтырыңыз. Карта эми "жүктөөчү" деп жазылган диск катары окулат. "Ssh" аттуу бош файлды жүктөөчү дискке көчүрүп, анан MicroSD дискти кайра системадан ажыратыңыз. MicroSD картасы азыр Raspberry Piге өтүүгө даяр.

** Эгерде сиз "ssh" файлын жүктөй албасаңыз, анда бош тексттик файлдын атын өзгөртүп, өзүңүздү оңой жасаңыз. ". Txt" кеңейтүүсүн жок кылганыңызды текшериңиз. Иштегенде, сөлөкөт скриншоттогудай бош болуп калат. **

2. Пи терминалына туташыңыз

Эми Pi иштөө тутумуна ээ болгондон кийин, аны иштетели!

  1. Зымдуу Ethernet кабелин да, Rasberry Pi үчүн электр энергиясын да сайыңыз. Pi 3 Wi-Fi колдоосуна ээ болсо да, зымдуу туташуу биздин сервер үчүн бекем жана артыкчылыктуу.
  2. Кийинки, роутериңизден Piнин IP дарегин алуубуз керек. Бул кадам роутердин брендине жараша бир аз айырмаланат - менин учурда роутердин башкаруу панелине кирүү үчүн браузериме 192.168.1.1 киргизем. Сиз DHCP кардарларынын тизмесин жана "raspberrypi" аттуу жазууну издейсиз. Берилген IP дарегине көңүл буруңуз, менин мисалымда 192.168.1.115. Эми IP дарегин кийинчерээк башка дарекке дайындалып калбашы үчүн аны "корголгон" же "туруктуу" деп коюуга жакшы мүмкүнчүлүк. Эгерде сизде бул кадам менен кандайдыр бир кыйынчылыктар болсо, чоо -жайын билүү үчүн роутериңиздин документтерин же колдоо сайтына кайрылгыңыз келет.
  3. Эми биз Putty ачып, "Host Name" талаасына Piнин IP дарегин киргизип, "Ачуу" баскычын чыкылдата алабыз.

Сиз азыр "кирүү:" менен кара экранды карашыңыз керек. Бул сиздин Пиңиздин терминалы жана биз серверди орнотуу боюнча калган иштерди жасайбыз. Эсиңизде болсун, терминалдык экрандар клавиатура үчүн! Бул жерде сиздин чычканыңыз көп колдонулбайт.

3. Raspi-config

Баштапкы орнотууну аягына чыгаруу үчүн, биз демейки аркылуу киришибиз керек:

катары кирүү: pi

сырсөз: малина

Эми биз төмөнкүлөрдү киргизүү менен Пинин демейки жөндөөлөрүнүн кээ бир негизги орнотууларынан өтө алабыз

sudo raspi-config

Биз бир нече өзгөртүүлөрдү киргизишибиз керек, мен аларды сизди конфигурация экранында номерленген тартипте алып барам.

  1. Колдонуучунун сырсөзүн өзгөртүү - Бул милдеттүү! Ар бир адам демейки сырсөздү билет, андыктан дароо алмаштырыңыз.
  2. Тармак параметрлери

    Хосттун аты - демейки боюнча бул "raspberrypi", бирок эгер кааласаңыз, аны сүрөттөмө кылып өзгөртө аласыз

  3. -(өзгөрүүсүз)-
  4. Локалдаштыруу параметрлери - эгер сиз Улуу Британияда болбосоңуз, анда муну өз өлкөсүнө өзгөрткүңүз келет. Менин мисалдарым бул АКШ деп ойлошот.

    1. Тилди өзгөртүү - ылдый жебеңизди колдонуп, жанында "en_GB" үчүн жазууну табыңыз. Боштукту колдонуңуз * дегенди алып салыңыз, андан кийин "en_US. UTF-8ге" бир аз ылдый түшүп, кайра * менен белгилөө үчүн боштукту колдонуңуз.
    2. Убакыт алкагын өзгөртүү - муну коюу биздин убакыттуу тапшырмаларыбыздын туура иштеши үчүн маанилүү
    3. Баскычтоптун жайгашуусун өзгөртүү - сиз муну өткөрүп жиберишиңиз мүмкүн, бирок Улуу Британияда калтырылса, бир нече клавиатура белгилери жылдырылат
  5. Interfacing Options

    1. -(өзгөрүүсүз)-
    2. SSH - Pi'ни кайра жүктөөдөн кийин Putty колдонууну улантуу үчүн муну иштетүү.
  6. -(өзгөрүүсүз)-
  7. Өркүндөтүлгөн параметрлер

    1. Файл тутумун кеңейтүү - бул Пи SD картадагы бардык мейкиндикти колдоно алаарына ынандырат
    2. -(өзгөрүүсүз)-
    3. Memory Split - Minecraftтын көбүрөөк эс тутумун бошотуу үчүн муну 16га өзгөртүңүз.

Эми "Аяктоону" тандап, кайра жүктөө үчүн "Ооба" тандаңыз.

Бул Puttyдеги сессияңызды токтотот. Жөн гана ага өчүрүүнү аягына чыгаруу үчүн бир аз убакыт бериңиз, андан кийин Putty программасын кайра ачыңыз жана Пинин IP дарегине кайра туташыңыз. Жаңы сырсөзүңүздү колдонууну унутпаңыз!

3 -кадам: Арналган серверди орнотуңуз

Сервердин программалык камсыздоосун орнотуу - эң узун кадам, бирок эң маанилүү. Биз Linuxтун кызыксыз буйруктарына кирүү үчүн көп убакыт коротобуз. Бул сени коркутууга жол бербе! Көчүрүп, чаптап койсоңуз, бул бөлүктөн өтө аласыз.

Minecraft сервери өтө татаал жана аны Raspberry Pi сыяктуу кичинекей компьютерде иштетүү бир аз иретке келтирүүнү талап кылат. Мен бул фантастикалык окуу куралынан Джеймс Чемберс менен баштадым, анткени ал сервердин иштешин жогорулатуу боюнча бир нече сонун кеңештерге ээ. Мен анын орнотуу процессин төмөндө жыйынтыктап, мен киргизген айрым өзгөртүүлөрдү жана жаңыртууларды белгилеп жатам, бирок мен анын баракчасына кененирээк маалымат алуу үчүн окууну сунуштайм.

Эми сиз демейки "pi" жана жаңы сырсөзүңүздү колдонуп кайра киргениңизден кийин, биз сервер файлдарын орнотуу үчүн буйруктарды киргизе баштайбыз.

Маанилүү - Бул буйруктардын көбү узун жана татаал жана терминалдын терезесине терүү абдан оор болмок. Андыктан муну кылба! Бул терезеде буйрук текстин бөлүп көрсөтүңүз, аны ctrl-c менен көчүрүп алыңыз, андан кийин терминалды терезеңизде чычкан менен оң баскыч менен чыкылдатып, текстти чаптаңыз. Мына, чычкан бир нерсеге жарайт!

Бул кадамдын калган бөлүгү үчүн, бул код текст кутучаларындагы ар бир буйрукту көчүрүп аласыз.

Мен жолдо эмне кылып жатканыбызга кыскача түшүндүрмө берем.

Биз программалык камсыздоону жаңыртуу менен баштайбыз.

sudo apt-get update && sudo apt-get upgrade

Орнотууну жактыруу өтүнүчүн көргөндө, "y" терип, кабыл алуу жана улантуу үчүн enter баскычын басыңыз.

Minecraft Javaда иштейт, бирок биздин "Lite" Rasbian орнотуубуз аны камтыган эмес, андыктан аны алалы.

wget --no-check-certificate-no-cookies-header "Cookie: oraclelicense = accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808 /jdk-8u161-linux-arm32-vfp-hflt.tar.gz

Эскертүү ** Java жаңы версияга жаңыртылганда, ал буйрук эскирип калышы мүмкүн. Эгер сиз ката билдирүүсүн алсаңыз, буйрукту акыркы версиясына жаңыртууңуз керек болот. Oracle Java жүктөө барагына баш багыңыз, "Лицензиялык келишимди кабыл алуу" баскычын чыкылдатыңыз, андан кийин эң акыркы linux-arm32 файлына шилтемени чыкылдатып, көчүрүү шилтемесин тандаңыз. Бул жаңыртылган шилтемени http'ден баштап, жогорудагы буйруктагы текстти алмаштыруу үчүн колдонушуңуз керек. **

Эми биз жаңы эле жүктөп алган Java файлдарын орното алабыз.

sudo mkdir /usr /java

cd /usr /java

Эгерде сиз жаңы версия үчүн жүктөө шилтемесин өзгөртүүгө туура келсе, кийинки буйруктардагы версиянын номерин дал келтирүү үчүн өзгөрткөнүңүздү текшериңиз.

sudo tar xf ~/jdk-8u161-linux-arm32-vfp-hflt.tar.gz

sudo update-alternatives-орнотуу/usr/bin/java java /usr/java/jdk1.8.0_161/bin/java 1000

sudo update-alternatives --install/usr/bin/javac javac /usr/java/jdk1.8.0_161/bin/javac 1000

cd ~

Акыры, сиз чыдамсыздык менен күткөн негизги окуя, Minecraft серверин орнотолу. Бул Paper деп аталган сервердин адистештирилген версиясы жана ал иштөөнү жакшыртуу үчүн оптималдаштырууга толгон.

mkdir Paper

wget

unzip master.zip -d Кагаз

mv ~/Paper/RaspberryPiMinecraft-master/* ~/Paper/

CD кагаз

chmod +x start.sh

wget

java -jar -Xms512M -Xmx800M paperclip.jar

Бул акыркы буйрук серверди биринчи жолу баштайт жана бир нече мүнөттөн кийин сиз EULAга макул болушуңуз керек деген ката аласыз. EULAны кийинки буйрук менен ачыңыз:

nano eula.txt

"Eula = false" деген сапты "eula = true" деп өзгөртүңүз. Өзгөртүүлөрдү ctrl-x, Y басуу менен сактаңыз, анан киргизиңиз.

Эскертүү ** Джеймс Чемберс өзүнүн жол көрсөткүчүнүн ушул жеринде сиздин SD картты ылдамдатуу ыкмасын айтат. Мен бул кадамды жеке түрдө сынап көргөн жокмун, анткени ал жогорку сапаттагы картты талап кылат жана мен үчүн жеткиликтүү болгон нерсе өзгөчө эмес. Мен overclocking, албетте, мындан ары иштөөнү жакшыртат деп ишенем, бирок overclock кылбасам да, сервер жакшы иштейт, мен аны ойногон балдардан эч кандай доомат алган жокмун. **

Келгиле, тез арада Server касиеттерин карап, бир -эки өзгөртүүлөрдү киргизели.

nano server.properties

Бул жерде сиз сервер жөнүндө өзгөртө турган нерселердин узун тизмеси бар, мисалы, сервердин атын жана MOTDди жекелештирүү, оюн режимин өзгөртүү же PvP же командалык блокторду иштетүү. Сиз азыр каалагандай нерселерди өзгөртө аласыз, же кийинчерээк көбүрөөк өзгөртүүлөрдү киргизүү үчүн бул файлды ача аласыз, бирок дароо жасай турган эки өзгөртүү бар.

максималдуу оюнчулар = 8

сервер-порт = 25565

Сегиз оюнчу мен сунуштаган эң жогорку көрсөткүч, эң жогорку деңгээлде жана сиз Пидеги нерселерди иштетүү үчүн жасалган бардык оптимизациялар менен сервердин иштөөсүнүн кечигип калганын көрөсүз.

Сервер порту өзгөртүлүшү керек, анткени демейки "малина" сырсөзү сыяктуу эле, бардыгы 25565тин демейки портун билишет. 26565ке кичине деле өзгөртүү сервердин коопсуздугун сактоого жардам берет. Питтин IP дарегин сактаган жердин жанындагы порт номерин жазыңыз. Кийинчерээк экөөнө тең керек болот.

Жөндөөлөрүңүздү жаңыртып бүткөндөн кийин, өзгөртүүлөрдү ctrl-x, Y басуу менен сактап, анан киргизиңиз.

Сервериңизди даярдоонун кийинки кадамы башталгандан кийин эң узак убакытты алат, болжол менен бир саат. Бул буйруктар сиздин дүйнөңүздү алдын ала жаратат, башкача айтканда, сиз жана сиздин досторуңуз изилдеп жатканда сервер бул иштердин бардыгын кийинчерээк жасабайт.

cd ~/Кагаз/плагиндер

wget --content -disposition -E

sudo apt-get орнотуу экраны

CD кагаз

./start.sh

Эч нерсе болбогондой көрүнөт, бирок сиздин сервер азыр иштей баштады! Сервер менен иштөө үчүн бул буйрукту колдонуубуз керек

экран --r minecraft

Анан биз дүйнөнү алдын ала жаратабыз:

wb дүйнөсү 1000 жумуртканы койду

wb дүйнө 1000 толтурат

wb толтуруу ырастоо

Бул көп убакытты талап кыла турган бөлүк. Тамак алып барып, кийинчерээк кайра текшериңиз! Процесс аяктагандан кийин, серверди абдан жөнөкөй буйрук менен өчүрүңүз

токтотуу

Бул серверди сактап калат жана жабат жана сизди Raspberry Pi терминалына кайтарат.

Биздин акыркы тапшырмабыз - Raspberry Pi сайылганда же кайра күйгүзүлгөндө серверди автоматтык түрдө баштоо. Биз муну жөнөкөй скрипт түзүү аркылуу жасай алабыз.

cd ~

нано стартап.sh

Биз мурун нано файлын эки файлды түзөтүү үчүн колдонгонбуз, бирок бул жолу биз нөлдөн баштап бир файлды түзүп жатабыз, андыктан терезе бош калат. Бул эки сапты файлга көчүрүү:

cd/home/pi/Paper

экран -dmS minecraft java -сервер -Dfile.encoding = UTF -8 -Xms512M -Xmx800M -XX: NewSize = 300M -XX: MaxNewSize = 500M -XX:+CMSIncrementalMode -XX:+UseConcMarkSweepGC -XX:+ CMSIncrementalPacing -XX: ParallelGCThreads = 4 -XX:+AggressiveOpts -XX:+AlwaysPreTouch -XX:+DisableExplicitGC -XX: SurvivorRatio = 16 -XX: TargetSurvivorRatio = 90 -jar /home/pi/Paper/pap

Андан кийин ctrl-x, Y басуу менен жаңы скриптиңизди сактап, анан киргизиңиз.

chmod +x баштоо.sh

chmod +x /etc/rc.local

sudo nano /etc/rc.local

Rc.local файлынын эң акыркы сабында "чыгуу 0" деп жазылган. Түздөн -түз ошол сызыктын үстүндө биз муну кошобуз:

su pi -c /home/pi/startup.sh

Дагы бир жолу биз ctrl-x, андан кийин Y менен файлдын өзгөрүүлөрүн сактайбыз, андан кийин киргизебиз.

sudo өчүрүп күйгүзүү

Сиз байланыш жабылды деген билдирүү аласыз жана сиз Putty терезесин жаба аласыз.

Дал ушул! Сиз зеригүүчүлүктү жеңип алдыңыз! Эми биз серверибизди сынап көрүүгө даярбыз!

4 -кадам: Сервериңизди сынап, досторуңузду чакырыңыз

Сервериңизди сынап, досторуңузду чакырыңыз
Сервериңизди сынап, досторуңузду чакырыңыз
Сервериңизди сынап, досторуңузду чакырыңыз
Сервериңизди сынап, досторуңузду чакырыңыз
Сервериңизди сынап, досторуңузду чакырыңыз
Сервериңизди сынап, досторуңузду чакырыңыз
Сервериңизди сынап, досторуңузду чакырыңыз
Сервериңизди сынап, досторуңузду чакырыңыз

Кийинки, биз сервердин иштеп жатканын текшерип, досторубуз кошула алаарына ынанабыз.

Компьютериңизде Minecraft ишке киргизгичти ачыңыз жана Play баскычын басыңыз. Кагаз серверине дал келүү үчүн акыркы чыгаруу версиясын колдонуп жатканыңызды текшериңиз.

Негизги экранда Көп оюнчуну, андан кийин Серверди кошууну тандаңыз. Сервер тизмеңизде болгуңуз келген ысымды киргизиңиз, ал эми Server дареги үчүн Пиңиздин IP дарегин жана порт номерин киргизиңиз. Менин мисал үчүн биз 192.168.1.115:26565 колдонобуз. IP дареги менен порт номеринин ортосунда чекит бар экенин жана боштук жок экенин тактаңыз. Дайын дегенди чыкылдатыңыз жана сервериңизде ойнотууну чыкылдатыңыз. Бир нече мүнөттөн кийин сиз жаңы дүйнөгө түшүп калганыңызды көрөсүз!

Күт, кайра кел! Баарын өзүңүз куруп баштабаңыз, досторду чакыралы! Тилекке каршы, алар сиз кылган IP дарегин колдоно алышпайт. Ошентип, бул ишти жасоо үчүн, адегенде роутериңизге үйүңүздүн сыртындагы адамдарга Пи менен туташуу туура экенин айтышыңыз керек. Бул Port Forwarding деп аталат жана так процесс роутериңизге жараша бир аз айырмаланат. Мен TP Link бренд роутеримде кандай көрүнгөнүнүн скриншотун тиркеп койдум, бирок көбүрөөк маалымат алуу үчүн роутерлериңиздин колдоо сайтын текшерүүңүз керек болушу мүмкүн.

Портту багыттоо жөндөөлөрүңүзгө сервериңиз үчүн тандаган порт номерин, андан кийин Raspberry Pi үчүн IP дарегин киргизиңиз. Сиздин роутериңиз азыр досторуңуз бул порт номерине туташууга аракет кылганда, алар Пи -ге багытталышы керек экенин билет.

Андан кийин биз хостинг деп аталган уникалдуу дарегиңизди түзүү үчүн No-IP сыяктуу бекер кызматты колдонушубуз керек. Ошондой эле, хосттун IP дарегин жаңыртып туруу үчүн роутериңизди же компьютериңизди орнотосуз.

Азыр алардын Орнотуу Колдоосунун кадамдарын аткарыңыз.

No-IP каттоо эсебиңизди орнотуп бүткөндөн кийин, досторуңуз жаңы хост атыңызды жана порттун номерин Minecraftтын көп оюнчусунун экранынын Server Address бөлүмүнө киргизип, серверге туташа алышат. Мисалы, hostname.ddns.net:26565.

5 -кадам: Дүйнөнү сакта! (Автоматтык камдыктар менен)

Дүйнөнү куткар! (Автоматтык камдыктар менен)
Дүйнөнү куткар! (Автоматтык камдыктар менен)

Бул кадам милдеттүү эмес, бирок бул потенциалдуу куткаруучу. Сиздин дүйнөңүз бузулган MicroSD картасынанбы, кээде бузукулуктан же кайгырууданбы же жөн эле ошол зыяндуу сойлоп жүрүүчүлөрдөн олуттуу коркунучтарга туш болот. Бардык талыкпаган эмгегиңизди коргоо үчүн, бизде сервер ар күнү кечинде сиздин дүйнөлүк файлыңызды автоматтык түрдө сактап калат. MicroSD картаңыздын толушуна жол бербөө үчүн, биз бир жумадан ашык болгон бардык камдык көчүрмөлөрдү жок кылабыз. Андан кийин, аларды коопсуздугу үчүн жеке компьютериңизге же башка камдык дискке оңой көчүрө аласыз.

Биз дагы бир жаңы сценарий жасоо үчүн Pi менен кайра туташуу үчүн Puttyден баштайбыз.

nano dailybackup.sh

Төмөнкү буйруктарды скриптке көчүрүү:

# Minecraft серверин токтотуңуз

экран -x minecraft -X нерселер токтойт^M sleep 5 # Copy Paper directory to backup/PaperYYDDMM cp -a Paper/. резервдик көчүрүү/Кагаз $ (дата +%F) # 7 күндөн ашкан камдык көчүрмөлөрдү табуу камдык көчүрмөсүн табат/* -акылдын 0 0 -максабы 0 -тиби d -сакт +7 -exec rm -rf {};

Анан мени менен бирге айтыңыз - ctrl -x, Y басуу менен файлыңызды сактаңыз.

Эми биз crontab аркылуу ар бир түнү камдык скриптти иштетүү үчүн кайталануучу тапшырманы түзөбүз.

crontab -e

Бул буйрукту биринчи жолу иштеткениңизде, сизге Nano үчүн 2 санын тандаңыз.

Бул тапшырмаларды пландаштыруу үчүн атайын файлды ачат. Бул файлдын түбүнө төмөнкү саптарды кошуңуз:

5 0 * * * /home/pi/dailybackup.sh

15 0 * * * sudo кайра жүктөө

Биринчи сапта Пи ар күнү кечинде саат 12: 05те камдык скриптиңизди иштетүүнү айтат. Экинчи сапта Pi он мүнөттөн кийин кайра жүктөлүшү керектиги айтылат. Эгерде сиз камдык көчүрмөлөрдү жана кайра жүктөөнүн башка убактысын кааласаңыз, анда бул саптарды каалооңузга жараша өзгөртө аласыз. Эсиңизде болсун, биринчи сан мүнөт, ал эми экинчи сан 24 саат форматында. Үч жылдызча бул скрипт күн сайын иштей турганына ынанат.

Системаңыз бир аз иштеп жаткандан кийин, сиз камдык көчүрмөлөрдү Pi'дин MicroSD картасынын башка жерине сактап коюуну каалашыңыз мүмкүн. Бул тапшырма Filezilla аркылуу сервериңизге туташуу менен абдан жөнөкөй. Жөн гана Filezilla оң жагындагы камдык папканы сүйрөп, аны ПКге таштаңыз. Ал бардык файлдарды көчүргөндөн кийин, аларды каалаганча сактай аласыз!

Эгерде трагедия башталса жана сакталган файлдарыңыздын бирине кайтуу керек болсо, бул тез жана жөнөкөй жол -жобо. Алгач серверди токтоткондугуңузду текшериңиз:

экран --r minecraft

токтотуу

Андан кийин Filezilla колдонуп, кагаз каталогун жок кылып, сакталган каталогдоруңуздун бирин Пи -ге кайра сүйрөп алмаштырыңыз. Каталогдун аталышынан датаны өчүргөнүңүздү текшериңиз, ошондо ал дагы жөн эле Кагаз деп аталат. Андан кийин сиз серверди өчүрүп күйгүзө аласыз

./startup.sh

Жана ушундай эле, сиз курулуш бизнесине кайтып келе аласыз!

6 -кадам: Жарык диоддорун туташтырыңыз

Жарык диоддорун туташтырыңыз
Жарык диоддорун туташтырыңыз
Жарык диоддорун туташтырыңыз
Жарык диоддорун туташтырыңыз
Жарык диоддорун туташтырыңыз
Жарык диоддорун туташтырыңыз

Жарык кошууга убакыт келди! Бул жерде сиздин сервер монитордун артында чаң жыйноочу болуп кала баштайт. Бул кадам сизге Raspberry Pi'ге Neopixel Jewelти кантип ширетүү жана тиркөө керектигин көрсөтөт, андан кийин LEDди иштетүү үчүн керектүү программаны орнотот. Көп өтпөй, эч ким сиз менен ойноону күтүп жаткан жокпу деп ойлонбой эле койсоңуз болот, анткени сиздин сервер сизге бир көз караш менен айтып берет!

Adafruit Neopixel - бул фантастикалык светодиоддор. Алар RGB, демек алар каалаган түстө жарык бере алат. Алар даректүү, демек сиз каалаган убакта түсүн өзгөртүү үчүн программалык буйруктарды колдоно аласыз. Neopixels Raspberry Pi менен кантип иштээри жөнүндө көбүрөөк маалымат алуу үчүн, расмий Adafruit колдонмосун карап көрүңүз.

Зергердиктин 7 LEDы бар, алар бизге күчтүү ачык түстөрдү берет. Ошондой эле беш ширетүүчү байланыш түйүнү бар, бирок биз үчөөнү гана колдонобуз. Мен аларды кийинчерээк Пи -ге туташтырганда аралаштырбоо үчүн үч түрдүү түстөгү зымдарды колдонууну сунуштайм. Менин мисал сүрөттөрүмдө кызыл, кара жана күрөң түстөрдү колдондум.

Бул кадамды баштоодон мурун сиз Raspberry Pi'ни толугу менен өчүргүңүз келет. Бул буйруктарды киргизип, анан Пинин электр булагын ажыратыңыз.

экран --r minecraft

токтотуу

Sudo өчүрүү -h азыр

Үч ургаачы GPIO зымдарын кесип салыңыз, ошончолук көп, сизде ширетүү учурунда иштей турган зым көп. Сиз мен сыяктуу эле ар дайым ашыкча чыгара аласыз. Зымдарды Зергердеги контакттарга кылдаттык менен ширеткиле. Андан кийин Raspberry Pi GPIO казыктарына аял коннекторлорду тиркеңиз:

PWR пин 1 = 3.3V

GND пинге 6 = Жер

Киргизүү 12 = GPIO18

Jewel орногондон кийин, сиз Пиди кайра туташтырып, Putty'ди колдонуп, LED программасын төмөнкү буйруктар менен туташтырып жана орното аласыз. Орнотууну улантуу үчүн Y кирүүңүздү сурашы мүмкүн болгон жерлерди байкаңыз.

sudo apt-get install эң керектүү python-dev git

sudo apt-get scons орнотуу

sudo apt-get swig орнотуу

git клону

cd rpi_ws281x

скондор

Маанилүү ** Кийинки кадамда биз неопиксел китепканасына кичине кошумча киргизебиз. Бул бир нече күн бою мени жаңыртып жиберген эстутум катасынан качуу үчүн керек. Ансыз светодиоддор бир нече саат иштейт, анан туура жаңыртууну токтотот. **

cd python

python setup.py куруу

Sudo нано куруу/lib.linux-armv7l-2.7/neopixel.py

Ылдый жебени колдонуп класс Adafruit_NeoPixel (объект): деп жазылган сызыкты айланып өтүү үчүн, көк текст менен def _cleanup (өзүн) деп жазылган бөлүмдү таба аласыз. Сиз кийинки сапты ушул жерге көчүрөсүз. бөлүм, так жогорудагы скриншотто көрсөтүлгөндөй.

ws.ws2811_fini (self._leds)

Дагы бир жолу ctrl-x, Y менен киргизилген өзгөртүүлөрдү сактообуз керек.

cd ~

cd rpi_ws281x/python

sudo python setup.py орнотуу

Кийинкиде биз тесттик файлга бизде бар светодиоддордун санын айтып беришибиз керек, анан биз аларды күйгүзө алабыз!

cd мисалдары

sudo nano strandtest.py

LED_COUNT = 16 деген сызыкты таап, аны LED_COUNT = 7 кылып өзгөртүңүз, андан кийин ctrl-x, Y, киргизиңиз.

sudo python strandtest.py

Эгерде баары туура кеткен болсо, анда сиз жаңы эле жаркылдап көкжалдын жарылуусунан сокур болуп калдыңыз. Кайра көргөндө жарыкты токтотуу үчүн ctrl-c баскычын басыңыз. Светодиоддор өчпөйт, бирок алар жаркылдабай калат жана бул азырынча жетиштүү.

7 -кадам: Сервердин абалын текшерүү үчүн LEDди программалаңыз

LEDди Сервердин абалын текшерүү үчүн программалаңыз
LEDди Сервердин абалын текшерүү үчүн программалаңыз

Биздин Светодиоддор орнотулган жана даяр болгондо, аларды серверге реакция кылууга убакыт келди. Тактап айтканда, биз аларды сервердеги учурдагы оюнчулардын санын көрсөтөбүз:

Оюнчулар = Руда

  • 0 = Редстоун
  • 1-2 = Темир
  • 3-4 = Алтын
  • 5-6 = Изумруд
  • 7-8 = Алмаз

Эгерде сервер иштебесе, Oreblock көмүр болот (светодиоддор өчөт). Жана кошумча бонус катары, эгерде статус текшерүү интернетке туташууну таба албаса, анда светодиоддор сары түстө өчүп калат!

Оюнчулардын санын серверден алуу үчүн, биз Mojang оюнун иштеп чыгуучулардын бири Натан Адамстан mcstatus орнотобуз.

sudo apt-get python-pip орнотуу

sudo pip орнотуу mcstatus

Андан кийин биз төмөндөгү эки python скриптин mcled.py жана ledoff.py файлдарыбызды Filezilla менен серверибизге көчүрүшүбүз керек. Скриншотто көрсөтүлгөндөй, эки скриптти оң жактагы кутуга сүйрөп барып таштаңыз.

Уланта бериңиз жана ledoff.py'ди азыр сынап көрүңүз, андыктан биз мурунку кадамда өчүп калган светодиоддорду өчүрө алабыз.

sudo python ledoff.py

Скрипттерди кол менен иштеткенде, "Сегментация катасы" деген билдирүү аласыз. Бул Neopixel.py китепканасында чечилбеген маселе, бул биздин жасап жаткан иштерибизге эч кандай таасирин тийгизбейт.

Эгерде сиз бул скрипттердин кантип иштээрин билгиңиз келсе, аларды компьютериңиздеги каалаган текст редактору менен ачсаңыз болот, же терминалдын экранында нанону колдонсоңуз болот. Кокустан иштебей калышы мүмкүн болгон өзгөрүүлөрдү сактап калуудан сак болуңуз!

Эскертүү ** mcled.py менин мисалымдан 26565 портун колдонуп жатканыңызды болжолдойт. Эгерде сиз башка портту колдонуп жатсаңыз, анда скриптти төмөнкү кадамдарга дал келгидей кылып өзгөртүү керек **

sudo нано mcled.py

"# Сервердин оюнчусунун санын алыңыз" деп жазылган кызыл сызыкты табыңыз, ылдыйда "localhost" деп жазылган жашыл текстти жана анын жанындагы порт номерин камтыган линияны көрөсүз. Порттун номерин өзүңүзгө дал келгидей кылып өзгөртүңүз жана дайыма өзгөрүүлөрдү ctrl-x, Y менен киргизиңиз.

Сервердин статусу боюнча үзгүлтүксүз жаңыртууларды алуу үчүн, биз Piге mcled.py скриптин ар бир мүнөт сайын иштетүүнү айтабыз, бул болсо crontabда дагы эки сапты орнотууну билдирет.

crontab -e

Камдык көчүрмөлөрдү жана кайра жүктөөлөрдү пландаштыруу үчүн биз мурда кошкон эки сапты көрөсүз. Эми дагы экөөнү кошобуз:

* 6-20 * * * sudo python mcled.py

0 21 * * * sudo python ledoff.py

Биринчи сап Pi'ге mcled.py файлын ар бир саат сайын, таңкы саат 6дан кечки 8: 59га чейин иштетүүнү айтат. Экинчи сапта Пи LEDлерди кечки 9да өчүрүүнү айтат. Бул жеке артыкчылык, анткени ал убакта менин балдарым сервер иштей берсе дагы Minecraft ойнобойт. Ошондой эле OreServer сыналгыбыздын үстүндө көрүнүп турат жана жаркыраган жарык кечинде кыжырды келтирет. Сиз, албетте, бул эки линияны өзгөртө аласыз, светодиоддор үзгүлтүксүз иштеши үчүн, же кийинчерээк өчүрүлүшү үчүн, же өзүңүздүн максатыңызга туура келген нерсени.

Өзгөртүүлөрүңүз сакталгандан көп өтпөй (ctrl-x, Y, дагы эле киресизби?) Сценарий чакырылып, зергериңиз кайрадан жанат. Сервер иштеп жаткандыгын, бирок колдонулбаганын көрсөтүү үчүн кызыл түстө болот. Бир аз убакыт бөлүп, Minecraftти ишке киргизиңиз жана мурунку сыноо учурунда болгондой серверге кошулуңуз. Сиз кошулгандан көп өтпөй, светодиоддор ак түскө, анан ажыратылганда кайра кызыл түскө өтүшү керек.

8 -кадам: Руданын корпусун жасаңыз

Кен казынасын жасаңыз
Кен казынасын жасаңыз
Кен казынасын жасаңыз
Кен казынасын жасаңыз
Кен казынасын жасаңыз
Кен казынасын жасаңыз
Кен казынасын жасаңыз
Кен казынасын жасаңыз

Мунун баарын чогултуу үчүн акыркы тийүү - бул Raspberry Pi үчүн орбиталык корпус. Руданы жасоо үчүн мен Lulzbot TAZ6 3D принтерин RiverCityLabs жергиликтүү мейкиндигинде колдондум. Мен базалык жана астынкы үчүн менин басып чыгаруучу. STL файлдарымды бердим. Эгерде сизде 3D принтериңиз жок болсо, анда өзүңүздүн аймакты жаратуучулардын коомчулугуна текшериңиз, алар сонун! Же сизде жалпыга жеткиликтүү принтерлери бар жергиликтүү китепкана же мектеп болушу мүмкүн. Дизайнды басып чыгарып, жөнөтө турган бир нече онлайн 3D басып чыгаруу кызматтары да бар. Же сиз чыгармачылык менен алектене аласыз! Картон же боз үй Lego же колуңузга жакын болгон нерселерден ишти жасооңузга эч нерсе тоскоол болбойт.

3D принтер файлдарын орнотуу үчүн кээ бир маанилүү эскертүүлөр:

  • Файлды эч кандай масштабдуу өзгөртүүсүз басып чыгарыңыз, орнотуу тешиктери Пи менен дал келишине ынануу үчүн.
  • Ачык учу өйдө караганча, үстүн өйдө караңыз.
  • Колдоо жөндөөлөрүңүздү күйгүзгөнүңүздү текшериңиз, андыктан дубалдардагы ашыкча жерлер бузулбайт.

Басып чыгаруу аяктагандан кийин, Пиди базага 2,5 мм бурамалар менен беките аласыз. Мен чыныгы продукттун шилтемесин таба албайм, бирок мен буларды Менардстагы 2 пакетте таптым, бул Амазонкадан 100 кутуга заказ берүүдөн алда канча жакшы болчу.

Бардык колдоо материалын үстүңкү бөлүктөн алып салыңыз да, ичине ылайыктуу кылып пергамент кагазын же ак кагазды кесип алыңыз. Бул LED чырактарын чачыратып жиберет, бул жаркыраган эффект тешиктерди ачык калтыруудан миллион эсе жакшы көрүнөт.

Туура бурчтуу MicroUSB адаптерин кубат портуна туташтырыңыз, ошондо кабель иштин арт жагына ethernet портунун жанына чыгып кетет.

Эми сиз кубаттуулукту жана Ethernet зымдарын кайра туташтырып, Топту ордуна коюп, ырахат ала аласыз!

9 -кадам: Жыйынтык, кошумча ойлор жана рахмат

Minecraft Challenge 2018 боюнча башкы сыйлык

Сунушталууда: