2011年03月19日

CyanogenMod7 RC2 でループ

CyanogenMod RC2 をNexsus One にインストールしたらブート時にループした件は Radio イメージが古いことを発見し無事使えるようになった。しかし、その後シャットダウンから復元しない問題が発生。
この問題は、とりあえずはバッテリーがなくならないのであればよかったが、なかなかそうもいかない

... そのまえに、問題と回避方法をまとめておく。

問題:ブート時にループする。症状としては、CyanogenMod のブート画面がでて、矢印が Droidのまわりをずーーっと回り続ける。このことは Bootloop と呼ぶらしく、いろいろなところで発生している。

対応策:結局ブート時なので何もできないから、裏面をはがして、バッテリーを取り出すしかない。その後、Recovery に入り( 電源ボタンと下ボリューム同時押しで)、data と cache をそれぞれクリアした後、再ブートすると今度はループしないで立ち上がる
当然、こうするとWifi のパスワードやSymカードの設定などはなくなってしまう。

問題としては、上のようにしてなくなってしまったデータは Titanium backup でリストアすれば完璧だ、と思っていたが、どうもそれによって、アプリとデータをすべて元に戻してしまったのが原因だった。

http://wiki.cyanogenmod.com/index.php?title=Latest_Version/Google_Apps

によれば、CyanogenMod7 のGoogle apps とCM6 のGoogle apps は別のようなので、CM7 に古いGoogle apps を戻してしまうと再ブート時にループするみたい。
れに気がついて、  Titanium backup では選択的にリストアすることにし、 Google apps は上のサイトからインストールするようにした今度は再ブートしてもループしなくなった。


posted by tshibata at 17:47| Comment(0) | TrackBack(0) | Android

2011年03月13日

CyanogenMod 7 RC2のインストール

NexusOne ではすでに GingerBread のOTAが出ているが、私の場合には CyanogenMod 6 をインストールしてあり、CM6 を元に戻して自分で GingerBread を入れてもよいのだが、CM7 RC2 が出たのを機会に直接 CM6-> CM7 にすることにした

で、最初にすることはバックアップ。

Titanium Backup でとりあえず、全部のアプリと全部のデータをバックアップ。
その後、 Rom Manager でやってくれ、とお願い、そうすると ClockworkMod Recovery を導入するように言われたので、そのままOKしたところ、エラーになる。ネットワークがダメかSDが足りない、と言われるがどちらもOKのはず。
いろいろ考えてみたところ、CM6 を入れた時には  Amon_RA Recovery が入っているのが問題みたいだと推測。
仕方が無いので、  ClockworkMod Recovery を自分で導入。やり方は
http://wiki.cyanogenmod.com/index.php?title=Nexus_One:_Full_Update_Guide
を参照したら自分で flushしろとあるので fastboot で無理やり flush。やり方は Amon_RAのところに書いてある。

次に Rom Manager で CM7 RC2 をゲット、インストールしてやれやれ、動いた。と思ったらリブートすると最初の画面で矢印がぐるぐる延々とまわり続けてしまう。おかしい
もう一度上の文書を読んでみたら、radio イメージが古いかもしれん、と思い入れ替えを試みる

update.zip の名前にして、SDに入れ ClockworkMod Recovery で SDからインストールしようとしたら、今度は update.zip のフォーマットが古いのでもうサポートしていない、とかエラーが出た。

この問題も悩んだけど、結局 update..zip を開いて radio.img を直接 fastboot で書き込むことに。

で、最終的には CM7 RC2 になった。

posted by tshibata at 23:30| Comment(0) | TrackBack(0) | Android

2011年03月06日

USBシリアルケーブル

秋月電子のUSBシリアルケーブルを Ubuntu 10.10 で使ったのでメモ

購入したのは M-02746 USB-シリアル変換器 というもので 900円だった。
購入したものには、変換ケーブルと説明シート、ドライバCDがあった。
http://akizukidenshi.com/catalog/g/gM-02746/
を参照すると、 prolific社 PL2303 を使用しているとある。
これだと Linux では標準でドライバが多分あるだろうと想像。

で、このケーブルを Ubuntu 10.10 で接続し、dmesg


[14606.001035] usb 2-1.2: new full speed USB device using ehci_hcd and address 6
[14606.755022] usbcore: registered new interface driver usbserial
[14606.755029] USB Serial support registered for generic
[14606.755044] usbcore: registered new interface driver usbserial_generic
[14606.755045] usbserial: USB Serial Driver core
[14606.768636] USB Serial support registered for pl2303
[14606.768653] pl2303 2-1.2:1.0: pl2303 converter detected
[14606.772390] usb 2-1.2: pl2303 converter now attached to ttyUSB0
[14606.772407] usbcore: registered new interface driver pl2303
[14606.772410] pl2303: Prolific PL2303 USB to serial adaptor driver

上のように、/dev/ttyUSB0 として認識されていることが判る。
さらには、lsusb はこのように教えてくれる。


# lsusb -v

Bus 002 Device 006: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x067b Prolific Technology, Inc.
  idProduct          0x2303 PL2303 Serial Port
  bcdDevice            3.00
  iManufacturer           1 Prolific Technology Inc.
  iProduct                2 USB-Serial Controller
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           39
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x000a  1x 10 bytes
        bInterval               1
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
Device Status:     0x0000
  (Bus Powered)

posted by tshibata at 22:00| Comment(47) | TrackBack(0) | Linux

2010年10月24日

低価格タブレット

最近、低価格のタブレットが増えている。
価格帯としては、大体100$程度で、ほぼすべてが Android を搭載している

Android である場合の利点は以下
• OSから Dalvik VM まではほぼ品質が予想できるので独自OSのものと比較すればつかえることがわかっている
• Android SDKが提供されているので、アプリ作成やテストが可能
• SDKにより、フラッシュの書き換えやファイルの移行などが標準化されている
• 日本語がデフォルトで利用できることがほぼ確実
• 日本語入力などは既存のアプリが利用できる
• その他 Android Market との接続ができればアプリが利用可能

一方で Android で hack する際の課題は以下
• ソースコードが公開されない部分が多数ある
• ソースコードが公開されないまま放置されている例も多く、hack の途中で行き詰まってたらそれで終わるのかもしれない ... ということで不安もある

HWのスペックの特徴としては以下:

• インプットデバイスとしては感圧式
• ほとんどが感圧式の画面インターフェイスである
• GPSは無いと思った方がよい
• 内蔵フラッシュのサイズは期待できない
• マイクロSDのインターフェイスは存在する
• Wifiは有り、

以下は分かるレベルでのスペック

名前  スクリーンサイズCPU 価格 RAM 内部ストレージ 
apad  7’Rockchip 2808a 144.99$   
EKEN M0017' VIA WM8505  102$   
EKEN M0027' VIA WM8505147.53$   
EKEN M003 8' VIA WM8505 135$ 128M  2G
Pandigital Novel7' Samsung 1009PDN 169.99$ 256M  

注意:Android のバージョンによってはマルチタッチはできない。ソフト的には Android でマルチタッチが可能なのでは 2.1 update 1 からであり、1.6 ではマルチタッチは無理。またハードウェア的にはタブレット側にも複数点を感知するインターフェイスがなければ使えない。(もう少し調査してみよう)

posted by tshibata at 07:52| Comment(0) | TrackBack(0) | Android

2010年10月02日

EKEN M003

偶然にも EKEN M003 を入手することができた。入手したままの状態では Android 1.6 だったけれど、感圧のパネルの反応は悪いは
Android Market にはつながらないわ、ひどい状態だった。

しかし、いろいろ見ているうちに、Nexus One と同じようにROMを提供している
グループを発見。SlateDroid という掲示板に M003 専用のところがあって、
3個程度の独立のカスタムファームウェアが提供されている。
ちょうど、オリジナルのファームウェアである 1.9.1 がリリースされたこともあり、これをベースに Market を追加、SWAP
などが強化された Mercury RC をインストールした。

EKEN の場合のカスタムファームウェアのインストール方法は以下:

- ROMファイルをダウンロードし、アーカイブに含まれる /script 配下のすべてを Micro SD のルートディレクトリにコピーする。(そうするとSDのルートディレクトリは script だけになる)
- MicroSD をEKEN M003 に差し、念のためにACアダプタからの電源を供給した状態で EKEN M003 の電源を入れる
- インストールが開始され、SDカードを抜け、と言われるので素直に抜く
- インストールが開始される




posted by tshibata at 22:05| Comment(23) | TrackBack(0) | Android

2010年08月28日

RHEL6 beta2

7/21 に beta2 のアナウンスがあった

http://www.redhat.com/rhel/beta/feedback.html

このwebページからはリリースノートがあったのでちょっとだけ読んでみたが、
カーネルは 2.6.32, スケジューラは CFS になるようだ。
サポートされるアーキテクチャは i386, AMD64/intel64, systemz , ibm Power(64bit) ということでインテル系以外は IBM のアーキテクチャだけになってしまったということか

4月にベータのアナウンスがあったが、3ヶ月たってまだベータ2。
その後、今年中には正式版がリリースされるそうだ



posted by tshibata at 10:40| Comment(0) | TrackBack(0) | Linux

2010年07月25日

fmlのセキュリティ対策

fml はとてもメジャーなメーリングリストのソフトだが、デフォルトではいろいろな課題があることが分かった。

あるとき、自分の管理しているメーリングリスト xxx の管理者アドレス xxx-admin@xxx
から多量のメールが届いているから何とかしてくれ、ということ。知らない人からのメールは読まないのだが、何かおかしいと思ったら、送られてきたメールのサンプルは xxx のメールリストの案内であり、案内の請求を大量に出した結果、大量の案内が届いたということ。 From のアドレスをターゲットにして大量に出していた訳だ...
そんなやり方があったとは知らんかった... 申し訳ない。

で、fml の設定について調査。
その結果、
$HOME/.../fml/spool/ml/xxx/config.ph を編集することに。
まず、当然だが、ML にメールを送れる人はメンバーのみであることを確認。

$PERMIT_POST_FROM              = "members_only";

さらにメンバー以外が投稿した場合はデフォルトは reject になっているがこれだとそのメッセージが送られてしまうので、 ignore にする。

$REJECT_POST_HANDLER           = "ignore";

config.ph のファイル中にも以下のようなコメントがあった。
# $PERMIT_POST_FROM is one of "anyone", "members_only" and "moderator".
# It defines who can post to this ML.
# When post from not a member is rejected,
# fml calls $REJECT_POST_HANDLER.
# $REJECT_POST_HANDLER is one of "reject", "auto_subscribe" and "ignore".

さらに本題のコマンド要求に対する応答の変更。
コマンドを送って応答する対象についてもメンバだけに限定する。

$PERMIT_COMMAND_FROM           = "members_only";

そして、メンバ以外から要求にはデフォルトが reject になっていたので ignore に変更。これが本題の問題だったはず。

$REJECT_COMMAND_HANDLER        = "ignore";

reject だと返事が返ってしまうので。参考までの上記の config.ph のコメントを以下に。
# $PERMIT_COMMAND_FROM is one of "anyone", "members_only" and "moderator".
# It defines who can post to this ML.
# When command request from not a member is rejected,
# fml calls $REJECT_COMMAND_HANDLER.
#
# $REJECT_COMMAND_HANDLER is one of "reject", "auto_subscribe" and "ignore".

一応、もう一つ。root や postmaster などの特別な名前からMLに来たメールも reject するようになっているが、これも同じことだと思う。そのため、これは reject しないで受ける設定にする。だけどそのまえに上で メンバだけがpost できるようにしてあるので大丈夫なはずだ。

$REJECT_ADDR                   = "";

一応の処置としてこれをやってみて、メンバ以外からメールを送ってみてテストしたが処置後は返信メールが来なくなったので大丈夫かなと思う


posted by tshibata at 10:51| Comment(324) | TrackBack(0) | 日記

2010年07月04日

Android 2.2 Froyo OTA 来たけどだめだった

4月から NexusOne のユーザになってはや3ヶ月。最初は素のOSを使っていたが、1週間前に CyanogenMod 5.0.8 にしたと思ったら、2.2 のOTAがやってくるということになってダウングレードして待った。
CayanogenMod もそれなりに安定してよかったのけれども、N1 もってるんだったら、OTAもやらねばということで。

で、ダウングレードの顛末をちょっと.

CyanogenMod 5.0.8 にするにあたって、Radio イメージだけはいち早く Froyo のものにしなければいかんかったので、radio-4.06.00.12_7.img を fastboot で書いたのだが、戻すのを忘れていた。
さらに、 recovery は recovery-RA-nexus-v1.7.1 のまま残しておいた。
それ以外はちゃんと 2.1 のオリジナルに書いてまっていたら、やっと OTA がやってきたので,「よろしく」とお願いしたら、なんと CRCが合わないとか言われてさよなら、されてしまったのだ。

うーむ、これじゃあ週末の内に来ないかもしれん、ということで自力やることに。
まず、ERD79 (2.1 )のオリジナルイメージから Radio イメージと recovery イメージをflash し、完全にもとに戻す。これで ERE27 (2.1 update 1) になる。

さらに、komugi.net さんが公開してくれた ERE27 から FRF91 (2.2 Froyo) にするパッチによってめでたく 2.2 になった。なーんだ OTA なしでもできるんじゃん。

情報を提供してくれたみなさんに感謝だな。


posted by tshibata at 21:56| Comment(0) | TrackBack(0) | Android

2010年05月04日

Jobs と Flash

Steve Jobs の公開レター "Thougts on Flash" について。
Adobe の Flash についての見解をまとめたもので、 6種類の問題をあげ、まとめとして Flash は PC時代に作られたもので、PCとマウスのためのもの。モバイル時代ではローパワーデバイス、タッチスクリーン、オープンスタンダードという点で Flash は追いつかない、という見解を出している。
http://www.apple.com/hotnews/thoughts-on-flash/

この文書の1個目の問題として、Open性について述べているが、 Flash は100%プロプラであり, Adobeからしか供給されず、オープンではない、だからFlash はクローズドシステムである。というようなくだりがあるが
boingboing のサイトではこの文書の Adobe を Apple に、 Flash を Closed に書き換えた文を載せた。 http://www.boingboing.net/2010/04/29/searching-and-replac.html
曰く:
Apple の Closed製品は100%プロプラ。それらは Apple からしか供給されず、将来の拡張や価格もすべてApple が握っている。...

まあ、これは風刺的なブログだとして、FSFEの Hugo Roy が Jobs に送ったオープンレターとそれに対するJobs の返事が以下にある。
http://hugoroy.eu/jobs-os.php

これはビデオコーデックに関しての質問であり、 Apple のH.264は特許で保護されていて、利用するには特許のロイヤルティの支払いを前提にしているため、 Mozilla や Opera はこれらを使えず、Theora を使うことになっている。オープンスタンダードであるためには、リーガルやテクニカルに制限されず、誰でも使えるべきなのでは(超意訳)ということを質問したのに対して、 Jobs の返事は以下だった。
All video codecs are covered by patents.  A patent pool is being 
assembled to go after Theora and other "open source" codecs now.
Unfortunately, just because something is open source, it doesn't mean or
guarantee that it doesn't infringe on others patents. An open standard
is different from being royalty free or open source.
このような態度はさらに、Andorid やオープンソース信奉者とのギャップを広げるだけと思うのだが、この先どんな展開になるだろうか...
posted by tshibata at 23:29| Comment(0) | TrackBack(0) | Open

2010年04月26日

RHEL6 ベータリリース登場

やっと.. と言っても大丈夫と思うが. RHEL6 のベータリリースのアナウンスがあった。
RHEL6は最初の RHEL(たぶん 2.1だったと記憶)から8年立ち実質的に広い領域で使われるオープンソースのOSとなった訳だ、と。
1つ前のRHEL5 は 2007年3月にリリースされ、現在は 5.5 までupdate されている。(だから、2007年当時のカーネルバージョン2.6.18にパッチをバックポートし続けてここまで来た訳だ)
RHEL6のリリースのアナウンスによれば、メジャーな機能として、
  • パワーマネージメント: powertop, tuned
  • 性能強化:スケジューラの変更、ロック機構
  • スケーラビリティ: 例64CPU、2TBメモリ
  • セキュリティ:SSSD
  • リソース管理:cgroup
  • ストレージ:FCoE, iSCSI
  • ファイルシステム: ext4, XFS
  • RAS: デバイスとメモリの hot add, PCIe device のエラーチェック機構、DIF/DIX
  • コンパイラ/ツール:GCC4.4、 OpenMP3.0, SystemTAP
  • デスクトップ
があげられている。
posted by tshibata at 19:27| Comment(0) | TrackBack(0) | Linux