Minetest adalah alternatif sumber percuma dan terbuka untuk permainan popular Minecraft. Pelayan sangat senang disediakan dan dijalankan.
Prasyarat
- Contoh 1GB + VPS atau Dedicated yang menjalankan Ubuntu 17.04.
- wget (dipasang dengan
apt install wget
).
- Penyunting teks.
Langkah 1: Menambah repo Minetest Stable dan memasang perisian pelayan
Oleh kerana Ubuntu cenderung ketinggalan dengan pakej untuk Minetest, anda akan menggunakan PPA yang stabil. Ini boleh ditambah dengan perintah berikut.
# add-apt-repository ppa:minetestdevs/stable
# apt update
Selepas ini, anda boleh memasang pelayan.
# apt install minetest
Langkah 2: Membuat pengguna, membuka port, dan menguji pelayan
Atas sebab keselamatan, adalah idea yang baik untuk menjalankan perkhidmatan dalam pengguna mereka sendiri seperti yang ditunjukkan.
# useradd -mU minetest
Ini akan menjadikan minetest
pengguna anda dengan kumpulannya sendiri dan dengan direktori utama untuk dijalankan oleh pelayan.
Sebelum menguji, anda mesti membuka port 30000
pada firewall lalai Ubuntu jika tidak, anda tidak akan dapat menyambung.
# ufw allow 30000
Sekarang adalah masa yang tepat untuk menguji pelayan dan melihat apakah ia berjalan.
# su minetest
$ minetest --server
Sekiranya semuanya berjalan lancar, anda akan disambut dengan output berikut:
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.
Sekiranya anda menerima amaran di atas mengenai backend pemain, jangan terlalu risau kerana ini akan diperbaiki pada langkah seterusnya.
Sambungkan ke pelayan anda dengan pelanggan anda untuk melihat apakah semuanya berfungsi. Anda boleh menghentikan pelayan pada bila-bila masa dengan menekan Ctrl+C
papan kekunci anda di dalam cengkerang.
Langkah 3: Mengkonfigurasi pelayan Minetest
Pertama, anda mahu memuat turun contoh minetest.conf
fail konfigurasi.
$ cd ~/.minetest
$ wget https://raw.githubusercontent.com/minetest/minetest/master/minetest.conf.example
$ mv minetest.conf.example minetest.conf
Fail ini mempunyai senarai kemungkinan tetapan yang luas untuk anda ubah dan aktifkan (dengan membebaskan baris) namun buat masa ini terdapat beberapa yang penting yang perlu anda tetapkan.
Nama dan perihalan pelayan anda (contohnya):
server_name = Minetest server
server_description = Welcome to my Minetest Server
Alamat IP dan port yang diinginkan pelayan anda (contohnya):
bind_address = 203.0.113.1
port = 30000
Sekiranya anda menetapkan port yang berbeza daripada yang default, 30000
pastikan anda mengemas kini peraturan firewall anda.
#ufw delete allow 30000
#ufw allow <port>
Pilihan penting lain adalah name
. Sesiapa yang menyambung ke pelayan Minetest dengan nilai yang ditentukan akan diberi hak pentadbir. Tetapkan ini ke nama pengguna yang anda mahukan dan tetapkan kata laluan untuk akaun anda kemudian.
Anda mungkin akan mengingatkan amaran mengenai backend pemain lebih awal jadi beralih ke SQLite3 adalah suatu keharusan kerana backend lama sudah tidak digunakan lagi dan akan dikeluarkan dalam rilis kemudian, jika belum ada. Sekiranya anda tidak menerima mesej ini semasa anda menguji pelayan pada langkah 2 maka anda boleh terus ke langkah 4.
$ minetest --server --migrate-players sqlite3 --world ~/.minetest/worlds/world
Selepas itu anda akan melihat sesuatu seperti mesej berikut.
ACTION[Main]: Successfully migrated 1 players
ACTION[Main]: world.mt updated
Langkah 4: Menjalankan pelayan semasa boot
Untuk menjalankan pelayan semasa boot, fail perkhidmatan systemd diperlukan. Syukurlah, ini cukup mudah untuk dibuat.
Keluar kembali ke shell root anda dan tambahkan yang berikut ke /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
Mulai sekarang pelayan Minetest dapat dimulakan dengan systemctl
(dan akan melakukannya secara automatik setelah reboot atau jika pelayan Minetest mogok)
# systemctl enable minetest.service
# systemctl start minetest.service
Anda juga boleh menyemak statusnya atau menghentikan / memulakan semula pelayan Minetest dengan menggantikan "start" dalam arahan di atas.
Kesimpulannya
Pelayan Minetest anda harus aktif dan boleh digunakan. Sekiranya anda mempunyai masalah menyambung, pastikan port anda terbuka dan alamat IP dinyatakan dengan betul di minetest.conf
. Maklumat mengenai pengurusan kebenaran pemain dan pelbagai arahan pelayan boleh didapati di wiki Minetest .