必要なもの
ここではUbuntuを使っていきます。僕は好んでCentOS 5.xを使ってます。
基本的にLinuxのOSは色々あるので、FedoraCoreなり、Vine Linuxとかでもいいと思います。
RealTimeカーネルを手軽に導入したいなら、Ubuntuが一番気楽にできるのも理由です。
Ubuntuは以下からダウンロードできます。今回導入したのはServer版の10.04.1ですが、最新版でも多分問題ありません。
http://www.ubuntu.com/server/get-ubuntu/download
ディスクイメージが手に入るので、CDかDVDに焼きましょう。
作成したディスクを使ってUbuntuを導入します。
Ubuntuのセットアップ作業をする際にユーザー名とパスワードを指定します。
ログイン時に使うので覚えておきます。
今回は自分のアカウント内に、hldsというディレクトリを作り、そこにhldsを導入します。
/home/アカウント名/hlds/cstrike というパスとなるでしょう。
LinuxにOpenSSH(server)を入れてWindows+Poderosaなどでリモートアクセスが出来る環境を作るとラクで良いです。
Windows上でコマンドをコピペするだけで鯖が出来ると思います。
なので、以下のコマンドをやっておきます。(リモートアクセスを使わないなら必要ないです)
sudo apt-get update sudo apt-get install openssh-server sudo apt-get install vim
sudoをやった時にでるパスワード確認は、最初に設定したパスワードと同じです。
SSH鯖はapt-getと同時にポート開放をやってくれます。
デフォルトで入っているviはviもどきなので、お勧めしません。生粋のviユーザでもない限りvimがいいです。
この辺はどのLinuxでも同じ手順のはずです。
サーバを起動しログインしたら早速HLDSを導入します。
cd ~ mkdir hlds cd hlds wget http://storefront.steampowered.com/download/hldsupdatetool.bin chmod +x hldsupdatetool.bin ./hldsupdatetool.bin
hldsupdatetool.binは圧縮されており、解凍にgunzipが必要になります。(Ubuntuには入ってるのでこのままでOK)
解凍しても大丈夫か?と聞いてくるので、[y]で答えます。
./steam ./steam -command update -game cstrike -dir .
1度目の実行でsteamのアップデート、2度目の実行で実際にCS1.6の鯖データをダウンロードします。
cd hlds ./hlds_run -console -game cstrike -port 27015 +map de_dust2 +maxplayers 16
とやって、サーバが立ち上がったら導入は完了です。quitするか、CTRL+Cで終了できます。
外部に公開するときは、ポートを開放する必要があります。
大体はルータのポートマッピングが必要です。(指定したportに対するアクセスはどのマシンへのアクセスかを決める作業)
この辺はルータによって異なるので、"(ルータの型番名) ポート開放" なりで調べると大体出てくると思います
Ubuntuには標準のファイアウォールがあります。使う場合は以下のようにしてポートを開放します。
sudo ufw enable sudo ufw allow 27015/udp
逆に無効にするには、
sudo ufw disable
とやります。詳しくはutwコマンドについて調べてください。
いちいち起動するのは面倒な事です。
簡単な起動/停止するためのスクリプトを書いておきます。構成は以下の感じになるでしょう
/home/アカウント名/
├hlds.sh // 起動スクリプト
└hlds/cstrike/... // 鯖本体
こちらからダウンロードできます。http://hlds.rying.net/arc/hlds.sh
中身の一部は変更する必要があるかもしれません。使い方は以下になります。
起動コマンドの意味を簡単に説明します。
サーバ起動時に自動的に起動できるようにします。
/etc/rc.local を編集するのですが、僕は本当にコレでいいのか不安を持ってます。
#!/bin/sh cd /home/アカウント名 sudo -u アカウント名 ./hlds.sh start cd ~ exit 0
確認するにはsudo reboot等を行った後に、自動的に起動されていればOKです。
レスポンスの改善を期待できます。パッケージから導入するとラクです。
sudo apt-get install linux-rt
デフォルトでは現行のカーネルを使ってしまうので、デフォルトを切り替える。
/boot/grub/grub.cfgが、ブート時に読み込まれるファイル。
リードオンリーになってるので、書き込み許可を与えておく
sudo chmod +w /boot/grub/grub.cfg
編集すると、中身の下のほうに、"menuentry 'Ubuntu, with Linux 2.6.31-11-rt' ...."とある。
"Linux 2....-rt" がRealTimeカーネルの目印です。
menuentryの数だけ起動時に列挙される。今回はLinux 2.6.31-11-rtが3番目のmenuentryにあった。
上から0,1,2...と数えるので、ここでは3番目は"2"となるので以下ような箇所を2に書き換える。
set default="2"
書き換えたら保存して、書き込み許可を剥奪し、ちゃんとリードオンリーに戻す。
sudo chmod -w /boot/grub/grub.cfg
再起動は sudo reboot