2012自宅鯖更改4:サーバー環境構築時の忘備録

| コメント(0) | トラックバック(0)
現在稼働中のサーバーですが、セットアップを行う際に一筋縄ではいかなかった所を忘れないよう記録として残します。
次回、同様なセットアップをする際に参考になれば...。

環境構築しながらメモした内容の転記なので、まとまってなくて見難いです。
○ホストOSの設定
サーバーOS(2008R2やWHSなどなど)を使用する場合、セットアップ直後はサーバーとして不要なサービスが停止していたり、インストールされていなかったりするので使いやすいように対応する。
Windows Server 2003 / 2008 をデスクトップOSとして使うまとめWiki
半額になった『Windows Home Server2011』をウィンドウズ7として使う!
などが参考になる。(WHS使用時のライセンス問題は自己責任で...)

重要なものを幾つかピックアップ。
・ディスプレードライバー
機能の追加から
 .NET Framework 3.5.1
 デスクトップエクスペリエンス
をインストールし、Themeサービスを起動することで適用可能になる。
また、IntelHD GraphicsドライバーでQuickSyncVideoを使用できるようにするためにはドライバセットアップファイルの書き換えが必要です。
こちら(こまぷろぐ)のサイトを参考に作業した所、問題なく適用できました。QSV自体は試していませんが...

手順は、
  1. IntelHDGraphicsドライバーのZip版をダウンロード
  2. 解凍し、Setup.ifをテキストエディターで開く
  3. MSDK20,MSDK30のところでサーバーOSだったときはインストールしない条件となっているので、書き換える
IntelHDG.png

...... AND NOT IsOS(WIN2008,WIN2008_MAXSP) AND NOT IsOS(WIN2008_R2,WIN2008_R2_MAXSP)
となっているので、AND以下を削除。
あとは通常通りインストールすれば導入できるはず。

・ネットワークドライバー導入
ASUSマザーだからなのか、IntelのオンボードNICだからなのか、自動で適用されそうなものなのにインストールされないばかりか、デバイスが見つからずにインストール出来ないという自体に陥った。
解決策は過去エントリ参照。
別途PCIeスロットに挿したIntel Gigabit CT カードは問題なかったが...。
蟹チップなども問題が起こりにくいようだ?

・サウンド
WindowsAudioサービスを自動起動にする。

・リモートデスクトップ接続時のサウンド再生
グループポリシーにて設定。(ファイル名を指定して実行で gpedit.msc)
コンピューターの構成→管理用テンプレート→Windowsコンポーネント→リモートデスクトップ
の中にある。

・パスワードの長さ/複雑さ制限の解除
OSインストール時はいったん適当なパスワードでAdministratorを作成し、gpedit.mscを起動。
 コンピューターの構成>Windowsの設定>セキュリティの設定>アカウントポリシー>パスワード
から解除する。

・IEのセキュリティ解除
標準では全くネットブラウジングができないレベルなので、制限を解除する。
サーバーマネージャーのトップ画面右下、IE ESCをOFFにするだけ。
あとは必要に応じてセキュリティレベルをIEのオプション設定で下げる。

・無線LAN
WLAN AutoConfigサービスを動かさないとAPを検出できない。
機能の追加 でワイヤレスLANサービスを追加する。

・ドライブルートへの書き込み権限
ルート直下に書き込むときに毎回管理権限の確認が表示されるので、USERSグループに変更権を付与する。

・WindowsUpdateがうまく動かない時
下記コマンドを実行することでうまくいくかもしれない。

net stop bits
net stop wuauserv
Ipconfig /flushdns
cd "Documents and Settings\All Users\Application Data\Microsoft\Network\Downloader"
del qmgr0.dat
del qmgr1.dat
net start bits
net start wuauserv

・PT3の導入
アプリケーションの導入や設定は詳しい別サイトを見るとして、躓いた点について。
PCIEx1スロットに挿したが、サウンド、ビデオおよびゲームコントローラの項目に認識されなかった(Jungoのみ)
正しければ2つのデバイスとして認識されるはずだが、1つのみ。中途半端に認識していたため初期不良も疑い悩んでしまったが、一番遠いx16スロット(信号的にはx4)に差し替えたところ認識した。CPU直結のPCIe3.0だとダメなのかもしれない。

TvTest用のビデオレンダラはMPV Decorder Filterを使用。
axファイルをSystemWow64フォルダにコピー後Install.batを実行する。

MagicAnimeでの予約時は、対象のiEPGファイルを開く挙動を示すので、.tvplファイルの関連付けをTVRockにする必要あり。
また、MagicAnimeから予約を行う場合、受け渡すiEPGファイルにはMagicAnime側で入力した局名で受け渡され、TVRock側に同一名称の局が登録されていないと予約に失敗する。(TvRockに新しい局が新規追加される)
そのため、予約を行う場合にはTvRock側の局名を修正するか、MagicAnimeの予約画面で局名を変えた上で予約を行う。
(一度MagicAnime側で変更しておけば、次回以降同じ局で予約する際には自動で適用される)

また、TVRock上とTVTest上の局名が違っていても、TVRock→TVTestへはチャンネル番号を送信するだけなので問題ないようだ。

・アンチウィルスソフト
MicrosoftSecurityEssentialsを使用。
3台版を持っているKasperskyの導入も試みたが、
・普通にインストールexeを実行:
 OSをのバージョンが未対応というエラーが表示され失敗
・インストーラーを書き換えて実行:
 上記のOSを未対応エラーが表示されているとき、Tempフォルダにインストールに必要な.msiファイル等が展開されている。それをコピーし、OrcaでMSIファイル内のOSのチェック部分を殺した所インストールはできた。しかし、30日体験版アカウント・正規版アカウント共にライセンスファイルが壊れているとの表示がでて使用できなかった。

そのため、MSEを使用中。

---------------------------------------------------------------------------------

○仮想PC(Hyper-V)関連

・VHD
現行のHyper-Vはだいぶ改善されたようだが、それでも動作速度を重視するなら、仮想HDDの設定は物理HDDなら固定容量、SSDならフラグメンテーション関係ないので可変容量がいいかもしれない。

・ファイル共有
仮想OSからホストOSの共有フォルダに高速アクセスするためには、内部ネットワークのバーチャルネットワークを構成する。
また、その場合は外部とは接続しないので、別セグメントのIPを振る。(家庭内LAN[インターネット接続あり]が192.168.1.xなら、192.168.10.x等)
ネットワーク設定はIPのみ指定しGWは設定しない。
これを使えば300MB/secくらいの高速通信が可能。(500MB/secほど出るIntelSSDの共有ドライブでテスト)
1000m.png 10000m.png
左:家庭内LAN環境 1Gbpsのルーターを介して接続 (PC - Gigabitルーター - PC)
右:バーチャルネットワーク(内部) 10Gbps

参考:速度頭打ちの様子
物理GigabitEther
1000-m.png

仮想10G Ether
10000-m.png


・FTPサーバー(FileZilla)でネットワークドライブを使う方法
仮想OS上に構築したFilleZillaサーバーでネットワークドライブ上のフォルダを利用したい場合、ネットワークドライブとしてマウントするだけでは使用できない。
その場合はシンボリックリンク(エイリアス)を使えばよい。
2008R2ならmklinkコマンドでローカルにファイルサーバー上へのリンクを作成する。OS上からはフォルダに見えるので設定できる。
(ただし、FileZillaサーバーが共有フォルダを開くことのできるアカウントで動作していることが必要。サービスの実行ユーザーの変更をすること)
さらに、上記で追加したフォルダ内の特定のフォルダに別のアクセス権をつけたいときは、アクセス権を変更したいフォルダのシンボリックリンクを作成し登録&パーミッション変更する。
他の設定(エイリアスとか)は不要。

・SHOUTCast(Winamp ストリーミング配信)
旧サーバーでも自分用ネトラジ配信を行なっていたが、その時よりもShoutCast一式が新しくなっていた。
SHOUTCast公式ページ上部のBroadcast Now!からダウンロード可能。
必要なものは
 ShoutCast DNAS2.0
 ShoutCast DSP Plugin
 (Shoutcats Transcodingはいらない)
 それとWinAmp
それぞれをインストールする。

DNASのインストール時に、InstallDocumentationをなしにしてしまうと必要なconfファイルが作られないので注意。
DNASのインストール先から使いたいconf(今回はポートも変えたいのでsc_serv_basic.conf)をテキストエディタで開く。
WinAmpDSPから接続するときのパスワードpassword、管理画面のパスワードadminpasswordを変更する。(同じだと起動時はじかれる)
必要に応じてポートの変更も書き込む。
準備ができたらsc_serv.exeに上記confファイルを引数として渡せばサーバーが起動する。

WinAmpを起動し、DSPプラグインの画面から接続先(localhost、変えたポート等)を入力し、UserIDは空白、パスワードは先ほど設定したものpasswordをセットし、ConnectしてつながればOK。
Connectしていると設定が変更できないので一旦Abort。他のすべて設定終わったらAutoConnectにチェックすればよい。
また、make this server publicにチェック入れると公開鯖としてShoutcastに登録に行くので注意
AlbumArtの送信設定やらなにやらすべて設定したら、サーバーの起動、WinAmpの起動(mp3入れたフォルダを食わすとよい)するようなバッチファイルを作成し、スタートアップフォルダにセット。

通常のサーバーであれば上記で配信が可能となるが、仮想OSを使用する場合にはサウンドデバイスが無いため再生できない=配信できない。
リモートデスクトップ接続中のみサウンドデバイスが表示され配信できるが、切断すると切れてしまう。
対策としては仮想オーディオデバイスをインストールし、通常使うサウンド再生用にセットすればよい。
それでもリモートで接続するとサウンドデバイスが切り替わり、リモート切断後に切れてしまうので、運用中はリモートデスクトップで接続しないこと・
切れてしまった場合にはサーバーの再起動を行うか、ホストOSのコンソールからWinAmpを再起動することになる。

また、仮想PC起動中にホストOSの時計が遅れてしまう問題が現在発生しており、それと関係する可能性があるが、再生中にバッファ切れを起こしてよく途切れてしまう。
旧サーバーの配信ではそんなことは全くなかったが...。

------------------------------------------------------------------------------------

○HTTPサーバーの設定(Movable Type4から5への引越し)
・HTTPサーバーの設定
IISを機能の追加でインストール。役割としてCGIを入れる。
バインドを設定すると、そのホスト名しかアクセスできなくなる(IP直指定による接続要求ははじく)のでお好みで。
なお、バインドの設定でホスト名を空欄にした状態はIP指定も許可扱いになる。
IIS7からはセキュリティが強化されているため、カスタムエラーファイルをwebroot以外の場所においた場合にはweb.config(httpd.copnfのようなもの)を置かないとならない。
面倒なので、webroot以下に置くのがよいかと。

・ActivePerlのインストール(mtとかこれで動いてる)
公式ページからとりあえずDL&インストール。
IISからマッピング設定を開き、*.cgiに先程インストールしたActivePerを紐付ける。(下記)
 perl.cgi "%s" %s
なお、制限としてGET,POST,HEADのみと指定しておく。
CGIファイルの中でたいていcgiの場所を"./cgi-bin"とかで指定しているハズなので、仮想ディレクトリ機能にて"cgi-bin"と実際にcgiをおいているフォルダをリダイレクトする。
以上で導入完了。
これで動かないならおそらくパーミッションの問題。
書き換えの発生するファイルにUSERSグループ変更権限つければ動くかと。

・PHPのインストール
とりあえず公式サイトからバイナリをダウンロード。
IIS向けはNonThreadSafe(nts)版を使うらしい。zipでもmsiでもどちらでも。
最新版よりは1個前(最新が5.4.xなら5.3.xx)のほうがかれてていいかも。
C:\phpフォルダを作成し、その中にバージョン名のフォルダとして展開する。(C;\php\4.3.13)
用意されているphp.iniのテンプレートをコピーして、php.iniとして同一フォルダ内に作成する。
そして以下の最低限の設定値変更を行う。
今回は面倒なので前の5.2.11のiniそのまま使ってしまったが...。

CGIと同様に、IISのハンドラーマッピングの追加でモジュールマッピング追加を行う。
*.phpに対し、モジュールFastCgiを選択し、インストールしたphp-cig.exeを指定する。

続けてIISの左ペインからアプリケーションプールを開き、詳細設定を開く。
32bitアプリケーションをFalse→Trueに変更し、右ペインにある"リサイクル"(またはIIS再起動)を実行する。

また、VisualC++2008ランタイムがないと動かないので、x86用で構わないのでインストールする。
(VCが無くて動作しない場合は、eventvwrにログが残ってる)
phpインストールディレクトリや.phpファイルのあるディレクトリにIIS_USERのグループの読み取り権をつけている人もいるみたいだけど、なくても動くようだ?

・MT5用MySQLインストール
ウィザードとか適当に操作して最新版MySQLをインストールする。(MT5用)

・MT5インストール
IISにて、mtを置いたフォルダと、mtフォルダ内のmt-staticにそれぞれmt,mt-staticという名前でエイリアスをつける。
(/mt/で上記mtフォルダを開けるように。別に他の名前でも構わない)
データベースを作成し、mt-config.cgiにDBのログイン設定を記載。あわせてCGIのパスも記載。
その後、Webで/mtを開くと設定開始できる。
実行時エラーが出たら、Perlに必要なパッケージはいってないのが原因かもしれない。
Perlフォルダにあるppmを実行してインストールする。

・MT4からMT5への引越し(サーバー環境自体も引越し)
MT4からMT5へのアップデートは、
  1. MT4のデータベースにMySQL以外を使用している場合は変換
  2. DB変換後、MT4からMT5のバイナリに入れ替える
  3. MT5を開くと初期設定後、今までの環境が可能な限り引き継がれる
という流れになります。

また、サーバーの引越しの場合には
  1. バックアップ機能でファイルをすべて書き出し
  2. 移転先に構築した同一バージョンのMTで復元
という流れです。

今回はその複合なので、旧環境に手を入れず運用しながら新環境を構築するため
  1. 旧環境と同一VerのMT4を新環境に構築
  2. バックアップ機能で書きだしたデータで復元
  3. DBをSQLiteからMySqlに変換
  4. MT4からMT5へアップデート
という手順を行いました...がなかなかうまくいかず、試行錯誤した結果を書き残します。
旧環境のMT4を取り敢えず動いたからいいやと適当に作ったのが原因かも...。
同一の現象が起きる人はあまりいないと思いますが...参考になれば。

なお基本的なことですが、バックアップの作成はmt-config.cgiで作業フォルダを指定し、そのフォルダが存在していないとエラーになるので注意。

  1. 新環境にMT4をセットアップし旧環境でバックアップしたデータからの復元→失敗
  2. 失敗したものの、XMLは読み込めた(アイテム一覧は見える、実ファイルのコピーはされないのでリンク切れ)
  3. 同じ階層になるように旧環境からファイル転送→ファイル一覧を正常認識
  4. 上記をSQLite環境で行い、うまくいったのでMySQL環境に環境変更
  5. MySQLに切り替えて上記を再度実施→移行完了
  6. MT5へアップデート→アイテム一覧は問題ないが、再構築すると不明なタグによりエラー
  7. 記事をエクスポートし再インポートしたところ、タグのエラーはなくなった
  8. でもアイテム一覧はきえていた(初めてなので気づかなかった...けど、バックアップではなくエクスポートなので当然)
  9. 現環境(アイテム一覧消えた状態で)バックアップを作成
  10. 生成されたXMLファイルをメモ帳で開く
  11. 旧xml(できればMT5移行直後に吐き出しておくべき。なかったのでMT4時代のものを使用)から<image><file>タグの部分だけ取り出す(他の記事htmlとかは生成したMT5バックアップ内にあるので無視)
  12. MT5現環境バックアップxmlの同じ位置に挿入→復元→(゚д゚)ウマー

Add Social Services

トラックバック(0)

トラックバックURL: http://www.kitcat.jp/mt/mt-tb.cgi/453

コメントする

このブログ記事について

このページは、kitcatが2012年7月21日 12:46に書いたブログ記事です。

ひとつ前のブログ記事は「新しいiPad用ケースのレビュー2 JISONCASE 本革 レザースマートケース」です。

次のブログ記事は「PSO2の複合型マグ育成時の注意点」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。