Előfeltételek
1. lépés: A Minetest Stable repo hozzáadása és a kiszolgálószoftver telepítése
2. lépés: Felhasználó létrehozása, portok megnyitása és a szerver tesztelése
3. lépés: A Minetest szerver konfigurálása
4. lépés: A kiszolgáló futtatása rendszerindításkor
Következtetés
A Minetest egy ingyenes és nyílt forráskódú alternatíva a népszerű Minecraft játékhoz. A szerver beállítása és futtatása rendkívül egyszerű.
Előfeltételek
- 1 GB+ VPS vagy dedikált példány, amelyen az Ubuntu 17.04 fut.
- wget (telepítve:
apt install wget).
- Szövegszerkesztő.
1. lépés: A Minetest Stable repo hozzáadása és a kiszolgálószoftver telepítése
Mivel az Ubuntu általában lemarad a Minetest csomagjaival, helyette a stabil PPA-t fogja használni. Ezt a következő parancsokkal lehet hozzáadni.
# add-apt-repository ppa:minetestdevs/stable
# apt update
Ezt követően telepítheti a szervert.
# apt install minetest
2. lépés: Felhasználó létrehozása, portok megnyitása és a szerver tesztelése
Biztonsági okokból mindig célszerű a szolgáltatásokat a saját felhasználójukon belül futtatni, ahogy az ábrán látható.
# useradd -mU minetest
Ezzel létrehozza a minetestfelhasználót saját csoporttal és egy saját könyvtárral a szerver számára.
A tesztelés előtt meg kell nyitnia egy portot 30000az Ubuntu alapértelmezett tűzfalán, különben nem tud csatlakozni.
# ufw allow 30000
Itt az ideje, hogy tesztelje a szervert, és megnézze, működik-e.
# su minetest
$ minetest --server
Ha minden jól ment, a következő kimenet fogadja:
WARNING[Main]: BanManager: creating /home/minetest/.minetest/worlds/world/ipban.txt
WARNING[Main]: NodeDefManager: Ignoring CONTENT_IGNORE redefinition
WARNING[Main]: /!\ You are using old player file backend. This backend is deprecated and will be removed in next release /!\
WARNING[Main]: Switching to SQLite3 or PostgreSQL is advised, please read http://wiki.minetest.net/Database_backends.
ACTION[Main]: .__ __ __
ACTION[Main]: _____ |__| ____ _____/ |_ ____ _______/ |_
ACTION[Main]: / \| |/ \_/ __ \ __\/ __ \ / ___/\ __\
ACTION[Main]: | Y Y \ | | \ ___/| | \ ___/ \___ \ | |
ACTION[Main]: |__|_| /__|___| /\___ >__| \___ >____ > |__|
ACTION[Main]: \/ \/ \/ \/ \/
ACTION[Main]: World at [/home/minetest/.minetest/worlds/world]
ACTION[Main]: Server for gameid="minetest" listening on 0.0.0.0:30000.
Ha megkapja a fenti figyelmeztetést a lejátszó háttérrendszerével kapcsolatban, ne aggódjon túl sokat, mert a következő lépésben ez megoldódik.
Csatlakozzon a szerverhez a kliensével, és ellenőrizze, hogy minden működik-e. A szervert bármikor leállíthatja, ha megnyomja Ctrl+Ca billentyűzeten belül a shellben.
3. lépés: A Minetest szerver konfigurálása
Először is le kell töltenie a példa minetest.confkonfigurációs fájlt.
$ cd ~/.minetest
$ wget https://raw.githubusercontent.com/minetest/minetest/master/minetest.conf.example
$ mv minetest.conf.example minetest.conf
Ebben a fájlban a lehetséges beállítások széles listája található, amelyeket módosíthat és engedélyezhet (a sorok megjegyzés nélkül), azonban jelenleg néhány fontos beállítást be kell állítania.
A szerver neve és leírása (például):
server_name = Minetest server
server_description = Welcome to my Minetest Server
A szerver IP-címe és kívánt portja (például):
bind_address = 203.0.113.1
port = 30000
Ha az alapértelmezetttől eltérő portot állít be, 30000feltétlenül frissítse a tűzfalszabályokat.
#ufw delete allow 30000
#ufw allow <port>
Egy másik fontos lehetőség a name. Aki a megadott értékkel csatlakozik a Minetest szerverhez, rendszergazdai jogosultságokat kap. Állítsa be ezt a kívánt felhasználónévre, majd később állítson be jelszót a fiókjához.
Valószínűleg emlékszel a korábbi figyelmeztetésre a lejátszó háttérprogramjával kapcsolatban, ezért az SQLite3-ra való váltás kötelező, mivel a régi háttérrendszer elavult, és egy későbbi kiadásban eltávolítják, ha még nem tette meg. Ha nem kapta meg ezt az üzenetet, amikor tesztelte a szervert a 2. lépésben, akkor közvetlenül a 4. lépésre léphet.
$ minetest --server --migrate-players sqlite3 --world ~/.minetest/worlds/world
Ezt követően a következő üzenethez hasonlót kell látnia.
ACTION[Main]: Successfully migrated 1 players
ACTION[Main]: world.mt updated
4. lépés: A kiszolgáló futtatása rendszerindításkor
A kiszolgáló rendszerindításkor történő futtatásához szükség van egy systemd service fájlra. Szerencsére ezek létrehozása meglehetősen egyszerű.
Lépjen vissza a gyökérhéjba, és adja hozzá a következőket /etc/systemd/system/minetest.service
[Unit]
Description=Minetest Server
After=network.target
[Service]
Type=simple
User=minetest
Group=minetest
WorkingDirectory=/home/minetest
ExecStart=/usr/bin/minetest --server
Restart=on-abort
[Install]
WantedBy=multi-user.target
Mostantól a Minetest szerver elindítható systemctl(és automatikusan megteszi újraindítás után, vagy ha a Minetest szerver összeomlik)
# systemctl enable minetest.service
# systemctl start minetest.service
Hasonlóképpen ellenőrizheti az állapotot, vagy leállíthatja/újraindíthatja a Minetest szervert a "start" kifejezés lecserélésével a fenti parancsban.
Következtetés
A Minetest szervernek aktívnak és használhatónak kell lennie. Ha bármilyen problémája van a csatlakozással, ellenőrizze, hogy a port nyitva van-e, és az IP-cím megfelelően van-e megadva a minetest.conf. A játékosok engedélyeinek kezelésével és a különféle szerverparancsokkal kapcsolatos információk a Minetest wikiben találhatók .