カテゴリー: デジタル

Virtual PC 2007の仮想PC上にUbuntu 8.04を導入する際の注意点

Ubuntu 8.04の日本語ローカライズ版がリリースされていたのでVirtual PC 2007の仮想PC上にさっそく導入を試みるも、インストール開始直後にVirtual PCが「回復できないプロセッサ エラーが発生しました」とエラーを吐いてどうにも先に進めない事象が発生。

ちなみに「メモリテスト」はきちんと完走するものの「コンピュータに変更を加えないでUbuntuを使ってみる」と「CDの異常をチェック」だとインストール選択時と同様にエラーを吐いてリセットされます。

旧7.10は問題なくインストール出来ていたので、今バージョンからインストーラの仕組みが大きく変わったのかな??などと悩んでいたのですが、海外の技術情報サイトを中心に情報を漁ってみたところこちらの記事でヒントを発見。

KING-MAX製microSDカードを購入

嫁の携帯用に先日購入したmicroSDに続き、自分用にも2GBのmicroSDカードを購入。買い物に立ち寄ったジャスコのワゴンセールに並んでいたKING-MAX(MAG-LAB)製『MGKM-MCSD2GBL』で価格は1,500円でした。

今携帯にセットしているBuffaloの2GBのminiSDカード『RSDM-2G』に何か問題があるわけではないのですが、次に携帯を買い換える時にはminiSDカードではなくmicroSDカードに対応したものしか存在しないでしょうから今のうちに移行しておこうという作戦です。

ドコモ「同一機種2年以上で電池パック無料」の罠

午前中ドコモショップに赴き、わたしの携帯(SH902iS)のバッテリーを交換してきました。現在の機種を1年以上利用しているので、ドコモポイント500ポイントでのバッテリー交換とあいなりました。

ここではじめて知ったのですが、この「電池パック500ポイント交換サービス」を利用すると、”同一機種を2年以上継続してご利用中のお客様に電池パックを無料でプレゼントいたします”としている「電池パック無料サービス」を利用までにあらためて2年待つ必要があるそうなんです。確かにドコモのホームページを見たらそのように注釈書きしてありますが、それだったら”同一電池を2年以上継続して…”に正すべきでは?なんだかなぁ…。

携帯のバッテリーなんてそれほど酷使しない場合でも1年経てばヘバってしまって通話可能時間はグンと短くなってしまいます。2年も同じバッテリーを利用し続けるのは、利用頻度の少ない人か減った分をいつでも充電で補える環境に居る人くらいではないでしょうか?同じ機種を長く利用したい人が不便を感じることが無いよう、電池パックの交換制度の改善を図っていただきたいものです。

プロキシ越しのAPT

以前、仕事用のノートPCに構築したVirtual PC 2007上のDebian(etch)環境ですが、インストールしただけでほとんど使っていません。たまにはアップデートでもしとくか…と思ったのですが、現在の作業場所からはプロキシを通す必要がある為そのままでは apt できません。ん?そういえば、apt のプロキシってどこで設定するんだろ…ということで調べてみたところ、/etc/apt/apt.conf に次のように指定するらしい。

Acquire::http::proxy "http://proxy.example.com:8080/";

自分の環境では apt.conf ファイル自体が存在しなかったので、新規作成して上記を記述。無事に apt できました。GUI の”アップデートマネージャー”もこれで動くようになります。

[Perl] パスの記述を変えずにWindows上でPerlを動かす

レンタルサーバなどのUNIX/Linux系サーバで動かすPerlのスクリプトには以下のようなパスを先頭に記載します。

#!/usr/local/bin/perl

しかし、このスクリプトをWindows上に構築したApache + ActivePerlの環境で動かすには、一般に次のようなパス指定に書き換える必要があります。

#!C:/perl/bin/perl

面倒と思いながらもそもそもUNIX/LinuxとWindowsではディレクトリ管理の概念が違うのだから「こういうもんだ」と諦めて、環境に応じて逐一パスを書き換えている方も多いと思いますが以下のような方法を使えばこの手間を省くことが可能です。

[Perl] UAからドコモの機種を判別する正規表現

ドコモ端末向けの自作プログラムを作っている際に、端末の種類毎に処理を分岐する必要が出てきました。そこでドコモが公開している情報を元に、iモードでアクセスされた際に取得できる環境変数 HTTP_USER_AGENT から端末の機種(型番)を取得する正規表現を考えてみました。

my $env = $ENV{HTTP_USER_AGENT};
my($type) = $env =~ m|^DoCoMo\/[\.\d]+\W*(?:(?:MST_v_))?(\w+).*?$|i;

print "機種は $type です";

大半の機種は簡単な正規表現で対応できるんですけど、『SH2101V』って機種が特殊なUAを返すようなので”MST_v_”云々のロジックはその対応の為に入れてます。

なお、ドコモの公開情報によると『D2101V』などのUAに全角スペースが含まれるみたいですけど本当かしらん?それとも誤植?