VPS वर FiveM सर्व्हर कसा सुरू करावा?
Ubuntu वर FXServer इन्स्टॉल करण्यासाठी ही मार्गदर्शिका वापरा. यात artifact build निवडणे, Cfx.re लायसन्स की जोडणे आणि 30120 पोर्ट सुरक्षित ठेवण्याच्या पद्धती स्पष्ट केल्या आहेत.
VPS वर FiveM सर्व्हरसाठी आवश्यक गोष्टी
VPS वरील FiveM सर्व्हरसाठी एक unprivileged Linux user, Cfx.re कडील एक artifact build, एक licence key आणि TCP व UDP दोन्हीवर एक open पोर्ट आवश्यक असतो. हे इन्स्टॉलेशन साधारण दहा मिनिटांत पूर्ण होते. या मार्गदर्शिकेचा उर्वरित भाग सर्व्हर खेळण्यायोग्य आहे की नाही हे ठरवणाऱ्या घटकांवर लक्ष केंद्रित करतो: सिंगल CPU कोरचा वेग, तुमच्या resources ना लागणारी मेमरी आणि एक मॅनेजमेंट पॅनेल जे कधीही सार्वजनिक पत्त्यावर उघडे ठेवू नये.
तीन पूर्वअटी निश्चित आहेत. सर्व्हर बायनरीज, ज्यांना artifacts म्हणतात, त्या अधिकृत Cfx.re build लिस्टिंगमधून मिळतात. licence key Cfx.re पोर्टलवरून portal.cfx.re येथे मिळतो, ज्याला जुन्या मार्गदर्शिकांमध्ये keymaster असे संबोधले जाते आणि ही की ती वापरणाऱ्या मशीनच्या पत्त्याशी जोडलेली असते. कनेक्ट होणाऱ्या प्रत्येक खेळाडूकडे Steam, Rockstar Games Launcher किंवा Epic Games वरील GTA V (Grand Theft Auto V) ची स्वतःची कायदेशीर प्रत आणि एक मोफत Cfx.re खाते असणे आवश्यक आहे. क्लायंट सुरू होताना गेमच्या मालकीची पडताळणी करतो, त्यामुळे इतर कोणत्याही मार्गाने तयार केलेला सर्व्हर काम करत नाही आणि कोणत्याही प्रकारच्या workaround सामग्रीचा येथे समावेश केलेला नाही.
सर्व्हर होस्ट करणे हे त्या मशीनवर गेम खेळण्यापेक्षा वेगळे काम आहे, जे तुम्ही VPS वर गेम चालवू शकता का या प्रश्नापेक्षा वेगळे आहे आणि त्याचे उत्तरही वेगळे आहे.
FiveM सर्व्हरचा अनुभव सिंगल कोअर स्पीडवर का अवलंबून असतो
FXServer, हे FiveM सर्व्हरचे बायनरी, गेम लॉजिक एका मुख्य थ्रेडवर चालवते. प्रत्येक रिसोर्स स्क्रिप्ट, प्रत्येक इव्हेंट हँडलर आणि प्रत्येक स्टेट अपडेट या एकाच लूपमधून जाते. अतिरिक्त कोअर्स कर्नल, डेटाबेस आणि नेटवर्क स्टॅकसाठी उपयुक्त ठरतात. ते गेम लूपचे विभाजन करत नाहीत. त्यामुळे, कमी वेगाच्या कोअरवर असलेला 4 vCPU चा सर्व्हर लोड वाढल्यावर लॅग होतो, तर वेगवान कोअरवर असलेला 2 vCPU चा सर्व्हर सुरळीत चालतो.
हे VPS निवडण्याच्या नेहमीच्या पद्धतीच्या उलट आहे, जिथे कोअरची संख्या मुख्य मानली जाते. पैसे खर्च करण्यापूर्वी प्रति कोअर स्पीड तपासा. CPU मॉडेलपासून सुरुवात करा:
lscpu | grep -E 'Model name|MHz'त्यानंतर त्या मॉडेलचा प्रकाशित सिंगल थ्रेड स्कोअर तपासा. PassMark सिंगल थ्रेड रेटिंग आणि Geekbench सिंगल-कोअर स्कोअर हे दोन्ही सार्वजनिक आहेत आणि ते एका कोअरच्या कार्यक्षमतेचे मोजमाप करतात, जे इथे महत्त्वाचे आहे. त्यानंतर, तुम्हाला मिळालेल्या सर्व्हरची क्षमता तपासा:
sudo apt update && sudo apt install -y sysbench
sysbench cpu --cpu-max-prime=20000 --threads=1 runevents per second ओळ वाचा. दोन संभाव्य प्रोव्हायडर्सवर हीच कमांड चालवा, म्हणजे तुम्ही त्यांची तुलना प्रामाणिकपणे करू शकाल, कारण कामाचा लोड एकसारखा आहे आणि तो एकाच कोअरपुरता मर्यादित आहे. पुनरावृत्ती करण्यायोग्य VPS बेंचमार्क रन मध्ये हे आकडे वेगवेगळ्या सर्व्हरवर कसे तुलनात्मक ठेवायचे हे दाखवले आहे.
त्यानंतर तो कोअर खरोखर तुमचाच आहे का ते तपासा:
vmstat 1 5शेवटचा कॉलम, st, हा 'steal time' आहे: तुमचा व्हर्च्युअल CPU चालण्यासाठी तयार असताना हायपरवायझरने त्याला किती वेळ प्रतीक्षा करायला लावली याचे हे प्रमाण आहे. जर हा आकडा सतत 1 किंवा 2 च्या वर असेल, तर याचा अर्थ तुम्ही एका फिजिकल कोअरचा वापर इतर व्यस्त शेजाऱ्यांसोबत करत आहात आणि गेम लूपमध्ये लगेच 'रबर बँडिंग' जाणवू लागते. नॉइझी शेजाऱ्याकडून होणारा steal time मध्ये हा कॉलम कसा वाचायचा आणि त्यावर काय उपाय करायचे हे सांगितले आहे.
मेमरीची गरज तुम्ही चालवत असलेल्या रिसोर्सेसवर अवलंबून असते, केवळ स्लॉट्सवर नाही. Cfx.re कडील मूळ सर्व्हर डेटा काहीशे मेगाबाइट्समध्ये चालतो. चाळीस-पन्नास रिसोर्सेस आणि MariaDB डेटाबेस असलेले रोलप्ले फ्रेमवर्क ही एक वेगळीच यंत्रणा असते: 4 GB ही किमान मर्यादा योग्य आहे, आणि 32 ते 64 स्लॉट्ससाठी 8 GB मेमरी सोयीस्कर ठरते. ही कम्युनिटी सेटअप्सद्वारे प्रकाशित केलेली सामान्य आकडेवारी आहे, त्यामुळे याला सुरुवातीचा बिंदू माना आणि प्रत्यक्ष खेळाडूंच्या लोडखाली free -m चे निरीक्षण करा.
वापरकर्ता तयार करा आणि dependencies इंस्टॉल करा
सर्व्हर नेहमी सामान्य वापरकर्त्याच्या अधिकारात चालवा, कधीही root म्हणून नको. याची दोन मुख्य कारणे आहेत. कोणत्याही इंटरनेट-फेसिंग सेवेसाठी root वापरणे ही एक वाईट सवय आहे. तसेच, Linux artifact हे एका बंडल केलेल्या Alpine Linux root filesystem मध्ये चालते. त्यामुळे root द्वारे अनपॅक केलेल्या फाइल्स इतर कोणीही एक्झिक्युट करू शकत नाही. नवीन इन्स्टॉलेशन सुरू न होण्याचे हे सर्वात सामान्य कारण आहे.
sudo adduser --disabled-password --gecos "" fivem
sudo apt update
sudo apt install -y git xz-utils curl tcpdump
sudo -iu fivemखालील सर्व प्रक्रिया fivem वापरकर्त्याच्या अधिकारात चालवा. xz-utils आवश्यक आहे कारण डाउनलोड केलेली फाइल एक .tar.xz आर्काइव्ह आहे आणि बेस सर्व्हर डेटा क्लोन करण्यासाठी git चा वापर केला जातो.
पिन केलेले आर्टिफॅक्ट बिल्ड डाउनलोड करा
Linux बिल्ड Cfx.re आर्टिफॅक्ट सर्व्हरच्या build_proot_linux चॅनेलमध्ये उपलब्ध आहे. या यादीमध्ये एक बिल्ड 'लेटेस्ट रेकमेंडेड' (latest recommended) म्हणून चिन्हांकित केलेला असतो आणि हा लेबल दर काही आठवड्यांनी नवीन बिल्डवर हलवला जातो. त्याऐवजी, क्रमांकाच्या फोल्डरला पिन करा. यामुळे पुढच्या महिन्यात सर्व्हर पुन्हा बिल्ड करताना तुम्हाला तेच बायनरी मिळेल जे तुम्ही या महिन्यात तपासले होते, आणि अपग्रेड करण्याचा निर्णय तुम्ही जाणीवपूर्वक घेऊ शकाल.
mkdir -p ~/FXServer/server
cd ~/FXServer/server
curl -fLO https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/25770-8ddccd4e4dfd6a760ce18651656463f961cc4761/fx.tar.xz
tar xf fx.tar.xz
lsऑगस्ट 2026 मध्ये जेव्हा मी यादी पाहिली, तेव्हा बिल्ड 25770 वर 'रेकमेंडेड' लेबल होते. सध्याचे बिल्ड पाहण्यासाठी ब्राउझरमध्ये हीच डिरेक्टरी उघडा, त्यानंतर त्या फोल्डरचे नाव (जे बिल्ड नंबर आणि कमिट हॅशचे मिश्रण आहे) URL मध्ये पेस्ट करा.
ls मध्ये आता run.sh आणि alpine डिरेक्टरी दिसली पाहिजे. ही डिरेक्टरीच यातील मुख्य युक्ती आहे: Linux आर्टिफॅक्ट स्वतःची छोटी Alpine रूट फाईलसिस्टम सोबत आणते आणि proot वापरून सर्व्हर सुरू करते. proot हे एक युजरस्पेस टूल आहे जे root अधिकारांशिवाय chroot चे अनुकरण करते. म्हणूनच हे डाउनलोड Ubuntu, Debian आणि Rocky वर कोणत्याही विशिष्ट डिस्ट्रिब्युशन पॅकेजशिवाय चालू शकते.
आता बेस सर्व्हर डेटा क्लोन करा, ज्यामध्ये तुमचा server.cfg सुरू होण्यासाठी लागणारी डीफॉल्ट रिसोर्सेस असतात:
git clone https://github.com/citizenfx/cfx-server-data.git ~/FXServer/server-dataलायसन्स की मिळवा आणि server.cfg लिहा
portal.cfx.re वर तुमच्या Cfx.re अकाउंटने साइन इन करा आणि एक सर्व्हर की तयार करा. पोर्टल ज्या मशीनवर ही की वापरली जाणार आहे त्याचा IP पत्ता विचारते आणि की त्या पत्त्याशी जोडली जाते. नवीन VPS वर स्थलांतर करताना पोर्टलमध्ये जाऊन की एडिट करा, दुसरी नवीन की तयार करू नका. बदल त्वरित लागू होतात, परंतु FXServer रीस्टार्ट झाल्यावरच पुन्हा पडताळणी करतो.
~/FXServer/server-data/server.cfg लिहा:
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"
ensure mapmanager
ensure chat
ensure spawnmanager
ensure sessionmanager
ensure basic-gamemode
ensure hardcap
sv_hostname "My FiveM server"
sv_maxclients 48
set onesync on
sv_scriptHookAllowed false
sv_licenseKey ChangeMe
add_ace group.admin command allow
add_principal identifier.fivem:1 group.adminsv_maxclients 1 ते 2048 मधील मूल्य स्वीकारते. 32 किंवा त्यापेक्षा जास्त मूल्यासाठी onesync हे on किंवा legacy वर सेट करणे आवश्यक आहे आणि 64 पेक्षा जास्त मूल्यासाठी on आवश्यक आहे. OneSync हा सर्व्हरचा स्टेट अवेअरनेस मोड आहे आणि यामुळेच सर्व्हर मूळ गेमच्या मर्यादित स्लॉट संख्येपेक्षा जास्त खेळाडूंना परवानगी देऊ शकतो. OneSync बंद असताना 128 स्लॉट सेट केल्यास तुम्हाला 128 स्लॉट मिळत नाहीत, तर सर्व्हर अशा कॉन्फिगरेशनला नाकारतो.
sv_licenseKey मध्ये की लिहा, त्यात कोणतेही अवतरण चिन्ह (quotes) किंवा शेवटी रिकामी जागा (trailing space) नसावी. FXServer त्या ओळीचे व्हाईटस्पेसवर विभाजन करतो, त्यामुळे एक अतिरिक्त अक्षरही पडताळणीमध्ये अडथळा आणते आणि सर्व्हर सुरू होण्यास नकार देतो.
rcon_password या फाईलमध्ये मुद्दाम दिलेले नाही. RCON (रिमोट कन्सोल) फक्त तेव्हाच सुरू होते जेव्हा व्हेरिएबल सेट केलेले असते आणि त्यानंतर ते गेमच्या UDP पोर्टवरच लिसन करते. सार्वजनिक पोर्टवर RCON पासवर्ड असणे म्हणजे तुमच्या सर्व्हरसाठी एक रिमोट कमांड चॅनेल उघडे असण्यासारखे आहे. जोपर्यंत तुम्हाला विशेष गरज नसेल तोपर्यंत ते सेट करू नका आणि जर गरज असेलच, तर तो पासवर्ड लांब आणि रँडम ठेवा.
sv_scriptHookAllowed हे false राहू द्या. अधिकृत दस्तऐवजीकरणानुसार हे शिफारसित नाही, कारण Script Hook V क्लायंटना परवानगी दिल्यास सर्व्हर क्लायंट-साइड गैरवापरासाठी उघडा होतो.
add_principal identifier.fivem:1 हे Cfx.re अकाउंट ID 1 ला ॲडमिन अधिकार देते. 1 च्या जागी तुमचा स्वतःचा अंकीय ID टाका, अन्यथा तुम्ही दुसऱ्याच्या अकाउंटला ॲडमिन अधिकार द्याल आणि स्वतःकडे कोणतेही अधिकार राहणार नाहीत.
सर्व्हर एकदा मॅन्युअली सुरू करा:
cd ~/FXServer/server-data
bash ~/FXServer/server/run.sh +exec server.cfgदुसऱ्या SSH सेशनवरून सर्व्हरची स्थिती तपासा:
curl -s http://127.0.0.1:30120/info.json | head -c 200तुमच्या सर्व्हर व्हेरिएबल्स आणि रिसोर्सेसचे JSON नाव दिसणे म्हणजे FXServer बाउंड झाला आहे आणि प्रतिसाद देत आहे. Connection refused चा अर्थ असा की सर्व्हरने पोर्ट बाउंड केलेला नाही, त्यामुळे अंदाज लावण्याऐवजी कन्सोल आउटपुट वाचा.
की नसलेला सर्व्हर हे मेसेज प्रिंट करतो आणि थांबतो:
This server does not have a license key specified. Please set the sv_licenseKey console variable to a key from https://keymaster.fivem.net/.हा मेसेज अजूनही जुना keymaster पत्ता दर्शवतो. तो पत्ता तुम्हाला त्याच Cfx.re पोर्टलवर घेऊन जातो. जर की सेट केलेली असेल आणि सर्व्हर तरीही सुरू होत नसेल, तर याचे सामान्य कारण म्हणजे की सोबत नोंदणीकृत असलेला IP पत्ता आणि सध्याच्या मशीनचा IP पत्ता जुळत नाही.
FiveM सर्व्हरसाठी कोणते पोर्ट्स उघडे असणे आवश्यक आहे?
TCP (transmission control protocol) आणि UDP (user datagram protocol) वर पोर्ट 30120. FiveM एकाच पोर्ट क्रमांकासाठी दोन प्रोटोकॉल वापरते आणि त्याला दोन्हीची आवश्यकता असते. फक्त TCP उघडल्यास गोंधळात टाकणारी लक्षणे दिसतात: ब्राउझरमध्ये http://your.ip:30120/info.json प्रतिसाद मिळतो, त्यामुळे सर्व्हर व्यवस्थित असल्याचे वाटते, परंतु गेम क्लायंट Failed to get info from server वर अडकून राहतो आणि कधीही जॉईन होत नाही, कारण क्लायंटची स्वतःची क्वेरी आणि गेम ट्रॅफिक UDP वर चालते.
sudo ufw allow OpenSSH
sudo ufw allow 30120/tcp
sudo ufw allow 30120/udp
sudo ufw enable
sudo ufw status verboseकोणताही फायरवॉल सक्षम करताना दुसरे SSH सेशन सुरू ठेवा. VPS साठी ufw ची मूलभूत माहिती मध्ये 'default deny' धोरणाबद्दल सांगितले आहे, ज्यामुळे वरील नियम स्वतःहून पुरेसे ठरतात.
बहुतेक प्रोव्हायडर्स गेस्टच्या बाहेर एक नेटवर्क फायरवॉल देखील चालवतात, जे शेलऐवजी पॅनेलवरून नियंत्रित केले जाते. ufw नियम त्या स्तरावर काहीही सिद्ध करत नाही. जेव्हा बाहेरून TCP प्रतिसाद मिळतो आणि तरीही खेळाडू कनेक्ट होऊ शकत नाहीत, तेव्हा कोणीतरी प्रयत्न करत असताना नेटवर्क ट्रॅफिक तपासा:
sudo tcpdump -ni any udp port 30120पॅकेट्स पोहोचत असतील तर बाह्य फायरवॉल व्यवस्थित आहे आणि दोष सर्व्हरच्या आत आहे. जर शांतता असेल, तर बॉक्सच्या समोर काहीतरी पॅकेट्स ड्रॉप करत आहे, त्यामुळे प्रोव्हायडर पॅनेल तपासा.
txAdmin द्वारे सर्व्हरचे व्यवस्थापन करा, पण तो उघड करू नका
txAdmin तुम्ही आधीच डाउनलोड केलेल्या artifact मध्ये समाविष्ट आहे. run.sh ला कोणत्याही +exec आर्ग्युमेंटशिवाय सुरू करा. हे TCP पोर्ट 40120 वर एक वेब पॅनेल सुरू करते आणि कन्सोलवर पॅनेलची URL आणि एक अल्पकालीन PIN प्रिंट करते. तुमचा Cfx.re खाते लिंक करण्यासाठी तुम्ही तो PIN एकदाच वापरता आणि त्यानंतर तुम्ही तयार केलेल्या ॲडमिन खात्याद्वारे लॉग इन करता.
txAdmin चा कोणताही डीफॉल्ट पासवर्ड नसतो, त्यामुळे धोका तुम्ही न बदललेल्या क्रेडेंशियल्सचा नाही. धोका पॅनेलच्या स्वरूपाचा आहे: हे एक रिमोट कन्सोल आहे. हे सर्व्हर रीस्टार्ट करते, server.cfg संपादित करते, सर्व्हर डेटा डिप्लॉय करते आणि तुमच्या सर्व्हर युजरच्या अधिकाराने कमांड्स रन करते. 40120 पोर्ट इंटरनेटसाठी खुला ठेवल्यास हे सर्व पर्याय एका सार्वजनिक पत्त्यावर उपलब्ध होतात आणि स्कॅनर काही तासांतच उघडे पॅनेल पोर्ट शोधून काढतात. फायरवॉलमध्ये 40120 पोर्ट उघडू नका. तुमच्या स्वतःच्या मशीनवरून SSH टनेलद्वारे त्यापर्यंत पोहोचा:
ssh -N -L 40120:127.0.0.1:40120 fivem@YOUR_SERVER_IPत्यानंतर तुमच्या ब्राउझरमध्ये http://127.0.0.1:40120 उघडा. पॅनेलचा ट्रॅफिक SSH कनेक्शनच्या आतून जातो आणि पोर्ट इतर कोणासाठीही बंद राहतो.
हे वेगळ्या पद्धतीने सोडवण्याचा प्रयत्न करण्यापूर्वी एक गोष्ट लक्षात घेणे आवश्यक आहे. txAdmin कोणत्या इंटरफेसवर बाइंड व्हायचे हे ठरवण्यासाठी TXHOST_INTERFACE (डीफॉल्ट 0.0.0.0) वाचते आणि डॉक्युमेंटेशननुसार हेच मूल्य FXServer वर सक्तीने लागू केले जाते. पॅनेल लपवण्यासाठी ते 127.0.0.1 वर सेट केल्यास गेम सर्व्हर देखील लूपबॅकवर बाइंड होईल, ज्यामुळे कोणताही खेळाडू सर्व्हरशी कनेक्ट होऊ शकणार नाही. पॅनेल पोर्ट फायरवॉलद्वारे बंद करा, त्या व्हेरिएबलद्वारे नाही. पॅनेल दुसऱ्या पोर्टवर हलवण्यासाठी TXHOST_TXA_PORT सेट करा, जे 30120 सोडून इतर कोणतेही पोर्ट स्वीकारते. जुने +set txAdminPort convar अनेक मार्गदर्शकांमध्ये दिसते; txAdmin च्या स्वतःच्या डॉक्युमेंटेशनमध्ये ते deprecated म्हणून चिन्हांकित केले आहे आणि भविष्यातील रिलीजमध्ये ते काम करणे बंद करेल असे नमूद केले आहे.
लॉग आउट केल्यानंतर सर्व्हर चालू ठेवा
तुमचे SSH सत्र बंद झाले की bash run.sh देखील बंद होते. चाचणी करत असताना tmux वापरणे सोयीचे आहे: tmux new -s fivem चालवा, सर्व्हर सुरू करा, Ctrl-b दाबून नंतर d दाबून detach करा आणि परत येण्यासाठी tmux attach -t fivem वापरा. tmux सत्र रीबूटनंतर टिकत नाही, त्यामुळे महत्त्वाची कोणतीही गोष्ट systemd unit मध्ये असणे आवश्यक आहे.
/etc/systemd/system/fivem.service लिहा:
[Unit]
Description=FiveM FXServer
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=fivem
Environment=HOME=/home/fivem
WorkingDirectory=/home/fivem/FXServer/server-data
ExecStart=/bin/bash /home/fivem/FXServer/server/run.sh +exec server.cfg
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.targetsudo systemctl daemon-reload
sudo systemctl enable --now fivem
systemctl status fivem
journalctl -u fivem -fenable --now दोन कामे करते: ते सेवा त्वरित सुरू करते आणि रीबूटनंतर ती पुन्हा कार्यान्वित करते. हाताने सुरू केलेला सर्व्हर कर्नल अपडेटनंतर बंद होतो. journalctl -u fivem -f आता तुमचे कन्सोल आहे, कारण systemd सेवेला टाइप करण्यासाठी कोणतेही टर्मिनल नसते. जर तुम्ही त्याऐवजी txAdmin द्वारे सर्व्हर व्यवस्थापित करत असाल, तर +exec server.cfg ला ExecStart मधून काढून टाका आणि WorkingDirectory ला /home/fivem/FXServer/server कडे निर्देशित करा, कारण txAdmin स्वतः गेम सर्व्हर सुरू करते आणि त्याचा डेटा फोल्डर run.sh च्या शेजारी ठेवते.
काय बॅकअप घ्यावे आणि ते कुठे असते
आर्टिफॅक्ट्सचा बॅकअप घेणे निरर्थक आहे, कारण तुम्ही पिन केलेली बिल्ड काही मिनिटांत पुन्हा डाउनलोड करू शकता. केवळ चार गोष्टी तुमच्या मालकीच्या आहेत.
~/FXServer/server-data/resources: तुम्ही इन्स्टॉल केलेले, खरेदी केलेले किंवा लिहिलेले प्रत्येक रिसोर्स.server.cfg, ते कुठेही असो: संपूर्ण सर्व्हर कॉन्फिगरेशन, ज्यामध्ये तुमच्या ॲडमिन प्रिन्सिपल्सचा समावेश आहे.~/FXServer/server/txData: txAdmin चे कॉन्फिगरेशन, ॲडमिन यादी आणि लॉग्स. Linux आर्टिफॅक्टसह हे फोल्डरrun.shच्या शेजारी तयार होते.- MariaDB किंवा MySQL डेटाबेस, जर तुमचा फ्रेमवर्क तो वापरत असेल तर. कॅरेक्टर्स, पैसे, वाहने आणि इन्व्हेंटरीज तिथेच असतात, इतर कुठेही नाहीत. त्यामुळे डेटाबेस डंपशिवाय घेतलेला रिसोर्स बॅकअप रिकामे जग रिस्टोर करेल.
mkdir -p ~/backups
mysqldump -u fivem -p --single-transaction fivem_db > ~/backups/fivem-$(date +%F).sqlसर्व्हरच्या त्याच डिस्कवर असलेला डंप म्हणजे बॅकअप नव्हे, कारण डिस्क निकामी होण्याची शक्यता असते. ते एका वेळापत्रकानुसार सर्व्हरच्या बाहेर पाठवा, ज्यासाठी restic backups from a VPS वापरले जाते.
अपयशाचे प्रकार आणि तुम्हाला दिसणारे संदेश
Permission denied on the loader. सर्व्हर खालील ओळीसह त्वरित बंद होतो:
run.sh: line 8: /home/fivem/FXServer/server/alpine/opt/cfx-server/ld-musl-x86_64.so.1: Permission deniedहे घडते कारण आर्काइव्ह sudo वापरून एक्सट्रॅक्ट केले गेले आहे, त्यामुळे alpine/ अंतर्गत सर्व फाइल्सची मालकी root कडे आहे आणि fivem वापरकर्त्याला त्यातील लोडर एक्झिक्युट करता येत नाही. मालकी हक्क sudo chown -R fivem:fivem /home/fivem/FXServer वापरून दुरुस्त करा, किंवा फोल्डर डिलीट करून ते पुन्हा fivem म्हणून एक्सट्रॅक्ट करा.
tar डाउनलोड उघडण्यास नकार देते. tar (child): xz: Cannot exec: No such file or directory चा अर्थ असा आहे की xz-utils पॅकेज गहाळ आहे, त्यामुळे tar .tar.xz आर्काइव्ह डीकंप्रेस करू शकत नाही. ते इन्स्टॉल करा आणि पुन्हा एक्सट्रॅक्ट करा. जे डाउनलोड खूप लवकर पूर्ण होते, ते सहसा fx.tar.xz म्हणून सेव्ह केलेले HTML एरर पेज असते आणि tar त्याला करप्ट आर्काइव्ह म्हणून रिपोर्ट करते.
सर्व्हर चालू आहे पण कोणीही जॉईन होऊ शकत नाही. प्रथम पोर्ट्स तपासा, या क्रमाने: 30120 वर TCP आणि UDP दोन्हीसाठी ufw नियम, त्यानंतर प्रोव्हायडरचा स्वतःचा नेटवर्क फायरवॉल, आणि शेवटी लायसन्स की साठी नोंदणीकृत IP. बाहेरून info.json विरुद्ध curl वापरल्यास नेटवर्क समस्या आणि सर्व्हर समस्या यातील फरक एका कमांडमध्ये स्पष्ट होतो.
खेळाडू आल्यावर Tick time वाढतो. txAdmin चे परफॉर्मन्स पॅनेल सर्व्हरचा tick time दर्शवते. जेव्हा खेळाडूंच्या संख्येनुसार हा वेळ वाढतो आणि एकूण CPU वापर कमी दिसतो, तेव्हा एखादे रिसोर्स मेन थ्रेडवर ताण देत असते. हे गणित लक्षात ठेवा: 4 vCPU असलेल्या बॉक्सवर, एक पूर्ण लोड झालेला कोअर top मध्ये साधारण 25 टक्के एकूण CPU वापर दर्शवतो, जो आयडल (idle) वाटू शकतो पण तसा नसतो. कोणते रिसोर्स जास्त खर्चिक आहे हे शोधण्यासाठी एक-एक करून रिसोर्सेस थांबवा आणि tick time चे निरीक्षण करा.
इतर गेम सर्व्हर्सच्या तुलनेत आकारमान निश्चित करणे
खेळण्यायोग्य FiveM सर्व्हरसाठी वेगवान सिंगल कोअर आणि तुम्ही प्रत्यक्षात चालवत असलेल्या रिसोर्स लिस्टसाठी पुरेशी मेमरी आवश्यक असते. स्लॉटची संख्या या दोन गोष्टींवर अवलंबून असते आणि कितीही vCPUs वाढवले तरी संथ कोअरचा वेग सुधारत नाही. गेम सर्व्हर्ससाठी VPS निवडणे या लेखात मिश्र फ्लीटसाठी यातील तडजोडी स्पष्ट केल्या आहेत, आणि VPS वर Minecraft सर्व्हर चालवणे यामध्येही मूळ रचना सारखीच असते: एक मुख्य टिक लूप (tick loop), त्यामुळे तिथेही कोअरचा वेगच सर्व्हरची कमाल क्षमता ठरवतो.
FAQ
FiveM सर्व्हरला किती CPU आणि RAM ची आवश्यकता असते?
अनेक संथ कोअर्सपेक्षा एक वेगवान कोअर असणे अधिक महत्त्वाचे आहे, कारण FXServer आपली गेम लॉजिक एकाच मुख्य थ्रेडवर चालवते. CPU मॉडेलचा प्रकाशित सिंगल-थ्रेड स्कोअर तपासा, त्यानंतर sysbench cpu --threads=1 run वापरून सर्व्हरवर खात्री करा आणि vmstat मध्ये 'steal time' शून्याच्या जवळ असल्याची खात्री करा. मेमरीसाठी, मूळ Cfx.re सर्व्हर डेटा काहीशे मेगाबाइट्समध्ये चालतो, तर चाळीस-पन्नास रिसोर्सेस आणि स्थानिक डेटाबेस असलेले रोलप्ले फ्रेमवर्क 8 GB RAM वर आरामात चालते आणि 4 GB पेक्षा कमी मेमरीमध्ये ते मर्यादित होते. ही सामान्य समुदायाची आकडेवारी आहे, त्यामुळे यावर विश्वास ठेवण्याऐवजी पीक अवर्समध्ये free -m वर लक्ष ठेवा.
माझ्या FiveM सर्व्हरला जोडण्यासाठी खेळाडूंना GTA V विकत घेणे आवश्यक आहे का?
हो. प्रत्येक जोडल्या जाणाऱ्या खेळाडूकडे Steam, Rockstar Games Launcher किंवा Epic Games वरील GTA V ची कायदेशीर, परवानाकृत प्रत असणे आवश्यक आहे, तसेच एक मोफत Cfx.re खाते असणे आवश्यक आहे. FiveM क्लायंट कनेक्ट होण्यापूर्वी गेमच्या मालकीची पडताळणी करतो. याला बगल देण्याचा कोणताही समर्थित मार्ग नाही आणि असे करण्याचा प्रयत्न करणारा सर्व्हर चालवणे Cfx.re च्या नियमांच्या विरुद्ध आहे.
FiveM सर्व्हरसाठी कोणते पोर्ट उघडे असणे आवश्यक आहे?
TCP आणि UDP या दोन्हीवर पोर्ट 30120 उघडे असणे आवश्यक आहे. info.json सारखे HTTP एंडपॉइंट्स आणि रिसोर्स डाउनलोड्स TCP वापरतात, तर क्लायंटचा गेम ट्रॅफिक UDP वापरतो. फक्त TCP उघडल्यास अशी गोंधळात टाकणारी स्थिती निर्माण होते जिथे सर्व्हर ब्राउझरला प्रतिसाद देतो पण खेळाडूंना Failed to get info from server दिसते. txAdmin ला TCP 40120 ची आवश्यकता असते आणि ते पोर्ट इंटरनेटसाठी बंद ठेवले पाहिजे.
txAdmin ला पोर्ट 40120 वर उघडे ठेवणे सुरक्षित आहे का?
नाही. txAdmin हे एक रिमोट कन्सोल आहे जे सर्व्हर रीस्टार्ट करते, कॉन्फिगरेशन संपादित करते आणि कमांड्स चालवते, त्यामुळे उघडे असलेले पॅनेल म्हणजे संपूर्ण गेम सर्व्हरचे नियंत्रण उघडे असण्यासारखे आहे. याचा कोणताही डीफॉल्ट पासवर्ड नसतो, परंतु सार्वजनिक लॉगिन पेजमुळे क्रेडेंशियल हल्ल्यांचा धोका असतो जे तुम्हाला दिसत नाहीत. फायरवॉलमध्ये 40120 पोर्ट बंद ठेवा आणि ssh -N -L 40120:127.0.0.1:40120 user@server वापरून SSH टनेलद्वारे पॅनेलमध्ये प्रवेश करा, त्यानंतर http://127.0.0.1:40120 वर ब्राउझ करा. txAdmin ला TXHOST_INTERFACE वापरून 127.0.0.1 वर बाइंड करू नका, कारण त्या सेटिंगमुळे गेम सर्व्हर लूपबॅकवर जातो आणि कोणताही खेळाडू कनेक्ट होऊ शकणार नाही.
मी आर्टिफॅक्ट बिल्ड पिन करावे की नेहमी लेटेस्ट रेकमेंडेड बिल्ड वापरावे?
क्रमांकित बिल्ड फोल्डर पिन करा. 'रेकमेंडेड' लेबल नियमितपणे नवीन बिल्डवर हलवले जाते, त्यामुळे जे स्क्रिप्ट 'रेकमेंडेड' बिल्ड घेते ते प्रत्येक रीबिल्डवर तुम्हाला वेगळी बायनरी देऊ शकते. यामुळे काल व्यवस्थित चालणारा सर्व्हर तुमच्या बदलांशी संबंधित नसलेल्या कारणांमुळे पुन्हा डिप्लॉय करताना बंद पडू शकतो. तुम्ही चाचणी केलेले बिल्ड नंबर आणि कमिट हॅश रेकॉर्ड करा, जाणीवपूर्वक अपग्रेड करा आणि मागील फोल्डर डिस्कवर ठेवा जेणेकरून तुम्ही तुमच्या systemd युनिटमधील एक पाथ बदलून पुन्हा जुन्या आवृत्तीवर स्विच करू शकाल.