Greetings!
Այսպիսով, բոլոր հայտնի պատճառներով մենք պետք է ավելի շատ ժամանակ անցկացնենք տանը՝ մոնիտորի դիմաց:
Իրերի այս վիճակում պետք է հիշել անցած օրերի գործերը։
Ինչպես արդեն պարզ է այս հոդվածի վերնագրից, մենք կխոսենք Synology NAS-ը որպես խաղի սերվեր ստեղծելու մասին:
Achtung — հոդվածում շատ սքրինշոթներ կան (սքրինշոթները կարելի է սեղմել):
Նախքան սկսելը, ահա մեզ անհրաժեշտ գործիքների ցանկը.
Այս պահին (2020թ. ապրիլ) LinuxGSM-ում հասանելի է 105 խաղային սերվեր:
Ամբողջ ցանկը կարելի է դիտել այստեղ
LinuxGSM խաղի սերվերն ունի ինտեգրում
Docker-ի տեղադրում Synology NAS-ում
Այս փուլում ամեն ինչ պարզ է, գնացեք Synology-ի ադմինիստրատորի վահանակ, այնուհետև անցեք «Փաթեթի կենտրոն», գտեք և տեղադրեք Docker-ը:
Փաթեթ կենտրոն
Մենք գործարկում ենք այն և տեսնում նման բան (ես արդեն տեղադրել եմ այս կոնտեյները)
Բեռնարկղերի կառավարում
Այնուհետև անցեք «Ռեեստր» ներդիր, մուտքագրեք «gameservermanagers» որոնման մեջ, ընտրեք «gameservermanagers/linuxgsm-docker» պատկերը և սեղմեք «Ներբեռնում» կոճակը:
gameservermanagers/linuxgsm-docker
Այնուհետև անցեք «Պատկեր» ներդիր, սպասեք պատկերի բեռնման ավարտին և սեղմեք «Գործարկել» կոճակը:
Պատկերը բեռնվում է
Բացվող պատուհանում դուք պետք է գնաք «Ընդլայնված կարգավորումներ», այնուհետև «Ցանց» ներդիր և նշեք «Օգտագործեք նույն ցանցը որպես Docker Host» վանդակը:
Մենք մեր հայեցողությամբ փոխում ենք մնացած կարգավորումները, օրինակ, օրինակ՝ «Տարայի անվանումը»:
Կոնտեյների անվանումը - ինչպես կարող եք կռահել, սա տարայի անունն է, այն ավելի ուշ օգտակար կլինի: Խորհուրդ եմ տալիս լակոնիկ անվանել, օրինակ, թող լինի «թեստ»:
Հաջորդը, մի քանի անգամ սեղմեք «Դիմել» կամ «Հաջորդ» կոճակը, մինչև կարգավորումն ավարտվի:
Ընդլայնված Կառավարում
Գնացեք «Բեռնարկղ» ներդիր և տեսեք նոր գործող (եթե ոչ, գործարկեք) կոնտեյներ:
Այստեղ դուք կարող եք դադարեցնել, սկսել, ջնջել և կատարել այլ գործողություններ:
LinuxGSM-ի համար Docker կոնտեյների կարգավորում
Նախքան SSH-ի միջոցով ձեր Synology NAS-ին միանալը, դուք պետք է ակտիվացնեք SSH մուտքը ադմինիստրատորի վահանակում:
Միացում SSH-ի միջոցով
Հաջորդը, դուք պետք է օգտագործեք Synology NAS սերվերի ներքին IP հասցեն SSH-ի միջոցով միանալու համար:
Գնացեք տերմինալ (կամ որևէ այլ անալոգ, օրինակ Windows-ի տակ սա է
ssh user_name@IP
Իմ դեպքում դա այսպիսի տեսք ունի
ssh [email protected]
Synology NAS սերվերի IP հասցեն
Թույլտվությունից հետո դուք պետք է գործարկեք հրամանը, որպեսզի գնաք դեպի «փորձարկման» կոնտեյներ (Docker-ի կարգավորումներում «Տարայի անունը» դաշտը) «արմատ» օգտագործողի տակ:
sudo docker exec -u 0 -it test bash
Միացում Docker-ին
Նախքան LinuxGSM-ը տեղադրելը, դուք պետք է որոշ քայլեր կատարեք:
Սահմանեք գաղտնաբառ «արմատ» օգտագործողի համար
passwd
Հաջորդիվ մենք կթարմացնենք բոլոր փաթեթները
apt update && apt upgrade && apt autoremove
Սպասում ենք գործընթացի ավարտին...
Փաթեթների թարմացում
Հաջորդը, տեղադրեք անհրաժեշտ կոմունալ ծառայությունները
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-full
Քանի որ «արմատի» տակ տարբեր գործողություններ կատարելը լավագույն գաղափարը չէ, եկեք ավելացնենք նոր օգտվողի «թեստ»:
adduser test
Եվ եկեք թույլ տանք նոր օգտվողին օգտագործել «sudo»
usermod -aG sudo test
Անցեք նոր օգտվողի «փորձարկման»
su test
Կոմունալ ծառայությունների տեղադրում
LinuxGSM-ի տեղադրում և կարգավորում
Եկեք նայենք LinuxGSM-ի ստեղծման օրինակին, օգտագործելով «Counter-Strike» կամ «CS 1.6» օրինակը:
Գնացեք «Հակահարված» հրահանգների էջ
«Կախվածություններ» ներդիրում պատճենեք կոդը «Ubuntu 64-bit» տակ:
Գրելու պահին այս կոդը այսպիսի տեսք ունի.
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
Եթե ամեն ինչ նորմալ ընթանա, մենք կտեսնենք թանկարժեք «Տեղադրումն ավարտված է»:
Տեղադրումն ավարտված է:
Մենք գործարկում ենք... և տեսնում ենք «Գտնվել են բազմաթիվ IP հասցեներ» սխալը:
./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
Վերադառնալ օգտվողի «փորձարկման» թղթապանակ.
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 մեխանիզմը:
Տեղին կլինի նաև նշել, որ պրովայդերների մեծ մասն օգտագործում է դինամիկ 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
Լրիվ
Ես գոհ եմ արդյունքից: Ամեն ինչ արագ է աշխատում և չի ուշանում:
LinuxGSM-ն ունի բազմաթիվ լրացուցիչ կարգավորումներ, օրինակ՝ ինտեգրում Telegram-ի և Slack-ի հետ ծանուցումների համար, սակայն որոշ գործառույթներ դեռևս բարելավումներ են պահանջում:
Ընդհանուր առմամբ, ես դա խորհուրդ եմ տալիս:
Տեղեկատվության աղբյուրներ
DUP
Ինչպես նշվեց
Source: www.habr.com