Mundarija:

OreServer - LED pleer indikatorli Raspberry Pi bag'ishlangan minecraft serveri: 9 qadam (rasmlar bilan)
OreServer - LED pleer indikatorli Raspberry Pi bag'ishlangan minecraft serveri: 9 qadam (rasmlar bilan)

Video: OreServer - LED pleer indikatorli Raspberry Pi bag'ishlangan minecraft serveri: 9 qadam (rasmlar bilan)

Video: OreServer - LED pleer indikatorli Raspberry Pi bag'ishlangan minecraft serveri: 9 qadam (rasmlar bilan)
Video: Portal 2 | DIY 1500 Megawatt Aperture Science Heavy Duty Super Colliding Super Button Miniature 2024, Iyul
Anonim

MrJymmFollow tomonidan: Ko'p g'oyalar, vaqt etarli emas. MrJymm haqida batafsil »

Iyul 2020 YANGILASh - Loyihani boshlashdan oldin, shuni bilingki, men ikki yil oldin men yaratgan turli xil dasturiy vositalarga juda ko'p o'zgarishlar va yangilanishlar kiritilgan. Natijada, ko'p qadamlar yozilganidek ishlamaydi. Loyihani hali ham yakunlash mumkin, va bu juda qiziqarli, lekin hamma narsani amalga oshirish uchun o'zingizning xohishingiz bilan ishlashingizni kuting. Ba'zi echimlarni ko'rsatmalar oxiridagi so'nggi izohlarda topish mumkin. Rahmat, va baxtli kon

Agar siz Minecraft -ning muxlisi bo'lsangiz, do'stlaringiz bilan bo'lishish uchun o'zingizning shaxsiy serveringiz bo'lish qanchalik yoqimli bo'lishi haqida o'ylardingiz. O'g'illarim doimo mendan o'zlarining umumiy dunyosini so'rashardi va oxir -oqibat ularning Minecraftga bo'lgan qiziqishi, men Raspberry Pi -ga bo'lgan qiziqishim bilan birlashdi va OreServer g'oyasi tug'ildi.

Bu loyiha sizga Minecraft serverini qanday qiziqarli va o'ziga xos xususiyat bilan o'rnatishni ko'rsatib beradi - u ma'dan blokiga o'xshab qurilgan va hozirda sizning dunyoda qancha odam o'ynayotganiga qarab, u turli xil ranglarda yonadi!

Lekin bu bilan tugamaydi! Shuningdek, biz Minecraft -ning shaxsiy kompyuter versiyasi bilan har kimga serverga kirishni ta'minlaymiz, shuning uchun siz o'z server manzilingizni baham ko'rishingiz va do'stlaringizni o'z dunyomizga taklif qilishingiz mumkin. Bu 24/7 ishlaydi, shuning uchun siz band bo'lsangiz yoki uydan tashqarida bo'lsangiz ham, do'stlaringiz qurilishini davom ettirishi mumkin. Agar biz fojiali voqealar sodir bo'lganida (zudlik bilan TNT to'pi yaxshi eshitilgandek bo'lsa) avtomatik zaxiralashni o'rnatamiz, shunda siz avvalgi ish kunlarini tiklashingiz mumkin.

1 -qadam: qismlar va asboblar ro'yxati

Qismlar va asboblar ro'yxati
Qismlar va asboblar ro'yxati

Bu loyihani bajarish uchun sizga kerak bo'ladigan qismlar, asboblar va dasturiy ta'minot. Men havola qilish uchun havolalar qo'shdim, lekin bu materiallarning aksariyati bir nechta sotuvchilardan mavjud, shuning uchun ularni siz uchun eng oson / arzon bo'lgan joydan oling.

Qismlar:

  • Raspberry Pi 3 va quvvat manbai

    Bular to'plam sifatida ham mavjud

  • Micro USB to'g'ri burchakli adapter
  • MicroSD karta

    Kamida 8 GB, lekin 16 yoki 32 Gb yuqori sifatli karta tavsiya etiladi

  • Adafruit Neopixel marvarid
  • Uchta qisqa GPIO simlari
  • Kumush yoki kulrang 3D bosma filament (har qanday turdagi)
  • 2,5 mm vintlardek (x4)
  • Pergament qog'oz yoki oq qog'oz

Asboblar:

  • MicroSD kartani o'quvchi
  • Lehimlash uskunalari
  • Kichik tornavida
  • 3D printer

Dasturiy ta'minot:

  • Minecraft (Java PC Edition)
  • Raspbian Lite ISO

    "Ish stoli bilan" versiyasi emas

  • etcher.io
  • Putty yoki shunga o'xshash SSH terminal mijozi
  • Filezilla yoki shunga o'xshash FTP mijozi

2 -qadam: Raspberry Pi -ni o'rnatish va tayyorlash

Raspberry Pi -ni o'rnatish va tayyorlash
Raspberry Pi -ni o'rnatish va tayyorlash
Raspberry Pi -ni o'rnatish va tayyorlash
Raspberry Pi -ni o'rnatish va tayyorlash
Raspberry Pi -ni o'rnatish va tayyorlash
Raspberry Pi -ni o'rnatish va tayyorlash
Raspberry Pi -ni o'rnatish va tayyorlash
Raspberry Pi -ni o'rnatish va tayyorlash

Serverni o'rnatishni boshlashdan oldin, biz Pi -da ba'zi asosiy sozlash va sozlash bosqichlarini bajarishimiz kerak.

1. MicroSD kartasini tayyorlang

Birinchidan, etcher.io yordamida Rasbian operatsion tizimini MicroSD kartamizga qo'yishimiz kerak.

  1. MicroSD kartangizni kartani o'quvchiga, kartani o'quvchini esa shaxsiy kompyuteringizning USB portiga joylashtiring
  2. Etcherni ishga tushiring va Rasbian Lite ISO -ni yuklash uchun Rasmni tanlash tugmasidan foydalaning
  3. O'rnatish drayveri uchun MicroSD kartasini tanlang
  4. Flash -ni bosing!

Jarayon tugagandan so'ng, etcher MicroSD drayverini tizimdan ajratadi, lekin biz yana bitta faylni qo'shishimiz kerak, shuning uchun uni ajratib, qayta ulang. Endi karta "yuklash" deb nomlangan disk sifatida o'qiladi. Yuklash diskiga "ssh" nomli bo'sh faylni nusxa ko'chiring va keyin MicroSD drayverini tizimdan ajratib oling. MicroSD kartasi endi Raspberry Pi -ga o'tishga tayyor.

** Agar siz "ssh" faylini yuklab ololmasangiz, bo'sh matnli fayl nomini o'zgartirish orqali uni o'zingiz qilishingiz oson bo'ladi. ". Txt" kengaytmasini o'chirib tashlaganingizga ishonch hosil qiling. Ishlayotganda, ekran tasviridagi kabi belgi bo'sh bo'ladi. **

2. Pi terminaliga ulaning

Endi Pi operatsion tizimga ega, uni quvvatlantiraylik!

  1. Simli chekilgan kabelni ham, Rasberry Pi quvvat manbaini ham ulang. Pi 3-da Wi-Fi tarmog'i o'rnatilgan bo'lsa-da, bizning serverimiz uchun simli aloqa yanada mustahkam va afzalroqdir.
  2. Keyin biz yo'riqchidan Pi -ning IP -manzilini olishimiz kerak. Bu qadam yo'riqnoma brendiga qarab biroz farq qiladi - men yo'riqnoma boshqaruv paneliga kirish uchun brauzerimga 192.168.1.1 ni kiritaman. Siz DHCP mijozlari ro'yxatini va "raspberrypi" yozuvini qidirasiz. Belgilangan IP -manzilga e'tibor bering, mening misolimda bu 192.168.1.115. Endi IP -manzilni "zaxiralangan" yoki "doimiy" deb belgilash uchun yaxshi imkoniyat, shunda unga boshqa manzil tayinlanmaydi. Agar sizda bu qadamda qiyinchiliklar bo'lsa, tafsilotlar uchun yo'riqnoma hujjatlarini yoki qo'llab -quvvatlash saytini tekshirishni xohlaysiz.
  3. Endi biz Putty -ni ochishimiz mumkin, "Xost nomi" maydoniga Pi -ning IP -manzilini kiriting va "Ochish" -ni bosing.

Endi siz "login sifatida:" yozuvi bilan qora ekranga qarashingiz kerak. Bu sizning Pi -ning terminali va biz serverni sozlash bo'yicha qolgan ishlarni shu erda qilamiz. Esingizda bo'lsin, terminal ekranlari klaviatura uchun mo'ljallangan! Sizning sichqonchangiz bu erda unchalik foydali bo'lmaydi.

3. Raspi-config

Dastlabki sozlashni yakunlash uchun biz standart sozlamalar yordamida tizimga kirishimiz kerak:

Kirish: pi

parol: malina

Endi biz quyidagilarni kiritish orqali Pi -ning standart sozlamalarini o'rnatishimiz mumkin

sudo raspi-config

Biz bir nechta o'zgarishlarni amalga oshirishimiz kerak va men ularni konfiguratsiya ekranida raqamlangan tartibda olib boraman.

  1. Foydalanuvchi parolini o'zgartiring - bu shart! Hamma standart parolni biladi, shuning uchun uni darhol o'zgartiring.
  2. Tarmoq parametrlari

    Xost nomi - bu sukut bo'yicha "raspberrypi", lekin agar xohlasangiz, uni tavsiflovchi qilib o'zgartirishingiz mumkin

  3. -(o'zgarishsiz)-
  4. Mahalliylashtirish imkoniyatlari - agar siz Buyuk Britaniyada bo'lmasangiz, ularni o'z mamlakatingizga o'zgartirishni xohlaysiz. Mening misollarim, bu AQSh.

    1. Mahalliy tilni o'zgartirish - "en_GB" yozuvini yonidagi * belgisi bilan topish uchun pastga o'qidan foydalaning. Buni olib tashlash uchun bo'sh joydan foydalaning * va keyin "en_US. UTF-8" ga o'ting va yana * bilan belgilash uchun bo'sh joydan foydalaning.
    2. Vaqt mintaqasini o'zgartiring - bu bizning vazifalarimiz to'g'ri ishlashi uchun muhimdir
    3. Klaviatura tartibini o'zgartirish - siz buni o'tkazib yuborishingiz mumkin, lekin agar Buyuk Britaniyada qoldirilsa, bir nechta klaviatura ramzlari ko'chiriladi.
  5. Interfeys imkoniyatlari

    1. -(o'zgarishsiz)-
    2. SSH - Pi -ni qayta ishga tushirgandan so'ng Putty -dan foydalanishni davom ettirish uchun buni yoqing.
  6. -(o'zgarishsiz)-
  7. Kengaytirilgan variantlar

    1. Fayl tizimini kengaytiring - bu Pi -ning SD -kartadagi barcha bo'sh joydan foydalanishiga ishonch hosil qiladi
    2. -(o'zgarishsiz)-
    3. Xotirani ajratish - Minecraftda ko'proq xotira bo'shatish uchun buni 16 ga o'zgartiring.

Endi "Finish" -ni tanlang va keyin "Ha" -ni qayta ishga tushiring.

Bu Putty -dagi sessiyangizni to'xtatadi. Qayta ishga tushirishni tugatish uchun bir oz vaqt bering, keyin yana Putty -ni oching va Pi -ning IP -manziliga qayta ulaning. Yangi parolni ishlatishni unutmang!

3 -qadam: Maxsus serverni o'rnating

Server dasturini o'rnatish - eng uzun, lekin ayni paytda eng muhim qadamdir. Biz ko'p vaqtni zerikarli Linux buyruqlariga kiritamiz. Bu sizni qo'rqitishiga yo'l qo'ymang! Agar siz nusxa ko'chirishingiz va joylashtirishingiz mumkin bo'lsa, siz ushbu qismdan o'tishingiz mumkin.

Minecraft serveri juda murakkab va uni Raspberry Pi kabi kompyuterda ishlatish biroz soddalashtirishni talab qiladi. Men Jeyms Chambersning ajoyib darsligidan boshladim, chunki u server ishini maksimal darajada oshirish bo'yicha bir qancha ajoyib maslahatlarga ega. Men quyida uning o'rnatish jarayonini sarhisob qilmoqchiman va men kiritgan ba'zi o'zgarishlar va yangilanishlarni ajratib ko'rsatmoqchiman, lekin batafsilroq ma'lumot olish uchun uning sahifasini o'qishni tavsiya qilaman.

Endi siz standart "pi" va yangi parol yordamida tizimga kirganingizdan so'ng, biz server fayllarini o'rnatish buyruqlarini kiritishni boshlashimiz mumkin.

Muhim - bu buyruqlarning ko'pi uzoq va murakkab bo'lib, terminal oynasiga yozish juda og'riqli bo'ladi. Shunday qilib, qilmang! Bu oynada buyruq matnini ajratib ko'rsatish, uni ctrl-c bilan nusxalash, so'ngra terminal oynasida sichqonchani o'ng tugmasi bilan bosib, matnni joylashtiring. Mana, sichqonchani nimagadir yaxshi!

Ushbu qadamning qolgan qismida siz ushbu kod matn qutilaridagi har bir buyruqdan nusxa ko'chirasiz.

Men yo'lda nima qilayotganimizni qisqacha tushuntirib beraman.

Biz dasturiy ta'minotni to'liq yangilashdan boshlaymiz.

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

Har safar o'rnatishni tasdiqlash so'rovini ko'rsangiz, "y" yozing va qabul qilish va davom etish uchun enter tugmasini bosing.

Minecraft Java -da ishlaydi, lekin bizning "Lite" Rasbian o'rnatmamiz uni o'z ichiga olmagan, shuning uchun buni olaylik.

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

Eslatma ** Java yangi versiyaga yangilanganida, buyruq eskirgan bo'lishi mumkin. Agar siz xato xabari olsangiz, buyruqni oxirgi versiyaga yangilashingiz kerak bo'ladi. Oracle-ning Java-ni yuklash sahifasiga o'ting, "Litsenziya shartnomasini qabul qilish" tugmasini bosing, so'ngra eng so'nggi linux-arm32 faylining havolasini o'ng tugmasini bosing va nusxa ko'chirish havolasini tanlang. Yuqoridagi buyruqdagi matnni http -dan boshlab almashtirish uchun siz yangilangan havolani ishlatishingiz kerak bo'ladi. **

Endi biz yuklagan Java fayllarini o'rnatishimiz mumkin.

sudo mkdir /usr /java

cd /usr /java

Agar siz yuklash havolasini yangi versiya uchun o'zgartirishingiz kerak bo'lsa, keyingi buyruqlardagi versiya raqamini mos kelishi uchun o'zgartirganingizga ishonch hosil qiling.

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

sudo update-alternatives-install/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 ~

Va nihoyat, siz sabrsizlik bilan kutgan asosiy voqea, Minecraft serverini o'rnataylik. Bu Paper deb nomlangan serverning maxsus versiyasi bo'lib, u ish faoliyatini yaxshilash uchun optimallashtirilgan.

mkdir qog'oz

wget

master unzip.zip -d Qog'oz

mv ~/Qog'oz/RaspberryPiMinecraft-master/* ~/Qog'oz/

CD qog'oz

chmod +x start.sh

wget

java -jar -Xms512M -Xmx800M paperclip.jar

Oxirgi buyruq serverni birinchi marta ishga tushiradi va bir necha daqiqadan so'ng siz EULAga rozilik bildirishingiz kerak bo'lgan xatni olasiz. EULA -ni quyidagi buyruq bilan oching:

nano eula.txt

"Eula = false" degan qatorni "eula = rost" ga o'zgartiring. O'zgarishlarni saqlang ctrl-x, keyin Y, keyin kiriting.

Eslatma ** Jeyms Chambers o'z ko'rsatmasida SD -kartangizni overclock qilish usulini eslatib o'tadi. Men bu qadamni shaxsan sinab ko'rmadim, chunki u yuqori sifatli kartani talab qiladi va menda mavjud bo'lgan karta alohida narsa emas. O'ylaymanki, overclock ish faoliyatini yanada yaxshilaydi, lekin overclock qilmasdan ham server etarlicha yaxshi ishlaydi, menda o'ynayotgan bolalardan hech qanday shikoyat yo'q. **

Keling, Server xususiyatlarini tezda ko'rib chiqaylik va bir nechta o'zgartirishlar kiritamiz.

nano server.xususiyatlari

Bu erda server nomini va MOTD -ni shaxsiylashtirish, o'yin rejimini o'zgartirish yoki PvP yoki buyruq bloklarini yoqish kabi o'z serveringizni o'zgartirish mumkin bo'lgan narsalarning uzun ro'yxati mavjud. Siz hozir xohlagan narsangizni o'zgartirishingiz mumkin, yoki keyinroq o'zgartirish uchun bu faylni ochishingiz mumkin, lekin biz darhol ikkita o'zgartirish kiritamiz.

Maksimal o'yinchilar = 8

server-port = 25565

Sakkizta o'yinchi men tavsiya qiladigan eng yuqori ko'rsatkichdir, har qanday balandlikda va siz, ehtimol, Pi ishlashini optimallashtirish uchun optimallashtirilgan bo'lsa ham, server ishining sustlashib ketganini ko'rasiz.

Server portini o'zgartirish kerak, chunki standart "malina" paroliga o'xshab, hamma 25565 standart portini biladi. Hatto 26565 ga ozgina o'zgartirish serveringizni xavfsiz saqlashga yordam beradi. Pi raqamini IP manzilini saqlagan joyingiz yonidagi port raqamini yozing. Sizga ikkalasi ham keyinroq kerak bo'ladi.

Sozlamalarni yangilashni tugatgandan so'ng, o'zgarishlarni saqlang ctrl-x, keyin Y tugmasini bosing va kiriting.

Sizning serveringizni tayyorlashning navbatdagi bosqichi, ishga tushgandan so'ng, eng ko'p vaqtni oladi, ehtimol taxminan bir soat. Bu buyruqlar sizning dunyongizni oldindan yaratadi, ya'ni siz va do'stlaringiz o'rganayotgan paytda server bu ishlarning barchasini keyinroq bajarishi shart emas.

cd ~/Qog'oz/plaginlar

wget --content -disposition -E

sudo apt-get o'rnatish ekrani

CD qog'oz

./start.sh

Hech narsa bo'lmaganga o'xshaydi, lekin sizning serveringiz endi ishga tushdi! Server bilan ishlash uchun biz ushbu buyruqdan foydalanishimiz kerak

minecraft -ekran

Va keyin biz dunyoni oldindan yaratamiz:

wb world 1000 ta tuxum qo'yadi

wb dunyo to'ldirish 1000

wb to'ldirishni tasdiqlang

Bu uzoq vaqt talab qiladigan qism. Biroz gazak oling va keyinroq tekshiring! Jarayon tugagach, serverni juda oddiy buyruq bilan o'chiring

STOP

Bu serverni saqlaydi va yopadi va sizni Raspberry Pi terminaliga qaytaradi.

Bizning oxirgi vazifamiz - Raspberry Pi ulangan yoki qayta ishga tushirilganda serverni avtomatik ishga tushirish. Buni oddiy skript yaratish orqali qilishimiz mumkin.

CD ~

nano startup.sh

Biz ilgari bir nechta fayllarni tahrir qilish uchun nanodan foydalanganmiz, lekin bu safar biz noldan yaratmoqdamiz, shuning uchun oyna bo'sh qoladi. Ushbu ikki qatorni faylga nusxalash:

cd/home/pi/qog'oz

ekran -dmS minecraft java -server -Dfile.encoding = UTF -8 -Xms512M -Xmx800M -XX: NewSize = 300M -XX: MaxNewSize = 500M -XX:+CMSIncrementalMode -XX:+UseConcMarkSweepGC -XX:+ CMSIncrementalPacing -XX: ParallelGCThreads = 4 -XX:+AgressivOts -XX:+AlwaysPreTouch -XX:+DisableExplicitGC -XX: SurvivorRatio = 16 -XX: TargetSurvivorRatio = 90 -jar /home/pi/Paper/pap

Keyin yangi skriptni ctrl-x, keyin Y tugmachasini bosib saqlang.

chmod +x startup.sh

chmod +x /etc/rc.local

sudo nano /etc/rc.local

Rc.local faylining oxirgi satrida "chiqish 0" yozilgan. To'g'ridan -to'g'ri ushbu satr ustida biz buni qo'shamiz:

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

Va biz yana fayl o'zgarishlarini saqlaymiz ctrl-x, keyin Y, keyin kiriting.

sudo qayta yuklash

Sizga aloqa yopilganligi to'g'risida xabar keladi va siz Putty oynasini yopishingiz mumkin.

Bo'ldi shu! Siz zerikarli vaziyatni engib o'tdingiz! Endi biz serverimizni sinab ko'rishga tayyormiz!

4 -qadam: Serveringizni sinab ko'ring va do'stlaringizni taklif qiling

Serveringizni sinab ko'ring va do'stlaringizni taklif qiling
Serveringizni sinab ko'ring va do'stlaringizni taklif qiling
Serveringizni sinab ko'ring va do'stlaringizni taklif qiling
Serveringizni sinab ko'ring va do'stlaringizni taklif qiling
Serveringizni sinab ko'ring va do'stlaringizni taklif qiling
Serveringizni sinab ko'ring va do'stlaringizni taklif qiling
Serveringizni sinab ko'ring va do'stlaringizni taklif qiling
Serveringizni sinab ko'ring va do'stlaringizni taklif qiling

Keyinchalik, biz server ishlayotganini tekshiramiz va do'stlarimiz unga qo'shilishlari mumkin.

Kompyuteringizda Minecraft ishga tushirgichini oching va Play tugmasini bosing. Qog'oz serveriga mos keladigan so'nggi versiya ishlatilganligiga ishonch hosil qiling.

Asosiy ekranda "Ko'p o'yinchi" -ni, so'ng "Server qo'shish" -ni tanlang. Serverlar ro'yxatiga kerakli ismni kiriting va server manzili uchun sizning IP -manzilingizni va port raqamingizni kiriting. Mening misolimiz uchun biz 192.168.1.115:26565 dan foydalanamiz. IP -manzil va port raqami o'rtasida nuqta qo'yilganligiga va bo'sh joy yo'qligiga ishonch hosil qiling. Bajarildi -ni bosing va serveringizda o'ynashni bosing. Bir necha daqiqadan so'ng siz o'zingizni yangi dunyoga tushib qolganingizni ko'rasiz!

Kutib turing, qaytib keling! Barchasini qurishni o'z -o'zidan boshlamang, keling, bir nechta do'stlarni taklif qilaylik! Afsuski, ular siz qilgan IP -manzilni ishlata olmaydi. Shunday qilib, bu ishni bajarish uchun siz avval yo'riqchingizga uyingizdan tashqarida bo'lgan odamlar Pi -ga ulanishi to'g'ri ekanligini aytishingiz kerak. Bu Port Forwarding deb nomlanadi va aniq jarayon yo'riqchingizga qarab biroz farq qiladi. Men TP Link tovar yo'riqchisida qanday ko'rinishga ega bo'lgan skrinshotni biriktirdim, lekin qo'shimcha ma'lumot uchun yo'riqnoma qo'llab -quvvatlash saytini tekshirishingiz kerak bo'lishi mumkin.

Portni yo'naltirish sozlamalarida serveringiz uchun tanlagan port raqamini, so'ngra Raspberry Pi uchun IP -manzilni kiriting. Sizning yo'riqnoma endi sizning do'stlaringiz port raqamiga ulanishga harakat qilganda, ularni Pi ga yo'naltirish kerakligini biladi.

Keyin biz Xost nomi deb nomlangan noyob manzilingizni yaratish uchun No-IP kabi bepul xizmatdan foydalanishimiz kerak. Xost nomining IP -manzilini yangilab turish uchun yo'riqnoma yoki shaxsiy kompyuterni ham o'rnatasiz.

O'rnatish bo'yicha ko'rsatmalarni hozir bajaring.

IP-hisobini o'rnatishni tugatganingizda, do'stlaringiz Minecraft-ning ko'p o'yinchi ekranining Server manzili bo'limiga yangi Xost nomi va port raqamini kiritib, serveringizga ulanishi mumkin bo'ladi. Masalan, hostname.ddns.net:26565.

5 -qadam: Dunyoni qutqaring! (Avtomatik zaxiralash bilan)

Dunyoni qutqar! (Avtomatik zaxiralash bilan)
Dunyoni qutqar! (Avtomatik zaxiralash bilan)

Bu qadam ixtiyoriy, lekin bu potentsial qutqaruvchi. Sizning dunyomiz buzilgan MicroSD kartasi, vaqti -vaqti bilan buzilish yoki qayg'u yoki shunchaki bezovta qiluvchi sudraluvchilar kabi jiddiy xavflarga duch keladi. Sizning barcha mashaqqatli ishlaringizni himoya qilish uchun biz har kuni server avtomatik ravishda sizning dunyo faylingizni saqlaydi. MicroSD kartangizni to'ldirishiga yo'l qo'ymaslik uchun, biz bir haftadan ortiq bo'lgan barcha zaxira nusxalarini o'chirib tashlaymiz. Shundan so'ng, ularni xavfsizroq saqlash uchun ularni shaxsiy kompyuteringizga yoki boshqa zaxira diskka osongina ko'chirishingiz mumkin.

Biz Putty -dan foydalanib, yangi skriptni yaratish uchun Pi -ga qayta ulanishni boshlaymiz.

nano kundalik zaxira.sh

Quyidagi buyruqlarni skriptga nusxalash:

# Minecraft serverini to'xtating

ekran -x minecraft -X narsalar to'xtaydi^M uyqu 5 # Zaxiraga qog'oz katalogini nusxalash/PaperYYDDMM cp -a Qog'oz/. zaxira/Qog'oz $ (sana +%F) # 7 kundan eski zaxiralarni o'chirib tashlang zaxirani toping/* -mindepth 0 -maxdepth 0 -type d -ctime +7 -exec rm -rf {};

Va keyin, men bilan ayting - ctrl -x, Y tugmalarini bosib, faylingizni saqlang.

Endi biz har kecha crontab yordamida zaxira skriptini ishga tushirish uchun takrorlanadigan vazifani yaratamiz.

crontab -e

Bu buyruqni birinchi marta ishlatganingizda sizga tahrirlovchilar tanlovi beriladi, Nano uchun 2 -raqamni tanlang.

Bu vazifalarni rejalashtirish uchun maxsus faylni ochadi. Faylning pastki qismiga quyidagi qatorlarni qo'shing:

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

15 0 * * * sudo qayta yuklash

Birinchi satrda Pi har kuni kechqurun soat 12:05 da zaxira skriptini ishga tushirishni aytadi. Ikkinchi qatorda Pi o'n daqiqadan so'ng qayta ishga tushishi aytiladi. Agar siz zaxiralash va qayta yuklash uchun boshqa vaqtni xohlasangiz, bu satrlarni sizning xohishingizga ko'ra o'zgartirishingiz mumkin. Shuni esda tutingki, birinchi raqam - bu daqiqa, ikkinchi raqam - 24 soatlik format. Uch yulduzcha bu skriptning har kuni ishlashiga ishonch hosil qiladi.

Tizimingiz bir muncha vaqt ishlagandan so'ng, siz zaxiralarni Pi MicroSD kartasidan boshqa joyga saqlashni odat qilishingiz mumkin. Filezilla yordamida serveringizga ulanish orqali bu vazifani bajarish juda oson. Faqat zaxira papkasini Filezilla -ning o'ng tomoniga sudrab olib, kompyuteringizga qo'ying. U barcha fayllarni nusxalashdan so'ng, ularni xohlagancha saqlashingiz mumkin!

Agar fojia yuz bersa va siz saqlangan fayllardan biriga qaytishingiz kerak bo'lsa, bu tez va sodda protsedura. Avval serverni to'xtatganingizga ishonch hosil qiling:

minecraft -ekran

STOP

Keyin Filezilla -dan foydalanib, Qog'oz katalogini o'chirib tashlang va saqlangan kataloglardan birini Pi -ga qaytarib o'zgartiring. Sana katalog nomidan o'chirilganligiga ishonch hosil qiling, shunda u yana "Qog'oz" deb nomlanadi. Keyin serverni qayta ishga tushirishingiz mumkin

./startup.sh

Va xuddi shunday, siz qurilish ishiga qaytishingiz mumkin!

6 -qadam: LEDlarni ulang

LEDlarni ulang
LEDlarni ulang
LEDlarni ulang
LEDlarni ulang
LEDlarni ulang
LEDlarni ulang

Chiroqlarni qo'shish vaqti keldi! Bu erda sizning serveringiz monitoringiz orqasidagi chang yig'uvchiga aylana boshlaydi. Bu qadam sizga Raspberry Pi -ga Neopixel marvaridini qanday lehimlash va biriktirishni ko'rsatib beradi, so'ngra LEDlarni ishlatish uchun zarur bo'lgan dasturni o'rnatadi. Ko'p o'tmay, siz hech kim onlaynda siz bilan o'ynashni kutadimi, deb o'ylamaysiz, chunki sizning serveringiz sizga bir qarashda aytadi!

Adafruit Neopixel - bu ajoyib LED. Ular RGB, ya'ni ular xohlagan rangda yonishi mumkin. Ular manzilli, ya'ni siz xohlagan vaqtda rangini o'zgartirish uchun dasturiy buyruqlardan foydalanishingiz mumkin. Neopixellarning Raspberry Pi bilan qanday ishlashi haqida ko'proq ma'lumot olish uchun rasmiy Adafruit qo'llanmasiga qarang.

Marvaridda 7 ta LED mavjud, ular bizga yorqin rang beradi. Shuningdek, beshta lehim bilan aloqa qilish punktlari mavjud, ammo biz faqat uchtasini ishlatamiz. Keyinchalik Pi -ga ulanganda ularni aralashtirib yubormaslik uchun uch xil rangli simlardan foydalanishni qat'iy tavsiya qilaman. Mening misolimda men qizil, qora va jigarrang ranglardan foydalanardim.

Ushbu qadamni boshlashdan oldin siz Raspberry Pi -ni to'liq o'chirishni xohlaysiz. Ushbu buyruqlarni kiriting va keyin Pi quvvat manbaini uzing.

minecraft -ekran

STOP

sudo o'chirish -h hozir

Uchta ayol GPIO simini kesib oling, shunda ular lehim paytida ishlash uchun juda ko'p simga ega. Siz har doim men kabi ortiqcha narsalarni yig'ib olishingiz mumkin. Simlarni Jewel -dagi kontaktlarga ehtiyotkorlik bilan lehimlang. Keyin ayol konnektorlarini Raspberry Pi GPIO pinlariga ulang:

PWR 1 -pin = 3.3V ga ulanadi

GND 6 -gachasi pin = Ground

12 -pin uchun IN = GPIO18

Marvarid joyida bo'lgandan so'ng, siz Pi dasturini qayta ulashingiz va Putty -dan foydalanib LED -dasturiy ta'minotni quyidagi buyruqlar bilan ulashingiz va o'rnatishingiz mumkin. O'rnatishni davom ettirish uchun sizdan Y kirishini so'rashi mumkin bo'lgan joylarni ko'ring.

sudo apt-get install build-essential python-dev git

sudo apt-get scons o'rnatish

sudo apt-get install swig

git klon

CD rpi_ws281x

scons

Muhim ** Keyingi bosqichda biz neopixel kutubxonasiga ozgina qo'shimcha kiritamiz. Bu meni bir necha kun yong'oqqa solgan xotira xatosidan qochish uchun kerak. Bu holda, LEDlar bir necha soat ishlaydi va keyin to'g'ri yangilanishni to'xtatadi. **

cd python

python setup.py tuzilishi

sudo nano build/lib.linux-armv7l-2.7/neopixel.py

"Adafruit_NeoPixel (object) class:" sinfidagi satrni o'tish uchun pastga o'qni ishlating. Siz yaqinda ko'k matnli def _cleanup (o'zini) yozilgan bo'limni topasiz. Siz quyidagi satrdan nusxa ko'chirasiz. bo'lim, xuddi yuqoridagi skrinshotda ko'rsatilgandek.

ws.2811_fini (self._leds)

Va yana bir bor o'zgarishlarni saqlashimiz kerak ctrl-x, Y, enter.

CD ~

cd rpi_ws281x/python

sudo python setup.py ni o'rnating

Keyin biz test fayliga bizda mavjud bo'lgan LEDlar sonini aytishimiz kerak, keyin biz ularni yoqishimiz mumkin!

cd misollar

sudo nano strandtest.py

LED_COUNT = 16 degan qatorni toping va uni LED_COUNT = 7 ga o'zgartiring, so'ngra saqlash uchun ctrl-x, Y ni kiriting.

sudo python strandtest.py

Agar hamma narsa to'g'ri ketayotgan bo'lsa, siz kamalakning miltillashi bilan ko'zingizni ko'r qilib qo'ygansiz. Qayta ko'rsangiz, chiroqlarni o'chirish uchun ctrl-c tugmalarini bosing. LEDlar o'chmaydi, lekin ular miltillashni to'xtatadilar va bu hozircha etarli.

7 -qadam: LEDlarni server holatini tekshirish uchun dasturlashtiring

LED -larni server holatini tekshirish uchun dasturlashtiring
LED -larni server holatini tekshirish uchun dasturlashtiring

Bizning LEDlar o'rnatilgan va tayyor bo'lganda, ularni serverga javob berish vaqti keldi. Xususan, biz ularni serverdagi hozirgi o'yinchilar sonini ko'rsatib beramiz:

O'yinchilar = ma'dan

  • 0 = Redstone
  • 1-2 = temir
  • 3-4 = Oltin
  • 5-6 = zumrad
  • 7-8 = Olmos

Agar server ishlamasa, Oreblock ko'mir bo'ladi (LEDlar o'chadi). Qo'shimcha bonus sifatida, agar holat tekshiruvi Internetga ulanishni topa olmasa, LEDlar sariq rangda yonib -o'chib turadi!

Serverdan o'yinchi sonini olish uchun biz Mojang o'yinlarini ishlab chiqaruvchilardan biri Natan Adamsdan mcstatus o'rnatamiz.

sudo apt-get install python-pip

sudo pip o'rnatish mcstatus

Keyin biz quyida joylashgan ikkita python skriptini mcled.py va ledoff.py fayllarini Filezilla yordamida serverimizga nusxalashimiz kerak. Skrinshotda ko'rsatilgandek, ikkita skriptni o'ngdagi qutiga sudrab tashlab yuboring.

Davom eting va hozirda ledoff.py -ni sinab ko'ring, shunda biz oldingi bosqichda yonib turgan LEDlarni o'chirib qo'yishimiz mumkin.

sudo python ledoff.py

Skriptlarni qo'lda ishlatganda sizga "Segmentatsiya xatosi" degan xabar keladi. Bu Neopixel.py kutubxonasida hal qilinmagan muammo, biz qilayotgan ishlarga hech qanday ta'sir ko'rsatmaydi.

Agar siz ushbu skriptlar qanday ishlashini bilmoqchi bo'lsangiz, ularni kompyuterdagi istalgan matn muharriri yoki terminal ekranidagi nano yordamida ochishingiz mumkin. Ishga to'sqinlik qiladigan o'zgarishlarni tasodifan saqlamaslik uchun ehtiyot bo'ling!

Eslatma ** mcled.py mening misolimdan 26565 portidan foydalanayotganingizni taxmin qiladi. Agar siz boshqa portdan foydalanayotgan bo'lsangiz, skriptni quyidagi bosqichlarga mos keladigan tarzda o'zgartirishingiz kerak **

sudo nano mcled.py

"# Server pleyerlari sonini oling" deb yozilgan qizil chiziqni toping va uning ostida "localhost" deb yozilgan yashil matnni va uning yonidagi port raqamini ko'rasiz. Port raqamini o'zingizga mos qilib o'zgartiring va har doimgidek o'zgarishlarni saqlang ctrl-x, Y, kiriting.

Server holati to'g'risida doimiy yangilanishlarni olish uchun biz Pi -ga mcled.py skriptini har daqiqada ishga tushirishni aytamiz, bu esa crontab -da yana ikkita qatorni o'rnatishni bildiradi.

crontab -e

Siz zaxira nusxalarini va qayta yuklashni rejalashtirish uchun ilgari qo'shgan ikkita qatorni ko'rasiz. Endi biz yana ikkita qo'shamiz:

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

0 21 * * * sudo python ledoff.py

Birinchi satrda Pi har kuni soat 6 dan 20:59 gacha mcled.py ishlashini aytadi. Ikkinchi qator Pi ga LEDlarni soat 21:00 da o'chirishni aytadi. Bu shaxsiy xohish, chunki o'sha paytga kelib, mening bolalarim Minecraft -da o'ynashmaydi, garchi server ishlayotgan bo'lsa ham. OreServer bizda televizorning yuqori qismida ko'rsatiladi va yorqin yorug'lik kechqurun bezovta qiladi. Siz, albatta, svetodiodlarning to'xtovsiz ishlashini yoki keyinchalik o'chirilishini yoki o'zingizning maqsadingizga mos keladigan bu ikki qatorni o'zgartirishingiz mumkin.

O'zgarishlar saqlanganidan ko'p o'tmay (ctrl-x, Y, hali kirasizmi?) Skript chaqiriladi va sizning marvaridingiz yana yonadi. Katta ehtimol bilan qizil rangda, server ishlayotganini, lekin ishlatilmayotganligini bildiradi. Biroz vaqt ajrating, Minecraft -ni ishga tushiring va oldingi sinovimizdagidek serverga qo'shiling. Siz qo'shilgandan ko'p o'tmay, svetodiodlar oq rangga, keyin esa uzilganda qizil rangga qaytishi kerak.

8 -qadam: Rud qutisini tayyorlang

Rud ishini qiling
Rud ishini qiling
Rud ishini qiling
Rud ishini qiling
Rud ishini qiling
Rud ishini qiling
Rud ishini qiling
Rud ishini qiling

Bularning barchasini birlashtiradigan oxirgi nuqta - bu Raspberry Pi uchun javon. Rud ishini bajarish uchun men mahalliy ishlab chiqaruvchi RiverCityLabs -da Lulzbot TAZ6 3D printeridan foydalandim. Men chop etiladigan. STL fayllarimni pastki va yuqorisiga berdim. Agar sizda o'zingizning 3D -printeringiz bo'lmasa, ishlab chiqaruvchilar hamjamiyati uchun o'z hududingizni tekshiring, ular ajoyib! Yoki sizda hamma uchun printerlar bo'lgan mahalliy kutubxona yoki maktab bo'lishi mumkin. Dizaynni chop etish va jo'natish mumkin bo'lgan bir nechta onlayn 3D bosib chiqarish xizmatlari ham mavjud. Yoki siz ijodkorlik bilan shug'ullanishingiz mumkin! Ishni kartondan yoki kulrang Lego qozig'idan yoki qo'lingizda bo'lgan boshqa narsalarni yasashga hech narsa to'sqinlik qilmaydi.

3D printer fayllarini o'rnatishda ba'zi muhim eslatmalar:

  • O'rnatish teshiklari Pi bilan mos kelishiga ishonch hosil qilish uchun faylni o'lchamsiz o'zgartirmasdan chop eting.
  • Ochiq uchi yuqoriga qarab turishi uchun tepani teskari aylantiring.
  • Qo'llab -quvvatlash sozlamalarini yoqganingizga ishonch hosil qiling, shunda devorlarning ustki qismi buzilmaydi.

Chop etish tugagandan so'ng, siz Pi -ni taglikka 2,5 mm vintlar bilan biriktirishingiz mumkin. Haqiqiy mahsulotga havola topa olmayapman, lekin men ularni Menardsdagi 2 ta paketdan topdim, bu Amazondan 100 qutiga buyurtma berishdan ko'ra yaxshiroq edi.

Yuqoridan barcha qo'llab -quvvatlovchi materiallarni olib tashlang va ichkariga sig'adigan pergament qog'ozini yoki oq qog'ozli qog'ozni kesib oling. Bu diodli chiroqlarni tarqatadi, bu esa porloq effektni teshiklarni ochiq qoldirishdan million baravar yaxshiroq qiladi.

Quvvat portiga to'g'ri burchakli MicroUSB adapterini ulang, shunda kabel korpusning orqa tomonida chekilgan port yonida chiqadi.

Endi siz quvvat va chekilgan simlarni qayta ulashingiz, tepani joyiga qo'yishingiz va zavqlanishingiz mumkin!

9 -qadam: Xulosa, qo'shimcha fikrlar va rahmat

Minecraft Challenge 2018 musobaqasida bosh mukofot

Tavsiya: