iPod Touch のファームウェアのバージョンを 1.1.3 にしてしまったので JailBreak できなくなってしまったので、2,480yen 使って「ソフトウェアアップグレード」してみた。
考えてみたらAppleストアーで買うのでは無く、iTMS で買うので、プリペードカードが使えるのである。でもって、僕は MacOSX 10.5 Leopard は発売日に秋葉のヨドバシで並んで買ったのだけど、その時の先着特典として 1,500yen 分の iTunes Card をもらったのでそれを使うことで「ソフトウェアアップグレード」することにした。
わーい。これで正規ユーザだぞぉ。って感じなのですが、そこいら中で騒がれているように Ver.1.1.3 にした時、やはり Safari は BS キーを押すと落ちまくりますね。
後気がついた点を少々。
・メインメニューがぷるぷる踊るねぇ。移動ができるー。すげー楽しい;-)。
・MobileMailとか、各アプリが日本語表示しています。JailBreakしたのは英語表示だったのでちょっと嬉しい。
・僕は株やらないのよねぇ。
・歌詞が表示できるようになったらしいんだけど、その方法が解らない・・。
とまぁ、こんな感じでしょうか。さっき「ソフトウェアアップグレード」したばかりなのでまだ使い込んでないんでどー。
明日の通勤の電車の中でとかいじり回そう;-)。
それにしても JailBreak していた時は ssh があったのでメールサーバにアクセスするときは ssh トンネル掘っていたんだけど、「ソフトウェアアップグレード」した後は ssh が無いので自宅のメールサーバは SSL 対応にしなければならない・・。はぁ・・。
iPod Touch に新しいファームウェアである Ver.1.1.3 が出たのでバージョンアップしてみた。僕の PodTouch は 1.1.2 で JailBreak していたので 1.1.3 にアップデートしたらどうなるのか楽しみであったのだけど・・。
結論から言うと、ファームウエア Ver.1.1.3 から Ver.1.1.1 に落とすことが出来なかったので結局、JailBreak が出来ない iPod になってしまった。
iTunes から Option キーを押しつつ [アップデートを確認] ボタンを押して Ver.1.1.1 のファームウェアを指定しても、 iPod Touch に書き込む所で「不正なエラーが発生しました。」とメッセージが表示されて、Ver.1.1.3 から 1.1.1 に、ファームウェアをダウングレードすることが出来なかった。
と、言うことで 2,480yen 出す気がない人は取りあえず SDK が出るまでは 1.1.3 に上げないほうが良いでしょう。もしくは Ver.1.1.3 用の JailBreak ツールが出るまで待った方が良いかと思います。
ちなみに iPodTouch の Ver.1.1.3 のファームウェアですが、日本語変換は確かに早くなった。メニューはぷるぷる踊らない。他にもきっとあるんだろうけどまだ使い込んでないです・・。
DELL X200 と言う NotePC の HDD が逝ったみたいなので交換した。付属の IEEE/1394 の CD-ROM で CD ブートしてインストールしようと思ったのだけど壊れているみたいだったので FD ブートも試したんだけど全然ダメだったので、結局 pxeboot することにした。
NotePC にインストールする OS は FreeBSD/i386 6.3-RELEASE、pxeboot の tftpd・dhscpd・NFS などのサーバ側は FreeBSD/amd64 7.0-PRERELEASE と言う、最新の環境でやることになってしまった。
google などで FreeBSD と pxeboot で検索すると設定はごまんと出てくるのでここではその詳細については割愛するが、はまった所だけ書いておきます。
まず、サーバ側で設定する必要のあるのは以下です。
・DHCPサーバ(/usr/ports/net/isc-dhcp3-server をインストールし /usr/local/etc/dhcpd.conf を編集)
・tftpdサーバ(inetd を起動し /etc/inetd.conf を編集)
・NFSサーバの設定(/etc/exports を編集)
ここまで来たらほぼ完成なんですけど、ここからはまった道。
まずはそのいち。 /etc/hosts.allow には tftpd の許可設定をちゃんと書きましょう。これ書かないと NotePC の PXE はタイムアウトします。
|
続いてそのに。サーバ側ではFTP サーバからダウンロードした 6.3-RELEASE の iso イメージを NFS として公開するために mdconfig で /dev/md4 辺りに対応づけてから mount_cd9660 で /cdrom に mount するんだけど、NFS クライアント側、つまり NotePC の PXE でブートした側では パーミッションが無い。と言われて mount できません。
google で調査した時は NFS のパーミッションについて取り上げている所はどこも無かったので、これは多分 7 系 FreeBSD のみで起こる問題かもしれません。FreeBSD の 7 では NFSv4 対応されたりして NFS 回りは大きく修正が入っています。そのあおりを受けたのかも知れません。
ただ、mdconfig を使った場合、-o ro するときが全部で三箇所あるんですが、それを全てそろえる必要があるのかもしれません。
・mount_cd9660 -o ro /dev/md4 /cdrom
・/etc/expotrs にて ro オプションを指定
・クライアント側の mount_nfs -o ro を指定
けど、結局ダメだったので僕は /cdrom に iso イメージの中身全部をコピーしてしまいました。弱々です・・。
最後にそのさん。これは書いている所が多いですが、PEX ブートするクライアント側ではブート時に OK プロンプトで boot -a と叩いて起動し、その後、UFS が見付からない所で止まったら ufs:/dev/md0c と叩いてから次に進みましょう。
後、最後にですけど PXE ブートの環境は普段から持っていると良いかも知れません。今回 NotePC にインストールした FreeBSD はカーネルを作り替えたらまともにブートしなくなってしまうと言う状態が続き、かぁなりナンギしました。
そんなときに PEX ブートして、ちょうど fixed.flp たいな目的で利用できます。 login プロンプトが出たところで root でログインし mount -o rw /dev/ad0s1a /mnt とかすると HDD 内部の変更が可能になるので /boot/loader.conf や /etc/fstab を直したりすることが可能になります。
それにしても今回は楽しい PXE ブート環境構築なのでした;-)。
以前、Tiger に sendmail-8.14.1 をインストールしたのは書きました。MacOSX は IPv6 対応しているのに MTA である Postfix が IPv6 に対応していないため sendmail に置き換える。と言うのがことの発端であることには変わり有りません;-)。
さて、今回は Apple の最新 OS、しかも UNIX である Leopard にインストールしますが、Tiger に 8.14.1 をインストールしたのと大差ありませんので、割愛するところもあるかと思います。では、行ってみましょう;-)。
・ソースは http://www.sendmail.org/ から持ってくれば良いでしょう。
・/etc/mail は最新の FreeBSD から持ってくるか、以前 8.14.1 をインストールする時に使ったものを代用しても良いでしょう。
・site.config.m4 も以前利用していたもので問題無いでしょう。
それでは sendmail-8.14.2 を make しましょう。注意点としては、Leopaed は Darwin 9.1.0 な OS のバージョンですが、sendmail-8.14.2 は Darwin 8 にしか対応していません。 Build 時のオプションには以下のように指定してあげましょう。
|
インストール後は 8.14.2 をインストールし時と一緒で mail.local をコピーしたり mkdir や chown したりして環境を整えてあげます。これで大体おしまいです。
さて /etc/passwd にユーザを登録し /etc/group にグループを登録した後、Tiger の場合は NetInfo マネージャでユーザを登録していましたが、Leopard ではあの非常に不便な NetInfo マネージャが無くなり、dscl と言うコマンドで行う用になりました。が、それも大変なので「システム環境設定」のメニューから「ユーザの管理」で追加してください。
最後に起動スクリプトについてですが、Tiger の頃よりも Leopard は launchd がメインになりつつあります。なのでねsendmail も /etc/hostconfig ではなく、launchctl で登録して起動するようにしましょう。sendmail は二つのプロセスが起動するので二つの起動用設定ファイルが必要でする以下になります。
org.sendmail.sendmail.plist
org.sendmail.submit.plist
上記二つのファイルを /Library/LaunchDaemons/ にほうりこんだあと以下のコマンドを root 権限で実行します。
|
正常に起動したかは ps コマンドで確認できます。また、以下の launchctl で起動設定されたか確認するとこがてきまする
|
launchctl コマンドと設定ファイルである plist ファイルにはそれぞれ意味があるのでここには書きませんが頑張ってみてください。もしかすると launchctl load -w /Library/LaunchDaemons/org.sendmail.sendmail.plist などと 「-w」 オプションをつけたりとかするともっと幸せになれたりする場合もあります。
と、言うことで、Tiger から Leopred にバージョンアップしたことで、
・NetInfo マネージャは使わない。
・そろそろ /etc/hostconfig による /Library/StartupItems 使うのやめようよ・・。
の二つはキーワードになるかもしれないですねぇ;-)。
IntelMac の MacBook Dore2Duo 2G を持っているのだけど、Leopard がインストールされている。僕は日本語入力に「ことえり」を「かな入力」で使っているのだけど問題点が多くて困っていた。ちょっとあげてみると以下の通り。
・「かな入力 ON」の時 Emacs キーバインドのカーソル移動がことえりに食われてしまい正しく動作しない。例えば C-a は C-ち になってしまうなど。
・iTunes の検索の所に日本語が入力できない。
・Thunderbird はキー入力を一切受け付けない時がある。
・Firefox の認証のタグでキー入力を一切受け付けない時がある。
などなど。これらは入力形式を「かな入力」から「ローマ字入力」に変更することにより問題を回避できることを確認した。
Tiger の時のことえりは上記について全く問題無く動作していたのでこれは明らかに Leopard でバグを入れ込んでしまったようだ。しかし、それにしても悲惨な状態で、MacOSX で長文を打つのがイヤになって来る状態である。
この状態を打破すべく考えたのが、Tiger のことえりが素晴らしいものなのであるなら、 Tiger の Kotoeri を Leopard で起動すれば良いんだ。と思ったわけですよ。でもって実施した作業は以下の通り。
・手もとに PoerBook G4 があり Tiger が動いている。
・/System/Library/Components/ に Kotoeri.component があるのでこれを tar で持って来る。
・Leopard 上の /System/Library/Input\ Methods/ に展開
・mv Kotoeri.app Kotoeri.app.ORG
・ln -s Kotoeri.component Kotoeri.app
さてと、作業は以上。mv コマンドを実行した段階で launchd が見事に反応してくれます。「ことえりの動作がおかしいよん。」って・・。でもってシステム全体が不安定になるので、しょーがないからリモートの PC から ssh でログインし、そっちで作業。けども結局、Contents/MacOS/Kotoeri は起動することは無かったのでした・・。しくしく。つまり無駄骨。
ちなみに僕が試した Kotoeri バイナリは Mach-O bundle ppc と言うことでユニバーサルバイナリではない。けど、ロゼッタで動くかなぁ?とか思ったけど、ダメだったみたい。と、言うか、IntelMac の Tiger から Kotoeri を抜いて来たわけではないので起動できない根本的な原因がどこにあるかは今だに不明・・。
version.plist の中身を確認すると Tiger の Kotoeri は 4.0.4、Leopard の Kotoeri は 4.1.1 みたい。4.0.0 -> 4.1.0 にバージョンをあげたときに Apple は「かな入力」をおかしくしてしまったのねぇ・・。アーメン。
FreeBSD の ports を cvsup したら net-mgmt/net-snmp が 5.3.1_7 から 5.3.2 になった。
snmpd を再起動して、リモートのマシンもしくは localhost から snmpwalk で接続しても REFUSED され、接続できなくなってしまった。 cat /var/log/snmpd.log してみると接続してくれない状態が良く解るのであるが大体以下のログを出力している。
|
ちなみに、 /etc/hosts.allow の設定は 5.3.1_7 の時からしていたのと変更はない。snmpd : ALL : allow はコメントアウトして、snmpd : ALL : deny を付けている。後はアクセスを許可するネットワークやホスト、ドメイン名を allow している設定をしている。
でもって 5.3.2 にした途端に接続できなくなってしまった・・。何回か試行錯誤を繰り返した結果、以下の行を記述すれば接続できることを発見。
|
しかし、なぜに NULL アドレスを設定せねばならんのじゃ? snmpd が IP アドレスを正しく取れていないバクであることは明白であるような気がしてならない・・。とほほ・・。
かくして、自宅サーバは SNMP の取得が復活したでした。ふぅ。
新年明けましておめでとうございます。今年も宜しくお願いします。
新年一発目は ASUS M2A-VM HDMI ネタです。 自宅の FreeBSD/amd64 は今まで 6-STABLE だったのですが、7-STABLE にしました。今 cvsup すると 7.0-PRERELEASE になります。
6-STABLE から大きく変わった点としては acpi_ppc.ko が make 出来なくなりました。そして cpufreq.ko + powerd はカーネルが凍り付くことも無くなり安定稼働するようになりました。同じマザーボードに FreeBSD/i386 をインストールしている人は前から cpufreq.ko + powerd は安定稼働しているとのことなので、FreeBSD/amd64 ではようやっと正しい動作をするようになった。と言うことでしょうか。
ちなみに自宅のマシンはメモリを 4GB にしました。うちで稼働している OS は FreeBSD/amd64・WindowsXPx64 なので 4GB のメモリでも有効利用できるのです;-)。
せっかくなので WindowsXP のほうには Microsoft Virtual PC 2007 をインストールして、その上で Windows Server 2003 Enterprise Edition x86 が動いていたりします。こいつにはメモリを 1.5GB も上げると言う贅沢が出来ます;-)。ちなみに Windows Server 2003 EPE の x64 はインストールてきませんでした。32bit OS しかだめみたいです。
さて、新年一発目なのでこの位にしましょう。全然中身が無い、ただのよもやま話になってしまいましたが・・。
今年も宜しくお願いします。
インプレスの「インターネットマガジン」の PDF が無料で公開されることになったらしい。
http://internet.watch.impress.co.jp/cda/news/2007/12/25/17997.html
http://i.impressrd.jp/bn
創刊号は確か N+I インターロップの第一回目だったと記憶している。懐かしさのあまり、PDF を検索してしまったではないか。何を検索したかと言うと、その昔、Compaq に吸収される前に日本 DEC が公開していた「荻窪ラーメンマップ」。
いやぁ、ちゃんと PDF の中にそれがありまましたよーー。URL だけなんだけど、以下のファイルに掲載されています。
http://i.impressrd.jp/files/images/bn/pdf/im199506-153-yellow.pdf
で、当然日本 DEC のサイトはもう無いわけで、ちょっとだけ google で検索してみたら当時のコンテンツを公開しているサイトを発見。うそー。懐かしいっ!!って感じで非常に感慨深かったです。
http://www.dec-j.jp/noodle/ra-men_map.html
1993,4 年頃と言えば Windows95 が出る前、IIJ が ISP を始める前、Linux は Slackware-1.3 がリリースされた頃、FreeBSD は2.0.0-RELEASE がリリースされた頃で、会社もしくは学校で JUNET に接続している環境にいる人しか見られなかった。日本には一般に公開しているウェブサイトが(分割前の) NTT とか 10 個程度しか無くて、その中でもこの「荻窪ラーメンマップ」は日本で初めてクリッカブルマップを利用したサイトなので驚きもまたひとしおなのでした。
僕は当時 NEC の職場から EWS4800 を利用しモザイク(ウェブブラウザ)を利用してインターネットの大波を泳いでいた。当時のモザイクはシングルタスクプログラムだったのでファイルをダウンロードしている時は他のウェブサイトを閲覧することができなかった。なので、Netscape が出てきた時の感動は今でもよぉーく覚えている。
Netscape はファイルをダウンロードしはじめるとバックグラウンドで始めて、ウェブの閲覧はメインの画面で引続き行えると言う、今では当り前なんだけど、当時は画期的なブラウザだった。
話を元に戻すとして。しかし、今、あの「荻窪ラーメンマップ」が当時の姿でまた見られるとは思っていなかった。インプレスが PDF を公開した。と言うニュースを耳にしなければきっと google でも検索しなかっただろう。ちなみに google で検索した文字列は「ra-men_map.html」。
いやぁ。日本のインターネットの歴史を語る上でこのサイト抜きで語ることはできない、と、僕個人的には思っているので再会できて本当に良かったです。
今となってはどーと言うことは無いコンテンツですが、歴史的意義が大きいサイトに再会できて本当に感動です。はい。
前回のブログで iPod Touch を JailBreack したと書いた。でもってメールソフトは iPhone のファームから抜いて iPodTouch にインストールした。
メールソフトも利用できて大変嬉しいのだけど、うちのメールサーバは ssl に対応していないので POP もしくは IMAP4 の時に生パスワードが流れてしまう。
iPod Touch の性格上、野良 AP (そこいらに落ちているアクセスポイントのこと)を利用する場合も多々有るわけで、そう言うのを利用するとアクセスポイントを置いた人が tcpdump を仕掛けていないとも限らないし、ポートスキャンしてくるかもしれない。なので、POP/IMAP4 の時は是非とも暗号化して利用したいものです。
幸い、JailBreack した iPod Touch には ssh が入っているのでこれを利用して POP サーバ、もしくは IMAP4 サーバに ssh トンネルを掘ることが可能です。
と、言うことで簡単に ssh トンネルを掘るスクリプトを書いてみました。利用方法は以下の通り。
1. POP/IMAP4 サーバ上に自分のアカウントが存在し ssh ログインできること。
2. メールのアカウント設定で POP/IMAP4 サーバではなく localhost に接続するようにすること。
3. ターミナルから stun.sh が実行できること。
これだけです。まぁ、1. はちょっと敷居が高いかも。けど、それがクリアできれば特に問題は無いでしょう。以下の URL からダウンロードできます。
http://www.icmpv6.org/Prog/MacOSX/stun.sh
利用方法ですが、以下の通り。
1. コマンドオプションは三つ。s(start) t(stop) c(check)。
2. s オプションで Mail を kill してから ssh トンネルを掘りますが、接続できた時はパスフレーズを聞いて来るので入力。
3. t オプションで Mail と ssh トンネルのプロセスを殺します。
4. c オプションで Mail と ssh のプロセス番号を表示します。
注意点としては、ssh トンネルを掘る前に Mail が起動していると POP/IMAP4 サーバに接続できません。なので、s オプションの時に Mail を kill しています。c オプションで ssh プロセスの番号が Mail より若いことを確認します。
後、一回スリープしたら ssh セッションが切れるので毎回 t して s してあげる必要があります。
こんな所でしょうか。ダウンロードしたら stun.sh の上の環境変数にサーバ名とユーザ名を指定してください。default で localhost の port:143 を使うようにしています。
もしダウンロードした人がいたらコメントなど頂ければと思います。
iPod Touch をアップルストアーで予約して 10/2 に手もとに届いた。その後ずっと利用していて、ファームウェアの Version1.1.2 が出た所でアップデートしたんだけど、JailBreak してみたくなったので試してみた。
iPod Touch の無線 LAN はすごい便利なんだけど、メールが読めない点や GoogleMap が欲しかったりしたので「二月まで待っていられない。JailBreak するしかないかー。」とか思い試してみた。
今回やる作業は以下の通り。
・ファームウェアを Ver.1.1.2 から Ver.1.1.1 にデグレード
・jailbreakme.com にアクセス
・JailBreak を 実行
・iPhone の Ver.1.1.2 のファームウェアからメールとGoogleMapを抜きだし
情報を集めてみると以下のような URL 見ると比較的容易に行える。
・http://japan.zdnet.com/security/story/0,3800079245,20358777,00.htm
・http://japan.zdnet.com/security/story/0,3800079245,20359973-7,00.htm
・http://d.1555.info/2007/10/12/ipodtouch-jailbreak/
・http://kitaj.no-ip.com/tdiary/20071113.html
で、JailBreak が成功した iPod Touch はこんな感じ。メールと GoogleMap は iPod Phone の最新のファームウェアから抜き取って、scp とかで iPod Touch に持って行く。ってのが凄い技だなぁ。
iPod Touch は二つのパーティションに別れているんだけど、大体以下みたいな感じ。もう / パーティションの容量が無い・・。
|
まぁ、色々いじってみたけど、非常に楽しい。UNIX が PDA の中に入った。と言う感じ。フツーの PDA の中に Linux や NetBSD をインストールして hoge るのと違って最初から UNIX が入っているのでタッチパッドのキーボードとか使えちゃうとか、インターフェースが全部使えちゃうので凄い嬉しい。もう NotePC 持ち歩く必要ないかなぁ。とか思ってしまう。
と、言う事で iPod Touch の UNIX らしい情報をちょっと書いておきますね。気がついた点としては
・IPv6 スタックありません。
・Bluetooth は内蔵していなさそう。
って感じでしょうかか。
|
ちなみにバイナリは Mach-O executable arm でユニバーサルバイナリではなく ARM のバリナリでした。
せっかくなので、kldstat(MacOSX 風に言うと kextstat) の結果もつけておきます。実に 65 個ものカーネルモジュールがロードされています。
|
全然話題が変わるのですが、GoogleMap で tokyo で検索したら以下が出ました。赤いまち針があるところが「tokyo」みたいなんですが、ふむー。オペラシティ辺りをさしてないかい? Apple Japan のあるところなんですけど・・;-)。
それにしても、技術者(クラッカか)の皆さんには感激します。お疲れ様でした。と、言うのも、以下の URL を読むとある意味凄いな。とか思ってしまったからです・・。こう言うネタって本当は褒めてはダメだんだよねぇ・・。
http://amegan.com/blog/mtarchives/003940.html