ホームネットワーク日記

設定したことを忘れないように書いてあります。

2010.01.09
apacheのcontent-type

通常のwebは文字化けをしないが、.phpのアプリケーションが文字化けをする。 AddDefaultCharsetが指定されているせいかとおもったら、ちゃんとコメントアウトされていた。

調べたところ、php.iniのdefault-charsetが設定されていると、content-typeとして送出される仕様になったと判明。 default-charsetは内部キャラクターセットだけではないのだね。

2010.01.03
Cyrus-imapのインストール

Cyrus-imapをインストール。ディストリビューションがvineのままなので、設定は、前回 と同じようにやったのだが、忘れていたことと変わっていることがあってはまった。

まず、sasl-authd が -aオプションで起動されているのは覚えていたが、このため、cyradm -u cyrus localとしたときのアカウントもunix accountに影響することを忘れていて、 saslpasswd2で作成したアカウントでログオンできずはまった。 普通にpasswd cyrusで設定したパスワードでログオンする必要があった。

次に、/etc/init.d/cyrus-imapd startで起動しない。理由は、/usr/lib64にアプリがあるのに、/usr/libを指定しているため。 下記のように修正して起動するようになった。

--- cyrus-imapd.init    2006-03-01 05:04:01.000000000 +0900
+++ /etc/init.d/cyrus-imapd     2010-01-03 19:08:48.000000000 +0900
@@ -57,7 +57,7 @@
 
 # where to find files and directories
 CONFIGDIRECTORY=$(get_config configdirectory /var/lib/imap)
-CYRUSMASTER=/usr/lib/cyrus-imapd/cyrus-master
+CYRUSMASTER=/usr/lib64/cyrus-imapd/cyrus-master
 CYRUS_PROC_NAME=$(basename $CYRUSMASTER)
 ALWAYS_CONVERT=1
 
@@ -81,7 +81,7 @@
     if [ $QUICK -eq 0 ]; then
       echo -n $"Importing $BASENAME databases: "
       cd $CONFIGDIRECTORY
-      $RUNUSER - cyrus -c "umask 166 ; /usr/lib/cyrus-imapd/cvt_cyrusdb_all > ${CONFIGDIRECTORY}/rpm/db_import.log 2>&1" < /dev/null
+      $RUNUSER - cyrus -c "umask 166 ; /usr/lib64/cyrus-imapd/cvt_cyrusdb_all > ${CONFIGDIRECTORY}/rpm/db_import.log 2>&1" < /dev/null
       RETVAL=$?
       if [ $RETVAL -eq 0 ]; then
         success $"$BASENAME importing databases"
@@ -110,7 +110,7 @@
       echo
       echo -n $"Exporting $BASENAME databases: "
       cd $CONFIGDIRECTORY
-      $RUNUSER - cyrus -c "umask 166 ; /usr/lib/cyrus-imapd/cvt_cyrusdb_all export > ${CONFIGDIRECTORY}/rpm/db_export.log 2>&1" < /dev/null
+      $RUNUSER - cyrus -c "umask 166 ; /usr/lib64/cyrus-imapd/cvt_cyrusdb_all export > ${CONFIGDIRECTORY}/rpm/db_export.log 2>&1" < /dev/null
       RETVAL2=$?
       if [ $RETVAL2 -eq 0 ]; then
         success $"$BASENAME exporting databases"
さらに、poxtfixとの連携ではまる。前回、lmtp経由でやったのだが、同様な設定では
master[23982]: fatal: master_spawn: exec /usr/lib64/postfix/lmtp: No such file or directory
postfix/master[23976]: warning: process /usr/lib64/postfix/lmtp pid 23982 exit status 1
postfix/master[23976]: warning: /usr/lib64/postfix/lmtp: bad command startup -- throttling
となってうまく引き渡せない。/usr/lib64/postfixにはlmtpがないので当然なのだが、設定を変更する方法がわからない。 しかたがないので、unix domain socketはあきらめて、cyrusのdeliver経由で使えるように、/etc/postfix/main.cfと/etc/postfix/master.cfを以下のように変更した。
#main.cf
mailbox_transport = cyrus
fallback_transport = cyrus
#master.cf
#lmtp      unix  -       -       n       -       -       lmtp
・
・
・
# Cyrus 2.1.5 (Amos Gouaux)
# Also specify in main.cf: cyrus_destination_recipient_limit=1
#
cyrus     unix  -       n       n       -       -       pipe
  user=cyrus argv=/usr/lib64/cyrus-imapd/deliver -e -r ${sender} -m ${extension} ${user}
とした。これでとりあえずメールができるようになった。

2008.08.26
S11HTのGPS MAP

e-monsterに一番期待しているのは電話ではなく、GPS。世界中で使える地図としてが第一の用件。 モバイルGoogle Mapは用件を備えているけれどもネットワークを必要とするため、何らかの手段で接続性を確保しなければならない。

そこでオフラインでも地図とGPSが使えるようにterraaccrossorを導入した。

terracrosserは、 .NET Compact Frameworkの3.5以上が必要 な為、あわせてこちらもインストールした。

配布しているzipファイルには、MapperとCabファイルが含まれており、cabファイルの方は、ハンドヘルドで実際に使用するアプリケーション。ActiveSyncでS11HTに転送し、インストールすればOK。 予め、level-4の分解能でphotoとMap形式の世界地図が含まれているため、インストール直後でもその程度の地図は見ることができる。

Mapperのほうは、PC上でGoogleから地図(および航空写真)のデータを取得するツール。 取得した地図情報をハンドヘルドに転送することで、オフラインでの地図参照が可能になる。

Mapperを起動し、イメージのサイズ、中心点、ズームレベルと地図または写真を指定し、 「Save Map」のボタンをクリックすれば、googleから地図をダウンロードする。 この際、最初に表示されている範囲を、「Save Map」ボタン横の MinZoomからMaxZoomの範囲で分割して取得される。 たとえば、Zoom 4で MinZoomが 7 MaxZoomが 8 と指定した場合、ZoomLevel 7 のデータが64枚、ZoomLevel 8 のデータが256枚取得される。 Zoom Levelが1変わると4倍のファイルが生成される。

まずは世界地図を作成しようとしてみるが、どうやら経度が180度を超える範囲となると正しく取得できない模様。いろいろ試行錯誤の結果 以下のパラメータで大まかな世界地図を作成した。パラメータは全て、Zoom Level:2, Image Size:420×420。Min 5 Max 6

la= 55.000000,lo= -35.000000,w=420,h=420
la= 55.000000,lo= 105.000000,w=420,h=420
la=-45.000000,lo= 105.000000,w=420,h=420
la= 55.000000,lo=-105.000000,w=420,h=420
la=-45.000000,lo= -35.000000,w=420,h=420

データ取得の最後に聞いてくる文字列とあわせて「XXXXX [la= 55.000000,lo= -35.000000,w=420,h=420]」 というディレクトリの配下に地図および航空写真データが作成される。パラメータが一緒なら同じディレクトリに 保存されるのでリネームも可能。自分はXXXXの部分をZoomレベルと範囲が分かる文字列としている。 例えば 04-asia見たいに。

芋星のメモリーカードの直下に\Mapsディレクトリを作成して転送すればOK。 ただしActiveSync経由だと1ファイル4秒くらいかかるのでものすごく時間がかかる。対策は後日。

使い心地は、少しGPS同期に時間がかかる気がするものの、スムースで快調。後はどの程度の地図を揃えるか。 車移動でL10〜L14、徒歩ではL14〜L18位は必要そう。

2008.07.26
S11HTでGPS Loging

e-monster(通称芋星)には、GPSがついている。モバイルgoogle mapなどではそれを使って現在位置を知ることができる。 また、GPSデータを延々と記録していけば、自分のいた履歴を残すことができる。

このようなGPSのloggerは、e-monsterでもいくつか出ているが、 GPX Loggerを利用してGPSデータを収拾してみた。 GPX LoggerはGPX形式でGPSのLogを保管するが、GPSBabelを利用することで、Google Earthで使用するKML形式に変換することが可能。

2008.07.20
eMonster導入

eMonsterを導入。

ソフトバンクのホワイトプランでNokia N73を利用していたが、 GSMのみとはいえSIM Lockが解除されていること、GPS内蔵ということもあり、追加購入。 もともとデータ利用の比重が高いので、Wホワイトとデータ定額を解除すればあまり値段が変わらないということもある。

いきなりEMNetで接続できないなどとはまってしまった。追加で封入されていたお知らせの紙どおりにProxy設定すればつながったが。

2008.07.20
eMonsterを家の無線LANに繋ぐ

eMonsterが自宅の無線LANで利用できない。 EMonster側の設定をいろいろいじってもだめで諦めめかけていたが、AP側のESS-IDスティルスを解除したらつながるようになった。

しかし変更が面倒くさい。環境切り替えツールはフリーが見あたらず悩ましいところ。

2007.08.03
Aterm 54TE リコール

以前購入したWR7800に付随していた 無線LAN子機のWL54TEがリコールとなった。 リコールの発表は少し前で、そのリリースが出たときに情報はキャッチしていたが、緊急な問題ではなさそうなので、 すぐには交換の手続きはとらないでいた。

リコール窓口のページから手続きをすると、宅配便で交換の機体を送ってくる(保有していたものは返送)。 交換機として送られてきたのは、対象のWL54TEではなく、現行機のWL54SEだった。

WL54SEは、もう一台の子機として追加で購入していたため、子機がすべてWL54SEになった。 WL54SEは、J52/W52に対応しており、WR7800もファームアップをすればW52に対応可能だ。 WL54TEも、ファームアップすればW52に対応するが、子機をあげて親機もあげてという作業となり、 無線LANの設定がかわって接続できない状態になった場合のリカバリがめんどくさいので、ファームアップを躊躇していた。 図らずも今回、子機側かすべてW52対応となったため、親機のファームアップだけで済むこととなったので、実施してみた。

ファームアップ自体は親機の管理画面からオンラインで行えばOKなのだが、J52からW52に切り換えるためには、切り換えパスワードを入力しなければならない。 切り換えパスワードは、NECのwebページから一度だけ発行される。 MACおよびシリアルナンバーを入れるだけとはいえ、なんでそんな面倒なんだろう(多分、無線免許がらみなのだろうが)。

パスワードを打ち込むとなんなくW52に切り替わる。無線チャンネルの利用状態を見ると確かにチャンネルは増えているのだが、 特に早くなるわけでもなく、また周りの無線LAN電波と干渉しているわけでもないので特に変化はなかった。

2007.07.31
Willcom解約

一昨年末に契約したWX310SAだが、 N73を契約したこともあり、解約をすることにした。

解約は電話対応または書面の取り寄せによる方法になる。電話の場合、解約の意志を伝えると解約用のはがきを送ってくる。 二週間以内にそのはがきを返送すれば、電話した日が解約となる。のでWebからの取り寄せより少しお得。

解約の大きな理由は、やっぱり機種不足ということろ。スマートフォンもよいけどやはりメインは音声利用。 全体的に、携帯電話利用の音声の扱いは比率が下がっているとはいえ、重要なコンテンツだろう。 そこがおろそかだとWillcomがメインストリームになることはないだろう。

ホームアンテナも借りていたのだが、合わせて返送した。家のまわりのエリアが少し縮小しただろう。 250m以内に基地局がない場所なので(ホームアンテナ外すと、携帯端末では通話はできない)、 ほかにこのあたりに利用者がいれば安定性は減ったと思われる。

2007.06.24
Opra mini の User Agent

Opera MiniにUser Agentを設定すると幸せになれるらしい。 User Agentを設定する方法はいくつかあるが、いろいろ試行錯誤した結果、WAP_patch.zipを使って書き換えを実施。

自由にUAおよびXML Profileを指定して書き込むことができるが、何を設定してよいかわからない。

いろいろ探した結果、User Agentはhttp://developers.softbankmobile.co.jp/dp/tech_svc/info/useragent.php?page=4 のページから発見。XML Profileについては、705NKでは下記のようにすればよいことが判明。

User Agent  : SoftBank/1.0/705NK/NKJ00 Series60/3.0 NokiaN73/X.XX.XX Profile/MIDP-2.0 Configuration/CLDC-1.1
XML Profile : (p)http://nds1.nds.nokia.com/uaprof/NN73-1r100-SB3G.xml
幸せになれるかね。

2007.06.20
Softbank 705NK

アドエスを待っていたが、あれだけで電話とするのはいま一つ。来月に海外旅行に行く事もあり NOKIA N73を追加。会社用のWILLCOM端末(WX320SA)との入れ替えを狙う。

N73はとりあえず、980円三つがさね(Wホワイト+パケットし放題)を選択。 Opera miniとかでごにょごにょできそうだ。

2007.01.28
procmailからsieveへの移行

procmailが使えないようなのでsieveを使えるようにしなければならない。 sieveは、RFC 3028に規定されてている、 メールフィルタ言語であり、こっちのほうが、procmailよりは毛並みは良いようだ。

先日の設定のとおり、imapd.confに各ホームディレクトリで.seiveファイルを使えるように設定をしてあるので、スクリプトファイルはホームディレクトリに.seiveという名前で作成してみる。 内容的には、メールを複製して別アドレスに転送する(オリジナルはメールボックスに保管する)スクリプトを作ってみる。

require ["redirect","fileinto"];
redirect "xxxxxx@example.com";
fileinto "INBOX";

fileintoは拡張扱いなのでrequireを記述しなければならないが、redirectは標準なので本来必要ではない。

準備ができたのでテストメールを送ってみるが、スクリプトが動作した形式がない。 ログを調査すると以下のようなエラーが残っている。

Jan 28 20:08:58 argus lmtpunix[1824]: IOERROR: fstating sieve script /home/test/.sieve: Permission denied

lmtpunixから.sieveファイルが見えないのが原因なので、homeディレクトリをmailグループからみえるように設定した。ところが今度は

Jan 28 20:13:12 argus lmtpunix[1848]: IOERROR: not a sieve bytecode file /home/test/.sieve

と、バイトコードがsieve用ではないと文句を言われてしまった。

どうやら、単純にテキストでスクリプトを書くだけではダメで、sieveが理解するbytecodeにコンパイルする必要があるようだ。 sieve-shellスクリプトをtest.scrという名前で作成し、sievecでコンパイルすれば動作する。

/usr/lib/cyrus-imapd/sievec test.scr ~test/.sieve

persissionに対する対処方法がいま一つ美しくないが、ひとまずは移行完了。

2007.01.20
WU-IMAPからcyrus-imapへの変更(3)

次に、postfixをcyrus経由でメールが扱えるように変更する。こちらは/etc/postfix/main.cf中の、

mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp
fallback_transport = lmtp:unix:/var/lib/imap/socket/lmtp

fallback_transportは、unixのpasswdデータベースにアカウントがなかった場合の処理なので、 vineの場合はなくてもOK(defaultがshadowを参照しているため、必ずunix accountも無ければ認証が成功しない = メールが取り出せない)。

以上で完了のはずだが、テストメールを出すと以下のようなログを残して動作しない。

Jan 20 23:45:21 argus postfix/pickup[24288]: 64659F49CE: uid=0 from=
Jan 20 23:45:21 argus postfix/cleanup[24293]: 64659F49CE: message-id=<20070118144521.64659F49CE@example.com>
Jan 20 23:45:21 argus postfix/qmgr[24289]: 64659F49CE: from=, size=297, nrcpt=1 (queue active)
Jan 20 23:45:21 argus postfix/lmtp[24296]: 64659F49CE: to=, orig_to=, relay=none, delay=0, status=deferred (connect to /var/lib/imap/socket/lmtp[/var/lib/imap/socket/lmtp]: Permission denied)

どうやら/var/lib/imap/socket/lmtpのパーミッションが無い模様。 ファイルのパーミッションを確認しても、worldに対してread/write/execute権限有りとなっている。 よく分からないので、とりあえずsu postfixでpostfixユーザーになってみたところ、/var/lib/imap/socket/lmtpにはアクセスできなかった。 原因は、/var/lib/imapディレクトリの実行権がないことだった。 所有者およびグループには実行権があるのだが、オーナーはcyrus:mailであり、postfixユーザーはアクセス権が無かったのだった。

いろいろ直し方が在るだろうが、対策としては/etc/groupファイルのmailグループにpostfixを追加した。

2007.01.19
WU-IMAPからcyrus-imapへの変更(2)

インストール後、/etc/imapd.conf /etc/cyrus.confを編集。以下のような感じ。というかvineのデフォルトのままから対した変更はない。

/etc/imapd.confにはsieveusehomedir:tureを追加した。ちみなに、enableにするには、ture,yes,1,onのいずれでも良い。 これにより、ユーザーディレクトリに.sieveというファイル名でsieveスクリプトを記述することができるようになる。

configdirectory: /var/lib/imap
partition-default: /var/spool/imap
admins: cyrus
sievedir: /var/lib/imap/sieve
sieveusehomedir: true
sendmail: /usr/sbin/sendmail
hashimapspool: true
sasl_pwcheck_method: saslauthd
sasl_mech_list: PLAIN
tls_cert_file: /usr/share/ssl/certs/cyrus-imapd.pem
tls_key_file: /usr/share/ssl/certs/cyrus-imapd.pem
tls_ca_file: /usr/share/ssl/certs/ca-bundle.crt

/etc/cyrus.confはこんな感じ。/etc/cyrus.confにlmtp関連を追加しただけ。

# standard standalone server implementation

START {
  # do not delete this entry!
  recover       cmd="ctl_cyrusdb -r"

  # this is only necessary if using idled for IMAP IDLE
#  idled                cmd="idled"
}

# UNIX sockets start with a slash and are put into /var/lib/imap/sockets
SERVICES {
  # add or remove based on preferences
  imap          cmd="imapd" listen="imap" prefork=5
  imaps         cmd="imapd -s" listen="imaps" prefork=1
  pop3          cmd="pop3d" listen="pop3" prefork=3
  pop3s         cmd="pop3d -s" listen="pop3s" prefork=1
  sieve         cmd="timsieved" listen="sieve" prefork=0

  # these are only necessary if receiving/exporting usenet via NNTP
#  nntp         cmd="nntpd" listen="nntp" prefork=3
#  nntps                cmd="nntpd -s" listen="nntps" prefork=1

  # at least one LMTP is required for delivery
  lmtp          cmd="lmtpd" listen="lmtp" prefork=0
  lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1

  # this is only necessary if using notifications
#  notify       cmd="notifyd" listen="/var/lib/imap/socket/notify" proto="udp" prefork=1
}

EVENTS {
  # this is required
  checkpoint    cmd="ctl_cyrusdb -c" period=30

  # this is only necessary if using duplicate delivery suppression,
  # Sieve or NNTP
  delprune      cmd="cyr_expire -E 3" at=0400

  # this is only necessary if caching TLS sessions
  tlsprune      cmd="tls_prune" at=0400

つぎに、/etc/inet.confを編集して、popとimapをコメントアウトする。その後、/etc/init.d/inet restartで再起動。

その後、/etc/init.d/cyrus-imap start と、/etc/init.d/sasl-authd startを実行。これでメール関係のデーモンと認証が起動する。

ちなみに、vineのデフォルトではsasl-authdは -a shadowオプションつきで起動されるので、 saslpasswd2でユーザーをつくっても影響せず、普通にunixアカウントを参照する。

で、ユーザーアカウントを作ろうとするが、以前のつくったデータが悪さしているのか、

# cyradm --user cyrus localhost
IMAP Password: **********
localhost.localdomain> cm user.test
createmailbox: Mailbox already exists
localhost.localdomain> sam user.test cyrus rd     
setaclmailbox: cyrus: rd: System I/O error

となってユーザーが作成できない。削除しようとするが、削除権限がないと言われるし、削除権限を付与しようとしてもI/O Errorとなってしまう。

調査の結果、メールボックスを再構成してあげればOKということがわかった。

localhost.localdomain> reconstruct user.test
localhost.localdomain> sam user.test cyrus rswipcd
localhost.localdomain> dm user.test               
2007.01.18
WU-IMAPからcyrus-imapへの変更

Vineが4.0になった。このため、かねてからの懸案であったimapサーバーをwu-imapからcyrus-imapへ変更した。 なぜなら、dist-upgradeをすると、imapdがかってにcyrusになってしまうからだ。

cyrusへの移行は何度もチャレンジして途中で挫折している。 最初は、perlのバージョンとあっていなかったりで、そもそも配布パッケージがまともに動かなかった。 一応動かすことはできるようになってもメールボックスの移行が面倒だったりしたからだ。

そのため設定が中途半端に残っておりいろいろ問題が起こった。

入れるパッケージは以下の通り。

apt-get install cyrus-imapd cyrus-imapd-utils cyrus-sasl

2006.10.26
自ドメインでメールを受け取れるように、postfixを設定した。

もともと、MXは出していたのだが、とりあえずISPのメールで充分だったため特に設定していなかった。 今回、使い捨てではないメールアドレスの作成が必用になったため今回設定をおこなった。

まず、main.cfの設定。

mydomain = example.com
myhost = hostname
myorign = $mydomain
mydestination = $myhostname $mydomain localhost.$mydomain localhost
mynetworks = 127.0.0.0/8, 192.168.0.0/24 192.168.100.0/24
relay_domains = $mydomain

ってな感じて修正。その後Postfixを再起動。localからのテストメールは届き、送信も問題ない。
だがpopで接続してもメールがないと言われてしまう。/var/log/secureをみるとrejectしているよう。 tcp rapperをかましているのを忘れていたので、/etc/host.allowを修正して/etc/init.d/inet reloadを実行。 メール設定は完了。

2006.06.12
PSPと無線LAN

ATerm WR7800Hを使用していながら、PSPが接続できなかった。 現象としては、接続テストでアクセスポイントへの接続は成功するものの、インターネットへの接続が成功しないという状態だった。 これは購入以来なので去年の9月ぐらいからだ。

設定はWEPの128bitという一番簡易なものだが、何度見直してもつながらない。 ATermの簡単設定を使用しても、この暗号化方式には対応していませんとなる。 PCとWL54TEは同じ設定で使用しているので、PSP側の問題だろうと放置してきた。

今日、PSPのファームを2.71に変更したので、再び無線LANの設定をいじくってみたが、WEPでは相変わらずダメなままだった。 ところが物は試しと暗号化方式をWPA-PSK(AES)に変更したところ、あっさり接続できた。

前はWEPしか対応していない機器があったためWEPにしていたのだが、いまでは保有する機器はWPAで問題ないため、すべてWPA-PSKに変更してこの件は完了。

しかし、WEPはもうすでにレガシーな方式で、接続性のチェックをしていないのだろうか。

ともかく、これでRSSチャンネルp-tvが使えるようになったよ。 たぶん使わないが。

2006.03.06
どうもメールが飛ばないと思ったら

/etc/aliasesをいじったけど、newaliasesしてなかったのでメールが飛ばなかった。ボケぼけ。

2006.03.04
smbfsがおかしい

新しく立てたdebianサーバーのkernelを2.6.8にしてから

smb_add_request: request [e865aee0, mid=1877] timed out!
smb_add_request: request [e865aee0, mid=1878] timed out!
smb_add_request: request [e865aee0, mid=1879] timed out!
smb_add_request: request [e865aee0, mid=1880] timed out!
smb_add_request: request [e865aee0, mid=1881] timed out!
smb_add_request: request [e865aee0, mid=1882] timed out!
smb_add_request: request [e865aee0, mid=1883] timed out!
smb_add_request: request [e865aee0, mid=1884] timed out!
smb_add_request: request [e865aee0, mid=1885] timed out!
smb_add_request: request [e865aee0, mid=1886] timed out!
smb_add_request: request [e865aee0, mid=1887] timed out!
smb_add_request: request [e865aee0, mid=1888] timed out!
smb_add_request: request [e865aee0, mid=1889] timed out!
smb_add_request: request [e865aee0, mid=1890] timed out!
smb_add_request: request [e865aee0, mid=1891] timed out!
smb_add_request: request [e865aee0, mid=1892] timed out!
smb_add_request: request [e865aee0, mid=1893] timed out!
smb_add_request: request [e865aee0, mid=1894] timed out!

といった感じで定期的にエラーがでていた。 カーネルの問題らしいが実害はなかったので無視していたのだか、新旧のサーバーを入れ換えて本稼働させたら、mountしたfsが無応答になる。 たとえばdfをとると、「df: `/var/lib/www/smb': 入力/出力エラーです」といったメッセージがでる。 どうやら、アクセス負荷が高まるとそうなるようだ。 だが、Windows-NTとlinuxでのsamba serverをマウントしているのだが、linuxの方しか問題は生じない。

原因は不明なれど、kernelを2.4.27に戻したら問題はなくなった。

2006.03.03
たいした事ではないが

こういう事をメモしておくためのページなので記録。

自分のページがどんな検索キーワードで参照されてきたのか気になり、 アクセスログからgoogleのリファラーを抽出する事が多い。 その際に今まではURLエンコードを戻すのにリファラーをアドレスバーに入れて参照していた。 それも面倒なので、perl ワンライナーで表示する事に。

grep で googleの代わりにsearchとしたのはyahooからも来ていたため。yahooには登録した覚えがないが、botが来ていた。

grep -i search /var/log/access_log* | perl -e 'use URI::Escape; while (<>) { print uri_unescape($_),"\n";}' | nkf -We

結果はUTF-8になるので、nkfで-Wオプションを指定する必要がある。

2005.11.27
WX310SA

会社用にWX310SA(レッド)を購入。

PHSは、いまはなきアステルを休止してから久々。アステル時代はアンテナが立たなかったが、 WILLCOMは一応アンテナが立つ。

しかし電池がまったくもたない。GzOneに比べれば、半分以下だと思う。

2005.09.06
独自ドメインを運用してみる

ダイナミックDNSを利用してFQDNで引けるようにしていたが、 どうせなら独自ドメインを運用ということで、名づけてねっとで独自ドメインを取得してみる。 カードさえあれば手続きは簡単で、年4,000円そこそことは、昔取ったときに比べて遥かに安くて簡単。 とりあえず.comと.infoのドメインを二つほど取得した。 アドレス固定の契約なので、DNSを自前で立てることもできなくはないが、それは追々やることとして、まずは MyDNSで間借りさせてもらうことにした。

2005.07.30
GzOne Type-R

C409CAの赤と黒を、それぞれGzOne Type-Rのレッドゾーン/ブラックマークへ機種変更。 四年越しだよまったく。

使用感は、適度な大きさで、十分満足。ただ、折り畳みになったため、開いたときに厚みがあまりなく、手前のキーが押しにくい。

auは三台契約していて家族にもたせているが、もう一台の京セラ機W32SAに機種変更した。 これで3機ともGPSによる一確認ができる。何度か試したが、これは結構便利。だが機種変更費用は結構な出費。5万円ぐらいか。

2005.05.06
デジカメ写真を自鯖で公開3

サムネイルの削除を手でrmするとミスすることがある(実際大本の方を消してしまった。バックアップがあったので問題なかったが)ため、オプション指定てサムネイルディレクトリを削除するように追加修正。

2005.05.04
デジカメ写真を自鯖で公開2

結局、URLのエスケープは、perlを1-linerで使うようにした。

perl -e 'use URI::Escape; print uri_escape($ARGV[0],"\x00-\x2c\x7b-\xff")

標準のエスケープ文字列では、スラッシュとかコロンとかもエスケープされてしまうので、条件を変更している。 まだ、空白を含むディレクトリに対応できていない。