OSSやらPHPやらLinuxやら教育やら仕事全般のよもやま話
失態
テスト用とは言え、会員マスタデータを全消去してしまった・・・

あ〜あ・・・。
おかげで、自分自身の仕事も止まってしまったし、メンバーの
仕事まで止めてしまった・・・。

ということで、今後の為にPostgreのデータインポート/エクスポート技をば。

psqlを立ち上げて・・・
・テキストファイルからのインポート
¥copy [テーブル名] from [テキストファイル名]

・テキストファイルへのエクスポート
¥copy [テーブル名] to [テキストファイル名]

.NET
いきなりではありますが、.NETしてました。

VB,VCはVisualStudio6で止まってたので困りました。
.NET FrameworkっつーJavaもどきのクラス群ってことで
手当たり次第にぐぐってようやく一つのツールを作ることが
できました。は〜疲れた。

とあるメーカーの提供するdllの関数仕様書をながめつつ
VB.NET用に定義を変更しながらやってたのですが、
VB6でひたすらAPI使ってゴリゴリやってた経験がこういうところで
活きてくるんだな・・・。

ただのVB使いだと、ぐぐってもどうしようもない局面では
お手上げ状態にならざるを得ないと思うのだが、あたしゃ前職で
暇な時に猫でもわかるプログラミングでWinMain()から生Cで
プログラムをゴリゴリ書いてたりしたので、Windowsアプリの動作原理っつーか
WindowsAPIの使い方の作法とか、お約束事項とかそういう知識は
結構詰まってたりするんですよ。

いまどき、あんまり流行らないけど・・・。

だから、前の部署ではVBなのにメモリコピーとかキーボードフックとか
飛び道具だらけのアプリをチーム内のフレームワークっぽく布教して
オレ色に染めてました(笑)


まぁ、今日のVB.NETもスピード勝負で半日使ってVC++のテストアプリで
下調べしていたから、今日は言語とかクラスとか以外ではサクサクいけた
ってのはあるんだろうね。
(VS.NETにもVC++が入ってるけど.NETじゃないし)


それにしても.NET・・・クラスが多すぎて困っちゃう。
認証
今日はApacheでのディレクトリ保護のための認証設定について。

2つの認証方法があって
・Basic認証
 対応しているブラウザも多いが、パスワードなどがプレーンテキストをMIME

 エンコードしただけでやり取りされるので、スニッフィングされると
 やばい。(MD5での暗号化も可能ではあるらしい)
・Digest認証
 HTTP/1.1対応のブラウザのみ。MD5で暗号化されているので、
 解読はかなり困難。
 (今回はIE使用が前提なので、こちらにする)

ということで、いろいろ手順を書こうと思ったが、それより他に
優先順位の高い仕事が入ってしまったので、そのうち加筆することにしよう



...BASIC認証になりました(笑)

理由:ホスティングサービスのマニュアルを見るとBASIC認証しかサポートしてない。

ちゃんちゃん。。。
SJC-A
いきなりではあるが、SJCAの受験チケットを申し込んだ。

※割とあっさりマシンの再設定が出来てしまったので・・・こんなことしてました(笑


先着 300 名様限定 特別受験料 9,600円(税込み:10,080円)
通常受験料 15,000円 のところ、先着 300 名様限定 特別受験料 9,600円(税込み:10,080円)にて、また定員締切後も2005年12月22日受付分まで期間限定受験料 12,000円(税込み:12,600円)にてご提供いたします。


というSunのページにつられて・・・。
どっちみち今期の目標設定で脈絡もなくSJCA合格ってのを掲げてしまっているので
どうせ受験するなら安く受験しようというのもあって購入。

SJCAの例題はこんな感じ

SJCAはプログラマに限らず、コンサルタントやSEなど、Javaを使用する層を幅広く
対象とした認証資格なわけで、現状PHPをメインでやっている業務の傍らで受験というのは
決して無理でもないわけだし、今後Web系システムのSEとしていろいろ取りまとめて
いこうとしている事と、実務経験の少なさをカバーするという意味では非常に都合が
よいわけだが・・・・・まぁいろいろ大変だろね。

UMLは以前多少かじったことがあるし、オージス総研のUMLなんとか資格のブロンズを
受けたこともあったし(←Webで無料で受験できたから)言語としてのjavaとその周辺知識。

あとは気合いでなんとかするだわな。

再導入
昨日まで使ってたマシンが起動しなくなりました。




という予兆はあったので、昨日のうちにデータをバックアップしておこうかと
思っていたら、「今日はみんな早く帰るから・・・」ということで
残業できず、「まぁ明日やればいっか?」と思っていた矢先の出来事でした。
そして昨日のうちから、代替マシンを手配していたのでした。


そしたら、今日かよ・・・・・・・・・。タイミング良すぎ。


幸いにしてWin2000が起動しないってだけで、セーフモードwithネットワークで
立ち上がってくれたので、データなどの移行はすんなりできた。
これができなかったら、一昨日の240件のデータ項目をFAXからチマチマ写して
資料作ってた作業がパーだったので、かなりほっとしたわね。

ソースファイルはCVSサーバで管理しているので、なくなる心配とかは
なかったので、資料だけが心配でした。

ってことで、今日は予備マシンの環境構築+使ってたマシンの再インストール
やらなにやらで一日潰れる予定。

予備マシンはCドライブオンリーな構成なんで、以前買ったアクロニスの
パーティショニングツール持ってこなきゃ・・・。
(密かに↑のツールはお奨め。多分新規PC導入など一回こっきりしか使わないで
あろうパーティショニングツールが3000円弱!!CDブートで使えるので
インストールの必要もありません。)
Acronis HD Utility Pack Personal (説明扉付きスリムパッケージ版)
防火壁
今日はPostgreSQLのDBサーバを外部から接続できるように設定とか
してました。
ホスティングのテスト環境はあっさり設定できたんですが、社内の
Fedoraちゃんがなかなかうまくいきません。
まず、Postgreのバージョンが8になると、設定ファイルの書き方が
多少変わってきます。これを検索するのでもそこそこ時間がかかりました。

で、オチなんですが。。。





ファイアーウォール設定ではじかれまくり。




ということだったんですね。
Fedoraの初期設定では、ほとんどのポートを閉じてしまっているので
そこをちょちょちょいと開いてやる必要があるんですよ。これが。

で、最初ばっさり設定解除してやったら、ちょとまてぃ!と言われて
いろいろ試していたのですが、基本的にはLinuxのサービスについては
設定変更→デーモン?再起動ってパターンでした。
ばっさり削除すると、とたんに全ポートがツーツーに通ってしまうので
iptable設定は、設定直後から有効になるもんだとばっかり思ってました。

でも、むやみやたらにiptableは触るもんじゃないんで・・・。

どうしても触りたいときは・・・
/etc/sysconfig/iptables をviなどで修正

今回の場合は、ローカルアドレスからの5432ポートへの接続を通したいので
A RHFirewall1INPUT s XXX.XXX.XXX.0/24 p tcp m state state NEW m tcp dport 5432 j ACCEPT

ってな行を追加するわけだ。
(他の行を見てコピペ編集しただけのだが、とりあえず使えるようになったからOKなんでしょう・・・)


でもって
/etc/init.d/iptables restart で再起動して設定を反映

ってな手順になりますな。
不注意
今日はPDFLibっつーPDFを出力するライブラリのインストールを実施。

テスト環境用ってことで、Windows版とLinux版をダウンロード。
tarを展開して、PHPのバージョンにあったlibpdf_php.soを
所定の場所(php.iniのextension_dirの場所)にコピーして
最後にphp.iniに
extension=libpdf_php.so

を追加するだけ。

もう、このあたりまでくると楽勝かも・・・。

テスト環境で動作確認ができたので、ホスティングのテスト環境で
いっちょテストしてみるかと・・・いうことで、sshで入って
ftpでファイル上げて、ちょろちょろと設定して・・・apache再起動。


あかん・・・動かん。

php.iniの設定は何回も見直した。
ファイルのコピー位置もさんざん確認した。
phpのバージョンとの整合性も確認した。


動かん。。。。




あら、FreeBSDってtar玉からして違うのね

ダウンロードページをひょっとしてと思ってみてみてたら、Win/Linuxと
UNIXに分かれてて、UNIXの方にFreeBSD 4.xってあんじゃんよぉ。


あっさり動くじゃん
落胆
昨日はホスティングサービスのテストアカウント取得の連絡が
あったので、ちょこちょこいじってみました。
OSはちょっと毛色の違うFreeBSD。
設定手順のページを見ながらPHPとPostgresの設定をやってみたのですが

・・・

・・・・・・

アホでもできるやん( ̄o ̄;)

ものの10分程度でサクッと終わってしまった。
拍子抜け・・・。

特にPHPなんて、メニューからPostgresとGD2.xってところに
チェック付けるだけで簡単にインストールできちゃう。

おまけにsendmailも設定済みなので、PHPでちょろっとコード書けば
メール送信フォームまでできちゃった。

あ〜、金とってるだけあるよな〜。って感じでした。

あまりの簡単さに「しりこ玉」抜かれた気分やった。