突然ですが

ノートPC新調しました

東芝ダイナブックの直販モデルdynabook Satellite TXW/69EW(グラフィック強化モデル)


まぁそんなものすごいスペックではないのでありますが、POLにバナーが掲載してある公式?推奨モデル(いつまで掲載されているかは不明だが→http://www.playonline.com/ff11/envi/win/win05.html?pageID=win)で、おそらく夏モデルがでるための在庫一掃で23%offという気前のよさで決定しました


まぁ値段だけならDELLの方が安いのだけど・・・


さて、いつごろくるやら

2.1サービスデスク

・コールセンタ

電話ベースで問い合わせを専門に行う部署・施設
→内容の受付・記録


・ヘルプデスク

インシデント解決のために自発的に行動する部署
構成管理・ナレッジツールなどを用いる


・サービスデスク

1.インシデント解決
2.顧客への情報発信
3.構成管理、可用性管理などのインターフェース提供

単一窓口(Single Point Of Contact)としてユーザの単一窓口を提供する

※顧客に対してもサービスを提供する?


・質によるサービスデスクの分類

1.非スキル型
インシデントの受付窓口と記録のみ
2.スキル型
ある程度の回答を自力で行う
過去の問い合わせ管理や構成管理まで対象とする
3.エキスパート
専門的な知識とスキルを有する組織


・場所によるサービスデスクの分類

1.ローカル
ユーザ内部に設置し、オンサイト対応も可能
2.中央
複数のユーザサイトに対応する集中型
ユーザとは離れている
3.バーチャル
拠点は分散しているが、擬似的な単一窓口サービスを提供する


・サービスデスクの役割

1.インシデントの受付
2.単一窓口の提供
3.インシデントの解決
→原因究明や対策は役割ではない
4.エスカレーション
5.インシデントの管理・オーナーシップ
→インシデントの管理を行う(非スキル型も含む)
6.ユーザ部門とのコミュニケーション
7.ユーザへの途中経過報告
8.インシデント管理情報の提供
→インシデントの対応状況(発生件数や対応時間など)を管理
9.ユーザトレーニング・教育


1.3用語

・顧客とユーザ

顧 客:ITサービスに対して費用を支払い、提供する
→システムの発注部門
ユーザ:ITサービスを利用する
→一般社員など


・インシデント

ITサービスを利用するにあたっての何らかのイベント


・問題とエラー

問 題:未知の解決すべき対象
→理由がわからないもの
エラー:「既知のエラー」、原因・対策が判明している、排除・解決すべき対象
→理由がわかっているもの

perlモジュールのセットアップ

環境構築で予算がないので自分でやるしかないわけで



mt-check.cgiが途中で止まってしまう(Apacheのエラーログが出力される)場合は、どうもperlのモジュールがインストールされていないらしい


参考にするサイト、むしろ神サイト
http://y-kit.jp/saba/xp/cpan.htm


まず、「CPAN モジュール」というのをインストール?する

perl -MCPAN -e shell


基本的にはエンター連打だが
罠1:

Warning: ncftpget not found in PATH
Where is your ncftpget program?
Warning: ncftp not found in PATH
Where is your ncftp program?

といわれる・・・が無視してよいらしい
http://x68000.q-e-d.net/~68user/net/ext-module.html

罠2:
さらにenterを連打していくと、ftpに接続しようとしてリトライ祭りが発生する


ここで動揺して、停止してはいけないらしい

要は、さんざん思考繰り返したあげく、サイトの指定プロンプトが出てきますので、そこでしていしてやればOKです。

http://good-stream.com/goodstream/perl/tips/cpanerr.html


・・・そんなおばかなことがあるのか


以下のサイトを登録して終了

ftp://ftp.u-aizu.ac.jp/pub/CPAN
ftp://ftp.kddilabs.jp/CPAN/
http://ftp.nara.wide.ad.jp/pub/CPAN/
ftp://ftp.nara.wide.ad.jp/pub/CPAN/
ftp://ftp.dti.ad.jp/pub/lang/CPAN/
ftp://ftp.ring.gr.jp/pub/lang/perl/CPAN/
http://ftp.yz.yamagata-u.ac.jp/pub/lang/cpan/
ftp://ftp.yz.yamagata-u.ac.jp/pub/lang/cpan/


罠3:
そして最大のトラップ
MTに必要なモジュールをインストールするのだが

Jcode.pm モジュール
cpan> install Jcode

DB_File モジュール
cpan> install DB_File

DBI モジュール
cpan> install DBI

DBD::mysql モジュール
cpan> install DBD::mysql


DBD::mysqlはみんなエラーになる・・・らしい

そこで回避策

 Can't exec "mysql_config": No such file or directory at Makefile.PL line 174.
 readline() on closed filehandle PIPE at Makefile.PL line 176.
これは、この辺 を参考に、mysql_config にシンボリックリンクを張って解決できます。
 ln -s /usr/local/mysql/bin/mysql_config /usr/local/bin/mysql_config
という感じです。
そして次に出てきたエラーは、
 Note (probably harmless): No library found for -lmysqlclient
これは解決に手間取りました。この辺 が参考になります。
まず、先ほどの「mysql_config」を使い、
 /usr/local/mysql/bin/mysql_config --libs
で、吐き出されたデータをメモ。次に、
 /usr/local/mysql/bin/mysql_config --cflags
で、吐き出されたデータをメモします。
CPANでインストール途中だったソースのあるディレクトリに移動します。
 cd /root/.cpan/build/DBD-mysql-2.9003/
メモしたパスをつなげて、
 perl Makefile.PL --cflags=-I/usr/local/mysql/include/mysql "--libs=-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm"
とタイプします。(一行で。)
Makefile」ファイルが正常に生成されたらOKです。後は、
 make
 make test
 make install

http://y-kit.jp/saba/xp/cpan.htm



しかし、5年も放置されるこの問題は一体なんなんだ


罠4:

どうもパスがうまく通っていない
libmysqlclient.soあるいはlibmysqlclient.so.16が見つからないといわれる

t/42bindparam...............skipped
all skipped: ERROR: install_driver(mysql) failed: Can't load '/root/.cpan/build/DBD-mysql-4.007/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: libmysqlclient.so.16: 共有オブジェクトファイルを開けません: そのようなファイルやディレクトリはありません at /usr/lib/perl5/5.8.5/i386-linux-thread-multi/DynaLoader.pm line 230.


実際は存在しているのだが・・・


※ここから先は一気にやってしまったので、どこで解決したのかは不明


MySQLのマニュアルをチェック
「2.15.3. Perl DBI/DBD インターフェースを使用した際の問題」
http://dev.mysql.com/doc/refman/5.1/ja/perl-support-problems.html

・libmysqlclient.so を他の共有ライブラリがある (多分 /usr/lib あるいは /lib) ディレクトリにコピーします。
Linux 上で、libmysqlclient.so があるディレクトリのパス名を /etc/ld.so.conf ファイルに追加します。
・libmysqlclient.so があるディレクトリのパス名を LD_RUN_PATH 環境変数に追加します。システムの中には LD_LIBRARY_PATH を使用しているものもあります。


変更した後に、make realclean を必ず実行して次にインストールはじめから実施します。


あとはDBIモジュールを確認のためもう一度makeしたらこんなメッセージがでていた

Your LANG environment variable is set to 'ja_JP.UTF-8'
This is known to cause problems for some perl installations.
If you get test failures, please try again with LANG unset.
Please also email dbi-dev@perl.org and include the output of 'perl -V'


念のためLANGの設定を空にしてみる




この段階でも、DBD::mysqlのmake testではエラーになる

PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00base....................String found where operator expected at t/00base.t line 20, near "BAIL_OUT "Unable to load DBI""
(Do you need to predeclare BAIL_OUT?)
String found where operator expected at t/00base.t line 21, near "BAIL_OUT "Unable to load DBD::mysql""
(Do you need to predeclare BAIL_OUT?)
syntax error at t/00base.t line 20, near "BAIL_OUT "Unable to load DBI""
syntax error at t/00base.t line 21, near "BAIL_OUT "Unable to load DBD::mysql""
BEGIN not safe after errors--compilation aborted at t/00base.t line 22.
# Looks like your test died before it could output anything.
t/00base....................dubious
Test returned status 2 (wstat 512, 0x200)
DIED. FAILED tests 1-6
Failed 6/6 tests, 0.00% okay
t/10connect.................ok


・・・が、make installしてみると動いていたり


罠5:

まだあるのか・・・
ようやくmt-check.cgiが動いたものの、mt.cgiを叩くと500エラー


Apacheのログ

Premature end of script headers: mt.cgi

なんのこっちゃなのだが、実はmt-config.cgimysql以外の設定をコメントアウトしていなかった





ああ・・・疲れた