Linux はトータルコストも低くなった

ちょっと前まで Windows サーバの方がトータルコストが低くなると Microsoft が主張していましたが、すでにオープンソースの方が低くなっていると思います。

・ブログやオンラインマニュアルで情報を収集できる
・ネットワークで質問すれば問題解決が出来る場合も多い
・同じ問題を解決した人のおかげで的確な回答を得られる場合が多い
・あるソフトウェアに問題があっても、大抵の場合は代替のソフトウェアを自由に選択できる

要するに、ネットワークにより以下が実現されている時代になっているのです。

・ユーザ同士が助けあう環境
・ソフトウェアの選択と組み合わせが自由にできる環境

現在では、運用中に本当に困ることは希で、代替えやバックアップのハードウェアに投資したほうが安上がりに感じます。

しかし、正確なシステム導入コストの計算方法なんて存在するのでしょうか?
個人的にはデスクトップは Windows、サーバは Linux と割り切った方が、お金と時間の節約になると思います。

Windows 7 でイベントのエラーの対策をした

いきなり電源が落ちてリセットされる現象が発生したため、マザーボードを交換しました。
現在は安定しています。
いつごろだったか確認するために、イベントログを確認したところ、頻繁にエラーが発生していました。

Etron USB 3.0 Extensible Host Controller Driver サービスを、次のエラーが原因で開始できませんでした:
指定されたファイルが見つかりません。

Etron USB 3.0 Extensible Hub Driver サービスを、次のエラーが原因で開始できませんでした:
指定されたファイルが見つかりません。

原因は Etron の USB 3.0 ドライバーがきちんと削除されていないためでした。
regedit で以下の項目を削除して再起動したところ、エラーは無くなりました。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\EtronXHCI
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\EtronHub3

ちなみに以下は電源のエラー。

システムは正常にシャットダウンする前に再起動しました。このエラーは、システムの応答の停止、クラッシュ、または予期しない電源の遮断により発生する可能性があります。

MySQL の sql_mode

自分の無知を公表するのは少し恥ずかしいのですが、MySQL で ANSI 互換の SQL 構文を使う方法があることを、つい最近知りました。
ひょっとしたら同じような人もいるかも知れませんので、メモしておきます。

自分は Web アプリケーションを作成する場合に、ほぼ PostgreSQL をターゲットにしていました。
SQL 構文が他のデータベースシステムとほぼ同じであり、標準でトランザクションをサポートしている事が主な理由です。
汎用性を考えると、MySQL もサポートした方が良いのは承知していましたが、SQL 構文に特殊な部分が多いため、躊躇していました。

遅まきながら、以下の SQL を発行することで ANSI 互換の構文が使えることを知ったので、今後は積極的に検討したいと思います。

Ubuntu 11.10 amd64 の日本語フォントをなんとかした

Ubuntu 11.10 日本語 Remix が、早くもリリースされた。
テストで起動してみたら、日本語がちゃんと綺麗なフォントで表示されていた。

早速 amd64 の仮想マシンをインストールして、Japanese Team のリポジトリを追加してみたが、フォントは変なまま。
多分 /etc/fonts/ あたりだと思って、日本語 Remix でインストールした状態と amd64 でインストールした直後を比較してみた。
何とかなったので、メモ。

1. cd /etc/fonts/conf.d/

2. sudo gedit ../conf.avail/69-language-selector-ja-jp.conf

以下を削除(3箇所)。

3. sudo rm 69-language-selector-*

4. sudo ln -s ../conf.avail/69-language-selector-ja-jp.conf .

5. 一旦ログアウトした方がいいかも。

(ちょっとドヤ顔)

Scientific Linux 6 のログイン画面の変更

複数の仮想マシンを立ち上げて作業を行う場合、背景画像を変更しておくと、一目で区別ができて便利です。
そのため、Scientific Linux 6 でログイン画面の背景を変更する方法を調べてみました。
以下のコマンドで変更できるようです。

参考URL : http://moebuntu.blog48.fc2.com/blog-entry-231.html

PHPの奇妙な仕様 – 演算子の優先順位

先日、以下のようなコードが正しく動作しなかった。

以下のように修正すると正しく動作する。

または

原因は、演算子の優先順位。

言語仕様なので従うしか無いんですが、代入演算子は一番低い優先順位にしてくれないと、直感的でないんですよね。

VMware Player 4.0 で CentOS 5.7 インストール

VMware Player 4.0 がリリースされました。
ハードウェア仕様が 7 から 8 へ変更となったため、恩恵を授かるには再インストールですね。
多分 Workstation では仮想マシンハードウェアのアップグレードが可能と思われますが。

ついでにリリースされた CentOS 5.7 を試して見ました。

動作は多少キビキビした感じですが、VMware のアップデートのおかげと思われます。
起動画面が 5.6 までと変わってしまいました。

起動画面がどう変わったか調べてみると、起動時のオプションの rhgb と quiet が指定されていませんでした。
しかし、以前と同じ状態に修正しても rhgb が表示されません。
rhgb パッケージ自体がインストールされておらず、インストールしようとしてもパッケージが見つかりません。
結局、パッケージングミスでリポジトリに存在していませんでした。

なくても構わないんですが、気持ち悪いので以下のように対策しました。

なんとなく、5.6 からのアップグレードじゃないと不安ですよね。

※ すでに updates リポジトリに存在していますので、「yum install rhgb」とすれば OK です。

Eclipse で PHPプロジェクトを避ければそこそこ使える

Eclipse PDT が不調なのでなんとかならないかと思っていましたが、プロジェクトを通常の「一般」→「プロジェクト」で作成するとそこそこ使えることが判明。

当面これで。

プロジェクトとエクスプローラーとエディタが連動していて、グローバル検索が出来れば十分です。
でも、エディタで上記を満たすものがないんですよね。
あっても操作がわかりづらかったり。

LMDE x64 on VMware でウィンドウをドラッグすると内容が崩れる対策

Linux Mint Debian Edition x64 on VMware でウィンドウをドラッグすると内容が崩れる対策。

「コントロール・センター」 → 「デスクトップの設定」 → 「ウィンドウ」
「Gnome コンポジティングを使用する」をチェック

これで Ubuntu から Debian へスムーズに移行出来そう。

※ VMware 上だと不具合が多発して、やはり不可でした。