Sediakan Pelayan Team Fortress 2 di Arch Linux

Tutorial ini menerangkan cara menyediakan pelayan Team Fortress 2 di Arch Linux. Saya menganggap bahawa anda log masuk dengan akaun pengguna bukan root yang mempunyai akses sudo. Tutorial ini menggunakan AUR untuk membina pakej, dan operasi itu tidak boleh dilakukan dari akaun root.

Sebelum awak bermula

Sangat penting bahawa anda multilibmengaktifkan repositori jika dan hanya jika anda menggunakan pelayan 64-bit (amd64). Sekiranya tidak diaktifkan, SteamCMD tidak dapat dijalankan dan anda bahkan tidak boleh memuat turun fail pelayan. Untuk melakukan ini, anda mesti melepaskan baris berikut /etc/pacman.conf.

[multilib]
Include = /etc/pacman.d/mirrorlist

Sekiranya anda menggunakan Lengkungan 32-bit (i686), anda boleh mengabaikannya dengan selamat.

Pasang SteamCMD

Terdapat pakej AUR untuk SteamCMD dan ini adalah salah satu kaedah termudah untuk memasang SteamCMD di Arch. Terdapat beberapa perkara aneh mengenainya:

  • Semua jalan relatif relatif kepada /usr/share/steamcmd.
  • Untuk menaik taraf SteamCMD itu sendiri, anda mesti menjadi root.

Sekiranya anda menggunakan pelayan 64-bit, anda mesti memasang pakej lib32-gcc-libs.

sudo pacman -Sy lib32-gcc-libs

Sekarang kita mesti membina pakej. Dengan menggunakan ikal, muat turun tarball untuk pakej.

curl -O http://media.steampowered.com/installer/steamcmd_linux.tar.gz

Setelah muat turun selesai, ekstrak dan ubah ke direktori yang dibuat.

tar -xvzf steamcmd.tar.gz
cd steamcmd

Sekarang, dengan menggunakan makepkg, bina bungkusannya.

makepkg -ci

Sekiranya anda tidak menyampaikan -ibendera ke perintah makepkg, gunakan pacman untuk memasangnya.

sudo pacman -U *.pkg.tar.xz

Anda sekarang telah memasang SteamCMD dan bersedia untuk memuat turun pelayan Team Fortress 2.

Pasang Pelayan The Team Fortress 2

Panduan ini menggunakan pengguna yang berasingan untuk menjalankan pelayan, jadi kami akan membuat pengguna dan kumpulan tf2 baru dengan folder rumahnya sendiri /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

Sekarang untuk memasang pelayan.

sudo -u tf2 steamcmd +login anonymous +force_install_dir ~tf2/server +app_update 232250 validate +quit

Setelah selesai memuat turun, anda telah memasang pelayan.

Mengkonfigurasi

Walaupun anda boleh menjalankan pelayan, beberapa konfigurasi harus dilakukan agar pelayan tidak terlalu umum. Fail utama yang kami tetapkan adalah server.cfgfail. Berikut adalah server.cfgfail yang sangat asas .

Untuk membuka / membuat fail, gunakan editor kegemaran anda. Di sini vim digunakan, tetapi anda boleh menggunakan penyunting teks seperti nano.

sudo -u tf2 vim ~tf2/server/tf/cfg/server.cfg

Tambahkan perkara berikut. Lebih banyak tetapan boleh didapati di halaman pembangun Team Fortress 2 dan Valve. Pastikan anda mengubah beberapa tetapan agar sesuai dengan keperluan anda.

hostname "Server Name"
rcon_password "password"
sv_password ""
sv_contact "[email protected]"
sv_tags ""
sv_region "255"
sv_lan "0"

exec banned_user.cfg
exec banned_ip.cfg
writeid
writeip

Menjalankan Pelayan Anda

Telah diketahui bahawa anda memerlukan multiplexer seperti GNU Screen atau tmux untuk menjalankan pelayan anda tanpa pengawasan. Di sini kita akan menggunakan tmux untuk menjalankan pelayan, tetapi jika anda lebih suka dan tahu bagaimana menggunakan skrin, jangan ragu untuk menggunakannya.

Pasang tmux dengan menggunakan pacman.

sudo pacman -Sy tmux

Anda boleh memulakan pelayan dengan arahan berikut. Anda boleh menukar peta dan pemain maksimum jika dikehendaki.

sudo -u tf2 tmux new-session -d -s tf2-console -d '~tf2/server/srcds_run -console -game tf +map cp_dustbowl +maxplayers 24'

Sekiranya anda perlu melekat pada konsol, jalankan yang berikut.

sudo -u tf2 tmux attach -t tf2-console

Anda boleh meninggalkan konsol pelayan dengan menaip CTRL + B kemudian melepaskan mereka kunci dan kemudian menekan D .

Berjalan Dengan sistemd

Menjalankan pelayan dengan systemd adalah mudah kerana banyak sebab. Yang utama ialah anda dapat memulakannya ketika VPS bermula. Ini memerlukan skrip dan unit sistemd ditulis. Walaupun ini adalah idea yang baik, ia adalah pilihan .

Perkara pertama yang ditulis ialah skrip permulaan. Untuk membuat skrip, gunakan editor kegemaran anda. Di sini vim digunakan, tetapi anda boleh menggunakan penyunting teks seperti nano.

sudo -u tf2 vim ~tf2/server/tf2.sh

Tambahkan perkara berikut.

#!/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

Sekarang anda perlu membuat unit systemd. Untuk membuat unit, gunakan editor kegemaran anda. Di sini vim digunakan, tetapi anda boleh menggunakan penyunting teks seperti nano.

sudo vim /usr/lib/systemd/system/tf2.service

Tambahkan perkara berikut.

[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

Sekarang pastikan tf2.shfail boleh dilaksanakan.

sudo chmod +x ~tf2/server/tf2.sh

Selepas semua itu, anda boleh menggunakan systemctluntuk memulakan dan menghentikan pelayan. Anda juga boleh menggunakannya untuk memulakannya semasa boot.

Untuk mula:

sudo systemctl start tf2.service

Untuk berhenti:

sudo systemctl stop tf2.service

Untuk memulakan semula:

sudo systemctl restart tf2.service

Untuk mengaktifkan semasa boot:

sudo systemctl enable tf2.service

Untuk melumpuhkan semasa boot:

sudo systemctl disable tf2.service

Walaupun systemd mengendalikan memulakan dan menghentikan pelayan, anda masih boleh mengakses konsol dengan arahan berikut:

sudo -u tf2 tmux attach -t tf2-console

Catatan Akhir

SteamCMD dipasang di kawasan di mana hanya root yang dapat mengubah fail (lihat catatan dalam "Pasang SteamCMD"). Sekiranya anda perlu meningkatkan SteamCMD itu sendiri, jalankan sebagai root.

sudo steamcmd +quit

Sekiranya anda perlu mengemas kini pelayan. Pertama hentikan pelayan dan kemudian gunakan SteamCMD untuk mengemas kini (menggunakan arahan yang sama untuk memasang).

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

Terdapat banyak lagi topik konfigurasi yang tidak dibahas dalam tutorial ini. Sekiranya anda memerlukan lebih banyak maklumat, sila rujuk Team Fortress 2 Wiki dan Valve Developer Wiki.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut