Пре него што почнете
Инсталирајте СтеамЦМД
Инсталирајте сервер Теам Фортресс 2
Конфигурисање
Покретање вашег сервера
Трчање са системд
Завршне напомене
Овај водич објашњава како да подесите Теам Фортресс 2 сервер на Арцх Линук-у. Претпостављам да сте пријављени са не-роот корисничким налогом који има судо приступ. Овај водич користи АУР за прављење пакета и ту операцију не треба изводити са роот налога.
Пре него што почнете
Веома је важно да имате multilibомогућено спремиште ако и само ако сте на 64-битном (амд64) серверу. Ако није омогућен, СтеамЦМД не може да се покрене, а не можете чак ни да преузмете серверске датотеке. Да бисте то урадили, морате декоментирати следеће редове у /etc/pacman.conf.
[multilib]
Include = /etc/pacman.d/mirrorlist
Ако користите 32-битни (и686) Арцх, можете безбедно да игноришете ово.
Инсталирајте СтеамЦМД
Постоји АУР пакет за СтеамЦМД и то је један од најлакших начина да инсталирате СтеамЦМД на Арцх. Међутим, постоји неколико чудних ствари у вези са тим:
- Све релативне путање су релативне за
/usr/share/steamcmd.
- Да бисте надоградили сам СтеамЦМД, морате бити роот.
Ако сте на 64-битном серверу, морате инсталирати пакет lib32-gcc-libs.
sudo pacman -Sy lib32-gcc-libs
Сада морамо да направимо пакет. Користећи цурл, преузмите тарбалл за пакет.
curl -O http://media.steampowered.com/installer/steamcmd_linux.tar.gz
Када се преузимање заврши, распакујте и промените креирани директоријум.
tar -xvzf steamcmd.tar.gz
cd steamcmd
Сада, користећи макепкг, направите пакет.
makepkg -ci
Ако нисте проследили -iзаставицу команди макепкг, користите пацман да је инсталирате.
sudo pacman -U *.pkg.tar.xz
Сада имате инсталиран СтеамЦМД и спреман за преузимање Теам Фортресс 2 сервера.
Инсталирајте сервер Теам Фортресс 2
Овај водич користи засебног корисника за покретање сервера, тако да ћемо креирати новог тф2 корисника и групу са сопственим кућним фолдером у /var/lib.
sudo groupadd tf2
sudo mkdir /var/lib/tf2
sudo useradd -d /var/lib/tf2 -g tf2 -s /bin/bash tf2
sudo chown tf2.tf2 -R /var/lib/tf2
Сада да инсталирате сервер.
sudo -u tf2 steamcmd +login anonymous +force_install_dir ~tf2/server +app_update 232250 validate +quit
Када се преузимање заврши, имате инсталиран сервер.
Конфигурисање
Иако можете да покренете сервер, требало би да урадите неку конфигурацију како сервер не би био превише генерички. Главна датотека у коју постављамо подешавања је server.cfgдатотека. Испод је врло основна server.cfgдатотека.
Да бисте отворили/креирали датотеку, користите свој омиљени уређивач. Овде се користи вим, али можете користити било који уређивач текста као што је нано.
sudo -u tf2 vim ~tf2/server/tf/cfg/server.cfg
Додајте следеће. Више подешавања можете пронаћи на Теам Фортресс 2 вики и Валве страници за програмере. Обавезно промените нека подешавања како би одговарала вашим потребама.
hostname "Server Name"
rcon_password "password"
sv_password ""
sv_contact "email@example.com"
sv_tags ""
sv_region "255"
sv_lan "0"
exec banned_user.cfg
exec banned_ip.cfg
writeid
writeip
Покретање вашег сервера
Познато је да вам је потребан мултиплексер као што је ГНУ Сцреен или тмук да бисте покренули ваш сервер без надзора. Овде ћемо користити тмук за покретање сервера, али ако више волите и знате како да користите екран, слободно га користите.
Инсталирајте тмук користећи пацман.
sudo pacman -Sy tmux
Можете покренути сервер са следећом командом. Можете променити мапу и макплаиерс ако желите.
sudo -u tf2 tmux new-session -d -s tf2-console -d '~tf2/server/srcds_run -console -game tf +map cp_dustbowl +maxplayers 24'
Ако икада будете морали да се прикључите на конзолу, покрените следеће.
sudo -u tf2 tmux attach -t tf2-console
Можете оставити конзолу сервера тако што ћете укуцати ЦТРЛ + Б , потом те кључеве, а затим притиском Д .
Трчање са системд
Покретање сервера са системд-ом је згодно из много разлога. Главна је да можете да га покренете када се ВПС покрене. Ово захтева писање скрипте и системске јединице. Иако је ово добра идеја, није обавезна .
Прва ствар коју треба написати је почетна скрипта. Да бисте креирали скрипту, користите свој омиљени уређивач. Овде се користи вим, али можете користити било који уређивач текста као што је нано.
sudo -u tf2 vim ~tf2/server/tf2.sh
Додајте следеће.
#!/bin/sh
USER=$2
if [ -z $2 ]; then
USER="tf2"
fi
case "$1" in
start)
sudo -u $ tmux new-session -d -s tf2-console -d '/var/lib/tf2/server/srcds_run -console -game tf +map cp_dustbowl +maxplayers 24'
;;
stop)
sudo -u $ tmux send-keys -t tf2-console 'say Server shutting down in 10 seconds!' C-m
sleep 10
sudo -u $ tmux send-keys -t tf2-console 'quit' C-m
sleep 5
;;
*)
echo "Usage: $0 user"
esac
exit 0
Сада морате да направите системску јединицу. Да бисте креирали јединицу, користите свој омиљени уређивач. Овде се користи вим, али можете користити било који уређивач текста као што је нано.
sudo vim /usr/lib/systemd/system/tf2.service
Додајте следеће.
[Unit]
Description=Team Fortress 2 Server (SRCDS)
After=local-fs.target network.target
[Service]
ExecStart=/var/lib/tf2/server/tf2.sh start
ExecStop=/var/lib/tf2/server/tf2.sh stop
Type=forking
[Install]
WantedBy=multi-user.target
Сада се уверите да је tf2.shдатотека извршна.
sudo chmod +x ~tf2/server/tf2.sh
Након свега тога, можете користити systemctlза покретање и заустављање сервера. Такође га можете користити да покренете при покретању.
Почети:
sudo systemctl start tf2.service
Да се заустави:
sudo systemctl stop tf2.service
Рестартовати:
sudo systemctl restart tf2.service
Да бисте омогућили при покретању:
sudo systemctl enable tf2.service
Да бисте онемогућили при покретању:
sudo systemctl disable tf2.service
Иако системд управља покретањем и заустављањем сервера, и даље можете приступити конзоли помоћу следеће команде:
sudo -u tf2 tmux attach -t tf2-console
Завршне напомене
СтеамЦМД је инсталиран у области где само роот може да мења датотеке (погледајте напомену у одељку „Инсталирајте СтеамЦМД“). Ако икада будете морали да надоградите сам СтеамЦМД, само га покрените као роот.
sudo steamcmd +quit
Ако треба да ажурирате сервер. Прво зауставите сервер, а затим користите СтеамЦМД за ажурирање (користећи исту команду за инсталацију).
sudo systemctl stop tf2.service
sudo -u tf2 steamcmd +login anonymous +force_install_dir ~tf2/server +app_update 232250 validate +quit
sudo systemctl start tf2.service
Постоји много више тема о конфигурацији које нису покривене у овом водичу. Ако вам треба више информација, погледајте Теам Фортресс 2 Вики и Валве Девелопер Вики.