CentOSにも飽きてきたのでUbuntuのサーバ版を試してみることにした。 サーバ版は日本語Remixとかはないのでubuntu.comの方から落としてくる。 インストール デスクトップ版とは違ってキャラクタベースのGUIインストーラ。 手動でパーティションを編集すると…
Ubuntuサーバが無事に動いたので、続いてSubversionを入れてみる。 こんな感じの環境を考える。 Apache経由でアクセス出来るようにする。 SSL+Digest認証に限定する。 リポジトリ毎のアクセス認証にも対応する。 Subversionのインストール sudo apt-get inst…
Subversionに続いてTracを入れてみる。 こんな感じの環境を考える。 インタアクトの日本語版(Trac-ja)にする。 データベースはSQLiteにする。 必要なPythonモジュールもパッケージで入れちゃう。 FastCGIで動かす(Apacheを重くしたくない)。 SSL+Digest認…
statで取れる情報の中にはatime, mtime, ctimeがあって、ファイルのアクセス時刻や更新時刻がわかるわけだけど、ctimeって作成時刻だと思ってたら違ったよ! いや、どうやらOSによって異なってくるらしい。Windowsの場合は作成時刻で、Linuxの場合は状態変更…
サーバから/bootがいっぱいでカーネルアップデートできない旨のメールが飛んできたので古いカーネルを削除することにした。 /bootの中には古いカーネルが20個ぐらい溜まっていた。 これをひたすら消していくのは面倒くさい。というかあるバージョンを一式消…
諸事情によりLinuxデスクトップからWindows XPに戻すことになったんだが、XPのインストールが真っ黒画面のまま動かないという問題に遭遇した。 状況 HDDは1台 ディスク全体をLinuxで使用していた 丸々潰してXPを入れ直すつもり XPのセットアップCD(実際はDE…
mbstringを愛用している日本のPHPerならphp.iniのmbstringセクションで必ずと言っていいほど目にする設定、mbstring.func_overload。 これを有効にするとmail()やstrほげほげ()がmb_send_mail()やmb_strほげほげ()にオーバーロードされて、mail()関数を呼び…
PHPでもJavaやその他の言語のようにストリームにフィルタを挟むことが出来るようだ。 これを使うと透過的に圧縮処理を行ったり、Base64変換を行ったり、文字エンコーディング変換を行ったりできるとのこと。 公式マニュアルのストリーム関数をざっと眺めてみ…
今時の言語はだいたいガベージコレクションが備わってるんだけど、デストラクタが使える言語と使えない言語があったり、JavaはGCのタイミングが……などと言われたりするので、GCにはどんな種類があるのか調べてみた。 自分はGCに詳しいわけでもなんでもなくて…
PHPが内部的に変数をどのように保持していて、どのように処理しているのかをこれ以上にないぐらいわかりやすく解説している記事がある。 特にリファレンスがどのように扱われているのかが例を挙げながら詳しく書かれているので、(PHPが好きか嫌いかはさてお…
backtick演算子(バッククォートで実行するやつ) shell_exec() exec() passthru() system() pcntl_exec() popen() proc_open() このうちbacktick演算子とshell_exec()は等価らしい。 ……どれ使えばいいんだyp! といつも思うので、実際に試してみた。 shel…
PHPのマニュアルを眺めてたら日の出とか日の入りの時刻を取得する関数があったんだけど、こんなん誰が使うんだよ(;´Д`) 少なくとも標準で組み込まれてる必要ねーだろうよ。 そもそもどうやって計算してるんだ? どれだけの精度があるんだ? 日の出/日の入り…
PHPといえば「ほーむぺーじ」を作るためにあるような言語なわけだが、何故か自分はコマンドラインアプリを作る機会が多い*1ので、引数のパースについて少し考えてみる。 対象ファイルとスイッチのオンオフ程度なら$argvを回しながら自前でパースしても事足り…
やはり日本語版特有のパッケージやマルチメディア系のパッケージとかも入れたいのでリポジトリを追加してみる。 Japanese Teamのリポジトリを追加 8.10(Intrepid)の場合 wget -q http://www.ubuntulinux.jp/ubuntu-ja-archive-keyring.gpg -O- | sudo apt-ke…
会社のPCはLinuxデスクトップなんだけど、お客さんは圧倒的にWindowsが多いので、オフィス文書とそのフォントがアレでコレでどうにもこうにもな状態。 MSゴシック等のフォントがない*1のはもちろん、GNOMEのフォント設定をM+IPA系フォントに設定しているので…
register_globals.php
本体のSSDには一切手を触れずに、USBメモリを挿したときだけeeeUbuntuを使えるようにしてみたので、その手順のまとめ。 最低限次のサイトは読んでおく。またはインストールしながら読む。 http://2.csx.jp/livecdroom/ http://2.csx.jp/livecdroom/eeepc_tip…
今年は田んぼとミカン畑しかないド田舎に帰省することになったので、暇つぶしできるものをってことで流行りのULCPCを買ってしまった。 会社のディスプレイよりも解像度が高いヘビー級のノートPCは持ち運びできんよ……。 11月ぐらいからずっと情報を集めていて…
php.iniのmbstring.internal_encodingやmb_internal_encoding()はPHPスクリプト自体の文字エンコーディングとは関係ない。 これらはmbstring系の関数が内部で処理するためのエンコーディング指定だ。 なのでinternal_encodingにShift_JISを指定したからとい…
少し前に「マルチバイト対応の文字列折り返し処理」というエントリを書いたけど、その中でpreg_split()だとうまくいくのにmb_split()だとうまくいかない処理というのがあった。 で、今日たまたま似たような処理を書いていたんだけど、何故かmb_split()でもう…
UbuntuにDebianのパッケージをそのまま入れてはいけない。 らしい。 たぶんほとんどはそのまま動くと思うんだけど、ディストリビューションが違う以上は構成も違うわけで、下手すると動かないどころか依存関係をぶっ壊してシステムオワタ\(^o^)/になるかも…
今までVARCHARで持っていたデータを、数値しか入れないってことでINTEGER型に変えることになったんだけど、ALTER TABLEがうまくいかなくてプチハマリ。 ALTER TABLE foo ALTER COLUMN bar TYPE INTEGER; 何の考えも無しにやってみたら案の定エラーになった。…
少し前にVMware-serverのバージョンが1.0.8になったのでアップデートしようと思ったら、vmware-install.plの途中で「カーネルコンパイルに使用されたgccのバージョンとインストールされてるgccのバージョンが違うよ」と言われてインストールできなかった(強…
ブクマしようと思ったら、新しいブックマークレットがリリースされました!みたいな表示が出てたので入れ替えてみたら、ブクマ画面がページ内にインラインで表示されて格好よくなった! んだけど、どうやら対象のページにcreateElementでscriptタグを生成し…
SPLのArrayObjectはコンストラクタの第二引数やsetFlags()でフラグを指定できるのだが、これの意味がよく分からなかったので調べてみた……けどやっぱりよくわからなかったので実際に試してみた。 コンストラクタの説明を見ると「setFlags()を見ろ」と書いてあ…
一行n文字で自動的に折り返しする処理が必要になったのでその辺から拾って済ませようと思ったら、マルチバイト文字をきちんと処理できないものばかりで困った。特に半角カナとか記号が鬼門。 というわけで仕方なく自分で作った。 業務で必要なものだったから…
PHP: parse_ini_file - Manual定数も ini ファイル上でパースされます。 そのため、parse_ini_file() をコールする前に ini ファイル上の値として定数を定義した場合、返り値に統合されます。 ini ファイル上の値だけが評価されます。(from http://jp.php.n…
PHPにはSPL(Standard PHP Library)という便利……というほどには充実してないライブラリがあるんだけど、いまいち知名度が低いようで、あまり使ってるのを見たことがない。標準で組み込まれてるのに。 ちなみにC言語からプログラムを覚えた身としては、どうし…
例の件について、Ubuntu日本語フォーラムを見に行くとこんなことが書いてあった。 Ubuntu日本語フォーラム / Xlib11をインストールしたらCompizの動作がカクカクにNVIDIAの特定のドライバを使っていると(さらに特定のアプリケーションを 動作させていると、…
昨日Ubuntuのアップデートを行ったらlibx11が新しくなったようなんだが、それと同時にCompizの2D描画がめちゃくちゃ重くなって不安定になった。 もっさりしてイライラするとかいうレベルじゃなくて、引っかかるような感じで描画が止まったり乱れたりすること…