HL/CSの基本的な起動方法から終了方法(FreeBSD/Linux)
目次
1. 起動させるために必要な最低限のコマンド
2. コマンドラインオプション
3. サーバを終了させるコマンド
4. 筆者が使用しているサーバ起動コマンド
1.起動させるために必要な最低限のコマンド
FreeBSD/Linuxではhlds_runというコマンドを打つことで、サーバを起動させることができます。ただし、最低限「ゲームの種類」、「開始するマップ」を指定しなければいけません。以下にcstrikeサーバでde_dust2からサーバを起動する場合の方法を書きます。
>ls
InstallRecord.blob dod hlds_amd64 linuxreadme.txt
autorun.sh engine_amd.so hlds_i486 platform
autotv.sh engine_amd64.so hlds_i686 proxy_i386.so
core_i386.so engine_i486.so hlds_run reslists
cstrike engine_i686.so hltv ricochet
debug.cmds filesystem_stdio_amd64.so hltv.cfg steam
debug.log filesystem_stdio_i386.so libSteamValidateUserIDTickets_amd64.so tfc
dmc hlds_amd libSteamValidateUserIDTickets_i386.so valve
まずhlds_runがある場所にいることを確認。
>./hlds_run -game cstrike +map de_dust2
最後の赤コマンドを打つことで、サーバが無事起動することになります。

2.コマンドラインオプション
上でサーバを起動させるときに使用した./hlds_runコマンドですが、これにはいろいろなオプションをつけ、さまざまな設定のサーバを作り出すことができます。ここでは./hlds_runに使用できるオプションを有用そうなものを以下の表に書きます。なお表に書かれているオプション名の機能を使用したい場合には、次のように書きます。
例)
./hlds_run +maxplayers 20
./hlds_run -game tfc
./hlds_run -debug
./hlds_run -game tfc -debug +maxplayers 20
オプション名 引数 意味
-game cstrike カウンタストライクのサーバを起動する
czero カウンタストライクコンディションゼロを起動する
tfc team fortress classicサーバを起動する
dmc death match classicサーバを起動する
dod Day of Defeatサーバを起動する
ricochet ricochetサーバを起動する
valve halflifeサーバを起動する
-port ポート番号 サーバで使用するポート番号を指定する場合に使用する(本オプションを指定しない場合には27015が使用される)
-debug 無し デバッグモードでサーバを起動(通常は使用しない)
-debuglog ログファイル名 デバッグモード動作の際に書かれるログファイル名を指定する
-norestart 無し サーバが何らかの原因で落ちた場合に、自動でリスタートさせない
(通常サーバが落ちる時は何らかのエラーが発生しているため、リスタートさせないほうがいい)
-pidfile プロセスIDファイル サーバプログラムのプロセスIDを記録するファイル名を指定する(通常は使用しない)
-binary ./hlds_i486 i486互換CPUでサーバを動かす際に指定(Pentium以前のCPU)
./hlds_i686 i686互換CPUでサーバを動かす際に指定(Pentium Pro,Pentium II,Pentium III,Pentium4)
CPUがi686対応であれば、i486よりも高速に動作させることができる
./hlds_amd Athlon,Duronでサーバを動かす際に指定(恐らく(E)3DNow!テクノロジを使用するものと推測)
./hlds_amd64 Athlon64,Athlon64 FXでサーバを動かす際に指定
-timeout 秒数 サーバが落ちた場合に、指定した秒数後に再起動させる
-gdb gdbファイル サーバが落ちた場合のデバッグに指定したgdbを使用する(通常は使用しない)
-steamerr 無し STEAMのアップデートに失敗した場合にサーバを終了する
(STEAMアップデートは絶対に適応したほうが良いため(パフォーマンスの向上、セキュリティの修正などが入るため)
有効にしておくことをお勧めする)
-steamuser steamユーザ名 STEAMのアップデートなどで使用するユーザ名を指定する
-steampass パスワード STEAMのアップデートなどで使用するユーザのパスワードを指定する
(既にここで書かれているように-remember_passwordオプションつきでsteamを動かした場合には
パスワードは保存されているため、本オプションをあえて使用する必要はない)
-autoupdate 無し サーバ起動時に自動的にアップデートを実行する(おすすめ)
-ignoresigint 無し ctrl+cなどでサーバが勝手に終了するのを防ぐ(SIGINTを無視する)
-notrap 無し trapを使用しない。古いロックファイルを自動的に削除されるのを防ぐ(通常は使用しない)
-pingboost 1か2か3 pingを1,2,3の順でよくする。ただしCPU負荷が増えるため、CPU負荷と最大人数の両方をみて
最適な値を設定するといい。最適値は現在データを集めていないため、わからない。
-secure 無し サーバのVAC(Valve Anti Cheat)を有効にする(お勧め)
-insecure 無し サーバのVAC(Valve Anti Cheat)を無効にする(Cheating-Death導入時に必要。それ以外では強くお勧めしない)
+maxplayers 1〜32 サーバでプレーできる最大人数を指定する
+map 存在するマップ名 指定したマップでサーバを起動する
+log onまたはoff ログを取る(on)、取らない(off)を指定する
+ip ipアドレス 指定したIPアドレスでサーバを立てることを宣言する(通常は使用しない)

3.サーバを終了させるコマンド
 単純にコンソールから
quit
と入力することでサーバを正常に終了させることができます。ctrl+c(ctrlキーとcを同時押し)でも終了できますが、正規の終了方法ではないため、ログファイルなどに影響が出ます。

4.筆者が使用しているサーバ起動コマンド
以下に筆者が使用しているサーバ起動コマンドを載せます
./hlds_run -game cstrike +map de_dust2 -secure -binary ./hlds_i686 +maxplayers 23 +log on -autoupdate -norestart -steamerr -port 27015 -pingboost 3

ご感想・ご意見は次のところまで : 管理者