Linuxでデスクトップ

Linuxはサーバーとよく使っています。現在、新規のWebサイトでの開発は9割方Linuxです。後1割は、Windowsサーバーで継続しているサービスのメンテナンスで使用しています。

では、Linuxをサーバー以外に普段のデスクトップOSと使えるか? 一度、Windowsをやめて、Linux(そのころはTurboLinux Workstarion6だったでしょうか?)を半年間使ったことがあります。

結局利用するアプリケーションとして、Webブラウザ、メールと開発のためのテキストエディタ位でしたので、何とか半年は持ったかと思います。結局、アンドワークスを立ち上げることになって、いろいろとワープロ、表計算などのオフィスソフトやPowerPointやVISIOのようなドローソフトが必要になって、Windowsに戻ってしまいました。

では、今ならどうでしょうか? Windowsでのアプリケーションは、オフィスソフトもOpenOfficeでOKですし(現バージョンの2.0はお勧めです)、WebブラウザはFirefox、メールソフトはThuderbirdに移ってしまっていましたので、Linuxに行けそうです。ただし、グループウェアのGrooveだけは、Windows専用ですので、これだけが問題です。Grooveがないと、アンドワークスの業務が止まってしまいますので。 :-P

Linuxなどのオープンソースが自治体の実証実験が始まっています。問題になっているのは、他のところからのデータ交換のようです。メーカー独自のファイルフォーマットですと問題になります。WordやExcelのデータなら、OpenOfficeですと読むことができますが100%ではありません。OpenDocumentのようなのアプリケーションに縛られない共通のフォーマットが必要でしょう。

読むだけのデータでしたら、PDFに変換して相手に渡しています。OpenOfficeですとPDFの変換はボタン一発ですので簡単です。これは便利です。

WindowsからLinuxに移行するには教育のコストがかかるという意見がありますが、私はあまりこれについては心配していません。乱暴な言い方ですが、意外と人間は慣れという学習能力は高いものです。アプリケーションレベルですと、そんなに変わりありません。しかし、問題になるのは、漢字変換の入力方法ではないでしょうか? これも慣れてしまえばいいかと思いますが、一番近いインターフェースですので、思い通りにならないとストレスです。ここでもATOKに期待かもしれません。 :-D

RTX1000でSIP-NAT

先日、オークションでRTX1000を手に入れましたので、設定しました。

すでにRT57iがありますので、SIP-NATの設定して、インターネットの接続をRTX1000で、IP電話とISDNはRT57iでやっています。設定方法は、ヤマハのホームページを参考に設定しました。このページでいいますと、RTX1000(2)とRT57i(1)の構成になります。違いは、IP電話の接続先がぷららフォンになっています。

ヤマハのルーターのよさは、たくさんの情報がヤマハから公開されていることと、接続が安定していることですね。あとは、細かい設定がコマンドレベルでできることです。アンドワークスでのお勧めルーターになっています。

最初はIP電話経由で電話をすると、電話が5分で切れてしまうといった障害がありましたが、SIPのタイマーを設定することで修正できました。このように、Webで設定したときに勝手な設定がされてしまうのが玉に瑕ですが・・・。でも、長電話の防止にはなったかもしれません。

インストール、インストール

昨日今日と2日間でサーバー2台、ルーター1台をインストールしてきました。

午前中の作業として、客先の不動産屋さんの国分寺支店が、ADSLからBフレッツに変えたのを機に、ルーターをヤマハのRT56vからRTX1100に交換です。フレッツグループアクセスで本社、支店間を接続して、データやIP電話の音声を流しています。

毎度のごとく手持ちのRTX系の設定ファイルに、PPPoEの認証するためのID、パスワードと、IPアドレスを書き換えて流し込みます。コマンドで設定できるヤマハのルーターならではの方法です。この方法は、Webブラウザでしか設定できない安価なルーターではできませんので、このあたりがヤマハのルーターの魅力かもしれません。

ルーターの設定は、1時間ほどで完了。インターネットへの接続と、本社へのフレッツグループアクセスへの接続を確認してOKです。今回はVPNの接続やポート転送の設定がないので簡単です。

つぎに午後から、同じく不動産屋さんの新宿支店に伺ってファイルサーバーの設定です。あらかじめDELLのPowerEdge830を注文して、新宿支店に納品しておきました。OSはCentOSというRedhat互換のLinuxを入れます。アップデートも早いのでお勧めです。Sambaまでインストールして確認。なぜかnmbdが最初の起動で失敗するというのがありますが、強制的に起動するように対応。デーモンの関係か? ユーザーアカウント、グループ、共有ディレクトリの設定をして完了。

ところが、ラックに収めたあと、再度起動してテストをすると、最初のディスクのマウントのところでカーネルパニックになります。キチンと終了しなかったのが原因か? 詳細な原因がわからず。時間がないし、このままで運用も恐いので、最初から一気にOSの再インストールしました。久々のショックです。今まで4時間かけてインストールしたのが水の泡・・・。 :cry:

今までの手順のコマンドやバッチファイルを履歴ファイルに残してあったので、とても簡単です。履歴ファイルから流し込むだけ。ディスクのフォーマットなどのOSのインストールに時間はかかりましたが、あとの設定には時間がかからず。結局夜の11時近くになって完了しました。しかし、先ほどのnmbdが起動に失敗する件は直っていたり、手動でパーテションを作成して、ユーザーデータを別のパーテションにしたり(自動パーテションですと/以下が全部一緒!)がで、只では起きません。 :-)

今日は、レコード会社のWindows2003サーバーの設定でした。これもDELLのPowerEdge830です。音楽の視聴サーバーで使います。OSはあらかじめ工場でインストールしてありますので、SQLServer2000とFlash Communication Serverをインストールして完了。米国の開発元から視聴アプリケーションをインストールしてもらうだけにしました。あとはインターネットに接続して、リモートで設定できるようにするば楽になります。ここにもヤマハのRTX1000を入れる予定です。

ところで、Flash Communication Serverで開発できるエンジニアはいませんか? いらしたら、ご連絡ください。仕事あります。 :idea:

以上、なんだかサーバーはDELL、ルーターはヤマハしか、客先に入れていませんね。 :-D

電話帳って個人情報なの?

今日も電話セールスがありました。

NTTの正規代理店と名乗る会社で、電話番号は電子電話帳から調べたらしいです。電話番号はすでに電話帳に載せないようにNTTに依頼していますが、このような電子電話帳には削除の要求は行っていませんね(当たり前)。

この会社に関してはNTTに問い合わせをしましたが、本当に正規代理店であるかどうかは怪しそうです。この件は、またここに書きます。

電子電話帳の会社のWebサイトをみましたが、NTTから正規に電話帳を購入している様子はありません。何か電話帳の著作権で争っているようです。今はNTTの著作権を認められているようですが、その後どうなっているか。

その会社が発行しているメールマガジンによると、電話帳の電話番号と氏名は個人情報ではないとのこと。個人が特定できないからだそうです。でもこの解釈は本当なのか疑問。引き続き調べてみましょう。

この電子電話帳の仕様をWebサイトで見ましたが、電話番号から氏名、住所(漢字、かな)、郵便番号、性別が検索できます。しかも全国の電話番号を網羅。これで個人を特定できないというのは、ますます疑問。でも、この電話帳の使い方ですが、顧客管理で使うくらいで、DM発送での使用は、このWebサイトではあえて紹介されていないのですね。情報の削除も依頼できますが、年2回のデータ更新でしか反映されない・・・。

電話帳を使った電話セールスが多いですね。この件を以前NTTに聞きましたが、なるべく電話帳を電話セールスに使って欲しくない程度の見解です。あまり、積極的にダメとは言っていないのが印象的でした。

 

ソフトウェア契約書を送ってください。

PHPの開発を迅速に進めるため、 Zend Studio 4.0 日本語版の購入を考えました。

その前にどのようなライセンスになっているかと、サポートにソフトウェア使用契約書を見せて欲しいとお願いしました。回答は、ダメだそうです。理由はわかりませんが、そのようなサービスをやっていないとの回答でした。

購入する商品のライセンスはどうなっているかを知りたくありませんか?昔は、パッケージのシュリンク(ビニール)を破ると、契約に同意したことに見なすとかありまして、シュリンクを破らないと契約書を読めないとか、ひどいソフトウェア会社もありましたっけ・・・。私がソフトのサポートをしていたときは、Webサイトなんて大昔でなかったので、希望のユーザーにはファックスで送っていました。

それはそうと、確認したかったのは、一人のユーザーであれば、複数のPCにインストールしていもいいか、それとも一台のPCしかインストールしてもいいか。メールで確認したところ、後者でした。まあ、それでも、仕方ないかと購入しようと思っていましたが、このサポートのおかげで、Zend Studioを購入する気持ちはしぼんでしまいました。まあ、Eclipse+TruStudioでもいいか・・・。

最近、こちらは当たり前なところで、予想外の対応に出られると、ちょっとしんどいですね。それとも自分が、自分勝手になったのか。

La!cooda WIZ のインストール

オープンのグループウェアのLa!cooda WIZを、お客様に頼まれましてインストールしました。今回は、Joe’sウェブホスティングのレンタルサーバーにインストールします。

La!cooda WIZをダウンロードしてインストールページを読んでみましたら、インストールスクリプトでPostgreSQLの管理者権限が必要であることが書いてありました。しかし、今回のインストール先はレンタルサーバーですので、スクリプト(postgres.sh)を解析して、手作業でインストールしました。これが苦難のはじまりです。DBの dropを5回以上繰り返して、ようやくインストールできました。ここにその記録を参考までに載せておきます。

まずは、La!cooda WIZ用のデータベースを作成しておきます。これは、レンタルサーバーのコントロールパネルから行いました。そして、アクセス用のPostgreSQLのIDを作って、データベースにアサインしておきます。ここまでは、コントロールパネルで簡単です。

次に、La!cooda WIZのインストールファイルから、wiz.tar.gzを取り出して、Webで公開されているディレクトリに展開します。そのままDocumentRootに/wizで展開します。そのとき、/wiz/filesは書き込み権限が必要です。

Joe’sウェブホスティングのサーバーは、WebサーバーからはPostgreSQLサーバーにTCP/IP経由では接続できないので、UNIXドメインソケット経由で接続するように、La!cooda WIZのデータベース接続処理を変更します。

/wiz/class/DBConnectPgsql.phpを

$connectionString = “host=$this->hostName port=$this->portNo dbname=$this->dbName user=$this->userName password=$this->password”;

となっているところ(実際は1行)を、

$connectionString = “dbname=$this->dbName user=$this->userName password=$this->password”;

のように修正します。

DBのアクセスするための定義ファイルを設定します。/wiz/gw.phpを次の通りに修正します。

$masterdb = “DB名”;
$db_user = “DBユーザーID”;
$db_password = “DBパスワード”;
$_ROOT_DIR_ = “インストールしたディレクトリ”;
$_ROOT_URL_ = “アクセスするURL”;

最後にテーブルの生成と初期データの投入です。テーブル生成スクリプトcreateDbForPgSQL.sqlの1行目の

connect – postgres

– connect – postgres

にしてコメントにします。それから、次のようにスクリプトを動かします。

sed “s/nobody/<DBユーザーID>/g” <ルートからのディレクトリ>/createDbForPgSQL.sql | psql -U <DBユーザーID> -e <DB名>

ここで、DBユーザーに対するパスワードを聞いてきます。

以上のコマンドは、createDbForPgSQL.sql内のnobodyと定義している部分を、DBにアクセスするユーザーIDに置換して、そのスクリプトをDBユーザーでアクセスしたDBにテーブルを生成して、初期データを作成しています。これはインストールスクリプトを抜粋して修正したものです。

以上で、La!cooda WIZにアクセスできます。

アンドワークスサイトからアマゾンで購入

アンドワークスのサイトからアマゾンのWebサービスを使って書籍を購入できるようにしました。なんだか大層なことのようですが、XOOPSのAmaxoops2モジュールをインストールしただけですので、ほんの5分の作業時間です。このあたりがXOOPSのモジュール利用の醍醐味です。

左メニューから「書籍紹介」からお入りください。私が普段使っている書籍類の紹介コメントを載せています。

アマゾンのWebサービスをお知りになりたいのであれば、

などの書籍をご覧ください。おもしろいことができそうです。皆さんも何か挑戦してみてください。

WebホスティングをWindows Serverで?

ちょっと気になる記事がエンタープライズWatchに載っていました。

「LinuxよりもWindows」、Webホスティング市場を狙うマイクロソフト
そういえば、昔、Windows
Server(このころはNT4.0)で大きなサイトを運営したことがあります。そのころですと、週一回リブートしていました。もうそんなことはありませ
んよね?
ゲームサイトを今でもWindows
Server(これは2000です)で運営していますが、月一回リブートしています。どうしてWindowsを選択したかというと、開発側が
Windowsを指定するからというのが理由です。こちらからWindowsを指定するということはありません。やはり、稼働する多くのレンタルサーバー
がUNIX系で動いているいうのが、LinuxやBSDを使う理由かもしれません。その上で動いているのがPerlであったりPHPであるということで、
開発環境を選択しているかもしれません。したがって、あえて.NETやJavaを選択することはないかと思います。それと、ユーザーの考え方かと思いま
す。最初からWindowsを指定するユーザーもいらっしゃいませんし、レンタルサーバーを使わずにサーバーを用意できるようなユーザーは、もっと大きな
会社に仕事を依頼します。 :-) Windows
Serverがレンタルサーバー事業者に受け入れられるかは、彼らが面倒をみるスキルがあるかが大きなポイントでしょうね。
サーバーのホスティングといえば、マクロメディアのFlash Communication
ServerやFlexを安価にサービスしてくれるところが出てきませんでしょうか? そのほうが、おもしろいかもしれません。
Flexの解説本を立ち読みしましたが、なかなかおもしろいことができそうだと思いましたが、巻末でFlexの定価が220万と書いてあって気持ちがしぼ
んでしまいました。 :-(

PEARを使ってみましょう。

PHPの案件が中心になってきましたので、ここで改めてPEAR(PHPの標準ライブラリ)を勉強しなおしています。参考書は、「PEAR入門」です。

今までは、DBのアクセスかHTML_QuickFormくらいしかPEARを使っていませんでしたが、この本を読んでみると、なかなか便利なライブラリが用意されています。今度はAuthとPagerを使ってみたいと思います。やはり、便利なものは使ってみなくては・・・。

プログラマーはものぐさなんです。結局、Webサイトで理解するより、書籍のほうが理解しやすいなんて、私には電子書籍には慣れないようです。 :-(

VB.NETはあなどれない

最近、1ヶ月ほどVB.NETのプログラムの仕事をしました。一年半ぶりです。

しばらく、PHPなどのオープン系でプログラムを書いていましたが、VB.NETを改めて理解するとなんて簡単なんだと思うようになりました。特に、グリッドコントロールとデータセットをアサインするあたりは簡単です。データを扱うシステムですと必ずデータのメンテナンスのツールが必要になります。挿入・更新・削除をWebプログラムで作るととても面倒です。ここ辺りはクラスで作っておけば少しは楽になるかと思いますが、結局データをチェックするとか、画面周りをどうするかなど、まだまだ面倒な作業があります。

以前は、数十のデータベースのメンテナンス画面をPHPでWeb上で作成していましたが、これはとても大変な作業です。やっていることは簡単ですが、なかなか時間ばかりかかっておもしろくない作業です。 VB.NETですとあらかじめグリッドコントロールというものが用意されていますので、Visual Stadioの上でマウスで指示していけばある程度のメンテナンスページができてしまいます。しかも、ユーザーですとAccessと同じ使い方と言っておけば、使えてしまうのもいいです。