یہ ہمارے ایک گیم سرور کے لیے VPS صفحے کا ہاتھوں-پر ساتھی ہے۔ وہ اس بارے میں ہے کہ کون سا پلان فٹ ہوتا ہے؛ یہ سرور کو دراصل کھڑا کرنے کے بارے میں ہے — Paper، ایک مناسب systemd سروس، وہ config جو آپ کو RAM بچاتی ہے، firewall، اور backups۔ آخر تک آپ کے پاس ایک Minecraft سرور ہوگا جو ایک کریش سے بچتا، ایک ری بوٹ سے بچتا، اور خاموشی سے آپ کا پورا باکس نہیں کھاتا۔
شروع سے پہلے ایک ایماندار نوٹ: use-case صفحے کی CPU اور RAM حدود اب بھی لاگو ہیں۔ ایک Small یا Medium پلان پر Paper ایک دوست-گروپ کے لیے بہترین ہے۔ ایک بڑی کمیونٹی کے لیے ایک 150-mod pack وہ نہیں جس کے لیے یہ پلانز ہیں، اور کوئی مقدار کی config اسے ٹھیک نہیں کرتی۔ یہ صاف ہونے کے ساتھ، آئیے بنائیں۔
1. Java انسٹال کریں
Paper Java پر چلتا ہے۔ ایک headless JDK انسٹال کریں — ایک موجودہ Minecraft ورژن کے لیے یہ Java 21 ہے:
sudo apt update
sudo apt install -y openjdk-21-jre-headless
java -version
اگر آپ کا Minecraft ورژن پرانا ہے، تو وہ Java انسٹال کریں جو یہ مانگتا ہے (1.18-1.20 دور کے لیے 17)۔ اگر ورژن غلط ہو تو سرور logs زور سے شکایت کریں گے۔
2. سرور directory اور Paper سیٹ کریں
سرور کو اس کے اپنے user کے طور پر چلائیں، root نہیں — اگر کبھی کچھ غلط ہو، تو آپ چاہتے ہیں blast radius چھوٹا ہو۔
sudo adduser --system --group --home /opt/minecraft minecraft
sudo -u minecraft mkdir -p /opt/minecraft/server
cd /opt/minecraft/server
اپنے Minecraft ورژن کے لیے Paper jar ڈاؤنلوڈ کریں (URL ان کے downloads صفحے سے لیں) اور اسے server.jar کے طور پر محفوظ کریں:
sudo -u minecraft wget -O server.jar "PASTE_PAPER_DOWNLOAD_URL_HERE"
config فائلیں بنانے کو اسے ایک بار چلائیں، پھر EULA قبول کریں:
sudo -u minecraft java -Xms1G -Xmx3G -jar server.jar --nogui
# یہ فوراً رک جاتا ہے، آپ سے EULA قبول کرنے کو کہتا ہوا
sudo -u minecraft sed -i 's/eula=false/eula=true/' eula.txt
-Xmx3G JVM heap کی چھت ہے۔ ایک 4 GB Small پلان پر، JVM کے لیے ~3 GB OS کو سانس لینے کی جگہ چھوڑتا ہے۔ اسے اپنی پوری RAM پر سیٹ نہ کریں — JVM کا heap سے پرے overhead ہے، اور OOM killer مذاکرات نہیں کرتا۔
3. RAM بچانے کو server.properties tune کریں
یہیں آپ اپنے لیے مفت میں پرفارمنس خریدتے ہیں۔ server.properties کھولیں اور سیٹ کریں:
view-distance=8
simulation-distance=6
max-players=10
view-distance— ہر کھلاڑی کے گرد loaded رکھے chunks۔ ڈیفالٹ 10 فیاض ہے؛ 8 (یا 6 بھی) RAM اور CPU نمایاں طور پر کاٹتا ہے اور تقریباً کوئی فرق نوٹ نہیں کرتا۔simulation-distance— entities، redstone، اور فصل کی نمو دراصل کتنی دور tick کرتے ہیں۔ کم سستا ہے۔ 6 ایک سمجھدار ابتدائی نقطہ ہے۔max-players— اسے اُس پر سیٹ کریں جو آپ دراصل توقع کرتے ہیں، تاکہ ایک اچانک ہجوم آپ کا RAM بجٹ نہ اڑا دے۔
single-thread حقیقت یاد رکھیں: Minecraft کا tick ایک core پر جھکتا ہے۔ اگر TPS گرے، تو زیادہ RAM مدد نہیں کرے گی — کم simulation-distance اور mob caps کریں گی۔
4. اسے ایک systemd سروس کے طور پر چلائیں
یہی وہ حصہ ہے جو "ایک jar جو میں نے ایک بار چلایا" کو "ایک سرور" میں بدلتا ہے۔ /etc/systemd/system/minecraft.service بنائیں:
[Unit]
Description=Minecraft Paper Server
After=network.target
[Service]
User=minecraft
Group=minecraft
WorkingDirectory=/opt/minecraft/server
ExecStart=/usr/bin/java -Xms1G -Xmx3G -jar server.jar --nogui
Restart=on-failure
RestartSec=10
SuccessExitStatus=0 143
[Install]
WantedBy=multi-user.target
Restart=on-failure وہ لائن ہے جو اہم ہے — اگر JVM کریش ہو، تو systemd اسے دس سیکنڈ میں واپس لاتا ہے۔ SuccessExitStatus=... 143 systemd کو ایک عام SIGTERM shutdown کو ایک ناکامی سمجھنے سے روکتا ہے۔ اسے enable اور start کریں:
sudo systemctl daemon-reload
sudo systemctl enable --now minecraft
sudo systemctl status minecraft
sudo journalctl -u minecraft -f # live logs
اب یہ boot پر شروع ہوتا، کریش پر restart ہوتا، اور logs journald پر جاتے ہیں۔
5. firewall port کھولیں
Minecraft ڈیفالٹ TCP 25565 پر سنتا ہے۔ صرف وہی کھولیں:
sudo ufw allow 25565/tcp
sudo ufw enable
اپنے دوستوں کو سرور کا IP دیں (اور :25565 اگر آپ نے port بدلا)۔ جو آپ کو نہیں چاہیے وہ نہ کھولیں — اپنا باکس چلانے کا پورا مقصد یہ ہے کہ آپ فیصلہ کرتے ہیں کیا پہنچنے کے قابل ہے۔
6. دنیا backup کریں
وہ جسے لوگ اُس دن تک چھوڑتے ہیں جب وہ کاش نہ چھوڑتے۔ ایک سادہ script:
#!/bin/bash
cd /opt/minecraft/server
TS=$(date +%Y%m%d-%H%M)
tar czf /opt/minecraft/backups/world-$TS.tar.gz world world_nether world_the_end
اسے cron سے چلائیں، اور — یہ اہم آدھا ہے — آرکائیو سرور سے کاپی کریں، object storage یا ایک اور مشین پر۔ دنیا کے ہی ڈسک پر ایک backup ڈسک کے ساتھ مرتا ہے۔ اگر آپ کی دنیا اہم ہے، تو tar سے پہلے سرور console میں save-off اور save-all چلائیں تاکہ آپ کبھی mid-write snapshot نہ لیں۔
یہی پوری چیز ہے
Java، Paper، tune-شدہ config، ایک systemd سروس جو auto-restart ہوتی ہے، ایک firewall port، اور backups جو کہیں اور رہتے ہیں۔ یہی ایک Minecraft سرور ہے جو ایک کی طرح برتاؤ کرتا ہے۔
اگر آپ کے پاس ابھی ایک باکس نہیں: ایک پلان چنیں — ایک چھوٹے گروپ کے لیے Small ($8)، دس کھلاڑیوں تک دھکیل رہے ہیں تو Medium ($12) — USDC یا USDT میں ادا کریں (کوئی KYC، کوئی دستاویزات نہیں)، اور آپ کے پاس تقریباً 60 سیکنڈ میں root ہوگا۔ پھر اس صفحے پر نیچے کام کریں۔ اور آخری بار ایماندار یاددہانی: یہ دوستوں کے ساتھ vanilla یا Paper کے لیے درست سیٹ اپ ہے۔ ایک بڑی کمیونٹی کے لیے ایک بھاری modpack کو مختلف hardware چاہیے، اور ہم چاہیں گے آپ یہ پہلے ہم سے سنیں۔
تبصرے
ابھی کوئی تبصرہ نہیں۔ پہلے بنیں۔