2012年3月7日水曜日

PHP4環境構築とPEAR強制アップグレードメモ

PHP4…CakePHPがバージョン2になってついにサポート対象から外れたこんな時代に需要なんて殆ど無いだろうけど、まあ仮想マシンなら物理的な場所とらないってことで一応環境作って残しときましょう…ってことで実際需要が発生したので、まあブログなら物理的な場(以下同文)

願わくば、我のみならず俗世においても当エントリを必要とする状況があまり発生せんことを。停滞は後退だ。2010年にもなって新規案件でVBScriptてIE6てJava1.4て…(はいわざわざ過去をほじくり返してイラついている大馬鹿者です)

試した環境

  • CentOS 5.6(64bit)
  • Apache 2.2
  • PHP 4.3.11
ちなみに、PHP4.2以前はApache2系と相性悪いらしく、実際僕もインストールできませんでした。

事前準備

Apacheインストール
apxsってのも必要なのでhttpd-develも一緒に。
# yum -y install httpd httpd-devel
Flexとlibxml2インストール
# yum -y install flex libxml2-devel

PHPインストール

yumでのインストールはできないので、ソースからインストールせざるをえない。
ダウンロード、コンパイル、インストール
旧バージョンも含めたPHPのソース置き場は以下。
configureオプションはとりあえず必要最低限の設定。
$ wget http://museum.php.net/php4/php-4.3.11.tar.gz
$ tar zxvf php-4.3.11.tar.gz
$ cd php-4.3.11
$ ./configure --enable-mbstring --with-apxs2=/usr/sbin/apxs
$ make
# make install
php.ini作成
解凍したソース一式の中にある「php.ini-dist」という雛形があるので、それをコピー。
# cp php.ini-dist /etc/php.ini
Apache設定
httpd.confに以下の設定を追加。その後再起動。
AddType application/x-httpd-php .php
最低限の設定は完了。あとはおなじみのphpinfo()で動作確認。
動かなかったら、ファイアウォールやSELinuxの設定を確認してみろ、と自分に向けて書いておく。

HTTP_Requestインストールから学ぶ、PEARパッケージ強制アップグレード

作成したPHP4環境では、HTTP_Requestも必要だったのだけど、これも一筋縄ではいかなかったのでメモする次第。
普通にインストールできるかと思いきや…
# pear install HTTP_Request -a
HTTP error, got response: HTTP/1.1 410 Gone
Didn't receive 200 OK from remote server. (HTTP/1.1 410 Gone)
何か「そんな古いパッケージはもう置いてねえよ」とでも言ってるようなエラーメッセージだ。
以下によると、PEARのバージョンが古いからだろうとのこと。
確かにパッケージのドキュメントに「PEAR Installer 1.4.3」って書いてあるわ。PHP 4.3.11を当エントリの手順でインストールした場合、PEARのバージョンは1.3.5だった。

ということで、上記記事を参考に、PEARを強制アップグレード…の前にまず「Archive_Tar」を強制アップグレード。これやっとかないと、PEAR強制アップグレード自体で同様の「410 Gone」エラーが発生する。
# pear upgrade --force http://pear.php.net/get/Archive_Tar-1.3.1.tar
# pear upgrade --force http://pear.php.net/get/PEAR-1.4.3.tar
# pear install HTTP_Request -a

終わり。自分で書いときながらだけど、このエントリ読み返したくねぇ(読み返すような状況に遭遇したくねぇってことです)。

2012年2月5日日曜日

VirtualBox ディスク容量変更方法

「これだけあれば事足りるだろう」との決定を下した後、「こんな筈じゃなかった!」とハードディスクの容量が足りなくなる事は人の世の常。今回はVirtualBoxのディスク容量を変更する方法をご紹介します。やらなきゃいけない事は
  1. 仮想ディスクの容量変更
  2. パーティションサイズの変更
です。

試した環境

  • VirtualBox 4.1.8
  • ゲストOS:CentOS 6.2
  • ホストOS:Windows 7, Vista

仮想ディスクの容量変更

容量増やしたい場合
作業前に念のためバックアップ(クローン)を作成しておくことを推奨します。
コマンドプロンプトを起動し、VirtualBoxのインストールフォルダに移動し、以下のコマンドを実行。
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe modifyhd VDIファイルパス --resize 希望サイズ(MB)
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
容量減らしたい場合(需要あるのか?)

注:これまでもそしてこれからも未検証

仮想ディスクのサイズ変更だけなら、以下の方法でいけるかもしれませんが…
  1. 希望のサイズの空仮想ディスクを新規作成
  2. 既存の仮想ディスクの内容を空仮想ディスクにコピー
ただし後述の通りパーティションサイズはそのままなので、この場合起動できるかどうか分からん。

仮想ディスクのコピーは以下コマンドを実行。
ああでもコピー先の方が容量少ないとこの段階でエラー発生しそうだな。
C:\Program Files\Oracle\VirtualBox>VBoxManage.exe clonevdi コピー元VDIファイル コピー先VDIファイル --existing
※参考

パーティションサイズの変更

仮想ディスクの容量変更しても、残念ながらパーティションサイズは元のままですので、ここも変更する必要があります。普通にCentOSをインストールした場合、ルートディレクトリはLVMパーティションとして作成されるので、ここではLVMパーティションのサイズ変更手順を解説します。
尚、LVMパーティションかどうかを確認するには以下コマンド。
# fdisk -l
/dev/sda1 …
/dev/sda2 … Linux LVM

そもそもLVMって何なのかってのは割愛。
ちなみに僕がとった流れは以下の通り。多分もっとスマートなやり方があると思うけど…
  1. 未割り当て領域に新規パーティション作成
  2. LVMパーティションに1.で割り当てたパーティションがっちゃんこしてサイズ拡大
未割り当て領域に新規パーティション作成
僕はGparted使いました。以下ページからISOファイルをダウンロード。
ダウンロードしたISOファイルをIDEコントローラにマウントした状態(「設定」→「ストレージ」で「IDEコントローラ」にISOファイルを割り当て)で仮想マシン起動。

その後は以下の流れを辿って、GpartedをGUIモードで起動。
  • Gparted Live (Default settings)
  • 言語:「Japan」
  • モード:GUI(「0」)
未割り当て領域を右クリック→「New」で表示されるダイアログにて新規パーティションを作成。以下のような感じで。

その後は
  • ツールバーの「Apply」をクリックし、変更を適用。
  • 左上の「Exit」アイコンをダブルクリックし、一旦シャットダウン。
  • シャットダウンしたらGpartedのISOファイルの割り当て解除し、仮想マシンを再度起動。
起動したら以下コマンドで新規パーティションの作成確認。
# fdisk -l
/dev/sda1 …
/dev/sda2 … Linux LVM
/dev/sda3 … Linux
LVMパーティションに新規作成したパーティションがっちゃんこしてサイズ拡大
まずは新規パーティションをPVとして作成。
# pvcreate /dev/sda3
…
Physical volume "/dev/sda3" successfully created
# pvdisplay ←PVの情報を表示

次に新規PVをVGへ登録。vgdisplayでVGの名前を確認し、vgextendでその名前を指定する。vgextendが成功したら、vgdisplayでVGサイズを確認してみてください。増えてればOKです。
またこの時、「Free PE / Size」の右側をメモしておいてください。
# vgdisplay
--- Volume group ---
VG Name               vg_virtualbox
…
# vgextend vg_virtualbox /dev/sda3
Volume group "vg_virtualbox" successfully extended
# vgdisplay
--- Volume group ---
…
VG Size  9.50 GiB
…
Free PE / Size  511 / 2.00 GiB

最後に、LVのサイズを拡大。
「lvextend -L [拡大サイズ] [LV名]」と打ち込みます。サイズには前述の「Free PE / Size」の右側の数字の値を、LV名はlvdisplayで表示される「LV Name」を指定。
# lvextend -L +2G /dev/vg_virtualbox/lv_root
Logical volume lv_root successfully resized
# resize2fs /dev/vg_virtualbox/lv_root

すべてが完了したら、lvdisplayやdfでサイズを確認してみてください。

※参考

2012年1月30日月曜日

機動戦士ノーナインガンダム

ABCマント ≒ アイスバーン

ビーム・ソーは、ABCマントを切り裂く力を持っている。
高速で振り回されるビーム・ソーも、光速に近い速さで通り過ぎるビーム・ライフルのそれに比べれば、遥かに低速でマントの上を通り過ぎる。
蒸発によってエネルギーを打ち消すマントにとっては、こうした長い間「同じ場所に居座り続ける」武器の方が苦手だということなのだ。
~機動戦士クロスボーン・ガンダム クァバーゼのメカニック解説より

雪に覆われた今週の大東京、雪道とは名ばかりの氷道いわゆるアイスバーンを闊歩する俺。最寄り駅までのルート前半、滑らぬようゆっくり歩いた結果、大幅にタイムロスした俺は、こんな日まで律儀に始業時間厳守する必要あるのかという葛藤を抱えつつ、危険を覚悟で途中から小走りに切り替えた。
その時、俺は発見した。

「アイスバーンはゆっくり歩くよりも小走りの方が滑りにくい」

という真実を。
その時ふと思い出したのが、冒頭のクロスボーン・ガンダムからの引用。ゆっくり歩くということは、それだけ氷との接触時間が増えるということだから、却って滑りやすくなるんですかね。そういえば、熱湯などの熱いものなんかも一瞬ちょん!って触れる分には大丈夫だもんね。いやはやこの世の事象は奥が深い(大袈裟)。

カレーうどん < 富野由悠季+菅野よう子
and
リング・オブ・ガンダム ≒ ガイア・ギア?

「カレーは美味い。うどんも美味い。じゃあカレーうどんは2倍美味いのかというと、そんなことはない」
ってな事を松本人志が言ってた様な気がするが、僕にとっての富野由悠季・菅野よう子のコラボは2倍美味いなんてものじゃない。その両名による作品として『ブレンパワード』『∀ガンダム』に続く第3作である『リング・オブ・ガンダム』って…結局製作されるの!?されないの!?

一年戦争の遙か未来とか、「アムロの記憶」とかいうワードが散りばめられてたような気がしたけど、それを聞くと駄作「ガイア・ギア」を思い出す(こっちは「シャアの記憶」を受け継ぐ者の話だけど)。

ようやくアムロにもスポットが。世の中的にはシャアばっかりが人気だもんね。ていうかこちら側の世界だけでなく劇中でも、アムロの近くにいたハサウェイは『閃光のハサウェイ』で「シャアに共感」しちゃってるし。 アムロの理想主義的な考え方、結構好きなんだけどなーまあ確かに実現可能性は低いだろうけど…
…なんて楽しみにしていたのはもう既に2年半前。富野監督は既に古希を迎えている。こんな事言いたかないけど、流石にこのお年だと新作は…

アニメ版 < 小説版 < 脳内編集版

社会人になってから富野アニメを殆ど鑑賞しなくなり、小説版メインで楽しむようになった。アニメ版を見なくなった理由は、自由時間が学生の頃と比べて大幅に減少したのに伴い、余計な戦闘シーンや横道エピソードなどの「冗長部分」が鬱陶しくなってきたからだ。今でこそアニメはエンターテイメント界で確固たる地位を築いてはいるけど、80年代ではメインの顧客はお子様。スポンサーの意向で、プラモデルを売るために戦闘シーン多めにしたり、そもそもストーリーを子供向けに(つまりソフトに)改変せざるを得なかった時代(まあビジネスだからしょうがない)。『逆襲のシャア』のストーリー改変なんかは、角川文庫版の後書きで富野氏本人が語っているので有名ですね。ちなみにそこでは改変を「納得した」的な事を言っていたけど、果たして本心だったのだろうか。

小説版は『顧客のニーズ』なんて無視してやりたい放題な感じで面白い。『Z』ではシャアのダカール演説がフル収録されてたり、カミーユのマザコン・基地外加減がひどいもんだったり。全体的に、アニメでは全く窺えないエログロ描写が割と多く、ドロドロしている。特にバイストン・ウェルものなんか、中世ヨーロッパ的な世界観ということもあり、『ベルセルク』さながらにバイオレンス&セックスが溢れている。下の毛が生えた今となっては、そういうよりドロドロしたものの方がやっぱ面白く感じるです。そして、アニメ版・小説版からそれぞれいいとこ取りして織り交ぜ…といった感じで脳内編集したものを妄想するようになって幾星霜。やっぱり脳内編集版が一番面白い(自分の好みに作り上げるから当たり前だろうが)。

*

クロボン、目がでけぇよ…(by 富野監督)


リーンの翼、高ぇよ…