ubuntuでのOpenSIM

2021年4月9日

最近フレがOpenSIMを構築したいと言ってたんだけど、
レンタルのVPSサービスはCentOSが多いのに比べ自前PCへのインストールはubuntuが多いのでubuntuでの環境構築を残してみる。(ubuntu 12.04 server での記事になります)

★OpenSIM以前の ubuntu server 自身の設定
http://boomboom-mix.net/modules/xpress/?p=774

★monoのインストール
OpenSIMではMSの .NET Framework の技術が使われているので mono が必須なんだけど
(ここでもWindowsびいきなのが^^;)

[code]sudo apt-get install mono-complete[/code]

★OpenSIMのダウンロード
ダウンロードですがwgetコマンドでダウンロードして解凍してもいいんだけど、
普段Windowsしか使ってない人はCUI環境に慣れてないせいでフォルダ階層がごっちゃになりやすくファイルを見失いがちなのであらかじめWindowsPCでダウンロードして解凍しておき
http://boomboom-mix.net/modules/wpress/?p=774
の設定でsshdは動いてると思うのでWinSCPあたりのソフトでWindows側から転送してやると楽です。
転送先はubuntuにログインしてるユーザーのホームディレクトリならどこでも良いと思います。
例)testという名前のLinuxユーザーの場合
/home/test/opensim

★MySQLのインストールや設定(ストレージにMySQLを使う場合のみ)
ubuntuへのMySQLのインストールはググればくさるほど記事があるので割愛します。
MySQLへのログイン

[code]mysql -u root -p[/code]

[code]mysql> create database opensim;[/code]

で、新規データベースを作成し

[code]mysql> grant all on opensim.* to opensim@localhost identified by 'password’;[/code]

で、新規で作ったDBに対し全権限付きのユーザーを作成する

[code]mysql> grant all privileges on opensim.* to 'opensim’@’localhost’;[/code]

[code]mysql> flush privileges;[/code]

MySQLからのログアウト

[code]mysql> exit[/code]

なぜ簡単なSQLiteより僕がわざわざMySQLを使うかというと
SIMのデータに何かあった時のために日頃からmysqladmin等で保守ができる
バックアップとるだけならSQLiteでもopensim.dbをコピーしておけばいいだけだが、
MySQLなら中身のデータの参照や変更もできる

★設定ファイルの編集
/bin/config-include/GridCommon.ini を開き編集する。
・SQLiteを使用する場合は触る必要なし
・MySqlを使用する場合以下の作業をする(セミコロンに注意)

[code];Include-Storage = “config-include/storage/SQLiteStandalone.ini";[/code]

[code]StorageProvider = “OpenSim.Data.MySQL.dll"
ConnectionString = “Data Source=localhost;Database=opensim;User ID=opensim;Password=password;"[/text]

passwordの部分にデータベースのパスワードを入力して保存する

/bin/opensim.ini を開き編集する。
メガリージョンを作る予定があるなら

[code];CombineContiguousRegions=false[/code]

のセミコロンを消して falsetrue にする。

[code];http_listener_port 9000[/code]

9000 を使用しているポート番号に変更する。

★OpenSIMの起動
cd コマンドでbinディレクトリへ移動します。
例)

[code]cd home/test/opensim/bin[/code]

移動したらmonoコマンドで実行します。

[code]mono OpenSim.exe[/code]

64bitの場合は

[code]mono OpenSim.32BitLaunch.exe[/code]

初回起動時はリージョン等の設定入力が出てくるので以下のページを参考に設定してください。
設定 – OpenSim

停止させる場合は

[code]quit[/code]

★バックグラウンド起動
/etc/init.d にosgrid という名前のファイルを作り内容に以下のファイルの内容を貼り付ける
osgrid.txt
注)OSgridの導入先パス、起動ユーザー名、起動ファイル名(64bitの場合実行ファイル名も)、function library名は環境に合わせて変えること

[code]chmod 755 /etc/init.d/osgrid[/code]

で実行権限を付与したら

[code]/etc/init.d/osgrid start[/code]

で起動

★サーバーコマンド(自分が使いそうなもののみ抜粋)
複数SIMを稼働時に個別にSIMを指定して設定を変えたいケースもあるのでリージョン指定コマンド
change region [リージョン名]
change region [root] (root を指定してやるとまた全SIM選択状態になる)

SIM内通知
alert [通知メッセージ]

SIM BAN
kick user <first> <last> [message]

OARファイルを読み込ませる(読み込ませるファイルのパスはopensimのbinフォルダ基点)
load oar [filename]

OAR保存
save oar [filename]

XMLファイル読み込み
load xml2 [filename]

XMLファイル保存
save xml2 [filename]

冒頭で書いたフレはOSGridへのOpenSIM接続を希望みたいなのでいつ質問がきても答えられるように
さくっと自前ubuntuマシンでOSGridを利用したOpenSIMを動かしてみた。

Linux

Posted by boomboom