
خوش آمدید!
بنابراین، به دلایل شناخته شده، باید زمان بیشتری را در خانه و جلوی مانیتور بگذرانید.
در این وضعیت، باید به یاد امور روزهای گذشته بود.
همانطور که از عنوان این مقاله مشخص است، در مورد راه اندازی Synology NAS به عنوان یک سرور بازی صحبت خواهیم کرد.
توجه - اسکرین شات های زیادی در مقاله وجود دارد (عکس ها قابل کلیک هستند)!
قبل از شروع، در اینجا لیستی از ابزارهایی که به آن نیاز داریم آمده است:
- من هیچ محدودیتی در اینجا نمی بینم، فکر می کنم هر کسی انجام دهد، اگر برنامه ای برای حفظ سرور برای 10k بازیکن وجود نداشته باشد.
- هیچ مهارت خاصی مورد نیاز نیست، کافی است به طور مجازی اصل کار را درک کنید.
- درباره اینکه چیست Linuxمیتوانید درباره GSM در وبسایت رسمی مطالعه کنید. .
در حال حاضر (آوریل ۲۰۲۰) LinuxGSM دارای 105 سرور بازی در دسترس است.
کل لیست را می توان در اینجا مشاهده کرد .
- بازاری با بازی
سرور بازی LinuxGSM با ... ادغام شده است یعنی سرور بازی LinuxGSM فقط برای بازیهای Steam قابل استفاده است.
نصب Docker در Synology NAS
در این مرحله، همه چیز ساده است، به پنل مدیریت Synology، سپس به "مرکز بسته" بروید، Docker را پیدا و نصب کنید.
مرکز پکیج
ما راه اندازی می کنیم و چیزی شبیه به این را می بینیم (من قبلاً این کانتینر را نصب کرده ام)
مدیریت کانتینر
سپس، به تب "رجیستری" بروید، "gameservermanagers" را در جستجو تایپ کنید، تصویر "gameservermanagers/linuxgsm-docker" را انتخاب کنید و روی دکمه "دانلود" کلیک کنید.
gameservermanagers/linuxgsm-docker
پس از آن، به تب "تصویر" بروید، صبر کنید تا تصویر به پایان برسد و روی دکمه "راه اندازی" کلیک کنید.
دانلود تصویر
در پنجره ای که باز می شود، به «تنظیمات پیشرفته»، سپس به تب «شبکه» بروید و کادر «استفاده از همان شبکه به عنوان میزبان داکر» را علامت بزنید.
بقیه تنظیمات، به عنوان مثال، مانند "نام کانتینر"، ما به صلاحدید خود تغییر می دهیم.
نام کانتینر - همانطور که ممکن است حدس بزنید، این نام ظرف است، بعداً مفید خواهد بود. من توصیه می کنم آن را به طور مختصر نامگذاری کنید، به عنوان مثال، بگذارید "تست" باشد.
در مرحله بعد، چندین بار روی دکمه "اعمال" یا "بعدی" کلیک کنید تا تنظیمات کامل شوند.
تنظیمات پیشرفته
به برگه "Container" بروید و یک ظرف جدید در حال اجرا (اگر نه، شروع کنید) را ببینید.
در اینجا می توانید متوقف، شروع، حذف و سایر اقدامات را انجام دهید.
اجرای یک کانتینر
راهاندازی یک کانتینر داکر Linuxپارس جی اس ام
قبل از اینکه بتوانید از طریق SSH به Synology NAS خود متصل شوید، باید دسترسی SSH خود را در پنل مدیریت فعال کنید.
اتصال از طریق SSH
در مرحله بعد، باید از آدرس IP داخلی سرور Synology NAS برای اتصال از طریق SSH استفاده کنید.
به ترمینال (یا هر ترمینال مشابه دیگری، مثلاً زیر آن) بروید Windows این ) و از دستور زیر استفاده کنید:
ssh user_name@IPدر مورد من به نظر می رسد این است
ssh admin@192.168.0.166 آدرس IP سرور Synology NAS
پس از مجوز، باید دستور رفتن به خود محفظه "تست" (فیلد "Container Name" در تنظیمات Docker) را در زیر کاربر "root" اجرا کنید.
sudo docker exec -u 0 -it test bash در حال اتصال به داکر
درست قبل از نصب،Linuxجی اس ام باید یه اقدامی بکنه.
یک رمز عبور برای کاربر "ریشه" تنظیم کنید
passwdدر مرحله بعد، همه بسته ها را به روز کنید
apt update && apt upgrade && apt autoremoveدر انتظار پایان فرآیند ...
به روز رسانی بسته ها
در مرحله بعد، ابزارهای کمکی لازم را نصب کنید
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-fullاز آنجایی که انجام اقدامات مختلف تحت "root" بهترین ایده نیست، یک "تست" کاربر جدید اضافه خواهیم کرد.
adduser testو به کاربر جدید اجازه استفاده از "sudo" را بدهید
usermod -aG sudo testتغییر به "تست" کاربر جدید
su testنصب Utilities
نصب و پیکربندی Linuxپارس جی اس ام
بیایید به یک نمونه از تنظیمات نگاهی بیندازیم LinuxGSM، با استفاده از "Counter-Strike" (معروف به "CS 1.6") به عنوان مثال
ما با دستورالعمل "Counter-Strike" به صفحه می رویم .
در برگه «وابستگیها»، کد زیر «Ubuntu ۶۴ بیتی".
در زمان نوشتن، این کد به شکل زیر است:
sudo dpkg --add-architecture i386; sudo apt update; sudo apt install mailutils postfix curl wget file tar bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux lib32gcc1 libstdc++6 lib32stdc++6 steamcmd
نصب وابستگی ها
در طول مراحل نصب، باید با "مجوز Steam" موافقت کنید:
مجوز Steam
به برگه "نصب" بروید، کد را از مرحله 2 کپی کنید (از مرحله 1 می گذریم، کاربر "تست" از قبل وجود دارد):
نصب
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
در انتظار دانلود:
بارگیری
و ما نصب را شروع می کنیم:
./csserver installاگر همه چیز در حالت عادی پیش برود، "نصب کامل شد!" را خواهیم دید.
نصب کامل!
شروع می کنیم و خطای "Multiple IP addresses found" را می بینیم.
./csserver start چندین آدرس IP پیدا شد
در مرحله بعد، باید صریحاً به سرور بگویید از کدام IP استفاده کند.
در مورد من این است:
192.168.0.166ما به پوشه ای می رویم که مسیر آن در پیام به عنوان "مکان" بود:
cd /home/test/lgsm/config-lgsm/csserverو ببینید چه فایل هایی در این پوشه وجود دارد:
ls لیست فایل های موجود در پوشه csserver
محتویات فایل "_default.cfg" را در فایل "csserver.cfg" کپی کنید:
cat _default.cfg >> csserver.cfgو به حالت ویرایش فایل "csserver.cfg" بروید:
nano csserver.cfg در حال ویرایش فایل csserver.cfg
خط را پیدا کنید:
ip="0.0.0.0"و آدرس IP پیشنهادی را جایگزین می کنیم، در مورد من "192.168.0.166" است.
چیزی شبیه به این خواهد شد:
ip="192.168.0.166"کلید ترکیبی را فشار می دهیم:
Ctr + Xو بعد از پیشنهاد ذخیره روی:
Yما به پوشه کاربر "test" برمی گردیم:
cd ~و سعی کنید دوباره سرور را راه اندازی کنید. سرور اکنون باید بدون مشکل راه اندازی شود:
./csserver start شروع سرور
برای مشاهده اطلاعات دقیق تر از دستور زیر استفاده کنید:
./csserver details اطلاعات دقیق در مورد سرور
از پارامترهای مهم قابل توجه:
- IP سرور: 192.168.0.166:27015
- IP اینترنت: xxx.xx.xxx.xx:27015
- فایل پیکربندی: /home/test/serverfiles/cstrike/csserver.cfg
در این مرحله سرور بازی از قبل در شبکه محلی موجود است.
پیکربندی انتقال آدرس IP
بازی در شبکه محلی خوب است، اما بازی با دوستان از طریق اینترنت بهتر است!
برای ارسال آدرس IP که روتر از ارائه دهنده دریافت کرده است، از مکانیزم NAT استفاده می کنیم.
همچنین لازم به ذکر است که اکثر ISP ها از آدرس های IP پویا برای مشتریان خود استفاده می کنند.
برای راحتی و ثبات کار، دریافت یک آدرس IP ثابت مطلوب است.
از آنجایی که من یک روتر TP-Link Archer C60 دارم، مثالی از راه اندازی فورواردینگ می زنم، همانطور که در روتر من پیاده سازی شده است.
برای سایر روترها، من فرض میکنم که راهاندازی فورواردینگ مشابه است.
همه چیز در اینجا ساده است - شما باید برای دو پورت ارسال از آدرس IP خارجی به آدرس IP داخلی سرور را مشخص کنید:
- 27015
- 27005
در پنل مدیریت روتر من به این شکل است
پنل مدیریت روتر
تمام، پس از ذخیره تنظیمات روتر، سرور بازی در آدرس IP خارجی برای پورت های مشخص شده در شبکه در دسترس خواهد بود!
تنظیمات اضافی در نمونه CS 1.6
با استفاده از CS 1.6 به عنوان مثال، می خواهم نکات مفیدی را ارائه دهم.
دو فایل برای پیکربندی سرور وجود دارد
اولی اینجاست:
~/lgsm/config-lgsm/csserver/csserver.cfgمورد دوم اینجاست:
~/serverfiles/cstrike/csserver.cfgفایل اول شامل تنظیمات کلی مانند آدرس IP، نقشه برای اولین بوت سرور و غیره است.
فایل دوم شامل تنظیمات دستوری است که می تواند از طریق کنسول Counter-Strike اجرا شود، مانند "rcon_password" یا "sv_password".
در فایل دوم توصیه می کنم برای اتصال به سرور از طریق CVar "sv_password" رمز عبور و از طریق CVar "rcon_password" برای مدیریت از کنسول سرور تعیین کنید.
لیستی از تمام متغیرهای CVar را می توان در اینجا یافت
همچنین، به احتمال زیاد نیاز به نصب کارت های اضافی، به عنوان مثال "fy_pool_day" وجود خواهد داشت.
همه نقشههای CS 1.6 اینجا هستند:
~/serverfiles/cstrike/mapsنقشه لازم را پیدا می کنیم، آن را مستقیماً در سرور آپلود می کنیم (اگر در بایگانی است، آن را از حالت فشرده خارج کنید)، فایل را با پسوند ".bsp" به پوشه ای با فایل های "~/serverfiles/cstrike/maps" منتقل می کنیم و سرور را راه اندازی مجدد کنید
~./csserver restartبه هر حال، تمام دستورات سرور موجود را می توان به این صورت مشاهده کرد
~./csserverمجموع
من از نتیجه راضی هستم. همه چیز به سرعت کار می کند و تاخیر ندارد.
Linuxجیاسام تنظیمات اضافی زیادی دارد، مانند ادغام با تلگرام و اسلک برای اعلانها، اما برخی از قابلیتها هنوز نیاز به بهبود دارند.
به طور کلی، توصیه می کنم استفاده کنید!
منابع
DUP
همانطور که اشاره شد همه Synology NAS نمی توانند داکر کنند، در اینجا لیستی از دستگاه هایی وجود دارد که می توانند .
منبع: www.habr.com
