Linux

Vine/Linux 1.0 が出て以来、一度は Windows から足をあらい、Linux をメインに使うようになりました。 その後、いろいろなディストリビューションの Linux を試してみましたが、今思うと楽しい日々でした。
• 2014年から5年間、Windows 8.1 と妥協して Windows 上の VirtualBox で、 Vine Linux を動かしていましたが、その後、Windows 8.1 があまりにも不安定になったので、 Ubuntu 18.04.2 をホストOSとして、Vine Linux 6.5 を使うようになりました。
•しかし、VirtualBox 6.1.10 で、Vine Linux 6.5 の X がトラブルを抱えるようになり、 Ubuntu 20.04.1 (ThinkPad X240) 上でローカルにVine Linux 6.5 を動かしながら、Windows 10 (ThinkPad X Carbon Gen 7) を使うようになってしまいました。
ThinkPad X240 は、その後、家の中の猫たちにいたぶられ、落下すること数回、ついに WiFi が使えなくなり、VirtualBox 経由で Vine Linux 6.5 も動かなくなったので、中古の ThinkPad X260 を購入して、Vine Linux 6.5 のデータを移行、ThinkPad X260Ubuntu 20.04.1 を常用することになりました。

さようなら ThinkPad X240+VineLinux、こんにちは ThinkPad X260+Ubuntu  [03/11/2021]

我が家には家猫が目下5匹いる。一昨年までは2匹だったのだが、いつの間にか3匹の新参者が入ってきた。そして家の中でたびたび運動会をする。 部屋の本棚の上に置いておいた ThinkPad X240 は、気がついてみると朝は床に落下しているという出来事が再三再四起き、ついには WiFi が認識されなくなった。 Ubuntu のアップデートを重ねるうちに、VirtualBox の中の Vine Linux 6.5 も起動できない状態になってしまい(現在では、VirtualBox のダウングレードでなんとか復活しているが)、ディスプレイの画像の残像化も顕著になった。 2014年4月からX240を使い続けてきたので、ほぼ7年間、過酷環境で働いてくれた駄目野郎だったが、それでもよく働いてくれた。

今回は、中古の ThinkPad を購入して、そこに Ubuntu をインストールして、これまでのデータを引き継ぐことを計画した。 これまで使っていた ThinkPad X240 の代わりに購入した ThinkPad X260 の中古は、もちろん X240 よりも新しいマシンだ。 つまり、中古を買ったら、今使っていた PC よりも新しくなってしまった、という話。

ThinkPad X2** シリーズは、X280 がおそらく最新で、2021年の現時点では、直販モデルで256GBのSSD、メモリ8GBの 20KFS1QC00 が 193,000円する。 今回ねらった中古は、パソコンショップ Be-Stock で見つけた X260 で、価格は 25,000円弱のもの。 HDD が500GB で、メモリが 4GB、ディスプレイは Full HD(1920x1080)、無線LAN(ac/a/b/g/n)という仕様だった。 「画面にパッと見てわかるキズ/ムラ」があるが「使用上は問題ありません」とのこと。お店のランキングでは、B, B となっていた。 以前から知っていた信頼できる ThinkPad 専門店で、1年間の保証付き商品だったので即購入した。

ネットでは、X260に Ubuntu を入れて使っている人たちが報告してくれていて問題なさそうだったが、特に参照したのは ThinkPad X260 SSD換装・交換方法 裏蓋の開封が難関 だ。 ここを見て、次のような方針を立てた。

  ThinkPad X260-Vine-Ubuntu 引っ越し計画
1. Memory を4GB から 8GB へ増強する。 
2. HDD を SSD に換装する。
3. Windows 10 は追い出し、ネイティブなUbuntu環境を構築する。
4. Vine Linux の(過去のメールすべてを含む)データを移行する。

そこで、以下の3点を追加購入した。
1. Memory: (アーキサイト)Archiss Memory Module PC4-21300 (DDR4-2666) 8GB 260pin SODIMM(税込購入価格: 5,190円)
2. SSD: SanDisk 内蔵 2.5インチ SSD / SSD Ultra 3D 500GB SATA3.0 / SDSSDH3-500G-G25(税込購入価格: 6,779円)
3. MKS[明工舎] ベーク柄コジ明ヶ ART No.49310(税込購入価格: 920円)

Lenovo FRU: 3X7048 (4GB 1RX8 PC4-2133P-SAB-11) Archiss Memory Module PC4-21300 (DDR4-2666) 8GB 260pin SODIMM Seagate Laptop Thin HDD 500GB 7200RPM SATA 6.0 Gb/sec SSD Ultra 3D 500GB SATA3.0 / SDSSDH3-500G-G25 MKS kojiake ART No.49310 width:9mm

今回は、いつものように Linux Mint マシンでDVDを焼いてインストールするのではなく、Windows 10 上に Rufus をダウンロードして、Bootable USBメモリを作成し、ThinkPad X260の起動順序を変更してインストールした。

今回の私の作業では3つの点に気を使った。
ThinkPad X260 SSD換装・交換方法 裏蓋の開封が難関 で指摘されているように、「コジアケ」がなかったら、ThinkPad X260 を開けるのは困難だったろうと思う。
• HDD は、Seagate Laptop Thin HDD 500GB(7200RPM, SATA 6.0 Gb/sec)が使われていた。ハードディスクケースを固定するネジは、例によって小さく紛失しやすい。
• rufus は、非常に便利だが、当初 isoファイルを選択する方法が分からなかった。実は「選択」という表示をクリックすれば、ソースファイルを参照できるのだが、あまりにもシンプルなので(?)それに気がつかなかった。

今回の作業の流れを最終的にまとめてみると、次のようになる。

  1. Ubuntu Desktop 日本語 Remixのダウンロード | Ubuntu Japanese Team から、Ubuntu 20.04.1 LTS をダウンロードする。
  2. 「Rufus」ブート可能なISOイメージファイルをもとにブータブルUSBメモリを簡単に作成 - 窓の杜 から rufus をダウンロードしてインストールする。
  3. ダウンロードした Ubuntu 20.04.1 LTS を rufus を用いて、USBメモリに書き込み、Bootable USB メモリを作成する。
  4. ThinkPad X260 の BIOS 設定で起動順をUSBにする。[Boot] の中に [Boot Priority Order] の設定があり、USB HDD, USB CD, USB FDD がある。ハードディスクには、ATA HDD0 というのがあり、そこにはディバイス名(ST500LM021-1KJ152) が表示されていた。Windows Boot Manager の次にハードディスクがあったが、USB関係のものを上位におけばよいはず。
  5. ThinkPad X260 の BIOS 設定で内蔵バッテリーをいったん無効化する。これは、基板への電流を遮断するために必要とされている。[Config] -- [Power] -- [Disable Built-in Battery] の順で ENTER キーを押すが、バッテリー起動の状態で行うので、このキーを押した瞬間に真っ暗になってPCは落ちる(ドッキリ)。 詳細は、 ThinkPad 内蔵バッテリー無効化の方法 X260,X1Carbon,T460s,X1Yoga共通 参照。
  6. ThinkPad X260 をひっくり返し、8つのネジを緩め、「ベーク柄コジ明ヶ」(明工舎 ART No.49310)で、ThinkPad X206 の裏蓋を外す(プラスチックの筐体に傷をつけないように時間をかけて丁寧にやる)。私は、Amazon で購入。MKS[明工舎] スーパーコジ明け 先端が広い[9ミリ]タイプ49310 | Amazon もちろん、「こじ開け」器具は他のメーカーも作っているので、お好きなものをどうぞ。
  7. 4GB のメモリボードを取り外し、8GB のメモリを装着
  8. HDD をHDD固定枠のネジを一本緩めて固定枠ごと取り外し、HDD のコネクタを外し、HDDを固定枠から外す。
  9. SSD をHDD固定枠にはめ込み、コネクタを接続し、固定枠のネジを締める。
  10. ThinkPad X260 の裏蓋をはめ、8箇所のネジを絞める。
  11. AC電源につないで、Bootable USBメモリを挿して再起動する。
  12. Ubuntu のインストーラーが立ち上がるので、Ubuntuのインストールを行う。

Ubuntu のインストールは難しくない。今回のように Windows 10 の入っていない「やや古い」マシンの場合、とても楽で、SSDなので静かで{早・速}い。デュアルブートにせずに、2台の PC をパラレルに使うというのは、慣れてみるとなかなか心地が良い。

Mew でためこんだ多量のメールは、Sylpheed でアカウントの設定をせずに読ませることにし、近年もものだけをMBox 形式にして、Thunderbird に読み込ませた(実際にはけっこう大変だったが、省略)。

基本的にこれまでほとんどの論文や授業の資料はVine Linux 上で書いてきたので、そのための資料などにもようやく簡単にアクセスできるようになった。一部が Windows 10 上の TexWorks 環境に残っているので、これをなんとか救出しなければならない。

Ubuntu 20.04.2 LTS on ThinkPad X260

   


今度は X が動かない。(VineLinux 6.5 in VirtualBox 6.1.10)  [10/21/2020]

すでに2020年5月に事態は発生していた。VirtualBox 6.1.8 から 6.1.10 にアップデートし、VineLinux 6.5 にログインした後、CD-Addition を実行して Guest Additions のプログラムをコンパイルした後、以下のようなエラーメッセージが出た。2つほど前のバージョンから出るようになったエラーの一種かと思い、さほど気にしていなかったのだが、再起動すると X が立ち上がらなくなってしまった。

Guest Additions のプログラムが、X のシンボル (x11Context.pxRRFreeMonitor) を参照しようとしたら、見つからなかったというのは、VineLinux 6.5 の X が古くなってしまったからなのかもしれない。コンパイルそのものはなんとか終了している。

    VBoxClient: Could not find symbol address
    (x11Context.pxRRFreeMonitor_
    XBoxClient: Could not find symbol address
    (x11Context.pxRRGetMonitor_ 

時すでに、コロナ禍でオンライン授業を始めるという議論の真っ最中。ずっと、Emacs 上の Mew でメールを扱ってたので、急遽、Ubuntu 上の Thunderbird にメールシステムを移行することにして急場をしのいだ。過去のメールを引っ張り出す時は、VineLinux 6.5 の boot 時に、CUI を選択し、Mail ディレクトリへ移動して、ファイルを見つけ、localshare へ移動して Ubuntu で読むということになった。Mail ディレクトリをバックアップしておけばよかった、と後悔。

CUI の世界に戻ること自体は、新鮮な感じだったが、boot 時にいろいろなパラメタを試してみたのだが、日本語表示を実現できない状態が続いた。昔やったことも随分忘れている。

X1 Carbon では、Windows 10 だけを動かすようにし、TeXworks で仕事ができるように整えていたので、メールは Thunderbird で共有するようになった。そして、VineLinux 6.5 からはだんだんと離れていく結果になった。実際に、セキュリティ・アップデートも止まってしまっているので、この状態でブラウザを通じてネットにアクセスしたくないのが VineLinux 6.5 の状況だったので、あきらめて Windows 10 と Ubuntu で過ごすようになっていった。

10月になり、それでも X が立ち上がらない状況は気持ちが悪いので、Guest Additions を削除してみることにした。まず、Guest Additions のありかを確認し、/opt にあることが分かったので、以下のように実行し、仰せの通り、guest の VineLinux 6.5 を再起動した。

    # /opt/VBoxGuestAdditions-6.1.10/uninstall.sh
    Removing installed version 6.1.10 of VirtualBox Guest Additions ...
    vboxadd-service.sh: Stopping VertualBox Guest Addition service.
    You may need to restart your guest system to finish removing guest drivers. 

その結果、VirtualBox 6.1.10 の中の VineLinux 6.5 は無事に X で立ち上がるようになった。しかし、今度は、Guest Additions がないので、ファイルの共有が今までのようにできなくなった。CUI で共有ができる方がよいか、X で共有ができないシステムで使うか、という選択だが、CUI で過ごすのも悪くはないのだが、日本語が Terminal で表示出来ない問題を解決できなかったので、こうするしかなかったと思う。昔なら、kon とか、kterm が起動できたのだが...。

ここで、VirtualBox 6.1.8 や VirtualBox 6.1.6 に戻せば、おそらくこれまで通り使えるはずだ。あるいは、現在の VirtualBox 6.1.16にまで上げてみるのも一手だろう。ただ、現状の VineLinux 6.5 は、いかに慣れているとは言え、残念ながら常用できるものではなくなってしまった。VineLinux は、私にとって「ローカルな過去の世界」となってしまった。


おや、仮想マシンが起動しない。 [01/24/2020]

アップデートは、すっかり日常的なできごとになった。Windows のアップデートはいらいらの原因だが、Ubuntu のアップデートは比較的スマートだと思う。 アイコン上の通知があったらクリックして、それほど時間を取られずに終了する。しかし、今回は VirtualBox 内の仮想マシンが動かなくなってしまった。

Ubuntu 18.04 LTS 上の VirtualBox 6.0.10 の中の Vine Linux 6.5 は順調に動いていたが、 先日いつものように Ubuntu のアップデートをしたら、Vine Linux 6.5 が起動しなくなった。 まずは、その時のメッセージから。

The virtual machine 'VineLinux6.5' has terminated unexpectedly during startup with exit code 1 (0x1).

終了コード : NS_ERROR_FAILURE (0x80004005)
コンポーネント: MachineWrap
インターフェース: IMachine {5047460a-265d-4538-b23e-ddba5fb84976}

そして、もう1つのエラー表示の窓の詳細を開くと次のようなメッセージが現れた。

Kernel driver not installed (rc=-1908)

The VirtualBox Linux kernel driver is either not loaded or not set up correctly. Please try setting\
 it up again by executing

'/sbin/vboxconfig'

as root.

If your system has EFI Secure Boot enabled you may also need to sign the kernel modules (vboxdrv,\
vboxnetflt, vboxnetadp, vboxpci) before you can load them. Please see your Linux system's\
documentation for more information.

where: suplibOsInit what: 3 VERR_VM_DRIVER_NOT_INSTALLED (-1908) - The support driver is not\
installed. On linux, open returned ENOENT. 

そこで、仰せの通り、sudo /sbin/vboxconfig を試してみるが、結果は同じエラーの窓が開くのみ。 こういう時は、Virtualbox の再インストール、あるいは、reconfigure であろうと思い、再インストールを試すことにした。 おそらく、Ubuntu のアップデートの中で、kernel のアップデートがあったことが影響しているのだろう。

  • VirtualBox 6.0.10 を uninstall。(synaptic で選択し、データは保持する形で本体のみを削除)
  • Linux_Downloads – Oracle VM VirtualBox から、VirtualBox 6.1.2 for Linux の下の Ubuntu 18.04 / 18.10 / 19.04 をクリックして、virtualbox-6-1_6.1.2-135662-Ubuntu-bionic_amd64.deb をダウンロード
  • ダウンロードしたファイルを、ファイルマネージャで確認しダブルクリックしてインストール
  • インストール途中で、Extension Pack のダウンロード・インストールを尋ねられるので、Yes を選択 (結果、Oracle_VM_VirtualBox_Extension_Pack-6.1.2.vbox-extpack がダウンロードされ、インストールできる。)

これで、VirtualBox 6.1.2 上で仮想マシンの VineLinux6.5 が起動できた。 起動後、Guest Addtions のインストールをするが、VirtualBox のメニューから、「デバイス」が消えてしまった。 以前は、「デバイス」メニューの一番下に、「Guest Additions CDイメージの挿入...」があったのだが。 しばらく悩んだあげく、「表示」ー「メニューバー」ー「メニューバーの設定」を選ぶと「デバイス」が表示されるので、 そこで「Guest Additions CDイメージの挿入...」を選択できた(その後は、「デバイス」がメニューに表示される)。

kernel がどうなっているのか、root ディレクトリを見てみると、同じ 1月19日のタイムスタンプで次のようになっていた。

  vmlinuz -> boot/vmlinuz-5.3.0-26-generic
  vmlinuz.old -> boot/vmlinuz-5.0.0-37-generic 

Debian 系は、古い kernel が溜まっていくので、ちょっと見て確認してみると、あるわあるわ。

  % dpkg -l | grep kernel | lv 

まあ、今回はこんな風に kernel driver が合わなくなってしまった、ということなのだろうか? kernel-image だけをリストすると、こんな感じだった(rc は無視して、li の一部のみ表示)。

ii  linux-image-5.0.0-37-generic               5.0.0-37.40~18.04.1
ii  linux-image-5.3.0-26-generic               5.3.0-26.28~18.04.1
ii  linux-image-generic-hwe-18.04              5.3.0.26.95

さようなら Windows 8.1: ThinkPad X240 は Ubuntu/Vine Linux マシンへ  [08/19/2019]

0. 背景
1. まずは計画と下調べ
2. Ubuntu 18.04.2 を ThinkPad X240 へインストール
3. Ubuntu の上に VirtualBox 6.0.10 をインストール
4. Ubuntu の上の VirtualBox の上に Vine Linux 6.5 をインストール
5. 雑感

0. 背景

ThinkPad X240 を購入して使い始めたのが 2014年4月だったので、 それから5年たった。仕事の都合上、Windows を使わざるをえなかったので、 Windows の上に VirtualBox を載せ、そこでVine Linux を使うという方向に舵を切った。 思ったよりずっと使いづらかった ThinkPad X240Windows 8.1 だったが、「できの悪い子」もそれなりに可愛くなりつつあった。

当初の予想としては、Windows の上のVirtualBox は安定しているようなので、「WindowsLinux の間でシームレスにデータのコピーができ」、実用になると思っていた。 当然ながら、Vine Linux は「かなり動きが遅くなる」のを覚悟していた。

実際のところ、VirtualBox は、かなり頻繁にアップデートされ改良されてきたので、 そこそこ満足していたが、問題は、やはりWindows 8.1 だった。 Windows って、Linux に比べて安定しているんだろうな、 と勝手に思っていたら、実は全然そんなことはなかった。 アップデートが入ると、ほとんど仕事がストップしてしまい、不安定になってリブートされてしまうこともあり、 最悪の時は VirtualBox ごと落ちてしまい、泣かされた。

今回、Windows 8.1 に別れを告げる決心をしたのは、 以下の3つのエラーが ThinkPad X240 上で頻発するようになったからだ。

(Windows 8.1 がインストールされている ThinkPad X240 上で多発したエラー 3種)

(1) 2101: Detection error on SSD1 (M.2)
(2) KERNEL_DATA_INPAGE_ERROR
(3) DRIVER_POWER_STATE_FAILURE 

SSD は使っていないのに出るハードウェアに起因すると思われるエラーが (1)。 コネクタの汚れが原因でも起きるという説もある。 (2) の KERNEL_DATA_INPAGE_ERROR は、 カーネルの問題なので奥が深そう。基本的には、 Windows 8.1 の一部が壊れているようだ。 (3) の DRIVER_POWER_STATE_FAILURE は、 レジュームができないで起きるエラーで、ドライバに問題があるらしい。 windows crash report を出力するフリーウエアでダンプ・ファイルの解析をしてみたが、 どうも埒があかない。 そのうち、何もしないで ThinkPad X240 を放置しておくだけで、 以下のようなブルースクリーンが現れるようになった。

KERNEL_DATA_INPAGE_ERROR on ThinkPad X240, Windows 8.1

「問題が発生したためPCを再起動する必要があります。エラー情報を収集しています。 再起動できます。(0%完了)」というメッセージだが、「再起動できます」 というのは、すぐに再起動できるということなのか、それとも、「100%完了」 というメッセージが出るまで待つ必要があるのか、分からない。待っていると、 「100%完了」になることもあれば、1時間待っても「0%完了」のままのこともある。 数日おきに目にするこのメッセージ。確かに、再起動すると、 いつもよりも起動時間が長くかかるものの、何事もなかったように起動する。 ちなみに、この (2) のエラー、マイクロソフト・コミュニティでは、以下のような Q and A として公開されている。
kernel_data_inpage_error - マイクロソフト コミュニティ。 これを読んで解決する人がいるとは、ちょっと思えない。

ネット上には、このエラーに関する情報がかなりあるのだが、どうやら英語で書かれた解説を (不出来な)自動翻訳システムにかけて公開しているようにも見えるものもある(誤解であればよいのだが)。 これらのページでは、ブルースクリーンのキャプチャが英語である。
死のKERNEL_DATA_INPAGE_ERRORブルー画面にガイド
解決済み:KERNEL DATA INPAGE ERRORエラーを修復するには?

作業途中で、ThinkPad X240 のフタを閉じて、開けたらあらら、 フリーズ、ということもしばしば。そんな時には、 DRIVER_POWER_STATE_FAILURE が出ることもある。 何のエラー表示も出ずに、ただただフリーズというケースもある。

念のために付け加えておくが、Lenovo が提供するハードウエアチェックプログラムを走らせても 「異常なし」というテスト結果だった。それでも、第2バッテリー(3セル)が明らかに不調なので(Lenovo setting というプログラムでは、状態は「普通」と表示されていたが)、買い換えていた。

こんな状況で、論文を書いたり、ホームページのリニューアル作業の打ち合わせをしていたので、 本当に気が滅入った。親族の一人が入院したかと思えば、突然、迷子の子ネコちゃんが我が家で保護され、 体調不良で動物病院へ駈け込んだりしたので、もう人生は壊滅的状態になっていた。

そこで、「もう、こうなったら Windows 8.1 をやめるしかない」という結論に達した。 それは、Windows 8.1 を「修復USB」 で立ち上げても状況が改善されないからであり、 Lenovo 提供のハードウエアチェックでは異常が出ないからでもあった(人によっては、この状況で、修理に出すのかもしれないし、 Windows の再インストールをするのかもしれない。あるいは、 単に PC を買い換えるのかも)。

このような背景の元に、結論から言うと、 ThinkPad X240 からWindows 8.1 を追い出し Ubuntu 18.04.2 をインストールし、 その上に VirtualBox 6.0.10 をインストールし、 その中に Vine Linux 6.5 をインストールすることになった。

VineLinux 6.5/VirtualBox 6.0.10/Ubuntu 18.04.2 LTS on ThinkPad X240

その結果が左のスクリーンショットだ。 Windows 8.1ThinkPad X240 のあの3つのエラーから開放されたのは言うまでもない。 また、 Windows 8.1 上の VirtualBox 6.0.10 上の Vine Linux 6.5 よりも、 Ubuntu 18.04.2 上の VirtualBox 6.0.10 上の Vine Linux 6.5 の方が、 はるかにオーバーヘッドが少なく、キビキビと動く。 そして何よりも、 Windows のアップデートが入る恐怖から開放されたのが精神的によい。 また、 VineLinux 6.5 では、 Praat も提供されるようになったのだが、 Windows 8.1 上では負荷が大きすぎで音が歪んでしまい使い物にならなかった。 それが、 Ubuntu 18.04.2 上の VirtualBox 6.0.10 上の VineLinux 6.5 では、 Praat でまともに音が再生できるようになった。 オーバーヘッドが少なくなったおかげである。サスペンド、レジュームも問題なく機能している。

1. まずは計画と下調べ

Linux のインストールは、それ自体それほど困難ではないと予想していた。 問題は、過去5年間、Windows を使いデータのバックアップをしてこなかった点である。 大容量の USB メモリにバラバラにデータは入っているものの、全体が見通せない。 Vine Linux の方は、 HDD バックアップ・システム刷新  [02/26/2015,03/26] で紹介したように、ちゃんとバックアップしていた。 この間、VirtualBox のアップデートで、 USB 3.0 がサポートされたので、 「亀のようなバックアップ・システム」も、なんとか現実的なスピードで使えるようになっていた。

そこで、家族サービスも込みということで、ネットワーク・ハードディスクシステムを増築することにした。 製品は、Landisk HDL-AA33TBI/O DATA の製品だ (HDL-AA3 | サポートライブラリ | IODATA アイ・オー・データ機器)。 そこで、Windows 8.1 上のデータを、 Landisk にバックアップし、 Vine Linux のデータは通常通り、rsyncBuffalo HD-LB2.0U3/YD にインクリメンタル・バックアップする。 次に、ThinkPad X240Ubuntu 18.04.2 をインストールし、 ハードウエアの情報を整理してから、 できることなら Vine Linux 6.5 を直接インストールしようと考えた。 これが無理なら、 Ubuntu の上に、VertualBox を載せることにし、最終的には、バックアップデータをリストアして終了する、という計画だ。

2. Ubuntu 18.04.2 を ThinkPad X240 へインストール

Ubuntu 18.04.2 のインストールは、予想していたように極めて明解で単純なものだった。 Ubuntu Desktop 日本語 Remixのダウンロード から、「Ubuntu 18.04.2 LTS - 2023年4月までサポート」を選択してダウンロードし、 Linux MintBraseroDVD に焼き、 外付けの Logitech DVD-Drive (LDR-PME8U2LBK)ThinkPad X240 に接続してインストールした。 ThinkPad X240にUbuntuをインストール | @okmt1230z 2019年04月11日に更新 に、「起動後、F1キーを押してBIOSに入り...『セキュアブート(Secure Boot)を無効』に」 しておかないと、インストーラーが強制終了してしまうとの情報があったので、 念の為この情報通りに設定してからインストールを始めた。

warning in partitioning /Ubuntu 19.04.2 (Japanese)

通常はちょっとドキッとする警告表示が画像に出ている。読みづらいので以下に再録。

続けると、以下に挙げた変更がディスクに書き込まれます。あるいは、手動でさらに変更を
加えることができます。

*警告*:これは、パーティションを初期化するのと同様に、 削除するとしたパーティション
のすべてのデータを破壊します。

以下のデバイスのパーティションテーブルが変更されます。
SCSI2(0,0,0)(sda)

以下のパーティションは初期化されます:
SCSI2(0,0,0)(sda)のパーティション1を ext4 に

やや分かりづらい警告文ではあるが、Windows のデュアル・ブートの可能性を断って先に進むと、こういう警告文がでる。 もちろん、Windows 8.1 にもう未練はないので、 これで進み、インストールを終了した。

lspci -v で、PCI 接続のデバイス情報を集めておき、 Vine Linux 6.5ThinkPad X240 へ直接インストールすることも試みたが、 テキスト画面インストールで進んでも、PCI デバイス選択画面でどれを入力してもコケてしまう。 SATA 互換で、 適当なパラメータを渡せればなんとかなるような気もしたが、時間切れ玉砕。 Vine Seed ならなんとかなりそうなのだが、 やはり安定して使えないと困るので、VirtualBox に頼る道を選んだ。

3. Ubuntu の上に VirtualBox 6.0.10 をインストール

Linux_Downloads – Oracle VM VirtualBox から、 Ubuntu 18.04 / 18.10 / 19.04 / Debian 10 を選択すると、 virtualbox-6.0_6.0.10-132072~Ubuntu~bionic_amd64.deb をダウンロードし、ファイルマネージャでダウンロードフォルダを開き、 上記のファイルをダブルクリックして、 deb パッケージをインストールするだけ。

4. Ubuntu の上の VirtualBox の上に Vine Linux 6.5 をインストール

さて、ゲストOS として、 Vine Linux 6.5 の環境をまず作成するのだが、 実はここでいったん早まって、さっさとゲスト OS のインストールをしてしまい、 後で USB デバイスの認識ができずに苦労してしまった。 Windows 版の VirtualBox では、立ち上げるとすぐに Extension pack のインストールを勧められるので、 間違いようがない。今回の Ubuntu での VirtualBox では、そうなっていなかったので、まあ後でもいいや、と思ったのが間違いだった。

Linux_Downloads – Oracle VM VirtualBox のページのやや下の方に、 VirtualBox 6.0.10 Oracle VM VirtualBox Extension Pack があり、そこには、 All supported platforms があるので、そこをクリックして、 Oracle_VM_VirtualBox_Extension_Pack-6.0.10.vbox-extpack をダウンロードする。ダウンロードしたインストーラをクリックして起動し、 後はメッセージに従って、Virtualbox の機能拡張パッケージをインストールする。 VirtualBox と、VirtualBox Extension Pack は、必ず同じバージョンでなければならない点が要注意。

さて、今回は、前回とは異なり、Vine Linux 6.5 (64-bit) 版をインストールする。 そのためには、BIOS で、 VT-denabled にしておく 必要がある。

BIOS setting of ThinkPad X240/VT-d enabled

VT とは、Virtualization Technology (c) Intel のことで、 Intel VT(Intel Virtualization Technology)とは - IT用語辞典 e-Words に解説があるように、CPU内部に仮想化に対応する機能が組み込まれているインテルのテクノロジーを指す。 これによって、ハードウエア上で仮想化がサポートされるので、高速に仮想マシンが実行でき、安全性も高まると言われている。

さて、簡単に今回のゲストOS Vine Linux 6.5 の設定をまとめておく。

まずは、「一般」から。

•名前:VineLinux6.5
•タイプ:Linux
•オペレーティングシステム:Linux 2.6/3.x/4.x (64-bit)
名前を入れると、タイプもオペレーティングシステムも自動で補完されるので、 それをただ受け入れただけ(ちなみに、VT-denabled にしておかないと、(64-bit) にはならず、 自動的に (32-bit) となり、 (64-bit) の選択はできない。

•メモリー設定: 4096MB
•仮想ハードディスクを作成
•ハードディスクのファイルタイプ:VDI を選択
•物理ハードディスクにあるストレージ:可変サイズ
•ファイルの場所:/home/hoge/VirtualBox VMs/VineLinux6.5/VineLinx6.5hoge はユーザ名)
•仮想ハードディスクのサイズ: 512GB
こんな具合に、かなり贅沢な設定をした。

ゲスト OS のありかは、
1. 作成した仮想マシンが選択された状態で、右側の「ストレージ」を選択。
2. 中央の「空」を選択し、「CD/DVDドライブ(D):」の CD のボタンをクリックして 「isoイメージを選択」をクリックして指定。これで、仮想マシンのインストールが始まる。

Installing VineLinux 6.5 as a guest OS in VirtualBox on Ubuntu 18.04.2

VirtualBox 上では、 Vine Linux 6.5 の通常のグラフィカルインストールが可能だ。 当初、ひっかかってしまったのは、先へ進むボタンのクリックだった。 インストール画面をクリックしたら、以下の内容の「VirtualBox - 情報」が現れた。

           VirtualBox - 情報
仮想マシンの画面をマウスでクリックするか、またはホストキーを押す
と、仮想マシンはマウスポインター(マウス統合機能がゲストOSでサポー
とされていないときのみ)とキーボードをキャプチャーします。仮想マシ
ンにキーボードとマウスがキャプチャーされるとホストマシンで動作する
他のアプリケーションは利用できません。

ホストキーを押すと、キーボードとマウス(キャプチャーされているとき)
はキャプチャー解除され、通常の操作に戻ることができます。現在割り当
てられているホストキーは仮想マシンのウィンドウ下部のステータスバー
に↓アイコンで表示されます。このアイコンはマウスアイコンと共に現
在のキーボードとマウスのキャプチャー状態を表示します。

現在ホストキーは右Ctrlに割り当てられています。

□次回からこのメッセージを表示しない

            [キャンセル] [キャプチャー]

この文章を最初から読んで、どうしたらよいか考えるのはかなり難しいと思う。 後から、部分的に括弧内の情報を飛ばして読めば、理解できる部分もある。 つまり、正解は、「ホストキーを押すと、キーボードとマウスはキャプチャー解除され、 通常の操作に戻ることができます。」 そして、ホストキーを押した後、 [キャプチャー]をクリックすると、この窓が閉じて先へ進めるのだ。 [キャンセル]を押すと、この窓がキャンセルされ、先へは進めない。なんと論理的な!?

この仕組みが分かって、あとは通常の Vine Linux のインストールとなった。 以前と同じように、 「ディバイスsdaのパーティションテーブルが壊れているので初期化しますか?」 と尋ねられるが、基本的に仮想マシン上なので、大丈夫。初期化する (システムのすべてのLinuxパーティションを削除、を選択)。 また、GRUB bootloader/dev/sda 上にインストールする。

次なる関門は、「共有フォルダー」の作成だ。
簡単といえば簡単なのだが、どうも順序がよく分からない。 私のやった順番は次のようになる。
1. 共有フォルダ作成。
ホストUbuntu 上で、ユーザhoge のデスクトップ(ここでは、英語化しているので Desktop)に共有フォルダ localshare を作成することにする(名前は実は何でもよいが、紛らわしくないものが良い)。
$ mkdir /home/hoge/Desktop/localshare
2. VirtualBox マネージャーで設定したい仮想マシンを選択し、[設定]をクリック。
3. 共有フォルダーをクリック。
4. プラスボタンをクリック。
5. フォルダーのパスの三角のようなボタンをクリックし、その他をクリック。
6. 手順1で作成したフォルダを指定し、右上の開くをクリック。
/home/hoge/Desktop/localshare
7. 自動マウントするにチェックをつけ、[OK]をクリック。
8. マウントポイントは、/media/sf_localshare/ とする。
そうすると

共有フォルダー                アクセス権 自動マウント 場所
localshare /home/jok9/Desktop/localshare     完全    はい    /media/sf_localshare/

となる。
9. 以下にあるように、ゲストOS である Vine Linux で、hogevboxsf のグループに所属させる。
# usermod -aG vboxsf hoge
(# id hoge

# uid=500(hoge) gid=500(hoge) groups=500(hoge),10(wheel),480(vboxsf)
のように vboxsf が出てくれば OK)
ゲストOSの再起動をすれば、これで、ゲストOSの /media/sf_localshare がホストOSとの共有フォルダに なっているはず。
ゲストOSの VineLinux のディスクトップに sf_localshare の文字が現れる。
試しに、ホストOSの Ubuntu のデスクトップ上に見え る localshare をダブルクリックしてオープンし、何 かファイルを入れてみる。 その後、Vine のデスクトップの sf_localshare をクリックしてみると、 そのファイルが入っているはず。

最後に、USB 3.0 の認識について。 上でも触れたように、VirtualBox 6.0.10 Oracle VM VirtualBox Extension Pack をちゃんとインストールしてあれば、問題なく USB 3.0 のデバイスも認識できるはず。もちろん、 VirtualBox マネージャーの「設定」、「USB」 のところで、 USB 3.0 (xHCI) コントローラー、を選択しておく必要がある。

Recogntion of USB 3.0 devices through VirtualBox 6 on Ubuntu 18.04.2

VirtualBox マネージャーの右下に、斜めの鉛筆のようなアイコンがあり、 これが USB。このアイコンの上にカーソルを移動して、 右クリックすると、上記のようなコンテキストメニューが出る。 この下の BUFFALO HD-LBU3 [0001] が私の使っている Vine Linux用のバックアップシステムで、 USB 3.0 でつながる。この部分の前の「□」をクリックすると、 このデバイスがマウントされる (Logitech USB Receiverは、 USB 接続のワイヤレス・マウスの受信器)。 後は、延々とリストアをすればよい。

リストアする時に気がつくのは、こんなに多くのデータをバックアップする必要が本当にあるのか、 という点。果てしなく大きくなっていく外部記憶装置と、果てしなく増え続ける自分のデータ。 ちゃんとマッチしているようではあるが、ゴミ屋敷をただ拡張しているような気もする。 やはり、気がついたらせっせと不要なデータは捨てなければならない、と思う(反省)。

5. 雑感

VirtualBox の設定はまだまだあるのだが、後は好みの問題もあるので細部は省略する。 ゲストOSである Vine Linux 6.5 は、 一度カーネルのアップデートがあったので、それを済ませてから Guest Addtions のインストールを行った。これは、 ゲストOSの上の「ディバイス」をクリックし、一番下にある 「Guest Additionsの CD イメージを挿入」して実行する、 というもの。カーネルに合った DKMS のビルドとインストールが行われる。

今回の ThinkPad X240Linux マシン化は、成功だった。最初に示したディスクトップのイメージは、 1366 x 768 (16:9)Vine Linux 6.5 だったが、実は、ThinkPad X240 のディスプレイ比率 16:9 なら、 1920 x 1080 を選ぶことができる。これで、 周囲が Ubuntu だが、ほぼ Vine Linux のディスクトップになった。

ただ、残念なのは Vine Linux の開発が停滞していることだ。 思えば、一時期、日本でも様々な Linux が紹介され、 市場には Linux 関係の雑誌が溢れていたことがあった。 Linux 自体は、ちゃんと様々な機器に組み込まれて使われているのだが、 一般のコンピュータ・ユーザからは離れた存在になってしまった。 いや、そもそも、コンピュータそのものが、あまりにも影に隠れてしまい、 まともに使える人が激減しているように感じる。

さて、Windows マシンがなくなってしまったので、仕方なく一台購入することにした。 いろいろと迷ったあげく、 ThinkPad X1 Carbon 2019版を選択した。 これも、将来的には Linux マシンになるのだと思いつつ、 Windows 10 のセットアップを済ませた。 それにしても、今時の PC ここまで個人情報を送付させられるのか、と唖然とさせられた。 GPS が入っていて、 SSD 外部記憶という世界、これはスマホが大きくなったということかな?


母音空間のプロット: Praat と R と phonR  [05/23/2017]

0. 背景
1. Vine Linux 6.5 で Praat を動かすには
2. praat でフォルマントの情報を得る
3. R 上で phonR をインストールする
4. R と phonR を使って母音をプロットする

0. 背景

Vine Linux が 6.5 になり、VirtualBox は、 5.1.22(115126) になった。最初は、Vine Linux 6.5Windows 8.1 上の VirtualBox 5.1.22 で立ち上がらなくなったので、 やむをえず kernel-3.4.110-4vl6-i686 でしばらく動かしていたが、 調べてみるとリブートするだけで kernel-4.4.52-2vl6-i686 でも動くようになるとの情報を得て、やってみると嘘のように無事に立ち上がるようになった。

今年は、学部でも大学院でも音韻論のお勉強をしながら、講義などをしているので、 久しぶりに第1フォルマントと第2フォルマントを計測して、母音空間のプロットをしてみることにした。 昔は、サウンドスペクトログラフ (sound spectrograph) という機械を使って、広帯域スペクトログラムを出力し、 曲尺で F1 と F2 を測って、グラフ用紙に F1 を Y軸に、F2 をX軸にとって自分の母音の「調音点」を描いた。 詳細な記憶はないのだが、かなりの時間をかけて描いていた記憶がある。

今回は、Windows 8.1 上の Praat を使い、 Vine Linux 6.5 上の GNU R に、 phonR をインストールして、母音空間をプロットする。

Praat は、もうすっかり知られるようになったコンピュータでの音声解析ソフトで、 Praat: doing Phonetics by Computer から最新版をダウンロードして、 Windows でも、Linux でも使うことができる。

1. Vine Linux 6.5 で Praat を動かすには

Vine Linux 6.5 では、残念ながら簡単には動かせない状況になっている (UbuntuDebian ではパッケージとして提供されている)。 Vine Linux 7 がリリースされれば、問題は解決されるかもしれない。 現状では、praat6028_linux32.tar.gz をダウンロードして解凍し、 バイナリ praat/usr/bin に置いて実行すると次のようなエラーがでる。

$ praat
$ praat: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by praat)  

これは、libstdc++GLIBCXX_3.4.21 が含まれていないことを示すエラーだ。 どうしたらよいかというと、 Vine Linux 7 がリリースされ gcc のバージョンが上がるのを待つか、 gcc の上のバージョンをコンパイルして、 GLIBCXX_3.4.21 を含む libstdc++ だけをインストールしてしまうかだろう。 CentOS6 の libstdc++ を更新する | SaintSouth.NET では、実際に CentOSlibstdc++ のバージョンを上げる話があるので、 これを参考にやってみれば動く可能性がある (残念ながら、今の私にはそれを試すだけの時間はない)。

2. praat でフォルマントの情報を得る

以下では、Windows 上での praat を使って話をすすめるが、VirtualBox 上で Vine Linux 6.5 を動かしているので、 コピペも問題なくできるので、データは Vine Linux 6.5 上の gedit に貼り付けている。

今回は、あらかじめドイツ語のネイティブの方の協力を得て、 (1) schon, schön、(2) kennen, können の2つのペアと、 日本語の (3) ima, ema (「今」、「絵馬」)のペアを録音した(Roland R-09HR)。 (1) は、[o:][ø:] 、 (2) は、[e][œ] 、 (3) は、日本語の「い」と「え」の差を確認するミニマルペアである。 それぞれ該当する母音の部分を音を聞きながら、波形とフォルマントの変化など総合的に判断して確定し、 その部分を選択したまま、[Formant] - [Formant listing} の順に選択すると、別の窓が開き、標準的には 0.5ms ごとの F1, F2, F3, F4 の値が以下のようにリストされる。

Time_s   F1_Hz   F2_Hz   F3_Hz   F4_Hz
0.339600   349.727152   786.991447   2523.120898   3626.264343
0.345850   353.787358   747.504945   2488.686122   3548.818128
0.352100   353.392896   726.783305   2550.196464   3420.977975
0.358350   355.927090   725.938028   2678.689169   3548.172586
0.364600   361.466284   749.891401   2728.701900   3853.453773
0.370850   369.330796   749.152120   2743.850078   3783.443848
0.377100   382.903509   707.381137   2674.439374   3362.559405
0.383350   398.591982   705.637880   2699.108643   4015.733947
0.389600   401.679773   644.007832   2762.717387   2827.143612
0.395850   421.898311   626.461399   2791.181987   3194.287044
... 以下省略 ...

これは schon[o:] の値の一部だが、これを Vine Linux 上の gedit にコピペして、schon-F1_F4.txt のように名づけたファイルにしておく。

今回は、F1, F2 しか使わないので、次のようにし て、3列だけ残したファイル schon-F1_F2.txt を作成しておく。

% cat schon-F1_F4.txt | awk '{ $4=""; $5=""; print $0}' >schon-F1_F2.txt

これは、単位時間と F1, F2 の3列だけのデータを作る1つのやり方でしかない (自分で好きな方法で3列のデータにすればよい)。 ここでは、このデータの1列目にちょっと手を加えて、簡単にしておいた。 以下が schon-F1_F2.txt の中身。

Time F1 F2
0.339600   349.727152   786.991447
0.345850   353.787358   747.504945
0.352100   353.392896   726.783305
0.358350   355.927090   725.938028
0.364600   361.466284   749.891401
0.370850   369.330796   749.152120
0.377100   382.903509   707.381137
0.383350   398.591982   705.637880
0.389600   401.679773   644.007832
0.395850   421.898311   626.461399
... 以下省略 ...

praatFormant listing をやったついでに、 [Formant] - [Get first formant F1][Formant] - [Get second formant F2] をして平均値 (mean F1 in SELECTION)(mean F2 in SELECTION) をとっておくと後で参考になる。

3. R 上で phonR をインストールする

R はあらかじめインストールしておく。 Vine Linux 6.5 では、 # apt-get install R でインストールできるはずだ。 手元でバージョンを rpm -q R として調べたら、 R-3.4.0-1vl6.i686 だった。

メニューでは、「教育・教養」の舌に、GNU R と表示されているので、これをクリックすると、以下のような GNU R のコンソールが開く。

GNU R on VineLinux 6.5

ここで、Daniel R. McCloy氏による phonR をインストールする。 phonR に関しては、 Normalizing and plotting vowels with phonR 1.0.7 | Daniel R. McCloy, University of Washington に概略の説明がある。 また、The Comprehensive R Archive Network には、 phonR: Tools for Phoneticians and Phonologists に登録されている。

(そもそもなんで、RphonR なのか、と言うと、MS-Excel でなんとなくわけが分からずに分散図を描くのが嫌だったから。 Excel が好きな人は、Excel のマクロ等でどうぞ。ただし、X 軸とY 軸の目盛りを逆転させてください。)

phonR は、母音データの平準化 (normalization) と母音空間のプロットができるパッケージで、 実際のデータの例として、Daniel R. McCloy氏による標準インドネシア語の 8人の話者の母音データが含まれている。

インポートされるのは、splancs, deldir, plotrix, stats, grDevices, graphics のパッケージで、インストール時にネットワークにつながっていれば、 不足するパッケージは、以下に示すように自動的にダウンロードされてインストールされる。

R のコンソールから、以下のようにインストールコマンドを投入するだけだ。

> install.packages("phonR")

そうすると、ダウンロード先のサーバーを選択するように促されるので、 近くのミラーサイトを選択する。これで終わりと思ったが、実は違ったので以下にそのログを収録しておく。

> install.packages("phonR")
 install.packages("phonR") で警告がありました: 
   'lib = "/usr/lib/R/library"' は書き込み可能ではありません 
Would you like to use a personal library instead?  (y/n) y
Would you like to create a personal library
~/R/i686-pc-linux-gnu-library/3.4
to install packages into?  (y/n) y
 --- このセッションで使うために、CRAN のミラーサイトを選んでください --- 
 依存対象 (dependency) ‘sp’, ‘splancs’, ‘deldir’, ‘plotrix’ もインストールします 

 URL 'https://cran.ism.ac.jp/src/contrib/sp_1.2-4.tar.gz' を試しています 
Content type 'application/x-gzip' length 1133711 bytes (1.1 MB)
==================================================
downloaded 1.1 MB

 URL 'https://cran.ism.ac.jp/src/contrib/splancs_2.01-40.tar.gz' を試しています 
Content type 'application/x-gzip' length 105583 bytes (103 KB)
==================================================
downloaded 103 KB

 URL 'https://cran.ism.ac.jp/src/contrib/deldir_0.1-14.tar.gz' を試しています 
Content type 'application/x-gzip' length 73142 bytes (71 KB)
==================================================
downloaded 71 KB

 URL 'https://cran.ism.ac.jp/src/contrib/plotrix_3.6-5.tar.gz' を試しています 
Content type 'application/x-gzip' length 237647 bytes (232 KB)
==================================================
downloaded 232 KB

 URL 'https://cran.ism.ac.jp/src/contrib/phonR_1.0-7.tar.gz' を試しています 
Content type 'application/x-gzip' length 33918 bytes (33 KB)
==================================================
downloaded 33 KB

* installing *source* package ‘sp’ ...
**  パッケージ ‘sp’ の解凍および MD5 サムの検証に成功しました 
** libs
gcc -std=gnu99 -I/usr/lib/R/include -DNDEBUG   -I/usr/local/include   -fpic  -O2 \\
    -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables \\
    -fno-strict-aliasing -fno-schedule-insns2  -c Rcentroid.c -o Rcentroid.o
gcc -std=gnu99 -I/usr/lib/R/include -DNDEBUG   -I/usr/local/include   -fpic  -O2 \\
    -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables \\
    -fno-strict-aliasing -fno-schedule-insns2  -c gcdist.c -o gcdist.o
gcc -std=gnu99 -I/usr/lib/R/include -DNDEBUG   -I/usr/local/include   -fpic  -O2 \\
    -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables \\
    -fno-strict-aliasing -fno-schedule-insns2  -c init.c -o init.o 
gcc -std=gnu99 -I/usr/lib/R/include -DNDEBUG   -I/usr/local/include   -fpic  -O2 \\
    -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables \\
    -fno-strict-aliasing -fno-schedule-insns2  -c pip.c -o pip.o
gcc -std=gnu99 -I/usr/lib/R/include -DNDEBUG   -I/usr/local/include   -fpic  -O2 \\
    -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables \\
    -fno-strict-aliasing -fno-schedule-insns2  -c pip2.c -o pip2.o
gcc -std=gnu99 -I/usr/lib/R/include -DNDEBUG   -I/usr/local/include   -fpic  -O2 \\
    -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables \\
    -fno-strict-aliasing -fno-schedule-insns2  -c sp_xports.c -o sp_xports.o
gcc -std=gnu99 -I/usr/lib/R/include -DNDEBUG   -I/usr/local/include   -fpic  -O2 \\
    -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables \\
    -fno-strict-aliasing -fno-schedule-insns2  -c surfaceArea.c -o surfaceArea.o
gcc -std=gnu99 -I/usr/lib/R/include -DNDEBUG   -I/usr/local/include   -fpic  -O2 \\
    -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables \\
    -fno-strict-aliasing -fno-schedule-insns2  -c zerodist.c -o zerodist.o
gcc -std=gnu99 -shared -L/usr/lib/R/lib -L/usr/local/lib -o sp.so Rcentroid.o \\
     gcdist.o init.o pip.o pip2.o sp_xports.o surfaceArea.o zerodist.o \\
     -L/usr/lib/R/lib -lR installing to \\
     /home/hogehoge/R/i686-pc-linux-gnu-library/3.4/sp/libs
** R
** data
** demo
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded
* DONE (sp)
* installing *source* package ‘deldir’ ...
**  パッケージ ‘deldir’ の解凍および MD5 サムの検証に成功しました 
** libs
gfortran   -fpic  -O2 -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables\\
            -fno-strict-aliasing -fno-schedule-insns2  -c acchk.f -o acchk.o
make: gfortran: コマンドが見つかりませんでした
make: *** [acchk.o] エラー 127
ERROR: compilation failed for package ‘deldir’
* removing ‘/home/hogehoge/R/i686-pc-linux-gnu-library/3.4/deldir’
* installing *source* package ‘plotrix’ ...
**  パッケージ ‘plotrix’ の解凍および MD5 サムの検証に成功しました 
** R
** data
** demo
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
* DONE (plotrix)
* installing *source* package ‘splancs’ ...
**  パッケージ ‘splancs’ の解凍および MD5 サムの検証に成功しました 
** libs
gfortran   -fpic  -O2 -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables\\
            -fno-strict-aliasing -fno-schedule-insns2  -c areapl.f -o areapl.o
make: gfortran: コマンドが見つかりませんでした
make: *** [areapl.o] エラー 127
ERROR: compilation failed for package ‘splancs’
* removing ‘/home/hogehoge/R/i686-pc-linux-gnu-library/3.4/splancs’
ERROR: dependencies ‘splancs’, ‘deldir’ are not available for package ‘phonR’
* removing ‘/home/hogehoge/R/i686-pc-linux-gnu-library/3.4/phonR’

 ダウンロードされたパッケージは、以下にあります 
 	‘/tmp/RtmpquG52K/downloaded_packages’ 
 警告メッセージ: 
1:  install.packages("phonR") で: 
   パッケージ ‘deldir’ のインストールは、ゼロでない終了値をもちました 
2:  install.packages("phonR") で: 
   パッケージ ‘splancs’ のインストールは、ゼロでない終了値をもちました 
3:  install.packages("phonR") で: 
   パッケージ ‘phonR’ のインストールは、ゼロでない終了値をもちました 
> 

「ゼロでない終了値」というのは、正常終了しなかったという意味らしい。 よく見ると、gcc が起動してコンパイルしている のだが、「gfortran コマンドが見つかりませんでした」 というのが決定的なようだ。 そこで、今度は gcc-gfortranlib-gfortranapt-get でインストールしてから再度チャレンジした。 すると、gfortran でのコンパイルが始まり、無事にインストールが最後まで通った。

[... 省略 ...]
* installing *source* package ‘splancs’ ...
**  パッケージ ‘splancs’ の解凍および MD5 サムの検証に成功しました 
** libs
gfortran   -fpic  -O2 -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables\\
              -fno-strict-aliasing -fno-schedule-insns2  -c areapl.f -o areapl.o
gfortran   -fpic  -O2 -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables\\
              -fno-strict-aliasing -fno-schedule-insns2  -c cncvwt.f -o cncvwt.o
gfortran   -fpic  -O2 -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables\\
               -fno-strict-aliasing -fno-schedule-insns2  -c dokhat.f -o dokhat.o
gcc -std=gnu99 -I/usr/lib/R/include -DNDEBUG   -I/usr/local/include   -fpic  -O2 \\
               -m32 -march=i686 -mtune=generic -fasynchronous-unwind-tables \\
               -fno-strict-aliasing -fno-schedule-insns2  -c init.c -o init.o
[... 省略 ...]
installing to /home/hogehoge/R/i686-pc-linux-gnu-library/3.4/deldir/libs
** R
** data
*** moving datasets to lazyload DB
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
* DONE (deldir)
* installing *source* package ‘phonR’ ...
**  パッケージ ‘phonR’ の解凍および MD5 サムの検証に成功しました 
** R
** data
*** moving datasets to lazyload DB
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
* DONE (phonR)

 ダウンロードされたパッケージは、以下にあります 
 	‘/tmp/RtmpquG52K/downloaded_packages’ 

ということで、無事に最後には、* DONE (phonR) となり、インストールは終了した。

4. R と phonR を使って母音をプロットする

さて、これで後は、phonR を使ってデータをプロットするだけだ。 もちろん、データの平準化も試す価値はあるのだが、 とりあえずは母音空間のプロットが先。 まずは、単純に、上で概略を示した schon のデータをプロットしてみる。 エディタに以下のコマンド列を書き込んでおきコピペする、というのが簡単だ。

setwd("./R/data")
library(phonR) 
(d1 <- read.table("schon-F1_F2.txt", header=T) )
with(d1, plotVowels(F1, F2, col="blue", xlim = c(2900, 600), ylim = c(1200, 200)))
title("[o] in schon bei einem Deutschen")
    

最初の行は、データのあるディレクトリを setwd で指定している。 library(phonR)phonR をロード。 データをファイル schon-F1_F2.txt から読んで、d1 に代入。その際、ファイル schon-F1_F2.txt の一行目は、ヘッダーとして扱う(処理データから外す)。 plotVowels を呼んで、データをプロット。その際、 x 軸とy 軸のデータ幅を決めておく(これをしないと、データ範囲の小さなグラフになってしまう)。 title コマンドで、タイトルを表示する。 最後に空行を入れたのは、この行までをコピーの対照にすることで、 title コマンドが実行されるところまで行くようにするため。 上の、schon-F1_F2.txt のデータで母音空間をプロットすると、以下の左のようになる。 もっとカラフルにしたり、左右にプロットを並べたり、特定の母音の分布を楕円で囲んだり、 発音記号を入れたりできるようだ。 ここでは、あるドイツ人ネイティブによる、schon の 、[o:] と、schön の 、[ø:] の比較をしてみたのが右だ。ö が前に来ているのがわかる。

[o] in schon /R Graphics[o:] in schon vs. [] /R Graphics

はや 2年近くに:Windows 8.1 上の VirtualBox 上の VineLinux 6.2  [03/23/2016,03/28]

ThinkPad X240 に変えてから、Linux 原理主義者をやめた。 あいかわらず Windows は大嫌いだが、仕事がら日夜 MS Office のデータが押し寄せてくるので、 LibreOffice ですべて処理して投げ返すと、結局いろいろなレイアウト上のトラブルに巻き込まれて時間のロスなる。 こちらから発信する文書は、基本的には、LaTeX で作成して PDF で送るのだが、 最近は Word でお願いされれば、 Word でお返しするようになった。 歳を重ねてマイルドになった、というところか(HA HA HA)。

以前書いたように、VirtualBox (Windows版) に決して満足しているわけではない。 現在では VirtualBox 5.0.16 r105871Windows 8.1 にインストールして、 そこで VineLinux 6.2 を使っているのだが、 なんで 2年間も使えたのか、この間どんなトラブルがあったのかを簡単にまとめておくことにした。

シームレスにコピペができる
VirtualBox Extension Pack をインストールすることで、 何の障害もなくゲストの VineLinux 6.2 上のアプリケーションと、 ホスト Windows 8.1 上のアプリケーション間でコピペができる。 たとえば、Windows 上の Word の文書の一部をコピーして、 VineLinux 6.2 上の Emacs のテキストにペーストするとかもできてしまう。 コントロールキーを使うのなら、Windows 上の Word の文書の一部を Ctrl + C で切り取って、 VineLinux 6.2 上の EmacsCtrl + y で貼り付けてしまうことができる。

Screenshot. Guest-OS: VineLinux 6.2, VirtualBox on Windows 8.1

共有フォルダでファイルをコピー・移動できる
例えば、標準的には、ホストの Windows 上のホーム・ディレクトリ下に VMshare という共有フォルダを作っておくと、そのフォルダはホストOSからもゲストOSからもアクセスできるので、 ファイル交換はこのディレクトリにファイルをコピーすることでできてしまう。 私の場合は、ゲストOS の VineLinux 6.2 上の EmacsLaTeX で文書を作成してPDF化し、 そのファイルを、 /media/VMshare へコピーすれば Windows から Acrobat で開いて Windows のドライバでプリンタ出力できる。

NAT でネットワーク接続していると、Norton でウィルス感染メールをはじいてくれる
あいかわらずメールクライアントに Mew を使っているが、 Windows にインストールされている Norton Internet SecurityMew でメールサーバーから呼び出したメールのチェックをやってくれ、 そこで SPAM メールや、ウイルス添付ペールをはじいてくれる。 まあ、その分オーバーヘッドが大きいのだが。

Windows と Linux の切り替え時間がゼロ
当然と言えば当然。 Windows 上で VineLinux が動いているので、 切り替えには時間がかからない。 アイコンをクリックすれば、どちらのアプリケーションも動く。 だだし、CPU の速さ、Memory の搭載量、HDD のアクセススピードなどで、動作速度や快適さはかなり変わるはずだ。 使っている ThinkPad X240 は、CPU: Core i7-4600UMemory: 8GB PC3-12800 DDR3LHDD: 1TB/5400rpm であった。 これだけのスペックでも、VineLinux のCPU使用率は、通常でも 20%程度、あっというまに 100%近くに上昇する。 Norton Internet Security も時々、 CPU 使用率の高いアプリケーションとして、「Windows ホストサービス」を挙げてくれる。

Windows のアップデートが背後で動いていると最悪
あいかわらず Windows のアップデートは重い。 しかも、近年のやり方は、ユーザにどのようなアップデートがいくつあるのか、隠して行うのでたちが悪い。 2016年3月10日などは、合計23個のアップデートにぶつかってしまった。 こうなると、もうカーソルすら思うように動いてくれない。

Windows の「スリープ」も時々落ちる。
しばらく Windows を使っていなかったので、よほど Windows は安定しているのだろうと思ったら、 まったくそんなことはなかった。 そんな中でもまいったのは、電車の中で作業していて、 ThinkPad X240 の蓋を閉めたら、スリープしないで落ちていた、という現象。 Windows のログを見てみると、何やら周り中の Wifi の電波をいっぱい受信している内に落ちているもよう。 これは、時々現れる「EMC Storage Connector が動作を停止しました」と無関係ではなかった。 過度のネットワークトラフィックがネットワークの切断やサービス妨害を引き起こす| Lenovo では、問題として認識しているようで、対策としては

1. "LenovoEMC Storage Connector" をアンインストールする。
2. System Updateを実行し重要な更新をすべてダウンロードし、インストールする。
3. 手動で "LenovoEMC Storage Connector" をインストールする(バージョン 1.1.2.26394(英語ページ))。(リンク切れ)

となっていた。これは、アンインストールだ、と思ったが EMC Storage Connector のバージョンを調べたら、1.1.2.26394 だった。 最近は、「EMC Storage Connector が動作を停止しました」というメッセージを見なくなったので一瞬迷ったが、基本的に Lenovo Solution Center だけでも十分に重いので、軽量化のためにもご退場願うことにした(ついでに ThinkVantage Password Manageer もうるさくてしようがないので削除した)。 それにしてもVirtualBox 中の VineLinux のデータは、 ほぼ復活できたのは不幸中の幸いだった。

なんでこんなに繰り返し Windows が落ちるんだ、VineLinux の方がよっぽど安定している、とぶつぶつ。 もちろん、ハードウエアとの関係があるから、 Windows だけが悪いわけではないだろうが。
そういえば、ThinkPad X240 上の Windows 8.1 は、Wifi 接続はかなり優秀だが、 Ethernet Cable での接続に関しては、 その都度ネット接続サービスを再起動しないと正常につなげない状況が1年以上つづいたことを思い出した(今では改善されたが)。 これも調べてみると、 徒然草:Lenovo ThinkPad X240 がネットワークに繋がらない訳 (2014年12月7日) で解決している方がおられました。

Eumeta japonica (o-minomushi)

Windows のプリンタ・ドライバをインストールした時に落ちた
たまたま、別室にある DCP-J940N でもプリントアウトできると便利だと考え、Windows 8.1 用のプリンタ・ドライバをインストールした。 その時、VirtualBox は動いている状態で、ドライバがインストールされた後 VirtualBox を落とそうとしたら、いきなりリブートしてしまった。 これまでも、 VirtualBox が動いている最中に Windows が異常終了してリブートしてしまうことが何度かあったが、 これまでは問題なくブート時の fscheck で回復できていた。 しかし、この時は、仮想マシンが起動しなくなってしまった。 症状としては、Virtualboxで仮想マシンにアクセスできない時の修復方法 - とろテク に似ていたので、新たに仮想マシンを別名で作成して、以前使用していたディスクイメージを選択し、 設定を済ませてから起動、その後で古い仮想マシンを手動で削除して事なきを得た。 慎重にやらないとディスクイメージが消えるので、バックアップを取りながらの作業となった。

その後、ホスト OS とゲスト OS で共有フォルダが Windows 8.1 からしか見えなくなっていることに気がつき、 手動で Linux からマウントすれば済むとも思ったのだが、 あとあと面倒なことになりそうだったので共有フォルダも作り直した。 USB のマウントがいまいち不安定なので、共有フォルダが使えないとかなり苦しい。 再起動を促すようなソフトウェアのインストールをする時には、 VirtualBox を停止しておくのがよい、と再認識した。 なにしろ、「あの困り者のタッチパッド」が微妙な手や指の接近を感知して(?)カーソルのコントロールを横取りしてしまうので、 「再起動の確認」窓がでる場合は要注意だ。

雑感
ノートパソコンは、以前に比べて個人向けコンピュータ市場での主役ではなくなった。 薄型で軽くて高性能なのが当たり前になりつつあるが、 「薄型」にすることでキーボード入力を中心に使っている人には、 使いづらくなった。一日中使っていると、指先から痛みが消えない。 ThinkPad X 220 のキーボードまでは、このような痛みはなかった。 ThinkPad X240 のキーボードにまいった! のところでも書いたように、押下(おうか)した時の沈み込みが少なすぎるし、 キーの表面がつるつるなので、常にキー入力している時に「一定の割合で指が滑っていて」それが疲労感につながっている。 この際、薄型化路線から少し戻って、もう少しキーストロークを深くして欲しい。キーの表面の滑り止めも復活して欲しい。

世の中の流れが「パコパコ・タッチパッドとつるつる薄型キーボード」を主流としているように感じるが、 これって全然使いやすくない。 これからは、キーボードのしっかりした中古ノートパソコンを捜すしかないのかもしれない。 でもそうすると、十分な解像度が欲しいという要望とぶつかってしまう。 かくしていつものように、「困った困った」とつぶやいてしまう。

雑感
ノートパソコンは、以前に比べて個人向けコンピュータ市場での主役ではなくなった。 薄型で軽くて高性能なのが当たり前になりつつあるが、 「薄型」にすることでキーボード入力を中心に使っている人には、 使いづらくなった。一日中使っていると、指先から痛みが消えない。 ThinkPad X 220 のキーボードまでは、このような痛みはなかった。 ThinkPad X240 のキーボードにまいった!| jok's page のところでも書いたように、押下(おうか)した時の沈み込みが少なすぎるし、 キーの表面がつるつるなので、常にキー入力している時に「一定の割合で指が滑っていて」それが疲労感につながっている。 この際、薄型化路線から少し戻って、もう少しキーストロークを深くして欲しい。キーの表面の滑り止めも復活して欲しい。

世の中の流れが「パコパコ・タッチパッドとつるつる薄型キーボード」を主流としているように感じるが、 これって全然使いやすくない。 これからは、キーボードのしっかりした中古ノートパソコンを捜すしかないのかもしれない。 でもそうすると、十分な解像度が欲しいという要望とぶつかってしまう。 かくしていつものように、「困った困った」とつぶやいてしまう。

Eumeta japonica (o-minomushi)

追補 [03/28, 2016]
文句を言っていても仕方がないので、この際、 「パコパコ・パッド」を克服するために、USBマウス(M705 (Logicool) を購入し、 「ぺったんこつるつるキーボード」を克服するために、USB接続のキーボード RealForce 91UBK NG01B0 を購入した。これで格段に使いやすくなったのだが、 まあご覧のようにモバイルではなくなってしまった。 「パコパコ」がマウスのクリック音の「カチカチ」になり、 「ツルツルのポコポコ音」が、 RealForce キーボードの「ドコドコ音」になった。 茶の間に持ち込んで「ドコドコ」やっていると、 「気に触る低音だ」とか言われるようになった。やれやれ。

/var/log/messages には、この2つのディバス情報はまったく表示されない。 VirtualBox (Windows) の「デバイス」-- 「USB」の中では、以下のように見える。

Logitec USB Receiver [2401]
Topre Corperation RealForce Compact [0120]
    

やはりモバイルと使いやすいキーボードの両立のためには、 RealForce のキーボードを採用した ThinkPad に登場してもらうしかないのか、と思ってしまう。


HDD バックアップ・システム刷新  [02/26/2015,03/26]

0. 新しいバックアップシステムが欲しい
1. HD-LB2.0U3/YD の情報収集(2014年5月)
2. ThinkPad X220 Tablet/VineLinux 6.2 を使っての情報収集(2014年9月)
3. fdisk で Linux 専用にしてしまう (2014年9月)
4. ThinkPad X240 と BUFFALO HD-LB2.0U3/YD を USB 2.0 で接続す
5. 雑感
6. VirtualBox その後 (03/26)

0. 新しいバックアップシステムが欲しい
USB 2.0 接続の外付けHDD (Ratoc RS UZEC5X) をバックアップシステムとして使い始めたのは、2007年頃のことだった。 すでに8年目で、そろそろ先が心配なシステムになりつつある。 容量も164GBで、加速度的に増加するファイル容量に対応するのが難しくなりそうな状況だ。 使用頻度からすれば、HDD の寿命にはまだ遠く及ばないはずだが、 ハードウェアの不調というのは予想もつかないところからの劣化が原因となることもあるので、まあ経験的には7, 8年動いていたら、 次期システムを構築しておくのが安全だと思う。

Windows だと、バックアップソフト付きのハードディスクを買ってきて、 インストールして定期的に動かしておしまいなのかもしれない。 しかし、どんなシステムでもハードディスクがクラッシュする可能性はある。 バックアップ・システムのハードディスクすらもクラッシュする可能性がある。 ソフトウエアにはバグはつきものだし、アップデートしていくうちにハードウエアとの相性が悪くなっていくことも起きる。 「いろいろ考えると、もう嫌になってしまう」という気持ちはよく分かる。 しかし、 日常的にコンピュータを使っていてバックアップシステムを作っておかないと、いざという時には痛い目にあう。 これもまた現実だ。

ハードディスクのバックアップの仕方はいろいろある。 Linuxでは かつては unix 流に、パティションごとに cron で定期的にバックアップするというのが定石だった。 私も、一時は高価なソフトウエアを購入して DAT にバックアップを取っていたこともあったし、 RAID を組んでいたこともあった。 RAID は、きちんと動いているときは実に快適だが(当たり前か)、 それはそれで複数の HDD を常備しておくのが結構めんどくさい。 ものぐさな私でもできるのが、サラの HDD を用意して、 お気軽に定期的に rsync するという方法だ。これは、けっこう自分には合っている。

Buffalo HD-LB2.0U3/YD

耐久性のある評判の良い HDD を選べればそれがベストなのだが、 そこまでの時間的余裕はない。 そこで、仕事帰りに量販店に並ぶ HDD から BUFFALO HD-LB2.0U3/YD を購入した。 購入したのは、実は 2014年 5月のこと。2TB のモデルで 15,000円程度だった。 気がつけば HDD もテレビにつないで動画を録画する用途が宣伝文句に大々的にうたわれる時代だ。

私の今回の目的は ThinkPad X240 のハードディスクの Linux 領域だけのバックアップだ。 2TB というのは十分過ぎるくらい。 さらに USB 3.0/2.0 対応製品で、 冷却ファン付きのきちんと設置できるものが欲しいという希望もあった。 後で分かったのだが、この冷却ファン付きモデル(BUFFALO HD-LB2.0U3/YD) はヨドバシ・モデルらしい。 BUFFALO HD-LB2.0U3/YD のおおよそのスペックは BUFFALO HD-LBU3 と同じで、http://buffalo.jp/product/hdd/external/hd-lbu3/ に詳細がある。

1. HD-LB2.0U3/YD の情報収集(2014年5月)
USB 接続なので、 定石通り root コンソールで、 tail -f /var/log/messages してから接続して、 情報を得るところから始めた。 とは言っても、 VirtualBox 4.3.10 内なので、一旦 Windows 8.1 が認識して窓が開くが、 それは閉じてから、鉛筆マークみたいな USB マー クを右クリックして、HD-LBU3 を左クリックし VineLinux に認識させる。 そこでいきなり、次のようにつまずいた。

May 22 23:00:24 localhost kernel: usb 1-1: new high-speed USB device number 7 using ehci_hcd
May 22 23:00:24 localhost kernel: usb 1-1: device descriptor read/64, error 18
May 22 23:00:25 localhost kernel: usb 1-1: device descriptor read/64, error 18
May 22 23:00:25 localhost kernel: usb 1-1: new high-speed USB device number 8 using ehci_hcd
May 22 23:00:25 localhost kernel: usb 1-1: device descriptor read/64, error 18
May 22 23:00:25 localhost kernel: usb 1-1: device descriptor read/64, error 18
May 22 23:00:26 localhost kernel: usb 1-1: new high-speed USB device number 9 using ehci_hcd
May 22 23:00:26 localhost kernel: usb 1-1: Invalid ep0 maxpacket: 9
May 22 23:00:26 localhost kernel: usb 1-1: new high-speed USB device number 10 using ehci_hcd
May 22 23:00:26 localhost kernel: usb 1-1: Invalid ep0 maxpacket: 9
May 22 23:00:26 localhost kernel: hub 1-0:1.0: unable to enumerate USB device on port 1

そこで、device descriptor read/64, error 18 で検索すると、どうやら VirtualBox が現段階で USB 3.0 に対応していないのが原因らしい。
(見つけた記事: Re: USB 3.0 hard drive fails to appear in guest when in 3.0 / Post by Vasily » 15. Apr 2012, 18:14

ようするに BUFFALO HD-LB2.0U3/YDThinkPad X240USB 接続すると、どちらも USB 3.0 に対応しているので USB 3.0 で接続される。 しかし、 VirtualBox 4.3.10USB 3.0 未対応なので、そこでこける。 せっかく買ったのに、とは思ったが VirtualBox もそこそこアップデートをやっているようなので、 そのうちどうにかなるだろうと様子を見ていたが、USB 3.0 対応の話はいっこうに聞こえてこなかった。

2. ThinkPad X220 Tablet/VineLinux 6.2 を使っての情報収集(2014年9月)
9月になって、LCDディスプレーの不具合で休眠中の ThinkPad X220 Tablet に接続してみることにした。 このマシンは、Windows 7VineLinux 6.2 のデュアルブートのマシンで、LCDディスプレーの不具合がなければ、十分に使えるマシンだ(修理代が怖くて修理できないでいる)。 このマシンは、 USB 2.0 のポートしか備えていないので、 BUFFALO HD-LB2.0U3/YD と接続すれば、自動的に USB 2.0 で接続されるはずだ。 そんな風に考えて、見にくいLCDディスプレーと闘いながらログを取ってみた。

以下が、 ThinkPad X220 Tablet/var/log/messages に出力された内容だ。

Sep  3 02:31:20 localhost kernel: usb 2-1.2: new high-speed USB device number 4 using ehci_hcd
Sep  3 02:31:20 localhost kernel: usb 2-1.2: New USB device found, idVendor=0411, idProduct=0249
Sep  3 02:31:20 localhost kernel: usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Sep  3 02:31:20 localhost kernel: usb 2-1.2: Product: HD-LBU3
Sep  3 02:31:20 localhost kernel: usb 2-1.2: Manufacturer: BUFFALO
Sep  3 02:31:20 localhost kernel: usb 2-1.2: SerialNumber: 01056000xxxx
Sep  3 02:31:20 localhost kernel: scsi6 : usb-storage 2-1.2:1.0
Sep  3 02:31:21 localhost kernel: scsi 6:0:0:0: Direct-Access     BUFFALO  External HDD     0001 PQ: 0 ANSI: 6
Sep  3 02:31:21 localhost kernel: sd 6:0:0:0: Attached scsi generic sg1 type 0
Sep  3 02:31:21 localhost kernel: sd 6:0:0:0: [sdb] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
Sep  3 02:31:21 localhost kernel: sd 6:0:0:0: [sdb] Write Protect is off
Sep  3 02:31:21 localhost kernel: sd 6:0:0:0: [sdb] No Caching mode page found
Sep  3 02:31:21 localhost kernel: sd 6:0:0:0: [sdb] Assuming drive cache: write through
Sep  3 02:31:21 localhost kernel: sd 6:0:0:0: [sdb] No Caching mode page found
Sep  3 02:31:21 localhost kernel: sd 6:0:0:0: [sdb] Assuming drive cache: write through
Sep  3 02:31:21 localhost kernel: sdb: sdb1
Sep  3 02:31:21 localhost kernel: sd 6:0:0:0: [sdb] No Caching mode page found
Sep  3 02:31:21 localhost kernel: sd 6:0:0:0: [sdb] Assuming drive cache: write through
Sep  3 02:31:21 localhost kernel: sd 6:0:0:0: [sdb] Attached SCSI disk
Sep  3 02:31:22 localhost kernel: NTFS driver 2.1.30 [Flags: R/W MODULE].
Sep  3 02:31:22 localhost kernel: NTFS volume version 3.1.
Sep  3 02:31:22 localhost kernel: NTFS-fs error (device sdb1): load_system_files(): $LogFile is not clean.  
                                  Mounting read-only.  Mount in Windows.
(SerialNumber の下位 4桁はマスク)

ちゃんと接続できているが、残念ながら VineLinux 6.2NTFS driver 2.1.30 では、read-only でしかマウントできないようだ。

ついでに、df でファイルシステムのディスク容量が分かるかどうか見てみると:

[root@localhost hoge]# df -h
ファイルシステム    サイズ  使用  残り 使用% マウント位置
rootfs                108G   91G   12G  90% /
/dev/root             108G   91G   12G  90% /
/dev                  3.9G  620K  3.9G   1% /dev
none                  3.9G   84K  3.9G   1% /dev/shm

/dev/sdb1             1.9T  492M  1.9T   1% /media/HD-LBU3

となっていた。ということは、 /dev/sdb1/media/HD-LBU3 にマウントされているということなので、 中身も見えるはずと思い覗いてみた。 Autorun.inf が2012年ということは、このあたりの時期に開発されたものなのだろう。

[root@localhost hoge]# ls -al /media/HD-LBU3/
合計 260592
dr-x------ 1 hoge hoge       4096  5月 22 22:59 ./
drwxr-xr-x 3 root root       4096  9月  3 02:31 ../
-r-------- 1 hoge hoge         31 10月  4  2012 Autorun.inf
-r-------- 2 hoge hoge  266776650  9月 30  2013 DriveNavi.exe
-r-------- 1 hoge hoge      56556 12月  9  2010 Icon1.ico
dr-x------ 1 hoge hoge          0  4月  7 15:56 Mac/
dr-x------ 1 hoge hoge          0  5月 22 22:59 System Volume Information/

3. fdisk で Linux 専用にしてしまう (2014年9月)
どうせ VineLinux 専用のバックアップシステムにしてしまう予定なので、 この際 fdiskLinux 専用にしてしまい、 ファイルシステムも ext4 にしてしまうことにした。

[root@localhost hoge]# fdisk /dev/sdb
コマンド (m でヘルプ): p
Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
ヘッド 255, セクタ 63, シリンダ 243201, 合計 3907029168 セクタ
Units = セクタ数 of 1 * 512 = 512 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク識別子: 0x2c0b4c41

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sdb1              64  3907029119  1953514528    7  HPFS/NTFS/exFAT

では、このパティションを削除して、Linux のパティションを 1つ作成してしまいます。 (色気がでて、一瞬別のパティションも欲しくなる...。)

コマンド (m でヘルプ): d
選択したパーティション 1
コマンド (m でヘルプ): n
コマンドアクション
   e   拡張
   p   基本パーティション (1-4)
p
パーティション番号 (1-4, 初期値 1): 1
最初 セクタ (2048-3907029167, 初期値 2048): 2048
Last セクタ, +セクタ数 or +size{K,M,G} (2048-3907029167, 初期値 3907029167): 
初期値 3907029167 を使います
コマンド (m でヘルプ): p

Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
ヘッド 255, セクタ 63, シリンダ 243201, 合計 3907029168 セクタ
Units = セクタ数 of 1 * 512 = 512 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク識別子: 0x2c0b4c41

デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sdb1            2048  3907029167  1953513560   83  Linux

コマンド (m でヘルプ): w
パーティションテーブルは変更されました!

ioctl() を呼び出してパーティションテーブルを再読込みします。

警告: パーティションテーブルの再読込みがエラー 16 で失敗しました: デバイスもしくはリソースがビジー状態です。
カーネルはまだ古いテーブルを使っています。新しいテーブルは
次回リブート時か、partprobe(8)またはkpartx(8)を実行した後に
使えるようになるでしょう
ディスクを同期しています。

ちょっと不気味なメッセージなので、もう一度確認しておく。

[root@localhost hoge]# fdisk /dev/sdb

コマンド (m でヘルプ): p

Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
ヘッド 81, セクタ 63, シリンダ 765633, 合計 3907029168 セクタ
Units = セクタ数 of 1 * 512 = 512 バイト
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスク識別子: 0x2c0b4c41

デバイス ブート      始点        終点     ブロック  Id  システム
/dev/sdb1            2048  3907029167  1953513560   83  Linux

さて、それでは umount してから、 アンマウントされていることを df で確認して、 mkfs.ext4 を使いファイルタイプを ext4 にしてしまいます。

[root@localhost hoge]# umount /dev/sdb1
[root@localhost hoge]# df -h
ファイルシステム    サイズ  使用  残り 使用% マウント位置
rootfs                108G   91G   12G  90% /
/dev/root             108G   91G   12G  90% /
/dev                  3.9G  616K  3.9G   1% /dev
none                  3.9G   84K  3.9G   1% /dev/shm
[root@localhost hoge]# mkfs.ext4 /dev/sdb1
mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
122101760 inodes, 488378632 blocks
24418931 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
14905 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
	4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 
	102400000, 214990848

Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

これで作業終了。と言っても、ThinkPad X220 Tablet で これから使う訳ではないので、 とりあえず手動でマウント・ポイントを作成して(/mnt/HD_LBU3) 、 マウント/アンマウントができるかどうか確認しておいた(# mount /dev/sdb1 /mnt/HD-LBU3)。

4. ThinkPad X240 と BUFFALO HD-LB2.0U3/YD を USB 2.0 で接続する
BUFFALO HD-LB2.0U3/YD の側の準備はできたが、 ThinkPad X240 とこのまま USB で接続すると、 例によって Windows 8.1 が勝手に USB 3.0 で接続してしまい、VirtualBox がマウントできずにエラー・メッセージを吐くという状況になってしまう。 諦めかけていた時に、ふと頭の中をよぎったのは USB 2.0 にダウングレードすればいいんじゃないか、というアイデアだ。 USB 2.0 の延長ケーブルを間に入れるだけでよいのではないか。 結局実行に移したのは、すでに10月に入った頃だった。

Buffalo USB2.0 Cable/ BSUAASM2058K

購入したのは Buffalo USB2.0 (0.5m) の延長コード BSUAASM205BK(350円で購入)。 また Buffalo 製品になってしまったのは、単なる偶然。 A-Type オスと A-Type メスを接続するもの。 ようするに、 BUFFALO HD-LBU3YDThinkPad X240 の方も、 USB 3.0 のポートは、USB 2.0 でも動くのだ(下位互換性がある)。 だから、 USB 2.0 ←→ USB 2.0 のケーブルを入れると、どちらからも USB 2.0 に見えるはずだ。

ということで、このケーブルを間に入れて、 VirtualBox 4.3.12 の中の VineLinux 6.2root コンソールで、 tail -f /var/log/messages してみると、以下のようなメッセージが見えた。

Oct 22 21:23:02 localhost kernel: usb 1-1: new high-speed USB device number 2 using ehci_hcd
Oct 22 21:23:02 localhost kernel: usb 1-1: New USB device found, idVendor=0411, idProduct=0249
Oct 22 21:23:02 localhost kernel: usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Oct 22 21:23:02 localhost kernel: usb 1-1: Product: HD-LBU3
Oct 22 21:23:02 localhost kernel: usb 1-1: Manufacturer: BUFFALO
Oct 22 21:23:02 localhost kernel: usb 1-1: SerialNumber: 01056000xxxx
Oct 22 21:23:02 localhost kernel: scsi2 : usb-storage 1-1:1.0
Oct 22 21:23:03 localhost kernel: scsi 2:0:0:0: Direct-Access     BUFFALO  External HDD     0001 PQ: 0 ANSI: 6
Oct 22 21:23:03 localhost kernel: sd 2:0:0:0: Attached scsi generic sg2 type 0
Oct 22 21:23:09 localhost kernel: sd 2:0:0:0: [sdb] Spinning up disk....ready
Oct 22 21:23:09 localhost kernel: sd 2:0:0:0: [sdb] 3907029168 512-byte logical blocks: (2.00 TB/1.81 TiB)
Oct 22 21:23:09 localhost kernel: sd 2:0:0:0: [sdb] Write Protect is off
Oct 22 21:23:09 localhost kernel: sd 2:0:0:0: [sdb] No Caching mode page found
Oct 22 21:23:09 localhost kernel: sd 2:0:0:0: [sdb] Assuming drive cache: write through
Oct 22 21:23:09 localhost kernel: sd 2:0:0:0: [sdb] No Caching mode page found
Oct 22 21:23:09 localhost kernel: sd 2:0:0:0: [sdb] Assuming drive cache: write through
Oct 22 21:23:09 localhost kernel: sdb: sdb1
Oct 22 21:23:09 localhost kernel: sd 2:0:0:0: [sdb] No Caching mode page found
Oct 22 21:23:09 localhost kernel: sd 2:0:0:0: [sdb] Assuming drive cache: write through
Oct 22 21:23:09 localhost kernel: sd 2:0:0:0: [sdb] Attached SCSI disk
Oct 22 21:23:12 localhost kernel: EXT4-fs (sdb1): mounted filesystem with ordered data mode. Opts: (null)
(SerialNumber の下位 4桁はマスク)
A window for Buffalo HD-LBU3YD in VineLinux 6.2 in VertualBox 4.3.20 in Windows 8.1

なんとか認識したようで、SCSI disk としてアクセスできる状態になっている。 USB ケーブルを挿した時点で、 HD-LB2.0U3/YD が回りだす(本体にはスイッチがない)。 すでに、ファイルシステムEXT4Windows 8.1 からは 見えないので、HD-LBU3 という情報だけが、 VirtualBoxUSBアイコンを右クリックすることで見える(Mouse-on-cursor でも可)。 HD-LBU3 の上を左クリックをしてしばし待つことで、オートマウントされる。

/var/log/messages には上記のようなログが出力され、 画面上では、左のような新しい窓が開き HD-LB2.0U3/YD のファイルシステムの中が見える。 さあ、あとは、rsync で適当に(もちろん、 「必要な部分を適切に」という意味)バックアップを取ればOKだ。

2015年2月某日、そろそろやろうかと思った矢先、 /var/log/messages には、不気味なメッセージが5秒おきに延々と出ていた。5秒おきというのはディスクの肥やしだ。

...
localhost kernel: 00:51:44.201850 vminfo   Error: ConsoleKit: unable to lookup user name for uid=500
localhost kernel: 00:51:49.205679 vminfo   Error: ConsoleKit: unable to lookup user name for uid=500
localhost kernel: 00:51:54.209131 vminfo   Error: ConsoleKit: unable to lookup user name for uid=500
localhost kernel: 00:51:59.213672 vminfo   Error: ConsoleKit: unable to lookup user name for uid=500
...

過去のログを見た所、どうやら2015年2月19日にアップデート・インストールした VirtualBox 4.3.22 が問題のようにも見える。 実際、この版にしてから、イーサネットケーブルを挿しても GuestVineLinux 6.2 でうまくネットにつながらない状況になっていた。 さらに以下のログが示すように、HD-LB2.0U3/YDGuestVineLinux 6.2 がうまく認識できなくなっていた。

Feb 24 22:10:11 localhost kernel: usb 1-1: new high-speed USB device number 3 using ehci_hcd
Feb 24 22:10:16 localhost kernel: usb 1-1: unable to read config index 0 descriptor/all
Feb 24 22:10:16 localhost kernel: usb 1-1: can't read configurations, error -110
Feb 24 22:10:16 localhost kernel: hub 1-0:1.0: unable to enumerate USB device on port 1

しようがなく、 VirtualBox 4.3.20 にダウングレード・インストールすることにした。

今回は、Download_Old_Builds_4.3_Oracle VM VirtualBox からWindows用の VirtualBox 4.3.20 (released Nov 21st 2014) の本体とExtension Pack All Platforms をダウンロードし、 それぞれのダウンロードされたファイルをエクスプローラ上でクリックしてインストールするという方法をとった。 ほとんど何も考えずにダウングレードできるが、 その時々で、最新のアップデートがあるという窓が開くので要注意だ (OK をクリックするのは大丈夫、リンクをクリックするとアップデートへ行ってしまう)。

これで無事に、新しい Linux 専用のバックアップ ハードディスク(2TB)が稼働するようになった。 しかし、 /var/log/messages を見ると、 例のゴミログが出続けているではないか! これ以上ダウングレードするのもなんなので、ネットで検索してみると、
# service vboxadd-service stop
でとりあえず止まるという情報があった。試してみると、ログは確かに止まる。 ただし、root コンソールには
# Stopping VirtualBox Guest Addition service ...fail!
というエラーメッセージが出力される。ログには、以下のように出る。

localhost kernel: 00:52:02.805611 control  Guest control service stopped
localhost kernel: 00:52:02.811941 control  Guest control worker returned with rc=VINF_SUCCESS

Guest control service が止まるが、 Guest control worker は復活するようなので、まあ大丈夫なのだろう。 アップデートも、時としては非常に怖い。 VirtualBox のダウングレードで直らなかったとすると、 その期間に行った VineLinux 6.2 のアップデートが関係しているかもしれない。 2015年2月19日に VirtualBox 4.3.22 にアップデートしたが、 そのあたりといえば、2月14日あたりに xorg-x11-server-Xorg, xorg-x11-server-common, dbus-1.4.1-3vl6, dbus-devel-1.4.1-3vl6, dbus-x11-1.4.1-3vl6 のアップデートがあったので、それとの関係があるのかもしれない。

5. 雑感
結果としてみると、2TBHD-LB2.0U3/YD も、USB 2.0 にダウングレードして接続し、 VirtualBox4.3.22 から 4.3.20 にダウングレードしてしまった。 いったい、この製品の USB 3.0VirtualBox で体感できるのはいつの日のことになるのだろうか。 それまで、 VirtualBox はちゃんと進化を続けてくれるだろうか? 今の状況から考えると、あまり期待できないかもしれない。

ちなみに、製品紹介の Buffalo のホームページには、こんな風に書いてあった。 「USB3.0の最大転送速度(規格値)は5Gbps。従来USB2.0の最大転送速度480Mbps(規格値)の約10倍以上です。本製品はUSB3.0を搭載し、高速な転送性能を実現しています。」

次の7,8年後、ハードディスクはペタ(P)の世界に入っているかもしれないし、 USB も新しい規格(4.0とか)になっているかもしれない。 コンピュータで扱えるデータがますます巨大になり処理速度も高速化することは、 間違いなく科学技術の進歩につながる。しかし、 もう一方で、プライバシーはますます危うくなり、 些細なところから膨大なデータが流出する危険性が高まる。 実は、コンピュータ技術の進歩は、人間をますます不安にし、不幸にする可能性を広げているだけかもしれない。

6. VirtualBox その後(03/26)
VirtualBox 4.3.22 (released 2015-02-12) をインストールしてみたら、 とても不調になって、VirtualBox 4.3.20 にダウングレードして使っていたが、どうにも調子が悪かった。 リブートすると、相変わらず Error: ConsoleKit: unable to lookup user name がログに出続けるので、 # service vboxadd-service stop をする。 気がつくと、ゲストの VineLinux 6.2 のクロックが大幅に遅れる。 これは厄介な問題だ。やはりちゃんと Guest Additions を動かさねば、と思っている内に、 VirtualBox 4.3.24 (released 2015-03-02)VirtualBox 4.3.26 (released 2015-03-16) が立て続けに出て、様子見をしていたのだが、VirtualBox 4.3.26Oracle_VM_VirtualBox_Extension_Pack-4.3.26-98988-vbox-expack をインストールし、Guest Additions のインストール (DKMS のビルドとインストール)を完了してリブートしたら、 ようやく安定して動くようになった。あの ConsoleKit からのエラーログも消えてすっきり、クロックも正常に同期するようになりようやくほっと一息。


そんなばかな: AC Adapter の突然死!  [12/20/2014]

ThinkPad X240 にもようやく慣れてきて、Windows 8.1 上の VirtualBox の中の Vine Linux 6.2 を使う毎日だが、 いろいろと不満がある(それはそれ、また別にまとめて書く予定)。 あらゆる仕事を1つのノートパソコンに集中するととても便利な反面、 いざという時のリスクも大きい。だからバックアップ体制がとても重要だ。 そんな中で突然襲ってきたのが、「AC Adapter の突然死」だ。

いままで、AC Adapter は、必需品として複数用意して移動先でも楽に使えるようにしていたが、 ThinkPad X240 の AC Adapter はちょっと変わっていた。 何気なく見て、これは USB コネクタを使って、 AC 電源を供給するようになったんだ、 と勝手に思っていた(これが第1の間違い)。

AC/DC ADAPTER X240

昨今はノートパソコンのユーザー用に複数のサードパーティが、 互換性のある AC Adapter を発売している。 売り場でチェックしてみたのだが、このUSB(ぽい)電源コネクタの形状を持つ製品がなかったので、 純正の AC Adapter を買うまでもないだろう、 と考えてしまった(これが第2の間違い)。

そして、突然その日がやってきた。 深夜に帰宅して、ThinkPad 240 にいつものよにう AC Adapter を接続して使い始めたのだが、バッテリーアイコンが「バッテリー使用中」 のものから「AC電源から充電中」のアイコンに変わらないことに気がついた。 急遽、 AC Adapter を抜き差ししてみても変わらない。 ケーブルの断線の可能性もチェックしてみたが、 異常は見つからない。

そんな状態ではあったが、データのバックアップはいつものようにしなければと思って、rsync していたら、 途中で VirtualBox がフリーズしてしまった。 こうなると、中で動いていた Vine Linux 6.2 もフリーズ状態。 涙を飲んで VirtualBox をリセットしてバッテリーの状態を見ると、すでに残りは20%を切っている。 しようがなく、shutdown して、ディスクトップ機で ThinkPad 240 の保守点検マニュアルをネットからダウンロードして、 AC Adapter の点検項目を調べてみた。 ダウンロードしたのは、「ハードウェア保守マニュアル ThinkPad X240」で、ファイル名は、sp40a26001_j.pdf だった。 こういうマニュアルが手に入るところが、ThinkPad シリーズのすごいところ。 さらに、細かいパーツまで保守部品として個人でも購入できてしまうのもすごい。

「ハードウェア保守マニュアル ThinkPad X240」の第 3章全般の検査、P.27 には、 「AC電源アダプターの確認」という部分があり、プラグの出力電圧を測定の仕方が図と表で示されている。 この図を見て、「あっ、USBコネクタじゃなかったんだ」と遅まきながら気がついた。 ああ、なんとバカだったことか。これは、ただの電源コネクタじゃないか、 丸型の電源コネクタをこんな形に変えただけなんだ、と再認識。

a flat-type connector of AC/DC ADAPTER/X240

テスターを持ちだして、この保守マニュアルに沿って、電圧を測定してみると 20V あるはずのところ、2, 3 V あたりでピクピク。 あー、AC Adapter が死んでいることを確認してしまった。 これは、私にとって人生で初めての経験です。 ネコにかじられたケーブルも、こんな状態になったことはありません。 今回、死んでしまったのは、lenovo AC/DC ADAPTER MODEL: ADLX45NDC2A、 出力は、20V, 2.25A 。 うーん、なんで死んでしまったのだろう…。

それにしても、なんで電源プラグ形式をこんな USB みたいな形状にしてしまったのだろうか? どうやら ThinkPad X1 Carbon からこの形状にしたようだ。 本体を薄くするために、従来の丸い電源プラグでは不利だと判断したのかもしれない。 この電源プラグの形状のせいで、手持ちの AC Adapter が使えない。これは、本当に迷惑な話だ(プンプン!)。 変換ケーブルがそこらへんで簡単に入手できるようになっているのならいいのだが、 2014年12月現在で、そんなことはない。

Cable Adapter by VicTsing, X0008PA3LX

ThinkPad X240, AC Adapter で検索しているうちに、 ようやく見つけたのが、
VicTsing ケーブルアダプタ X0008PA3LXVicTsing ケーブルアダプタ X0008PF8IL

どちらも並行輸入品だそうで、販売は、AlishellAmazon 経由で購入した。 どちらも、ThinkPad X1 Carbon 用となっている。 結果から言うと、 VicTsing ケーブルアダプタ X0008PA3LX だけでよかったのだが、従来の AC Adapter のオスをさして、USBもどき電源プラグに変換できる短いケーブルだ。 まる一日、ノートパソコンが使えずに冷や汗だったが、 ケーブルが一日で届いたのでブランクは一日ですんだ。 ノートパソコンをメインに使うには、やはり AC Adapter は複数ないといけません。 そして、HDD のバックアップもちゃんとやらねばなりません。

Windows 8.1 上でフリーズした VirtualBox をリセットしてしまったのが今となっては気がかり。果たして、バックアップ用の HDD の中身は無事だろうか...。


Windows 8.1 の中の VirtualBox の中の Vine Linux 6.2 (ThinkPad X240)  [04/30/2014]

ThinkPad X220 TabletLCD パネルの不調から、 修理に10万円以上かかることがほぼ確実になったことから、 30%引きで ThinkPad X-240 を購入することになった(およそ15万円)。 Tablet には懲りたので、220 → 230 → 240 と進化したものを選んだので、 ハードウエアの性能的にはかなり満足のいくものだが、 キーボードが使いづらくなり、「タッチパッド」が「パコパコ・パッド」(パコパコ音を立てるのでこのように呼ばれている) になってしまい、かなり参ってしまった。 「パコパコ・パッド」で左クリック、右クリックのアクションをするたびにパコパコ、 パコパコ。 中央のクリック部もなくなったので、Unix 系のコピー操作ができなくなってしまった。

基本的に、アクションとして左クリックも右クリックもできるではないか、 という開発者?の声が聞こえてくるが、 「パコパコ・パッド」ではパッド全体が一枚板で下がって接地するのに深さがありすぎるのだ。 「パコパコ」音がするだけでなく、 パッドを接地させるためには多くの時間がかかるため、ダブルクリックは極端に難しくなる。 林檎の真似だ、という人もいるが、本当のところは分からない。 軽くタッチしてダブルクリックができなくなったショックは大きい。

新しいハードウェアで、VineLinux 6.2 が問題なく動くとは考えにくい。 実際に、ネットでちょっと調べてみると、「パコパコ・パッド」は暴走するようだ。 「パコパコ・パッド」の調整に関してはすでに Debian 系で ワークアラウンドが公表されているが、ネットワーク・カードやサスペンド、ハイバネーションも不安だ。

そこで、時間に追われている人間としては、 Windows 8.1 の中に VirtualBox を入れて、 そこに Vine Linux 6.2 を入れることを考えた。 基本的には、うまくいったと言える。

Vine Linux 6.2 in VirtualBox/Windows 8.1

今回は、VirtualBoxで作成した仮想マシンにLinuxを導入してみよう(1)VirtualBoxで作成した仮想マシンにLinuxを導入してみよう(2) を参考にした。

まずは、Windows 8.1 のバックアップから。 これは、以前からの DVD にバックアップシステムを入れるという発想から転換し、16GB以上の USBメモリにバックアップシステムを入れる、 という方式になった。リカバリーディスクから、USB回復ドライブへの変更で、 これはなかなかよい。USB3.0のメモリー・スティックを利用してリカバリーができるというのはうれしい。

以下、簡単に VirtualBox のインストールと、 Vine Linux 6.2 (Haut Bailly) のインストールと設定に関してメモをしておく。

今回のインストールにあたって使用している ThinkPad X240 のおおまかな仕様は以下の通り。
CPU: Core i7-4600U
Memory: 8GB PC3-12800 DDR3L
HDD: 1TB/5400rpm
Graphics: Intel HD Graphics 4400
Display: 12.5' FDH (1920x1080)
英語キーボード
ダウングレード権を行使してWindows 7 を入れれば、 デュアルブートも簡単だったのだが、そうすると有料なので、 しかたなく Windows 8.1 Pro (64bit) を入れてある。

1.  VirtualBox のインストール
https://www.virtualbox.org/wiki/Downloads から、今回は、
VirtualBox 4.3.10 for Windows hosts -> x86/amd64VirtualBox 4.3.10 Oracle VM VirtualBox Extension Pack -> All supported platforms
をダウンロードしてインストール。

2.  仮想マシンの作成
1. Oracle VM VirtualBoxを起動させ、 メニューのファイル→環境設定を開く。拡張機能を選び、追加ボタンをクリック。
2. Oracle VM VirtualBox Extension Pack が見えるので、それを選択してインストール。
(今回ダウンロードした 4.3.10 では、ホストキーは右のCtrlキーになっていたので変更しなかった。)
3.   仮想マシンの作成
3.1. 基本設定
名前:VineLinux
タイプ:Linux
バージョン:Other Linux (32bit) 3.2. メモリーサイズ
1024MB (もっと大きくしても良かったかも)
3.3. 仮想ハードドライブを作成する、にチェック。
3.4. File type は、VDI とする。
3.5. 物理ドライブにあるストレージを可変にするか固定にするか?
迷った末に、スピード重視の固定にした。
3.6. 仮想ドライブの場所とサイズ。
200 GB とした。
これで仮想マシンの設定は終わりだが、仮想ハードドライブのフォーマット(?) にしばし待たされる。
4.   クリップボードの設定
設定ボタンをおして、一般→高度のタブを選択、クリップボードの共有を双方向に設定する。
5.   プロセッサ数の設定
システムの項目からプロセッサータブを選択し、プロセッサ数を設定。  「物理プロセッサの数の半分がおすすめ」と知恵袋では助言していたが、 選択できないので、1 CPU となった。 残念。
6.   ディスプレーのメモリ
128 MB (本当に?)
7.   Vine Linux のインストール
Vine62-DVD-i686.iso32bit なので、これをダウンロードしてインストール。 インストール途中でも、カーソルの移動は可能なので、 特に難しくはない。
「ディバイスsdaのパーティションテーブルが壊れているので初期化しますか?」 と尋ねられるが、基本的に仮想マシン上なので、大丈夫。初期化しちゃいます。 (システムのすべてのLinuxパーティションを削除、を選択)
GRUB bootloader/dev/sda 上にインストール してしまう。
後は適当に。
8.   Guest Addtions のインストール
 ゲストOSの上の「ディバイス」をクリックし、一番下にある「Guest AdditionsのCDイメージを挿入」を選択。 仮想 CD・DVDドライブにインストーラーの入ったイメージが挿入される。あとは、オートランを実行するかどうか尋ねてくるのでOKとして実行する。
最初は、このゲストOS上の「デバイス」 がどこにあるのか分からずに探してしまった。これは、VineLinux[実行中]Oracle VM VirtualBox という外側の窓の上に、左から「仮想マシン ビュー デバイス ヘルプ」のようなタスクバーが並んでいて、 その中の「デバイス」のことだった。
9.   vboxsf というグループに自分(Login-ID) を所属させる
Vine Linux 2.6 で、自分IDが hogehoge なら
  # usermod -g vboxsf hogehoge とする。
10.   共有フォルダーの設定
自分の Login-ID が hogehoge なら、
C:¥Users¥hogehoge¥VMshare の「自動マウント」にチェックを入れる。
これで基本的に終わり。

後は、自分で普段使っているバックアップディスクのデータをリストアすれば終了。
と簡単に言ったが、ここで80 GB 程度のバックアップ・データを戻す作業に思いのほか時間がかかってしまった。 原因は、バックアップ用に長年使っていたHDDのアクセス速度が遅いから。 気がついたら、5インチの10年ほど昔のHDDなのだ。 普段は、rsync で差分バックアップなのでたいした時間はかからないのだが、 全部のデータをコピーさせるのには、時間がかかりすぎる。

うーん、今度は、バックアップ用のHDDシステムを新しくしなければならない。 もう、今のシステムに入れられるHDDは販売していない。困ったものだ。

ほとんどシームレスにマウスを動かすだけでLinuxWindows を行き来できるのはすごい、と思う。 VMWare と同様に、スピード的にはほぼ支障がない、と言ってよいだろう。 ネットワークも WiFi を含めてどちらからも使えるし、 Vine Linux 上で作業していても、 蓋を閉めると Windows 8.1 がスリープしてくれるので、 VirtualBox も寝てくれる。

しばらくはこの環境で暮らすことになりそうだ。 それにしても、Windows 8.1 は使いづらい。 タブレットの UI とノートパソコンのUIを一緒にする必要は、ほとんどなかったと思う。 えっ、これからはノートパソコンがなくなるって? ご冗談でしょ、タブレットでできる仕事は限られていますよ。

LCDパネル不良:横じまが縦に発生(ThinkPad X220 Tablet)  [03/01/2014]

ある日、朝いつものように ThinkPad X220 Tablet を開いたら、 今まで見たこともない横じまが縦にベルト状になって表示されていた。 この横じまは、幅が4cm 位でチラチラする。 まずは電源ケーブルを疑い、 画面に模様が入る という Lenovo のサイトの情報をもとに検証した結果、 これはやはり LCD パネルのハードが故障したのかな、と思った。

Google displayed in the defected LCD(ThinkPad X220 Tablet) Fonts are distorted in the defected LCD (ThinkPad X220 Tablet)

いろいろと観察している内に、 LCD パネルを前後に動かすと模様が濃くなったり薄くなったりすることに気がついた。 さらに、うまくLCD パネルを後ろから押してやると、一時的にかなり改善する。 この縞模様は、(1) 出る位置がいつも同じであること、 (2) 画面をキャプチャーしても何も映らないことから、もう決定的に LCD パネルの不良であることを確信した。 実際に、幅広い縦縞が画面に表示されたり、表示ブロックがかけたりする - ThinkPad T400s, T410s, T410si という報告も Lenovo のサイトにあった。

それにしても、2年弱でこの状況というのは、信じがたい。 今更ながら、3年保証、あるいは、長期保証という選択肢があったのを思い出して、苦々しい思いが脳裏をかすめる。 後の祭りですな。

泣いてばかりいれないので、なんとかしなければ、 と ThinkFactory (シンク ファクトリー) にお邪魔して実機を見せたら、「タブレット型のLCDは修理できない」とのこと。 マザーボードが故障しても縞模様がでることがあるそうだが、 その場合には、出る場所が変化するのが特徴だそうだ。 さらに、「タブレット型のLCD」不良で苦労している方が他にもいるという情報を得た。 「タブレット型のLCD」不良は、結局 Lenovo のメーカー修理に出すしかなさそうだ。 うーん、そうすると時間もお金もかかる...。困った...。

そもそも、「くるっと回してタブレット」的な使い方をしたのは、最初の内だけだった。 タブレットにも使えるというノートパソコンを買ったのが、そもそも間違いだった、と後悔しきりだ。

とりあえず対策として、何ができるか考えた。 まず、LCD パネルを使わないという選択肢がある。 しばらく前に、御蔵入りになっていた FlexScan L550-R を引っ張りだしてきて、これをつないでみた。 Vine Linux 6.2 (Haut Bailly) でも、Fn + F7 で画面出力が変えられるので多分だいじょうぶだろうと試してみた。

L550-R/EIZO is restored, connected with the ThinkPad X220 Tablet) Two displays connected to the ThinkPad X220 Tablet(,the defected LCD is not used).

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

結果は見事に成功(あたりまえだが)。 ただ、テーブルの上を見事に display が占拠し、 これまでのように気軽に持ち運びできるノートパソコンではなくなってしまった(涙)。

持ち運ぶのは、ちらついたままの ThinkPad X220 Tablet か、 それとも、引退した ThinkPad T60 かのどちらかだ。 ThinkPad T60 を復活させるためには、 死んでしまっているバッテリーをまず復活させねばならない。 純正の ThinkPad バッテリー 41+ (6セル) は¥16,229 (税込)もするので、 「価格破壊研究所」を選択して注文した。私の ThinkPad T60 は、 タッチパネルが動かなくなっているが、これはトラックポイントが動くので問題ない。 LCD パネルも問題があったが、 しばらく休んでいたので多分なんとか復活できると予想している。

3ヶ月程度は、この状態(「ThinkPad X220 Tablet +外部ディスプレィ」+ 「復活 ThinkPad T60」)でしのごうと決心した。 ああ、それにしても、タブレット型のLCD を選ぶべきではなかった、 と今更ながら後悔。 ThinkPad X220 Tablet で、 ストレスなく LaTeX の200ページ余りの原稿のコンパイルができていたので、実に惜しい。 多額のお金と時間をかけて修理するべきか否か、悩みは尽きない。


さよなら HL-5070DN、こんにちは HL-3170CDW  [1/19/2014]

BROTHER HL-5070DN は、 2003年11月13日にメーカー希望小売価格(税別)79,800円で発売されたポストスクリプト互換レーザープリンタで、 気がついたらもうかれこれ10年も使っていた。 ペーパーハンドリングもよく、Linux ドライバも(その時々、ドライバの相性があって使い勝手が変化したが、一応)ちゃんと動いていた。 しかし、今回仕事で大量のプリントアウトをしていた時に不調になり(弱り目に祟り目)、 ついに急遽買い替えることになった。 結果的には、 BROTHER HL-3170CDW というカラー・レーザープリンタを19,000円で購入。 この値段でカラー・レーザーというのは、やはり隔世の感だ。 カラーでなくても2桁違った時代があった。今回は、PostScript互換にはこだわらなかった。

世の中、気がついてみるとインクジェット・プリンタが多数派になってしまった。 しかも、複合機が急速に勢力を伸ばし、近年は A3 が印刷できるとか、 小型化した機器などもある。実際に、自宅には2台のインクジェット・プリンタも稼働中だが、 インクの消費はかなり多いし、普通紙でのプリントアウトができないことが不満だ。 その点、レーザープリンタは、普通の安いコピー用紙で十分に印刷でき、トナーの寿命はかなり長い。 コストパフォーマンスを考えたら、現時点でも私はレーザープリンターを選択する。 (近年はインクジェット・プリンタのコストパフォーマンスがよくなってきてはいるが、まだまだだと思う。)

HL-3070CDW 4 Tonners

左の画像は、 BROTHER HL-3170CDW の上部を開けた時に見える4本のトナー。 でかいトナーが4本並んでいるのは、ちょっとびっくり。

10年前の BROTHER HL-5070DN では、 どれくらいのランニングコストなのか示されていなかったが、 BROTHER HL-3170CDW は、 カラー 17.3円/枚、モノクロ 3.7円/枚だそうだ。 純正のトナーを使って特定状況で計算したのだろうと思うが、 一応の目安にはなるかもしれない。 まあ、プリンタのコストパフォーマンスとしては、 現状では良い方だろう。 上位機種の HL-4570CDWT では、カラー 12.8円/枚、モノクロ 2.6円/枚でもっと安いが、 本体価格や消費電力を考えるとコストパフォーマンス的には必ずしも高くはない、と思う。

そもそも、カラー・レーザープリンタを買い渋っていた1つの理由は、 その図体の大きさと消費電力だった。 仕事場で使っているレンタルの DocuPrint C2110 では、 スリープ状態からプリント・ジョブ処理に入る時に一瞬、部屋の蛍光灯がまばたく。 この DocuPrint C2110 は、 トナーが小さく比較的早くに交替を迫られる。

さて、カタログでは、 2003年発売の BROTHER HL-5070DN には、「装置寿命:20万枚または5年間」と書いてあった。 今回の2013年発売の BROTHER HL-3170CDW は、「装置寿命:10万枚または5年間」となっている。おや。 気になったので、少しスペックを比較してみた。 ここでは、詳細な条件部分は考慮せずに適当に並べている(次の BROTHER のサイトの HL-5070DNHL-3170CDW を参照)。

モデル HL-5070DN HL-3170CDW
発売日 2003年11月13日 2013年 5月23日
プリント方式 電子写真方式 電子写真方式LEDプリンター
オープン価格 メーカー希望小売価格:79,800円+税 参考価格:29,980円+税
解像度 2,400×600dpi(HQ1200) 600×600dpi(標準モード),2,400dpi相当(きれいモード)
プリント速度(モノクロ) 片面印刷時(A4): 18枚/分 片面印刷時(A4):最高22枚/分
プリント速度(カラー) x 片面印刷時(A4):最高22枚/分
プリント速度(両面印刷) 8枚/分 最高7ページ/分(カラー/モノクロ)
CPU 富士通SPARC lite RENESAS SS1000(333MHz)
内蔵メモリ 標準 32MB(最大160MB) 標準 128MB
内蔵フォント PCL,欧文フォント66書体,ビットマップフォント(LetterGothic16.66・OCR-A・OCR-B),バーコード PCL,欧文フォント49書体,ビットマップフォント(LetterGothic16.66・OCR-A・OCR-B),バーコード
内蔵フォント(BR-Script) 欧文フォント66書体,日本語フォント2書体(和桜明朝、美杉ゴシック) x
標準給紙トレイ 250枚 250枚
外形寸法(W×D×H) 382×401×252mm 410×465×240mm
重量 10.1kg(消耗品除く) 17.7kg(消耗品含む)
稼動音 平均50dB(印刷時),30dB以下(スタンバイ時) LWAd = 6.43(B)A(印刷時),LWAd = 4.53(B)A(スタンバイ時)
消費電力 460W以下(印刷時),840W以下(ピーク時),75W以下(スタンバイ時),6W以下(スリープ時) 435W以下(印刷時),990W(ピーク時),60W(スタンバイ時),0.6W(スリープ時)
装置寿命 20万枚または5年間 10万枚または5年間

Linux Mint 14 にドライバを入れる
(1) ドライバのダウンロード
リナックスプリンタドライバーのダウンロード のページから、HL-3170CDW を選択すると、 HL-3170CDW に飛ぶので、deb パッケージの「LPD/LPRng 用ドライバー 1.1.2-1」(679 KB)と、 「CUPS 用ドライバー(要 LPD/LPRng 用ドライバー) 1.1.2-1」(14 KB)をダウンロードする。

(2) インストール方法の確認
最終的には、CUPS用プリンタードライバをインストールするので、 CUPS 用プリンタードライバーのインストール方法 に目を通しておく。

(3) LPD/LPRng 用ドライバのインストール
/var/spool/lpd がなかったので、まずは作成。

$ sudo mkdir /var/spool/lpd
$ sudo dpkg -i --force-all hl3170cdwlpr-1.1.2-1.i386.deb

(4) CUPS用ドライバのインストール

$ sudo dpkg -i --force-all hl3170cdwcupswrapper-1.1.2-1.i386.deb 

基本的にこれだけなのだが、実際には、次のようなエラーが出てしまった。

...
(hl3170cdwcupswrapper-1.1.2-1.i386.deb から) hl3170cdwcupswrapper を展開しています...
hl3170cdwcupswrapper (1.1.2-1) を設定しています ...
cups stop/waiting
cups start/running, process 3632
lpadmin -p HL3170CDW -E -v usb://Brother/HL-3170CDW%20series?serial=********
-P /usr/share/cups/model/Brother/brother_hl3170cdw_printer_en.ppd
処理中にエラーが発生しました:
 force-all
http://localhost:631/admin

(5) CUPS用ドライバの動作確認
おそるおそるブラウザを起動し、CUPS Web 管理サイト http://localhost:631/admin を開いて(左の画像)、そこにみえる[プリンタ]をクリックするとプリンタ名が見える。 リンクになっているプリンタ名をクリックして、 適当にディフォルトの設定(例えば解像度の設定)をする。 これで、LibreOffice からも、 Gimp からもプリントアウトできた。

Vine Linux 6.2 (Haut Bailly) の場合は、RPM のドライバを上記のサイトからダ ウンロードしてインストールし、何事もなく無事に使えるようになった。

/etc/printcap が気になったのでのぞいてみたら、 以下のようになっていた。

# This file was automatically generated by cupsd(8) from the
# /etc/cups/printers.conf file.  All changes to this file
# will be lost.
HL3170CDW:\
        :mx=0:\
        :sd=/var/spool/lpd/hl3170cdw:\
        :sh:\
        :lp=/dev/usb/lp0:\
        :if=/opt/brother/Printers/hl3170cdw/lpd/filterhl3170cdw:
CUPS/(Linux Mint 14) -> printer CUPS/(Linux Mint 14) HL-3170CDW

うまく動かない時は、「CUPS 用プリンタードライバーのインストール方法」 を読み直し、以下を確認する。
(1) "/usr/share/cups/model" フォルダの存在、 (2) "/var/spool/lpd" フォルダの存在、 (3) SuSE9.0 - 10.3 等を使用している場合、lppasswd コマンドで CUPS 用のパスワードを設定、 (4) Apparmorが動作している場合は、# aa-complain cupsd
(5) SELinuxが動作している場合には、cups のセキュリティ設定が必要、 (6) 64bit版ディストリビューションの時は、(a) 32bit用ライブラリが必要 (例:glibc.i686(Fedora)、ia32-libs(Debian)、lib32stdc++(Ubuntu))、 (b) "/usr/lib/cups/filter" フォルダがあることを確認し、 存在しない場合は、# mkdir -p /usr/lib/cups/filter

さて、装置寿命「10万枚または5年間」を超えてどれくらい使えるだろうか。


さよなら Ubuntu、こんにちはLinux Mint  [3/31/2013]

ThinkPad X220Tablet にモバイル・マシンを変更してから、 軽くなったのはよかったのだが画面が狭いことにフラストレーションを感じていた。 ThinkPad X220Tablet でも、外部ディスプレイを接続すれば、 1,366x768 ではなく 2,048x1,536 までの表示ができる。だったら、この際、安くなった LCD を買ってみようと思った。

購入したのは、I・O Dataの LCD-MF234XPBR。 「最大解像度が1920×1080ドット、表示色数は1677万色、 コントラスト比は1000:1(ダイナミックコントラスト比8万:1) 視野角は上下/左右ともに178度で応答速度が中間色14ms(オーバードライブ時8ms)」 というのが、だいたいのスペック。およそ15,000円弱で、23インチというのは隔世の感がある値段だ。 本当は、27インチが欲しかったのだが、安かったのでこれで妥協した。

しかし、Ubuntu 12.04 でも、Ubuntu 12.10 でも、デジタルケーブルでつないで X の出力が安定しない。 Intel HD Graphics 3000 を積んだマザーボード P8H67-M EVO のBIOSアップデートをして、 BIOS 3602 (2012/11/28) にしてみたが、変わらない。 X が立ち上がって10秒程度の間に画面が乱れてXがクラッシュし、そのうちにフリーズしてしまう。 ターミナルを立ち上げてエラーを確かめるだけの時間がない。

グラフィックスディスプレイによって既定の解像度が利用できない。(http://www.intel.com/jp/support/graphics/sb/CS-030332.htm) に書いてある:

インテル®チップセット・グラフィックス使用時に、ディスプレイによって既定の解像度が利用できない場合があります。
グラフィックス・プロパティで、1920x1080,1680x1050, 1440x900 のような解像度が指定できません。これは、一部の
デジタル・フラット・パネル (DFP) ディスプレイと接続した際に、ディスプレイ上のEDID 情報を正常に読み込みできな
い場合に生じます。 

という説明に該当する気もする。 ちょっと前なら、Xを立ち上げずに X の config をしたものだが、blackbox 化する Ubuntu 12.10 では、いったいどうしたらいいのか分からない。

いまさら17インチの FlexScan L550-R には戻れない。 そこで考えたあげく、Linux Mint を試してみることにした。 基本的に、中身はDebian -- Ubuntu 系だが、 チューンアップの違いが意外に大きかったりする。 結果的には、大成功だった。 Intel HD Graphics 3000(P8H67-M EVO) + LCD-MF234XPBR + Linux Mint 14(Mate 32bit) で X は安定して使えている。

Linux Mint 14/LCD-MF234XPBR/Intel HD Graphics 3000

 
 
 
 
 
 
 

 
 
 
 
 
 
 

 
 
 
 
 
 
 
 

問題は、エプソンのスキャナ GT-F570 だった。 最初は、 Linux Mint 14(Mate 64bit) をインストールしたが、 これでは iscan-2.10.0-1.c2.i386.rpm を一旦aliento-tgz に変換してから配置しても 386 用のコードなので動かないはずだ。 ソースコードは、iscan-2.10.0-1.i386.tar.gz で提供されているので、これがコンパイルできれば、あとは iscan-plugin-gt-f520-1.0.0-1.c2.i386.rpm から firmware を取り出して配置すればなんとかなるかもしれない。 ただ README.ja には「tarファイルからインストールするためにはsaneがtarファイルからインストールされている必要があります。」と書かれており、 ちらりとコンパイルしてみて「あ、ダメ!」と早々に結論を出して逃げてしまった。

そこで、今度は Linux Mint 14(Mate 32bit) をインストールして、 Ubuntu の時とは違う可能性があることを意識して慎重に作業した。 以下、簡単に、そのステップをメモしておく。

まず、最新のファイルをチェックしようと思って、 エプソンアヴァシス株式会社のLinuxドライバー のページへ行くと、「2013/01/21 Linuxドライバーダウンロードサービス運営終了のお知らせ」があり、 セイコーエプソンダウンロードサイト へ誘導される。 結局、最新のドライバーは、12-21-2011 付けのもので、上記のものと同じだった。 (latest iscan plugin package for gcc 3.4 or laterを選択してダウンロードした。)

Scannerを接続した状態での前調査
(1) usb のチェック
 $ lsusb
Bus 001 Device 003: ID 04b8:0122 Seiko Epson Corp. Perfection 3590 scanner
(接続した状態だと、Perfection 3590 として認識されている。)
(2) sane-find-scanner の結果
 $ sane-find-scanner | grep 0x04b8
found USB scanner (vendor=0x04b8 [EPSON], product=0x0122 [EPSON Scanner]) at libusb:001:003
(3) scan-image -L の結果
 $ scanimage -L
device `snapscan:libusb:001:003' is a EPSON EPSON Scanner flatbed scanner   
(4) xsane (version 0.998)
 $ xsane
エラーwindow が出て
「デバイスを開けません 'snapscan:libusb:001:003': 不正な引数です.」と言われる。
コンソール上には以下のメッセージがでる。
[snapscan] Cannot open firmware file /usr/share/sane/snapscan/your-firmwarefile.bin.
[snapscan] Edit the firmware file entry in snapscan.conf. 

今回は、インストール前に、あらかじめscanner の電源を切って置くことに した。(Switch off the scanner GT-F570/Perfection 3590.)

iscan-2.10.0-1.c2.i386.rpm と iscan-plugin-gt-f520-1.0.0-1.c2.i386.rpm のインストール
(1) $ sudo alien --to-deb --scripts iscan-2.10.0-1.c2.i386.rpm iscan-plugin-gt-f520-1.0.0-1.c2.i386.rpm  
iscan_2.10.0-2_i386.deb generated
iscan-plugin-gt-f520_1.0.0-2_i386.deb generated
 $ ls -l *.deb
-rw-r--r-- 1 root root 123970  3月 31 xx:yy iscan-plugin-gt-f520_1.0.0-2_i386.deb
-rw-r--r-- 1 root root 358776  3月 31 xx:yy iscan_2.10.0-2_i386.deb
(2) $ sudo dpkg -i iscan*.deb

(error messages in syslog output:
unknown key 'SYSFS{idVendor}' in /etc/udev/rules.d/60_iscan.rules:8
udevd[362]: invalid rule '/etc/udev/rules.d/60_iscan.rules:8'
...)
(3) スキャナの電源投入: Switch on the scanner!
($ tail -f /var/log/syslog):
Mar 31 xx:yy:zz hogehoge kernel: [ 5684.312017] usb 1-1.3: >new high-speed USB device number 5 using ehci_hcd
Mar 31 xx:yy:zz hogehoge kernel: [ 5684.407843] usb 1-1.3: >New USB device found, idVendor=04b8, idProduct=0122
Mar 31 xx:yy:zz hogehoge kernel: [ 5684.407847] usb 1-1.3: >New USB device strings: Mfr=1, Product=2, SerialNumber=0
Mar 31 xx:yy:zz hogehoge kernel: [ 5684.407850] usb 1-1.3: >Product: EPSON Scanner
Mar 31 xx:yy:zz hogehoge kernel: [ 5684.407852] usb 1-1.3: >Manufacturer: EPSON
(4) $ lsusb
...
Bus 001 Device 005: ID 04b8:0122 Seiko Epson Corp. Perfection 3590 scanner
...
(5) $ sane-find-scanner | grep 0x04b8
found USB scanner (vendor=0x04b8 [EPSON], product=0x0122 [EPSON Scanner]) at libusb:001:005
(6) $ scanimage -L
device `epkowa:libusb:001:005' is a Epson GT-F520/F570 flatbed scanner
device `snapscan:libusb:001:005' is a EPSON EPSON Scanner1 flatbed scanner
xsane (GT-F570) Linux Mint 14(Mate 32bit)

最後のステップで、scanimage -L した後、スキャナが「キッ、キッ」と音を立てれば成功。 今回は、Ubuntu の時と異なり、 /etc/sane.d/dll.conf の移動は行わなかった。 dll.conf は、 ネットワークを通してアクセスする場合に必要な機器名を管理しているだけで、無関係だったようだ。
やったことは結果的に簡単で、 スキャナの電源を落としておいて、(1) alien コマンドで、 rpmdeb に変換し、 (2) sudo dpkg -i でインストールしただけだ。 (3) で、スキャナの電源を投入し、後は、(5) sane-find-scanner | grep 0x04b8 と (6) scanimage -L で確認した。 作業前は、scanimage -L の出力結果が一行だけだったが、 作業後は、2行出力されている。device `epkowa:libusb:001:005' の行が出力されれば、firmwareesfw52.bin が認識されていることになる。

この後、xsane(上のキャプチャ) も、 iscan も無事に動作した。 参考までに、どこに何が配置されたのかを dpkg -L の結果とともに引用しておく。

それにしても、 ubuntu 12.10 と比較して、 Linux Mint 14 は、古典的なメニュー方式だがメニューも工夫されており実に使いやすい。 普段使うソフトしか見えないというのは、やはり不便極まりない。 ちょっと使っただけで Linux Mint の人気が出るのは当然だと感じる。

$ sudo dpkg -L iscan-plugin-gt-f520
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/iscan-plugin-gt-f520-1.0.0
/usr/share/doc/iscan-plugin-gt-f520-1.0.0/EAPL.en.txt
/usr/share/doc/iscan-plugin-gt-f520-1.0.0/LICENSE.EPSON.ja.txt.gz
/usr/share/doc/iscan-plugin-gt-f520-1.0.0/LICENSE.EPSON.en.txt.gz
/usr/share/doc/iscan-plugin-gt-f520-1.0.0/EAPL.ja.txt
/usr/share/doc/iscan-plugin-gt-f520
/usr/share/doc/iscan-plugin-gt-f520/changelog.Debian.gz
/usr/share/doc/iscan-plugin-gt-f520/copyright
/usr/share/iscan
/usr/share/iscan/esfw52.bin
/usr/lib
/usr/lib/iscan
/usr/lib/iscan/libesint52.so.2.0.0
/usr/lib/iscan/libesint52.so
/usr/lib/iscan/libesint52.so.2 
$ sudo dpkg -L iscan
/.
/etc
/etc/sane.d
/etc/sane.d/epkowa.conf
/etc/hotplug
/etc/hotplug/usb
/etc/hotplug/usb/iscan-device
/etc/hotplug/usb/iscan.usermap
/usr
/usr/share
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/iscan.1.gz
/usr/share/man/man5
/usr/share/man/man5/sane-epkowa.5.gz
/usr/share/locale
/usr/share/locale/ko
/usr/share/locale/ko/LC_MESSAGES
/usr/share/locale/ko/LC_MESSAGES/iscan.mo
/usr/share/locale/zh_CN
/usr/share/locale/zh_CN/LC_MESSAGES
/usr/share/locale/zh_CN/LC_MESSAGES/iscan.mo
/usr/share/locale/zh_TW
/usr/share/locale/zh_TW/LC_MESSAGES
/usr/share/locale/zh_TW/LC_MESSAGES/iscan.mo
/usr/share/locale/ja
/usr/share/locale/ja/LC_MESSAGES
/usr/share/locale/ja/LC_MESSAGES/iscan.mo
/usr/share/locale/fr
/usr/share/locale/fr/LC_MESSAGES
/usr/share/locale/fr/LC_MESSAGES/iscan.mo
/usr/share/locale/en@quot
/usr/share/locale/en@quot/LC_MESSAGES
/usr/share/locale/en@quot/LC_MESSAGES/iscan.mo
/usr/share/locale/it
/usr/share/locale/it/LC_MESSAGES
/usr/share/locale/it/LC_MESSAGES/iscan.mo
/usr/share/locale/nl
/usr/share/locale/nl/LC_MESSAGES
/usr/share/locale/nl/LC_MESSAGES/iscan.mo
/usr/share/locale/pt
/usr/share/locale/pt/LC_MESSAGES
/usr/share/locale/pt/LC_MESSAGES/iscan.mo
/usr/share/locale/es
/usr/share/locale/es/LC_MESSAGES
/usr/share/locale/es/LC_MESSAGES/iscan.mo
/usr/share/locale/en@boldquot
/usr/share/locale/en@boldquot/LC_MESSAGES
/usr/share/locale/en@boldquot/LC_MESSAGES/iscan.mo
/usr/share/locale/de
/usr/share/locale/de/LC_MESSAGES
/usr/share/locale/de/LC_MESSAGES/iscan.mo
/usr/share/doc
/usr/share/doc/iscan-2.10.0
/usr/share/doc/iscan-2.10.0/EAPL.en.txt
/usr/share/doc/iscan-2.10.0/COPYING.LIB.gz
/usr/share/doc/iscan-2.10.0/AUTHORS
/usr/share/doc/iscan-2.10.0/README.ja.gz
/usr/share/doc/iscan-2.10.0/COPYING.gz
/usr/share/doc/iscan-2.10.0/NEWS.ja.gz
/usr/share/doc/iscan-2.10.0/NEWS.gz
/usr/share/doc/iscan-2.10.0/README.gz
/usr/share/doc/iscan-2.10.0/EAPL.ja.txt
/usr/share/doc/iscan-2.10.0/xinetd.sane
/usr/share/doc/iscan
/usr/share/doc/iscan/changelog.Debian.gz
/usr/share/doc/iscan/copyright
/usr/lib
/usr/lib/libesmod.so.1.1.0
/usr/lib/sane
/usr/lib/sane/libsane-epkowa.so.1.0.15
/usr/lib/sane/libsane-epkowa.la
/usr/lib/iscan
/usr/lib/iscan/make-udev-rules
/usr/bin
/usr/bin/iscan
/usr/lib/libesmod.so
/usr/lib/libesmod.so.1
/usr/lib/sane/libsane-epkowa.so.1 

DSC-HX30VをUSB接続  [12/05/2012]

DSC-HX30V は、PCとつないで写真・動画を管理する際には、 PlayMemories Home というソフトウェアを使うことになっている。 このソフトは、WindowsAndroid で動く。 「Mac で再生する場合は、Mac に搭載されているアプリケーションをご利用ください。」とマニュアルには書いてある。 もちろん、Linux での利用については、 何も書いてないが、[Menu]-[設定]-[USB接続設定]の下には、 「オート、MTPMass Storage」 の選択肢があるので、USB Storage を選べば認識される。 以下のような感じで、scsi device として3つも出てくる(以下の SerialNumber は、下位5桁をマスク)。

Dec  3 19:58:26 localhost kernel: usb 2-1.2: new high speed USB device number 7 using ehci_hcd
Dec  3 19:58:26 localhost kernel: usb 2-1.2: New USB device found, idVendor=054c, idProduct=061b
Dec  3 19:58:26 localhost kernel: usb 2-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Dec  3 19:58:26 localhost kernel: usb 2-1.2: Product: DSC-HX30V
Dec  3 19:58:26 localhost kernel: usb 2-1.2: Manufacturer: Sony
Dec  3 19:58:26 localhost kernel: usb 2-1.2: SerialNumber: C563402xxxxx
Dec  3 19:58:26 localhost kernel: scsi6 : usb-storage 2-1.2:1.0
Dec  3 19:58:27 localhost kernel: scsi 6:0:0:0: Direct-Access     Sony     DSC              1.00 PQ: 0 ANSI: 0
Dec  3 19:58:27 localhost kernel: scsi 6:0:0:1: Direct-Access     Sony     DSC              1.00 PQ: 0 ANSI: 0
Dec  3 19:58:27 localhost kernel: scsi 6:0:0:2: Direct-Access     Sony     DSC              1.00 PQ: 0 ANSI: 0
Dec  3 19:58:27 localhost kernel: sd 6:0:0:0: Attached scsi generic sg1 type 0
Dec  3 19:58:27 localhost kernel: sd 6:0:0:1: Attached scsi generic sg2 type 0
Dec  3 19:58:27 localhost kernel: sd 6:0:0:2: Attached scsi generic sg3 type 0
Dec  3 19:58:27 localhost kernel: sd 6:0:0:0: [sdb] 62333952 512-byte logical blocks: (31.9 GB/29.7 GiB)
Dec  3 19:58:27 localhost kernel: sd 6:0:0:1: [sdc] 216576 512-byte logical blocks: (110 MB/105 MiB)
Dec  3 19:58:27 localhost kernel: sd 6:0:0:2: [sdd] 43008 512-byte logical blocks: (22.0 MB/21.0 MiB)
Dec  3 19:58:27 localhost kernel: sd 6:0:0:0: [sdb] Write Protect is off
Dec  3 19:58:27 localhost kernel: sd 6:0:0:1: [sdc] Write Protect is on
Dec  3 19:58:27 localhost kernel: sd 6:0:0:2: [sdd] Write Protect is on
Dec  3 19:58:27 localhost kernel: sd 6:0:0:0: [sdb] No Caching mode page present
Dec  3 19:58:27 localhost kernel: sd 6:0:0:0: [sdb] Assuming drive cache: write through
Dec  3 19:58:27 localhost kernel: sd 6:0:0:1: [sdc] No Caching mode page present
Dec  3 19:58:27 localhost kernel: sd 6:0:0:1: [sdc] Assuming drive cache: write through
Dec  3 19:58:27 localhost kernel: sd 6:0:0:2: [sdd] No Caching mode page present
Dec  3 19:58:27 localhost kernel: sd 6:0:0:2: [sdd] Assuming drive cache: write through
Dec  3 19:58:27 localhost kernel: sd 6:0:0:0: [sdb] No Caching mode page present
Dec  3 19:58:27 localhost kernel: sd 6:0:0:0: [sdb] Assuming drive cache: write through
Dec  3 19:58:27 localhost kernel: sd 6:0:0:2: [sdd] No Caching mode page present
Dec  3 19:58:27 localhost kernel: sd 6:0:0:2: [sdd] Assuming drive cache: write through
Dec  3 19:58:27 localhost kernel: sd 6:0:0:1: [sdc] No Caching mode page present
Dec  3 19:58:27 localhost kernel: sd 6:0:0:1: [sdc] Assuming drive cache: write through
Dec  3 19:58:27 localhost kernel: sdd: sdd1
Dec  3 19:58:27 localhost kernel: sdb: sdb1
Dec  3 19:58:27 localhost kernel: sdc: sdc1
--- 以下省略 --- 

これまでは、すべてマニュアルで特定ディレクトリに自分で思ったように写真を入れて管理していたが、 今回の DSC-HX30V からは、 Shotwell で管理することにした(ここでも、ついにオートを選択してしまった)。 日付でディレクトリを管理するというのは、確かに1つの揺ぎない原理なので、これに従うことにした。

今のところ特に不便を感じてはいないが、 DSC-HX30VUSB 接続し電源をONにしてからレジュームしてはならない。 ログオンできなくなる。 USB から充電する時は、 PCが稼働中に、DSC-HX30V の電源は切った状態で USB 接続するのが正解。 写真を取り込む時は、 PCが稼働中に、DSC-HX30V の電源を入れた状態で USB 接続しても大丈夫。 DSC-HX30V の電源を切った状態で USB 接続してから、 DSC-HX30V の電源を入れる方が安心ではある。 あとは、Shotwell の窓が出るので、それにまかせることができる。 USB 接続解除は、 PMHOME を対象に「ドライブの安全な取り出し」を行えばよい(/media/PMHOMEunmount)。


ThinkPad X220Tablet へ  [09/10/2012]

ThinkPad T60(1954-G2J) から、 ThinkPad X220Tablet (4294CTO) にノートPCを変更した。2012年8月末の時点で、 ThinkPad T60Vine Linux 6.1 にアップデートしてなんとか動いていたのだが、 サスベンド/シャットダウンができなかったり、不審な挙動が何度かあったので見切りをつけることにした。 ThinkPad X220Tablet を選んだのは、タブレット的な利用も想定していたからだが、 ThinkPad X1 Carbon がもう少し早く発売されていれば、そちらを選んでいたかもしれない。

スペックは、およそ次のようなものだ。

CPU Intel Core i7-2640M (2.80GHz/Max 3.50GHz at Turbo-Boost, 4MB L3, 1333MHz)
OS Windows 7 Home Premium 64bit (SP1)
Display 12.5' HD-LCD (1366x768 300nit, IPS Infinity-Glass with LED Backlight) - Multi-Touch
Graphics Intel®HD Graphics 3000
Memory 8GB PC3-10600 DDR3
HDD 500GB/5400rpm
Battery 6-Cell Li-Ion
Wireless LAN Intel Centrino Advanced-N 6205

前のThinkPad T60(1954-G2J)が、Windows XP マシンだったので、Windows 7 というのは随分変わった感じがする (Windows Vista をスキップできたのはうれしい。 まもなく(2012年秋には)、Windows 8 が出るそうだが)。

気に入らないのは、画面の中途半端な解像度と、予想していなかった6セル・バッテリーの形状だ。 ThinkPad T60 は、1400x1050の解像度だったので、 画面の解像度はグレードダウンしてしまった( ThinkPad X1 Carbon 並に、1600x900にして欲しかった)。 6セル・バッテリーは約 8.9時間もつそうだが、 本体から2.3cm程度縦に飛び出してしまい、最長の部分で24cm程度も横に出っ張る(筆者によるいいかげんな実測値)。 これらのバッテリーの大きさは、パンフレットに明記されてはいない。 手元に届いて、自分で見てびっくり、というのはやはりよくない。

さて、Windows 7 の領域を縮めて、Vine Linux 6.1 を導入し、バックアップしておいたデータを移行することにした。

贅沢にもドッキング・ディバイスとしてウルトラ・ベースを同時購入し、 DVD-ROMウルトラベイ・スリム・ドライブ(43N3292)を使用してインストール作業を行ったが、 後になって考えると、ウルトラ・ベースはいらなかったな、と思う。 もう、DVD-DRIVE 自体、非常に安くなっているし、 USB 接続の機器からのブートもほぼ問題なくなっている。 いろいろなポートがいっぱい必要な状況はもうほとんどないだろう。

GParted を使って領域を縮めるのだが、 今回もKnoppix を使おうと思って、 Knoppix 7.0.2 をDVDに焼いてGParted を立ち上げたら、なんとNTFS が読めない。 どうやら、この版の Knoppix 7.0.2 のバグのようで、 ntfsprogs-package の中に ntfsresize, ntfsfix ... などが入っていないからのようだ (参照 KNOPPIX 7.0.2/ADRIANE 1.4 - Live CD/DVD)。 回避の方法はあったのだが、結構めんどうそうだったので、手元にあった Ubuntu 12.04日本語Remix CD のDVDを使って立ち上げ、 GParted で、117.19 GB を確保した。 パーティションは、いつも悩むのだが、考えすぎてもしようがないので、適当に済ませた。

Vine Linux 6.1 on ThinkPad X220 Tablet

Windows 7 が立ち上がることを確認し、ディスクのチェックをやらせてから、 Vine Linux 6.1 のDVDでインストールを始めたが、 自動的に空きパーティションを見つけてインストールには進んでくれない。 Disk Druid でパーティションを半手動でなんとかしようとしたが、なぜかこれもだめ(ああfdisk が良かったのに)。 そこで、とりあえずUbuntu 12.04 をインストールしてみると、 自動的に空きパーティションにインストールされた。

この際、Ubuntu 12.04 をメインにするのも悪くはないかな、とも考えたが、 Debian 流の味付けがされている世界は、 Emacs にせよ、TeXLive にせよ、よく分からない。少し古い情報ならネット上にかなり説明があるのだが。 迷ったあげく、やはりVine Linux を上書きインストールしてみることにした。 結果的にこれでうまく環境構築が終了した。 Ubuntu 12.04 は、VirtualBox の中で大切に「飼育して」みることにした(キャプチャ画面では、 Vine Linux 6.1 の中で VirtualBox を動かし、 そこで Ubuntu 12.04 を動かして429個の update を実行中)。 Ubuntu 12.04emacsTeX 環境の実践的理解に使えそうだ。

Vine Linux 上でも、Ubuntu 上でも、 カーソルの移動とタップは画面上でできる。それ以上の操作は、 Windows 7 でないとできないようだ。 ThinkPad Tablet の得意技、ぐるっと回してタブレット、 というのもカーソルの移動とタップだけではちょっとさびしい。

2012年9月6日の朝日新聞に、「シンクパッド、発売から20年」という記事が 載っていた。1992年のThinkPad 700C が「IBM大和研究所」で生まれた1号機だそうだ。 カーボンファイバーのブラックボディーを貫いている ThinkPad。 大和研究所は Lenovo 傘下に入った後も健在だ。 上記の記事によると、 「2000年代に入り生産は中国に移っていたが、 昨年レノボの子会社になったNECパーソナルコンピュータの米沢工場(山形県)で近くシンクパッドの試験生産が始まる。」そうだ。

私は、その昔 ThinkPad 550BJ という、 Canon のバブルジェット・プリンタ付の機種を愛用していた。 DOSエクステンダー上で TeX を動かし、ラジオ講座の原稿を書いていた。おお、昔だ。

ThinkPad X220Tablet を使ってすぐに気がつくのは、 そのキーボードや放熱技術の進歩だ。 ただ薄く軽いキーボードが多い昨今、キーストロークから、配置、キーの大きさなど、 明らかに改良されている。 本体左脇や後ろの熱風の出方もかなり改善されている印象を受ける。 もちろん、これがベストという完成形はないので、今後も進化することを期待している。


Bamboo CTH-470 は Vine Linux 6.0で動かなかったが...  [04/04/2012]

Bamboo CTH-470は、(株)ワコム のペン入力を可能とするタブレットの普及版(Sサイズ)ともいえる存在で、 2011年10月頃に発売になったものだ。いくつかのセットが存在するが、 私は、ワイヤレスキット付きの製品をおよそ1万円で購入した。 Windows Vista/7と、Mac に対応しているが、もちろんLinux に対応しているとは、どこにも書いてない。

ネットで検索すると、すでに、Ubuntu 11.10 で動作しているとのことなので、 まあ、ひょっとしてVine Linux 6.0 でも動くかな、と軽い気持ちで購入した。USB 接続なので、それほど困難ではないだろう、という読みがあった。

なかなかおしゃれなデザインのパッケージングがされていて、 Mac製品を思わせる (http://tablet.wacom.co.jp/参照)。 そして、本体ペンタブレットに関するマニュアルが同梱されていない。 必要なら、ネットから bamboo3gjp.pdf をダウンロードすることになる。 同梱されている WindowsMac 用のソフトをインストールすれば、 基本的にマニュアルは不要、というスタンスなのだろう。

0. 下調べ (Vine Linux 6.0)
まずは、ワイヤレスキット(ACK-40401)を装着した状態で、 USB 接続をしてみる(# tail -f /var/log/messages)と次のようになった。
(Vine Linux 6.0 (Haut Brion), kernel 2.6.35-21vl6)

Mar 24 21:28:58 localhost kernel: usb 4-1: new full speed USB device using uhci_hcd and address 2
Mar 24 21:28:58 localhost kernel: usb 4-1: New USB device found, idVendor=056a, idProduct=00de
Mar 24 21:28:58 localhost kernel: usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Mar 24 21:28:58 localhost kernel: usb 4-1: Product: CTH-470
Mar 24 21:28:58 localhost kernel: usb 4-1: Manufacturer: Wacom Co.,Ltd.
Mar 24 21:30:35 localhost kernel: usb 2-2: new full speed USB device using uhci_hcd and address 2
Mar 24 21:30:35 localhost kernel: usb 2-2: New USB device found, idVendor=056a, idProduct=0084
Mar 24 21:30:35 localhost kernel: usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Mar 24 21:30:35 localhost kernel: usb 2-2: Product: Wacom Wireless Receiver
Mar 24 21:30:35 localhost kernel: usb 2-2: Manufacturer: Wacom Co.,Ltd.

USB 接続自体は、きちんと認識されているが、 もちろんタブレット上をペンや指で触れてもなんの反応もない。

CTH-470 Linuxあたりをキーワードにしてぐぐってみると、 Ubuntu や、Gentoo Linux で成功例が見つかる。今回は、 Wacom Bamboo Small CTH-470 × Ubuntu 11.10 (Posted on 2011年11月5日 by vbkaisetsu) を参考にした。

ワコムのペン・タブレットはかなり昔から知られており、時々MLでも話題になっていたので、 まずは、wacom をキーワードにパッケージを検索してみると、 xorg-x11-drv-wacom-0.11.0-1vl6.x86_64があったので、インストールして覗いてみた。
/usr/share/doc/xorg-x11-drv-wacom-0.11.0/ にある2011年4月7日のREADME ファイルには、

This package provides the X.Org X11 driver for Wacom and Wacom-like tablets.It obsoletes the linuxwacom driver and supports X server versions 1.7 and higher. Server versions lower than 1.7 may be supported by this driver, but users are encouraged to use the old linuxwacom driver instead. Information about building this driver, configuration and general use is available on http://linuxwacom.sourceforge.net Since this driver is an X11 driver only, a kernel driver is required to get hardware support. If the kernel driver is older than this driver, some features may not be available. [...]

と書いてあり、 このパッケージが提供するのは X11のドライバで、別途、 kernel driver がないといけないことが分かる。

では、 kernel driver はどこらへんにあるかというと、 /lib/modules/2.6.35-21vl6/kernel/drivers/input/touchscreen あたりにあるが、wacomと名前から判断できるのは、 wacom_w8001.koだけ。 kernel-source, kernel-headers をイントールしていれば、 /usr/src/linux-2.6.35/drivers/input/tablet/ 以下に、wacom.hwacom_wac.hがある。 wacom_wac.h を見れば、Bamboo がサポートされていないことがわかる。

単純に考えれば、カーネルモジュールを作成して配置すればよいはずだ。

1. kernel で、Wacom Intuos/Graphire tablet support (USB)がモジュールになっているか (Vine Linux 6.0)
今使っているカーネルで、Wacom Intuos/Graphire tablet support (USB) がすでにモジュール化されていれば(M)、ドライバモジュールを作成して配 置することで、カーネルの再構築をしないで済む。そこで、# make menuconfig をして確かめてみると、以下のようにモジュール化されていた。

Device Drivers --->
       Input device support --->
         [*]   Tablets  --->
           <M>   Wacom Intuos/Graphire tablet support (USB) 

2. wacom-bamboo.tar.gz をダウンロード
http://sourceforge.net/linuxwacom-discusswacom-banboo.tar.gz を添付した投稿が上から3番目にあるので(posted by Chris Bagwell, 2011-10-09 20:08)、 それをダウンロードする。

3. wacom-bamboo.tar.gz を展開してmake (Vine Linux 6.0)
適当なディレクトリに wacom-banboo.tar.gz を 移動して展開して、makemakeするにあたっては、 build-essential, libx11-dev, libxi-dev, libxrandr-dev, autoconf, libtool は必要。 xorg-x11-drv-wacom, xorg-x11-drv-wacom-devel, xorg-x11-devel, ncurses-devel, ncurses-c++-devel あたりも必要かもしれない。

$ gzip -dc wacom-bamboo.tar.gz | tar xvof -
$ cd wacom
$ make -C /lib/modules/$(uname -r)/build SUBDIRS=$(pwd) modules
make: ディレクトリ `/usr/src/kernels/2.6.35-21vl6-x86_64' に入ります
  CC [M]  /home/hoge/src/wacom/wacom_wac.o
/home/hoge/src/wacom/wacom_wac.c:17:28: error: linux/input/mt.h: そのようなファイルやディレクトリはありません
/home/hoge/src/wacom/wacom_wac.c: In function ‘wacom_tpc_mt_touch’:
/home/hoge/src/wacom/wacom_wac.c:693: error: implicit declaration of function ‘input_mt_slot’
/home/hoge/src/wacom/wacom_wac.c:694: error: implicit declaration of function ‘input_mt_report_slot_state’
/home/hoge/src/wacom/wacom_wac.c:708: error: implicit declaration of function ‘input_mt_report_pointer_emulation’
/home/hoge/src/wacom/wacom_wac.c: In function ‘wacom_setup_input_capabilities’:
/home/hoge/src/wacom/wacom_wac.c:1129: error: implicit declaration of function ‘input_abs_set_res’
/home/hoge/src/wacom/wacom_wac.c:1238: error: implicit declaration of function ‘input_mt_init_slots’
/home/hoge/src/wacom/wacom_wac.c:1240: error: ‘MT_TOOL_MAX’ undeclared (first use in this function)
/home/hoge/src/wacom/wacom_wac.c:1240: error: (Each undeclared identifier is reported only once
/home/hoge/src/wacom/wacom_wac.c:1240: error: for each function it appears in.)
make[1]: *** [/home/hoge/src/wacom/wacom_wac.o] エラー 1
make: *** [_module_/home/hoge/src/wacom] エラー 2
make: ディレクトリ `/usr/src/kernels/2.6.35-21vl6-x86_64' から出ます

ということで、mt.hがない。 あるべき場所は、/usr/src/kernels/2.6.35-21vl6-x86_64/include/linux/input/ だが、kernel-2.6.35-21vl6-x86_64 にはない。 あとで、Ubuntu 11.10で見てみたら、mt.hInput Multitouch Library(Copyright (c) 2010 Henrik Rydberg) というしろもの。Ubuntu 11.10 では、例えば /usr/src/linux-headers-3.0.0-16/include/linux/input/mt.h にある。mt.hを提供しないカーネルではmake できない。ネット上には回避できなくない、という情報もあったが、ここは、 現在α-1テスト中の VineLinux 6.1が、kernel 3.0.yに基づいているので、率直に「待ち」を選択した。

4. wacom-bamboo.tar.gz を展開してmake (Ubuntu 11.10)
VineLinux 6.0での例と同様に、上記のサイトを参照して あらかじめ必要なパッケージをsynapticでインストールしておき (build-essential, libx11-dev, libxi-dev, x11proto-input-dev, xserver-xorg-dev, libxrandr-dev, libncurses5-dev, autoconf, libtool)、 make すると、こんな感じですんなりと通る。

$ make -C /lib/modules/$(uname -r)/build SUBDIRS=$(pwd) modules
make: ディレクトリ `/usr/src/linux-headers-3.0.0-16-generic' に入ります
  CC [M]  /home/hoge/src/wacom/wacom_wac.o
  CC [M]  /home/hoge/src/wacom/wacom_sys.o
  LD [M]  /home/hoge/src/wacom/wacom.o
  Building modules, stage 2.
  MODPOST 1 modules
  CC      /home/hoge/src/wacom/wacom.mod.o
  LD [M]  /home/hoge/src/wacom/wacom.ko
make: ディレクトリ `/usr/src/linux-headers-3.0.0-16-generic' から出ます

5. kernel module のコピー (Ubuntu 11.10)
できたてのwacom.koを、sudo で現在使っているカーネルのドライバーのある所にコピーする。

$ sudo cp ./wacom.ko /lib/modules/`uname -r`/kernel/drivers/input/tablet/wacom.ko

6. depmod (Ubuntu 11.10)
最後に、depmodmodules.dep とマップファイルを生成すれば終り。

$ sudo depmod

7. 雑感
Bamboo CTH-470USB接続すると、 タブレットが(相対的に)巨大なタッチパッドとなる。 普通にカーソルを動かせる状態になる、と言えば分かるだろう。 Ubuntu 11.10 では、Mypaint というソフトがあったので、それでちょろちょろとペンを使ってお絵かきをしてみた。 ペンをついつい少しねかせてしまうと、かすれてしまう。 基本的になるべく垂直にタブレット面に接するようにするとうまくいく。 画面を見ながら、手元でペンを操作する、この感覚に慣れるにはしばらくかかりそうだ。
ワイヤレスキットの方は、動いていないが究明する気もなく放置している。


おや、ffmpegがない?  [03/03/2012]

コマンドラインで使える video converter として、 あるいは、 Digital VCR and streaming server として、Unix/Linux 系ではゆるぎない立場にある ffmpeg が、気がついたらインストールされていない状態になっていた。 Synaptic で見ると、 self-build-ffmpeg-0.6.4-1vl6.x86_64 がインストールされているが、 肝心の本体のffmpeg-0.6.4-1vl6.x86_64が、 Vine Linux 6.0 (Haut Brion) にインストールされていない。 ということは、self-build が失敗している可能性がある。

そこで、まずは、Synapticself-build-ffmpeg-0.6.4-1vl6.x86_64 を再インストールし、ログを見てみることにした。 以下は、/var/tmp/self-build-ffmpeg.log の中身。

実行中(%prep): /bin/sh -e /var/tmp/rpm-tmp.sF4uUk
+ umask 022
+ cd /var/tmp/self-build-ffmpeg.ayXCi1/rpm/BUILD
+ cd /var/tmp/self-build-ffmpeg.ayXCi1/rpm/BUILD
+ rm -rf ffmpeg-0.6.4
+ /usr/bin/bzip2 -dc /var/tmp/self-build-ffmpeg.ayXCi1/rpm/SOURCES/ffmpeg-0.6.4.tar.bz2
+ /bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd ffmpeg-0.6.4
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
実行中(%build): /bin/sh -e /var/tmp/rpm-tmp.9QJHTP
+ umask 022
+ cd /var/tmp/self-build-ffmpeg.ayXCi1/rpm/BUILD
+ cd ffmpeg-0.6.4
+ ./configure --prefix=/usr --incdir=/usr/include/ffmpeg --shlibdir=/usr/lib64 --libdir=/usr/lib64 
--mandir=/usr/share/man --arch=x86_64 --enable-runtime-cpudetect '--extra-cflags=-O2 -m64 -mtune=g
eneric -fno-strict-aliasing -fno-schedule-insns2' --enable-bzlib --enable-zlib --enable-libdc1394 
--enable-libfaac --enable-nonfree --enable-libfaad --enable-libgsm --enable-libmp3lame --enable-lib
rtmp --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 
--enable-libxvid --enable-x11grab --enable-avfilter --enable-postproc --enable-pthreads --disable-stati
c --enable-shared --enable-gpl --disable-doc --disable-debug --disable-stripping
FAAD test failed.

If you think configure made a mistake, make sure you are using the latest
version from SVN.  If the latest version fails, report the problem to the
ffmpeg-user@mplayerhq.hu mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.err" produced by configure as this will help
solving the problem.
エラー: /var/tmp/rpm-tmp.9QJHTP の不正な終了ステータス (%build)
RPM ビルドエラー: /var/tmp/rpm-tmp.9QJHTP の不正な終了ステータス (%build)

FAAD test failed. ということは、 FAAD がインストールされてはいるものの、 ffmpegconfigureの際に、 きちんと認識されていなかった、ということだろう。

FAAD は、「MPEG2/4 AAC のデコード用ライブラリおよびフロントエンド」で、 Vine Linux 6.0 では、faad2-2.7-4vl6 が、これもまた self-build-faad2-2.7-4vl6 で提供されている。 faad2 は、synaptic からインストールされているように見えたのだが、 ここは、やはり self-build-faad2-2.7-4vl6 を再インストールすることにした。こちらは、 ログを見ても問題なく RPM のインストールまで行っている。

そこで、もう一度、self-build-ffmpeg-0.6.4-1vl6.x86_64 の再インストールをしてみた。で、以下は、再び/var/tmp/self-build-ffmpeg.log の中身。

実行中(%prep): /bin/sh -e /var/tmp/rpm-tmp.nueLEP
+ umask 022
+ cd /var/tmp/self-build-ffmpeg.smrvhF/rpm/BUILD
+ cd /var/tmp/self-build-ffmpeg.smrvhF/rpm/BUILD
+ rm -rf ffmpeg-0.6.4
+ /usr/bin/bzip2 -dc /var/tmp/self-build-ffmpeg.smrvhF/rpm/SOURCES/ffmpeg-0.6.4.tar.bz2
+ /bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd ffmpeg-0.6.4
+ /bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
実行中(%build): /bin/sh -e /var/tmp/rpm-tmp.OOp7V0
+ umask 022
+ cd /var/tmp/self-build-ffmpeg.smrvhF/rpm/BUILD
+ cd ffmpeg-0.6.4
+ ./configure --prefix=/usr --incdir=/usr/include/ffmpeg --shlibdir=/usr/lib64 --libdir=/usr/lib64 
--mandir=/usr/share/man --arch=x86_64 --enable-runtime-cpudetect '--extra-cflags=-O2 -m64 -mtune=g
eneric -fno-strict-aliasing -fno-schedule-insns2' --enable-bzlib --enable-zlib --enable-libdc1394 
--enable-libfaac --enable-nonfree --enable-libfaad --enable-libgsm --enable-libmp3lame --enable-lib
rtmp --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 
--enable-libxvid --enable-x11grab --enable-avfilter --enable-postproc --enable-pthreads --disable-stati
c --enable-shared --enable-gpl --disable-doc --disable-debug --disable-stripping
ERROR: libx264 not found
以下省略

今度は、libx264 not found なので、分かりやすい。 rpm -qa | grep x264 をしてみると、 self-build-x264-0.0.0-15.20110322vl6.x86_64 がある。このセルフ・ビルド・パッケージもインストールされていることになっているのだが、 synaptic で再インストール。 そして /var/tmp/self-build-x264.log で無事に x264 がビルドされてインストールされていることを確認してから、 self-build-ffmpeg-0.6.4-1vl6.x86_64 をさらに再度インストール。 こんどは、無事にエラーも出ずに、終了した。

非常に便利なセルフ・ビルド・パッケージだが、 推測するにセルフ・ビルド・パッケージ同士は、その中身がupdate され、配置やライブラリ名が変わったりしても、分からないという状態なのではないだろうか。 Vine Linux 5.2 から、アップデートで Vine Linux 6.0 に上げたので、 セルフ・ビルド・パッケージ同士の不整合が生じ、インストールが完了しない状況になっていたのだと思う。 セルフ・ビルド・パッケージをインストールしている時には、 ちゃんと出てきた窓のメッセージを確認しておかねばならない(反省)。

というのも、/var/cache/apt/archives を見てみると:

-rw-r--r-- 1 selfbuild selfbuild 225699  3月  2 19:59 ffmpeg-0.6.4-1vl6.x86_64.rpm
-rw-r--r-- 1 selfbuild selfbuild 217175  5月  7  2011 ffmpeg-0.5.4-2vl5.x86_64.rpm
-rw-r--r-- 1 selfbuild selfbuild 216992  3月 29  2011 ffmpeg-0.5.4-1vl5.x86_64.rpm
-rw-r--r-- 1 selfbuild selfbuild 216366  6月 23  2010 ffmpeg-0.5.2-1vl5.x86_64.rpm

のようになっていて、低いバージョンは残っているからだ。

簡単にまとめておくと、遭遇した事態は、 「self-build-ffmpeg-0.6.4-1vl6.x86_64 がインストールされているが、 肝心の本体のffmpeg-0.6.4-1vl6.x86_64が、 Vine Linux 6.0 (Haut Brion) にインストールされていない。」というもの。
対策としては:
1. self-build-faad2-2.7-4vl6 の再インストール
2. self-build-x264-0.0.0-15.20110322vl6.x86_64 の再インストール
3. self-build-ffmpeg-0.6.4-1vl6.x86_64 の再インストール

今回は、mp4 のヴィデオデータから、 音声を抜き出したかったので、やったことは実に単純。

[hoge@localhost Videos]$ ffmpeg -i ae-32.mp4 -acodec libmp3lame ae-32.mp3
FFmpeg version 0.6.4, Copyright (c) 2000-2010 the FFmpeg developers
  built on Mar  2 2012 19:59:08 with gcc 4.4.5 20101001 (Vine Linux 4.4.5-6vl6)
  configuration: --prefix=/usr --incdir=/usr/include/ffmpeg --shlibdir=/usr/lib64 
--libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64  --enable-runtime-cpudetect 
--extra-cflags='-O2 -m64 -mtune=generic -fno-strict-aliasing  -fno-schedule-insns2' 
--enable-bzlib --enable-zlib --enable-libdc1394 --enable-libfaac  --enable-nonfree 
--enable-libfaad --enable-libgsm --enable-libmp3lame --enable-librtmp --enable-libspeex 
--enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxvid 
--enable-x11grab --enable-avfilter --enable-postproc --enable-pthreads --disable-static 
--enable-shared --enable-gpl --disable-doc --disable-debug --disable-stripping
  libavutil     50.15. 1 / 50.15. 1
  libavcodec    52.72. 2 / 52.72. 2
  libavformat   52.64. 2 / 52.64. 2
  libavdevice   52. 2. 0 / 52. 2. 0
  libavfilter    1.19. 0 /  1.19. 0
  libswscale     0.11. 0 /  0.11. 0
  libpostproc   51. 2. 0 / 51. 2. 0
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'ae-32.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: isommp42
  Duration: 00:02:10.03, start: 0.000000, bitrate: 458 kb/s
    Stream #0.0(und): Video: h264, yuv420p, 540x360, 374 kb/s, 30 fps, 30 tbr, 60 tbn, 60 tbc
    Stream #0.1(und): Audio: aac, 44100 Hz, stereo, s16, 81 kb/s
Output #0, mp3, to 'ae-32.mp3':
  Metadata:
    TSSE            : Lavf52.64.2
    Stream #0.0(und): Audio: libmp3lame, 44100 Hz, stereo, s16, 64 kb/s
Stream mapping:
  Stream #0.1 -> #0.0
Press [q] to stop encoding
size=    1016kB time=130.06 bitrate=  64.0kbits/s    
video:0kB audio:1016kB global headers:0kB muxing overhead 0.003172%

できたmp3 のデータを、praat に読ませ、必要な部分をカットして、wav データとし て保存した (もちろん、mp3のファイルをすべてwavのファイルに変換するならffmpeg -i input.mp3 output.wav でできるが、 可視状態で音声ファイルを分割するには、praatの方が便利)。 ちなみに、Vine Linux 6.0 になって、praat5302_linux64.tar.gz がインストールできるようになり、 かなり大きなファイルも扱えるようになったのはありがたい。

praat(5302) on Vine Linux 6.0

簡単に説明しておくと、この音声は Miki House のTVコマーシャルの中で、外国人の女の子(?)が、 この単語を発音している部分。 かなり長い間放送されていたのでこの音/発音を覚えている人も多いはずだ。 プロソディーの特徴から、このMiki House の発音は、Mickey Mouse に非常に似ているのではないか、 と思った。実際には、Mickey Mouse の発音の仕方には、 さまざまなバリエーションがあり、一概には言えないが、 あの頭の隅に残っているイントネーション(「刷り込まれている」(?))を使って、 Mickey Mouse と発音しても、そんなに違和感はない。もちろん、 日本語で「ミキハウス」と「ミッキーマウス」と発音すると全然似ていないのだが。

なんで、こんなことをやってみようと思ったかと言うと、 何人かのドイツ人に、Miki House の文字の入った靴を見せたら、みんな一様にMickey Mouse って書いてある、とコメントしたからだ。まあ、確かに見かけも似てますね。 パロディー・ステッカーにも、縦にMickey MouseMiki House を並べたものもありました。


Vine Linux 5.2 から 6.0 へのアップデート  [08/12/2011]

OS のバージョンアップというのは、うれしくも あり、不安でもある。今、使っているハードウエアの性能を精一杯発揮できるようになるかもしれないし、 一方では、ひょっとして時代から取り残され、特定のハードウエアが、もうサポートされなくなる可能性もあるからだ。 ソフトウエアのアップデートは、基本的に大歓迎だが、本当に改善されているのかどうかは、使ってみるまでは分からない。

2011年8月6日に、Vine Linux 6.0が正式にリリースされた。 Vine Linux 5 から約2年ぶりのメジャーバージョンアップだそうで、 時間が経つのが早いと感じさせる。 今回は、たまたま仕事の合間だったので、 さっそくADM64/Intel64 PC (64bit)DVD/USB ISO イメージをダウンロードして DVD に焼き、ThinkPad T60(1954-G2J)Vine Linux 5.2 をアップグレードすることにした。結論的には、今回のメジャー・バージョンアップは、 プラスの面が大きく、大歓迎だった(感謝 > Project Vine)。

この頃は、考えてみると、アップグレードする際には、HDD も新調し、クリーン・インストールをしてきた(これの方が、トラブルが少ないから)。 ただし、バックアップしておいたデータを、後からコピーするだけではすまない。 バージョンアップしたソフトウエアに関しては、 古い設定ファイルと新しい設定ファイルを比較しながら、しばし考えることもある。 で、今回は、しばらくぶりに、アップグレード・インストールを試すことになった。

DVD に焼く前に、チェックサムの確認をしておく。 Vine60-DVD-x86_64.iso をダウンロードしたので、 それに対応するチェックサムをVine60-DVD-x86_64.iso.sha1sum という名前で、ダウンロードした iso ファイルのあるディレクトリに保存して、 以下の「SHA1 ハッシュチェックサム」のコマンドを実行すると、 問題なければ「完了」のメッセージがでる。

$ sha1sum -c Vine60-DVD-x86_64.iso.sha1sum
Vine60-DVD-x86_64.iso: 完了

Brasero(2.26.3)DVD に焼き、ThinkPad T60 にセットして起動。 後はいくつかの質問に答えるだけだ。今回は、アップグレードということで、 以下の但し書きにしばし迷ったが、何もせずに強行してしまった(これが、 後で20〜30分程度の時間のロスにつながってしまった)。

インストーラを利用したアップグレードを行う場合は、Vine Linux 5x CD エディションからインストールされた環境でも、 DVD エディションの利用をおすすめします。 収録パッケージが多いため、より多くのパッケージのアップグレードが期待できます。
DVD エディションでのアップグレード処理が完了したあとに、 apt やsynaptic により残りのアップグレードを行う必要があります。

# apt-get update
# apt-get -f install
# apt-get dist-upgrade

Vine Linux 用以外のパッケージ、商用ソフトウエアなどを利用している場合は、 正常にアップグレードできない可能性が高くなります。あらかじめ削除しておくことをおすすめします。サポート・免責

plymouth -> login-window (Vine Linux 6)

DVD でのインストールは一見正常に終了し、 DVD トレーからDVD を取り出 してからリブードし、上記にあるように、 apt-get update; apt-get -f install をしたら、大量の「...依存:...」メッセージが出てきて、最後に、 「これらを解決するためには 'apt-get --fix-broken install' を実行する必要があるかもしれません。」 と言われてしまった。言われるままに'apt-get --fix-broken install' を実行すると、今度は、最後に、 「E: *エラー* pkgProblemResolver::Resolve は停止しました。おそらくホールドされたパッケージが原因でしょう。 E: 依存関係を解決することができません」と来ました。いやーな雰囲気になってきて、 「Vine Linux 用以外のパッケージ、商用ソフトウエアなど」を思い出してしまった。

気をとりなおして、synaptic を立ち上げて「破損パッケージの修復」を選択すると、 今度は、AdobeReader_jpn.32bit で止まってしまうことが分かった。 では、と思いAdobeReader_jpn.32bit を削除しようとしてもできない。 そこで、install-assist-AdobeReader_jp を思い出して、 このパッケージを選択して、再インストールを選択して実行。 すると、 AdobeReader_jpn.32bit は削除されたので、 「破損パッケージの修復」を選択したところ、無事に完了。 Adobe Reader が鬼門だったようだ。その後、手っ取り早く /etc/apt/sources.list.d/ 以下の、 main.list, nonfree.list, plus.list をそれぞれ main.list.old, nonfree.list.old, plus.list.old にリネームし、 main.list.rpmnew, nonfree.list.rpmnew, plus.list.rpmnew をそれぞれ main.list, nonfree.list, plus.list にリネームしてから、 apt-get update; apt-get upgrade をして、なんとか無事に(?)アップグレードを終了した。

アップグレード・インストール時には、「Vine Linux 用以外のパッケージ、商用ソフトウエアなど」 を削除しておくべき、というのは、原則、その通り(もちろん、場合によっては「悪さ」をしないソフトウエアもあるはずなので、 運がよければ何事も起こらないはず)。
OpenOffice.org (3.1.1) は削除されていたので、 synaptic で覗いてみると、install-assist-LibreOffice があったので、これをインストール実行すると、LibreOffice 3.4.2 がインストールされた。 distribution ごとに手を加えることなく、オリジナルを取りに行ってインストールする、というのは、1つの良い選択肢かもしれない。

ThinkPad T60 では、Tux on Ice によるハイバネーションも、正常に動作しているようで、若干スピードも速くなった気がする。 サスペンドは、まれに子プロセスが邪魔をするのか、フリーズすることがある。 wine(1.2.3)Office-Bibliothek も無事に動いている。 あとは、TeX Live 環境に慣れる必要があるが、 これは、Vine Linux 6.0 での TeX Live 環境 で触れておく。


Ubuntu 11.04 でエプソンのスキャナGT-F570を動かす  [07/17/2011]

どたばたと日々仕事に追われながら、6月についにスキャナを設定する必要に迫られた。 普段なら、きちんと手順をメモしながら進めるのだが、今回は記録が曖昧だ。結果としては、xsaneiscanもちゃんと動いている。手順は、 エプソン アヴァシス(株)のサイトから、 Linux用のダウンロード・ページへ飛び、 RPMをダウンロードして、alien パッケージでdeb ファイルに変換してインストールし、その後、いくつかの設定をする、 という流れだ。

前提として、エプソンのスキャナGT-F570 は、USB 接続され、 sane, xsane, alien 関係のパッケージがあらかじめインストールされているものとし、 インストールはターミナルを開いての作業だ。

5つのファイルをダウンロード
「GT-F570用 (for gcc 3.4 or later) ダウンロード」を選択し、(1), (2)のRPM パッケージをダウンロード。(3) は、ユーザーガイド。(4),(5)は、チェックサムファイル。

(1) iscan-2.10.0-1.c2.i386.rpm	359,714 バイト
(2) iscan-plugin-gt-f520-1.0.0-1.c2.i386.rpm	125,919 バイト
(3) userg_revG_j.pdf	579,156 バイト
(4) iscan-2.10.0-1.md5	175 バイト
(5) iscan-plugin-gt-f520-1.0.0-1.md5	147 バイト

1. すべてを同じディレクトリに落としておいて、md5sum --checkをして、 ちゃんとダウンロードできているかを確認。

$ md5sum --check iscan-2.10.0-1.c2.i386.rpm
$ md5sum --check iscan-plugin-gt-f520-1.0.0-1.c2.i386.rpm

2. alien パッケージを使って deb ファイルに変換してインストール。 慎重をきすなら、sudo alien -d iscan*.rpm してから、sudo dpkg -i iscan*.deb だろうが、時間がなかったので、もういっぺんにお願いした。

$ sudo alien -i iscan-2.10.0-1.c2.i386.rpm iscan-plugin-gt-f520-1.0.0-1.c2.i386.rpm

その結果は、以下のようなメッセージが出てどうやら一応、変換されてインストールされたもよう。 警告メッセージが出ているように、本来は、スクリプトを含めてインストールするように、 sudo alien -i --scripts iscan*.rpm とすべきだった(後悔)。その場では、 このメッセージに気づかずに進めてしまった。これをやっておけば、後の作業は不要だったかも…。

[sudo] password for xxxxxx: 
Warning: Skipping conversion of scripts in package iscan: postinst postrm preinst prerm
Warning: Use the --scripts parameter to include the scripts.
dpkg --no-force-overwrite -i iscan_2.10.0-2_i386.deb
未選択パッケージ iscan を選択しています。
(データベースを読み込んでいます ... 現在 138033 個のファイルとディレクトリがインストールされています。)
(iscan_2.10.0-2_i386.deb から) iscan を展開しています...
iscan (2.10.0-2) を設定しています ...
man-db のトリガを処理しています ...
libc-bin のトリガを処理しています ...
ldconfig deferred processing now taking place
Warning: Skipping conversion of scripts in package iscan-plugin-gt-f520: postrm
Warning: Use the --scripts parameter to include the scripts.
	dpkg --no-force-overwrite -i iscan-plugin-gt-f520_1.0.0-2_i386.deb
未選択パッケージ iscan-plugin-gt-f520 を選択しています。
(データベースを読み込んでいます ... 現在 138079 個のファイルとディレクトリがインストールされています。)
(iscan-plugin-gt-f520_1.0.0-2_i386.deb から) iscan-plugin-gt-f520 を展開しています...
iscan-plugin-gt-f520 (1.0.0-2) を設定しています ...
libc-bin のトリガを処理しています ...
ldconfig deferred processing now taking place

3. なにも考えずに、さっそく$ iscan すると、 「スキャナにコマンドを転送できません。スキャナの状態を確認してください。」というつれないメッセージ。
lsusb してみると、以下のように、Seiko Epson Corp. Perfection 3590 scanner という文字が見える。

$ lsusb
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 005: ID 046d:c52f Logitech, Inc. Wireless Mouse M305
Bus 002 Device 004: ID 056e:7006 Elecom Co., Ltd 
Bus 002 Device 003: ID 04f9:001f Brother Industries, Ltd 
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 04b8:0122 Seiko Epson Corp. Perfection 3590 scanner
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

以前にインストールした時のことを思い出して、 /etc/sane.d にある設定ファイル dll.conf を同じディレクトリにある dll.d/ へ移動し、以下の編集を加える。

$ sudo mv dll.conf ./dll.d
/etc/sane.d/dll.d/dll.conf の適当なところに、epkowa の一行を加える。

4. 最終確認。3. のステップの時は、$ scanimage -L としても、 No scanners were identified. ... となっていたが、今度は、 sane-find-scannerと、 scanimage -L をしてみると、一応、スキャナを認識し、スキャナもキキキーっと音を立てる。

$ sane-find-scanner
...
found USB scanner (vendor=0x04b8 [EPSON], product=0x0122 [EPSON Scanner]) at libusb:001:003
...
$ scanimage -L
device `snapscan:libusb:001:003' is a EPSON EPSON Scanner flatbed scanner
xsane with GTF760/Epson Scanner on Ubuntu 11.04

なお、epkowa.conf でカーネルモジュールの設定をコメントアウトするようになっているかどうかを確認したところ、 ちゃんと #usb /dev/usb/scanner0 となっていたので、その部分はいじらなかった。

これで、xsane は左の画面のように動き、スキャナが使えるようになったが、 iscanを動かそうと思ったら、iscan is a GIMP plug-in and must be run by GIMP to be used と言われてしまったので、追加で、gimp-quiteinsane をインストールした。 Quite insane! と言われてしまうと、ジョークだとは思いつつも躊躇してしまう(ジョークではないかも…)。

デバイス使用可能のところに、2つ見えるが、libusb:001:003 となっているところから分かるように、 EPSON Scanner1 は、GT-F520/F570 のエイリアスにすぎない。 flatbed が「フラットベッx」になっているのは、なぜ、と思いながら、あまり追求せずに使い始めた。

今回は、あせって設定したために、本当はどうすべきだったのか、きちんと検証せずに終わってしまい、 多少気持ち悪さが残った。結果的には、iscan(2.10.0-2), xsane(0.998-1ubuntu1), Simple Scan(2.32.0.1) が動作している。もし、ここまでやって動作しない時は、 一度、スキャナの電源を落として(電源コードを引っこ抜いて)、電源の投入をし直して(電源コードを差し込む)と認識されるかもしれない。


ようやく自作: Sandy Bridge のUbuntu マシン  [06/09/2011]

2011年3月11日に、これまでつかっていた自作機(2005年12月組み立てた 4P800-E Deluxe, P4 3GHz) が地震で故障してそもままになっていた。 なんとかディスクトップ機を動かさねば仕事上も支障がでるので、一時は安い出来合いのマシンを購入するか、 中古製品に手を出そうか迷っていたら、2ヵ月近く経ってしまった。 何しろ、次々と仕事が押し寄せ、それに従って締め切りもどんどん増える。日々福島第一原発を気にしながら、 もう自作なんて無理だ、と一時は思ったが、「日経Linux」2011年5月号に勇気づけられ、少しずつパーツをそろえ、 少しづつ組み立てれば何とかなると思い始め、一ヶ月前から実行に移し、5月末には完成した。

結果としてみると、「日経Linux」2011年5月号のマシンと構成的にはあまり変わらないことになった。 時間がないため、安い店で安いパーツを探し回ることはできなかったが、今回の予算は、結果的には、8万円程度になった。 以下に、今回組み立てたマシンのパーツをメモしておく。

パーツ 製品名 製造会社
M/B M/B P8H67-M Evo B3 ASUSTek
CPU Corei3-2100T Intel
HDD Deskstar 0S02601 (1TB) HGST
Power Supply CORE4-500-P Scythe Japan
Memory D3U1333 (2G x 2) Bufallo
DVD/CD Drive BR3D-12FBS-BK Bufallo
Case JX-FM500B Mustardseed
cables OCL-01 Valuewave

一応は、Sandy Bridge を使った最新のマシン、ということになるが、 CPU に下位の Corei3-2100T を使ったのは、 省電力マシンにしたかったから。マザーボードに、ASUSTekMicro ATX を選択し、ケースもマスタードシードのJX-FM500 を選択。ついにスタンダードなATX のケースとはお別れすることになった。 DVD/CD Drive には、「日経Linux」で取りあげられていた Blu-ray 対応製品を選んでいる。ちょっとかわったところは、 「ピン配列変換ケーブル」を購入した点で、これは、マザーボードとケースの電源ランプのピン形態が一致していないためだ。 ケースは、質感のある黒でなかなかよいが、特に説明書らしきものが入っていなかったので、 JX-FM500B_MANUAL.pdf をダウンロードして、あらかじめ目を通しておいた。

ほぼ6年ぶりの自作とあって、マザーボードの変化や、I/O パネルの変化にびっくりした。 基本的には、6年前に比べると、格段に組み立ては簡単になった、と言える。 今回選択したCPUには、GPUが内臓されているので、 (1) マザーボード、(2) CPU、(3) DVD/CD Drive、 (4) ハードディスク、(5) メモリ、(6) ケース、(7) 電源でできてしまう。もちろん、キーボード、マウス、 ディスプレーは手持ちのものを利用するという前提だ。

昔と比べると、標準では FDD がない、シリアルやパラレルのポートがない。 その代わりに、やたらとUSB (USB 2.0x6, USB 3.0x2) の数が増え、ディスプレー接続の種類が増えた。 うっかりしていたのは、これまでのマシンでは、キーボードもマウスもPS/2 につないでいたのだが、 PS/2 ポートが1つしかなかったことだ。やむをえず、キーボードをPS/2ポートにつなぎ、 マウスは、ThinkPad T60 で使っていた Logicool M305USB 接続だったので、これを流用した。 HDD は、ついに Terabyte 製品に手を出してしまった。 1 TB HDD は、たったの4,932円だった(もっと安い製品も、もっと安く販売している店もある)。 おそろしやー、と思いつつも、つい先日のニュースでは、「77万テラベクレルに修正」とかいう話があったので、 上には上がいる。10^12、コンピュータの世界では 2^40 がテラなので、 兆の世界だ。

Extensible Firmware Interface provided by P8H67-M-Evo B3

IBM PC 以来の化石の BIOSが消え、 P8H67-M Evo B3 では、UEFI が採用されている。 EFI (Extensible Firmware Interface) の拡張仕様として、これから主流になっていくと思われ、 Itaniumプロセッサを使ったWindows プラットフォームや、 インテルベースのMac などでも採用されている。

左画面は、ちょっとメッセージをドイツ語に変えてみたもの。これは、EZ mode の様子。 なにやら、easy に全体の様子を見渡せる。起動時の自己診断テストの間にDEL キーを押すと、このモードに入る。17インチの FlexScan L550-R で表示させているが、 今風の WUXGA なんかで見ると、随分と違って見えるに違いない。 ただ、ちょっとDELキーを押すタイミングがむずかしい。

今回のトラブルは、2つあった。1つは、「日経Linux」ですでに知っていた問題で、ケース電源ランプへつながるピンの形状が合わない、 というもの。これは、上ですでに紹介した「ピン配列変換ケーブル」でしのぐ。 フロントI/O コネクタが、ASUS Q-Connector という名前になっていて、 取り外しができ、そこにコネクタをはめ込んでから、マザーボードのコネクタに挿すことができるのだが、それにしてもケース電源ランプに接続するコネクタの位置がずれている。 ケースのJX-FM500B では、青白のケーブルで隙間がなくピンが並んでいるが、 ASUS Q-ConnectorPWLED+PWLED-は、 2つのピンの間に1つのピンの隙間がある。そこで、 ピン配列変換ケーブル(OLC-01)の白と緑の単線ケーブルを使って、 両者を接続した。 ちなみに、OLC-01 には、8本の単線ケーブルが入っていたが、青色はなかった。とりあえず、 白はマイナスだろうと思って白は白、青と緑を接続した。

OLC-01 cables for changing the position of the pins

2つ目のトラブルは、もう組み立てを終え、通電テストも行った後、イーサーネットケーブルを RJ-45 のコネクタに挿そうとした時に起こった。ささらないのだ。 LED懐中電灯でよく見ると、バックパネルをケースに取り付けた後に、マザーボードを押し込む際に、 バックパネルのコネクタを支える部分が内側に折れ曲がってしまっていた。もう、分解する気もなかったので、 マイナスドライバーで内側に折れ曲がった部分をほじくり出して、外側に曲げることで、なんとか無事に(?) RJ-45 にケーブルを挿すことができた。

振りかえってみると、1日10〜15分程度をさいて作業をしていたが、10日程度で終わってしまい、結構あっけない組み立て作業だった。 ソフトウエアのインストールは、Windows を入れないと簡単そのものだ。 Ubuntu 11.04 の日本語 Remix CD(2011年5月1日版、ubuntu-ja-11.04-desktop-i386.iso)を Home | Ubuntu Japanese Team からダウンロードして、VineLinux 5.2 上の Brasero(2.26.3) で手持ちの DVD-R に焼き、 そのディスクを入れてインストール完了。まだまだ、いろいろとソフトウエアの設定をしたいところだが、 とりあえずネットワークやサウンド、プリンタなども無事に動いている。

Ubuntu 11.04 on P8H67-M-Evo B3 (Corei3-2100T)

起動時間は、およそ34秒(ログイン窓がでるまで)。シャットダウンが5秒。これだけでも、これまでのマシンとは大違いだ。 あとは、スキャナを何とかしなければならないが、これは時間ができてから、ということになった。

左の写真は、広角のデジカメで撮影したために画面が歪んでしまっているが、Ubuntu 11.04 のユーザ・インターフェイスは大きく変わってしまった。最新マックOSのユーザ・インターフェイスが、画面下にごてごてとアイコンを並べるのに対して、 Ubuntu 11.04 は、画面左側にごてごてとアイコンを並べる。こういうの、どこかで見たなあ、と考えてみると、 NeXT が四角の大きめアイコンを画面の端に並べていたのを思い出した。

バックグラウンドは、もちろん標準でこんなものが出てくるのではない。これは、例によって、 http://art.gnome.org/backgrounds/ から頂いたものだ。

6年後は、2017年。果たして、また自作するかどうかはもちろん分からないが(ひょっとして、もう日本が無くなっていたりして?)、 ハードディスクはテラ・バイトからペタ・バイトの世界になっているかもしれない。くわばらくわばら。


Wine で、MS-Word  [01/26/2011]

Wine と言っても、飲み物ではなく、 " Wine is an implementation of the Windows Application Programing Interface (API) library, acting as a bridge between the Windows program and Linux. " (wineusr-guide.pdf, P.2) のこと。 Vine Linux 5 リリース直後は、Winex86_64版が提供されていなかったために、 qemu-0.9.1 をインストールして使い始めたが、kvm が動かないため、 kqemu-1.3.0 をさらにインストールして時々使っていた。しかし、やはり重い。 VMWare-Player 3.1 は、それ自体は快適に動くのだが、 コマンド・ライン端末でのエコーバックが微妙に遅くなり、いらいらして嫌気がさし、消してしまった。 そうこうする内に、またまたMS Word を使うことを指定した仕事がばたばたと入ってきて、 悲鳴をあげていた。そんな時、 Wed, 19 Jan 2011 にMLに以下のような情報が流れた。

すでに Vine Linux Magazine http://vinelinux.org/vlmagazine/
2011,01,17 分をお読みの方はご存じかもしれませんが、1/17 から、
Vine Linux 5 で TeX Live 2009 環境を導入できるようになりました。

おお、ついに来たか、TeXLive と思いつつ、 Vine Linux Magazine をながめていたら、 Wine-1-2.2x86_64 版でも動くようになっていた。 TeXLive はとりあえずおいておいて、Wine-1-2.2 をさっそく試してみることにした。 Word, Praat, Cosmas II client, Skype がみーんな動いてくれるとうれしい。 Word は、 qemu-0.9.1 で動いていたが、 Praat は、Vine Linux 5.1 以降(?)、動かなくなり困っていた。 Cosmas II client は、なぜか qemu-0.9.1 上では動かなかった。

結論から言うと、 Word, Praat, Cosmas II client は無事に動いたが、 Skype は今のところうまく動いていない。

Wine のインストール
http://www.winehq.org/ を見に行ってみると、 Stable: Wine 1.2.2(Jan. 23, 2011) となっていたので、率直に synaptic から wine-1.2.2-1vl5, wine-devel-1.2.2-1vl5, wine-doors-0.1.3-1vl5, wine-init-1.2.2-1vl5 を指定してインストールした。 wine-1.2.2-1vl5(Build Date: 2010年12月14日 01時21分12秒)。

Wine 1.2.2 menu

Wine の設定
Wine on VineLinux 4.2 で MS-Word [01/30/2009] の当時を思い出して、 インストール直後にホームディレクトリ以下に .wine を探したがなかったので、 左メニューに追加された WineWine Configuration をクリック。

[ドライブ]、[オーディオ]、[Wineについて]、[アプリケーション]、[ライブラリ]、[画面]、[デスクトップ統合] というサブ・メニューがある。
[ドライブ]では、ドライブのマッピングが示されており、 C: ../drive_cZ: / となっている。Windows アプリケーションの世界に入れば、C ドライブに見えるのは、ホームディレクトリ以下の .wine/drive_c となる。一方で、Z ドライブが Linux のルートとなる。 特に何も設定しないでよい。

[アプリケーション]では、Wine がアプリケーションによって異なる Windows のバージョンをエミュレートできるので、その設定をするが、初期状態では特にいじる必要はない。

[オーディオ]では、サウンドドライバを指定できるが、OSS ドライバで、「音をテスト」してみたら、問題なく音が出たので、そのまま[適用]をクリックした。

[画面]では、「ウィンドウ設定」、「Direct3D」の設定、「スクリーンの解像度」の設定ができる。 ここも、問題があった時のみにいじればよさそうなので、特に設定は変えなかった。

結局、設定らしい設定は、 [オーディオ]のところだけで、適用ボタンをおしただけで終了。 その結果、ホームディレクトリ直下に .wine が生成された。

MS-Office 2003(ドイツ語版)のインストール
Wine on VineLinux 4.2 で MS-Word [01/30/2009] の時と同様に、 MS-OfficeCD-ROM をドライブに入れると、 /media/OFFICE11/ にオートマウントされるので、terminalで、
$ cd /media/OFFICE11/
$ wine setup.exe
として、手動でインストールを開始。後は、2年前と同じ。 Word, Excel, PowerPoint と、その他のエクステンションを適当に選択してインストールを開始し、無事終了。 最後にネットでのアクティベーションを選択し、これも無事終了。

Word 2003 を立ち上げた時に思い出したのは日本語入力だ。 あらかじめ、日本語のエクステンションもチェックしておいたので、日本語の表示は問題ないが、 MS-IME は入っていないので、以前も入力は、と gEdit などで行い、 コピペしていた。SCIM を使い、anthy で入力する設定はかなり面倒だったので、 2年前はやらなかった。

今回は、これが標準的にできるようになっていた。ただし、変換中のエコーバックがないので、 確定した時点で初めて文字が見える。

これでは不便なので、どうにかならないかとネットを探してみたら、 http://hyamada.ddo.jp/hiki/hiki.cgi?wine に以下のような説明を発見。感謝。 この設定で、別窓ではあるが、左下に変換中の文字が見えるようになった(以下は、黒い背景に「入力」という文字が見えるが、 変換文字を選び、確定しようとしているところ)。

変換中の文字列が見えるように、vi等のエディタで~/.wine/user.reg の最後に以下を
追加してください。
 [Software\\Wine\\X11 Driver] 
 "InputStyle"="root"
input-method Anthy in scim (Japanese)

Praat, Cosmas II client のインストール
Praat は、Windows 用32bit バイナリの zip で固めたもの(praat5211_win.zip)をダウンロードして、 Vine Linux 上で解凍し、$ wine praat.exe でなんなく起動できた。

Cosmas II client は、3.8 (c2-setup-v3.8.exe) を以前ダウンロードしてあったので、それをインストール($ wine c2-setup-v3.8.exeとしただけ。) すると、インストール終了後に、バージョンアップのお誘いが来て、3.10.1 に無事にアップデート終了。 以下は、Vine Linux 5.2 上で、Wine 1.2.2 を使い、 Cosmas II client (3.10.1) を動かし、ログインした直後の画面。

Cosmas II client (3.10.1) in Wine (1.2.2)/Linux

Skype のインストール
まず、Windows 用のファイルをダウンロードするところからつまづいてしまう。 Linux からブラウザでアクセスすると、アクセス・ログから OS タイプを見分け、 OS にあったページに誘導されてしまう(つまり、Linux からでは、 Windows 用のファイルをダウンロードできない)。 Windows (on QEMU) からダウンロードしたら、 それはプログラム本体ではなかった。つまり、 $ wine SkypeSetup.exe を実行すると、ブラウザが立ち上がり、その時初めてプログラム本体のダウンロードが始まる。 以下のようなログでこけるが、2つ窓が出て消えてしまった。

そこで、qemu 上の Windows XP を動かし、 Internet Explorer を立ち上げ、 SkypeSetup.exe を実行。 インストール先の、Program Files ディレクトリ内の Skype 以下をまるのままコピーし、.wine/drive_c/Program Files 以下にコピー。 あとは、1回、バイナリを動かしてから、regedit で適当に設定するつもりでいたが、 そう簡単にはいかなかった。目下調査中、といってもこれ以上深入りする時間は残念ながらない。

$ wine SkypeSetup.exe 
fixme:time:GetCalendarInfoW Unimplemented caltype 4
fixme:time:GetCalendarInfoW Unimplemented caltype 3
fixme:win:WINNLSEnableIME hUnknown1 0x20030 bUnknown2 0: stub!
fixme:win:WINNLSEnableIME hUnknown1 0x20030 bUnknown2 -1: stub!
fixme:wininet:InternetSetOptionW Option INTERNET_OPTION_CONNECT_TIMEOUT (10000): STUB
fixme:wininet:InternetSetOptionW INTERNET_OPTION_SEND/RECEIVE_TIMEOUT 10000
fixme:wininet:InternetSetOptionW Option INTERNET_OPTION_DATA_RECEIVE_TIMEOUT (10000): STUB
fixme:win:WINNLSEnableIME hUnknown1 0x100a8 bUnknown2 0: stub!
fixme:wininet:set_cookie persistent cookies not handled (L"expires=[...] GMT; path=/; domain=.skype.com;")
fixme:win:WINNLSEnableIME hUnknown1 0x100a8 bUnknown2 -1: stub!
fixme:win:WINNLSEnableIME hUnknown1 0x100a8 bUnknown2 0: stub!
fixme:win:WINNLSEnableIME hUnknown1 0x100a8 bUnknown2 -1: stub!
fixme:win:WINNLSEnableIME hUnknown1 0x100a8 bUnknown2 0: stub!
fixme:win:WINNLSEnableIME hUnknown1 0x100a8 bUnknown2 -1: stub!

FileFormatConverters.exe
*.docx, xlsx, pptx などを *.doc, *.xls, *.ppt などに変換するMSの提供するコンバータ FileFormatConverters.exe は、インストールは成功、とでるが、 Word 2003 がハングするようになる。 セーフモードで立ち上げると、確かに *.docx ファイルをオープンできるが、 次に立ち上げた時にハングする。結局、wine 付属の Uninstaller でも、このコンバーターは削除できなかったので、.wine/drive_c/Program Files/Microsoft Office/OFFICE12 以下を削除し、regedit で、OFFICE12 以下を削除し、 MS Office の CD からsetup.exe 立ち上げ、 インストールされているプログラムの修復を行って難を逃れた。

qemuWindows XP が動いているなら、なんでその上でMS-Office を使わないの、 と聞かれてしまうが、qemu は、遅すぎるのだ。それに比べて、Wine を介して Word 2003 を開くと、2〜3秒以内に仕事ができる(多分、キャッシュに入っている状態で)。 Openoffice 3.2 は、キャッシュに入っている状態なら 2秒以内に立ち上がる。 随分と快適になったものだ、と思っていると、近くにいる Windows XP ユーザーの MS Office 2003 が使える状態になるまでの長いこと。コンピュータの電源を入れて、使えるような状態になるのに、3分から5分かかる。ウイルスチェックや、 インストールされているさまざまなソフトの更新(マイクロソフトを含む)を見に行っている間は、ほとんど触らない方がよいような状態だった。 Windows XP の場合、やはり相当なダイエットをしないと、今時速くは動かないのだろう。

Wine で Word 2003 はどうよ?
本格的に MS Word を使いたいなら、 Windows 環境で使うのがもちろん一番よい。 ただし、MS Word は決して使い易いワープロではない。一太郎の方がよい/よかった、という人もいるだろう。 残念なことに、現在ではデファクト・スタンダードになってしまった。トラブルもいろいろあるので、私はあまり使いたくない、というのが正直なところ。 でも、いざという時に、 Openoffice だと、オリジナルのレイアウトが見れないことがある。 そんな時には、 WineMS-Word というのは、よい選択肢だと思う。 ちなみに、Excel がからむと、pdf 化しても、レイアウトが崩れることが多いのでご注意。 PDF も、残念ながらフォントを埋め込まない限り、マルチ・プラットフォームでの正しいレイアウトは保障されない。

もちろん、WineWord 2003 を動かすというのは、 Windows 環境がまるまる存在する訳ではないので、すべての機能が使えるとは限らない。例えば、 Windows が提供する特定の *.dll がないと動かない機能もある。 そんなところまで踏み込みたい人は、winetricks があるが、そこもまた底なしなので、ご注意ご注意。


カーソルは上へくっつき、バッテリーは65%で「わずか」と言った。  [11/15/2010]

ノートパソコン、あるいはラップトップ・コンピュータの寿命はどれくらいだろうか? 周囲の人達を見ていると、2〜3年で買い換えるという人達が多いような気がする。 今、私が使っている ThinkPad T60 は、2006年製。現在4年目だ。 まだまだ使えると思っているのだが、「物持ちがいいねえ」と言われたこともある。 一般的に、ハード、ソフトのどちらかの面で、 コンピュータをかなり使い込んでいる人ほど長く使う傾向があるように思う。 中古のノートパソコンを激安で購入して、Linux 系の OS を入れて活用している人達もいる。 「2〜3年で買い換える」のは、もったいない。 Windows が重くなって動きが遅くなったからという理由で買い換えるとしたら、もっともったいない。

ただ、どんな機種でも、長持ちするかというとそうではない。 結果から言って、 ThinkPad T60 は結構優秀な部類に入ると思うが、しかし…

トラブル (1)
先日、しばらく使う内に、カーソルが画面の上の左にくっついてしまった! しばらく観察していたら、どうやらコンピュータ本体が熱を持ち始めてしばらくしてから起こること、 タッチパッドの右側あたりに触れると、カーソルが変な動きをすることがわかり、 どうやらタッチパッド周辺の問題だと思うようになった。タッチパッドをソフトウエア的に調整できないか、 「マウスの設定」を見て何かできないか探ってみたが、Vine Linux 5.1 では特に調整できるところがないようだ。

そもそもタッチバッドって、不具合を起こしている人が多いディバイスだ。ネット上にも、 タッチバッドを止めて、マウスを接続している人も多く見かける。

やったこと (1)
そこで、思いついたのは、「お掃除」。ゴミがたまって接点不良を起こしているのかな、と思った次第。 さっそく、パームレストあたりのカバーを外して、やさしくブラシでたまっていたホコリを取り除き、 本体とタッチパッドを接続しているコネクタをいったん外して、ちょっとお掃除してから再度接続。 最後に、パームレスト側のいくつかの接点を軽く押さえて確認してから、元に戻した。

結果 (1)
どうなったか、というと無事に(?)、しばらく使っていたからといって、「カーソルが画面の左上にくっつく」 ことはなくなった。やっぱりね、と思っていたら、タッチパッドは、まったく反応しなくなっていた(愕然!)。
うーん、こんなはずじゃあなかったのに、思ったが、そこは ThinkPad。 トラック・ポイント(TrackPoint) が付いているので、 別に困らない。きっと、作業中に接点不良をさらに悪化させてしまい、 ついに断線にまで到った、ということだろう(トホホ)。

やったこと (2)
なんか、1つのディバイスが使えなくなったというのも、ちょっと寂しい。そこで、 Logicool M305 というマウスを購入して接続した。 ワイヤレスマウスで、USB 接続部分は、「ナノレシーバー」と呼ばれる小さなコネクタ。 右奥のUSB コネクタに挿して見ると、すぐに動作し、なかなか快適だ。 「アドバンス 2.4GHzワイヤレステクノロジー、スマートな電力管理、そして高解像度のオプティカルトラッキング」というふれこみだが、 今のところ極めて満足。もちろん、 Vine Linux 5.1 で使っているのだが、何もソフトウエアのインストールはしていない。 USB 機器の自動認識、ありがたいですね。 kernel からのメッセージは、 こんな感じ。

... kernel: input: Logitech USB Receiver as /class/input/input3
... kernel: input,hidraw0: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:1d.0-2
... kernel: input: Logitech USB Receiver as /class/input/input4
... kernel: input,hiddev96,hidraw1: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:1d.0-2

Panasonic Li-Ion (6 cells) トラブル (2)
ある日、帰宅してから AC 電源につないで使っていても、バッテリーアプレットの色がちっとも変わらないことに気がついた。 「電源使用率の統計」を見てみると、なんと、「充電の履歴」では、28%のところから、まったく上昇する気配がない。 つまり、AC 電源に接続していても、バッテリーにまったく充電が行われていない状態だ。 そこで、部屋を変えて AC 電源に接続してみると(実は、部屋によって電源の供給状態が少しづつ違っていたりするので)、 充電が始まりほっとしたのもつかの間。 「電源の管理」アプレット(2.24.4)の「ノートPCのバッテリー」をクリックしたら、以下のような情報が出てきた。 なんと、「容量:65%(わずか)」だそうだ。 /proc/acpi/battery/BAT0/ 以下にある情報を表示しているだけだと思うが、 こうやって窓を開いて見せられると、若干の説得力を感じる。 充電完了状態になっても、65%しか充電できない、というのは、 バッテリー容量を語る世界では、「わずか」なのだろう。4年間以上使ってきたバッテリーなので、 この際、新しいバッテリーを購入することにした。新品の状態で、だいたい3時間使えていたので、 180分X0.65=117分、だいたい最近のバッテリーの持ち時間(約1時間40分)に対応する。

やったこと & 結果
lenovo のサイトで価格をチェック。 ThinkPad T60 シリーズ 6 セルLi-ION バッテリー 40Y6799 をもう少し安い価格で早急に納品してくれるお店を発見して発注。 その結果届いたのが、今度は、Panasonic ではなく、SANYO 製品。 サンヨーブランドは、ほとんどが Panasonic に変わってしまうらしいが、 サンヨーの電池関係の技術はなかなか有名なので、とりあえず納得した。

SANYO Li-Ion (6 cells)

左に貼り付けた窓は、 装着してまもなく見たもので、充電率 21%にもかかわらず、「容量:100%(良好)」 となっている。一度、100%充電の状態にならないと、バッテリーによる動作時間の予想はたたないが、 予想通り、3時間という結果になった。「最終完全充電量」が落ちていくのは、バッテリーの宿命なのでしょうがない。 完全放電させてやれば、かなり復活することは知っているが、そのような機器をもっているわけでもないので、 バッテリーの復活サービスをやっているところに、古なったバッテリーを送付して作業してもらうのもよいのだが、 あと ThinkPad T60 は何年使えるだろうか、と考えてしまうと足踏みしてしまう。

感想
結局、全体のバランスというのがあるので、 ノートPCも、他の部品が劣化して使えなくなってしまえば、バッテリーだけ複数個あっても無意味になってしまう。

人間の身体も同じですね。 一生懸命にAの治療をしても、Bがいたんでしまい、それが原因で致命的状況に追い込まれる、なんてことがある。 「年をとる」、機械で言えば「古くなる」、そうすると基本的に構成するパーツは劣化していく。 劣化したパーツを簡単に取り替えられればいいのだけれども、実は、同時進行的にいろいろなパーツが劣化していて、 気がつかない、なんていうのが現実なのかもしれない。

昨今の超薄型のノートPCは、熱対策が難しいのではないか、 と想像したりする。部品の材質もさることながら、厚みがあることで何とか放熱できている面もあるので、 今回のタッチバッドの接点不良(?)に類似したトラブルは薄くなればなるほど、頻繁に起きるのではないだろうか(素人考え)。 そういえば、ケイタイもスマートフォンも、みんな薄いですねー。大丈夫でしょうか?!

ThinkPad T60 は、lenovoIBM ThinkPad の両方のロゴがついている珍しいマシンだ。 ThinkPad T61 からは、 IBM ThinkPad のロゴは消えている。別に、ロゴそのものに未練があるわけではないが、 「すべてが中国へ流れる」という時代の変化を感じてしまう。


冬眠から目覚めなくても死んでいない! HDD/TuxOnIce/Vine 5.1  [06/30/2010]

0. おそまつなイントロ
1. ハイバネーションから復帰しなくなった原因
2. USB Knoppix 6.1 で救出作戦: LVM2
3. TuxOnIce は優秀だが...

0.  おそまつなイントロ
ハードディスクを新しくして1ヵ月もたたない頃、またまた Vine Linux 5.1 が起動できなくなった。 今回は、クラッシュではないとの確信から、いろいろと調べているうちに、本当の原因は不明だが、問題はハイバネーション(hibernation(冬眠)) にあることが判明。結論としては、起動時に Grub から1つ前のカーネルを選択し、以下の (A) を (B) のように書き換え、 その場で b を押してboot し直すと、 無事に立ち上がった(書き換えた後にESCを押して戻ると、編集結果が反映されないので要注意)。

(A):
kernel /vmlinuz.old ro root=/dev/VolGroup00/LogVol00 resume=swap:/dev/VolGroup00/LogVol01 vga=0x314 splash=silent
(B):
kernel /vmlinuz.old ro root=/dev/VolGroup00/LogVol00 noresume vga=0x314 splash=silent

そもそも、最初の Western Digital のHDDも、同じように復活できたので、実は、クラッシュではなかった、 というアサハカな話だ。われながら、よく考えれば分かったのに、と今頃になって後悔。 それにしても、フリーズするのではなく、異常を検知したらリブートしてくれてもいいのに、と思う(異常を検知できなかった、ということかも)。 冬眠状態から覚めることがなければ、普通は、死んでしまったと誰もが想像しますよね(言い訳です)。

Reading kernel & process data ...

1.   ハイバネーションから復帰しなくなった原因
Reading kernel & process data ... というメッセージから先に進まず、フリーズしてしまうと、 そこからは通常の方法では回復の手立てがない。電源を落として再起動しても、結局、同じところでフリーズする(だから、 電源再投入後 Grub に制御が移ったところで、上で挙げたように、noresume を指定して、swap にあるハイバネーションのデータを参照しないようにするしかない)。 そう、このメッセージは、ブート時のメッセージではなく、ハイバネーションの時のメッセージだ。

ハイバネーションから復帰しなくなった原因を今あらためて推測してみると、最初の場合は、 GCC 関連の多量のコンパイルが終了した直後、2番目は、バッテリー駆動で、あと10分以内でバッテリーがなくなる状態だった時だ。 ハイバネーションをする前に、キャッシュに多量のデータが残っていると危険なのかもしれないし、 バッテリー容量がほとんどない状態でのハイバネーションは危険なのかもしれない。 ログが残っているわけではないので単なる憶測だが、注意するに越したことはない。

2.   USB Knoppix 6.1 で救出作戦: LVM2
今回、気がついたきっかけは、ハードディスク内のデータを少しでも救い出そうと思い、 USB 起動の Knoppix 6.2ThinkPad T60 を立ち上げて、 fdisk /dev/sda をしてみたところから始まった。 中身を見てみると、/dev/sda28e Linux LVM と表示され、「あっ!」と気がついた(遅いねぇ)。 昔みたいに、お立ち台に載せてそのままパーティションが見える、なんてことはなかったのだ(/boot だけは見える)。 Vine Linux 5.0 をインストールした時に、「おまかせモード」を選んでしまうと、 LVM2(Logical Volume Manager Version 2) になる、 ということだった。lvm 関連のコマンドもある。そこで、にわか勉強することになった。

今回参照したのは、 LinuxでLVMのデータを抜き出す方法(http://nosa.cocolog-nifty.com/sanonosa/ 内) と、論理ボリュームの管理(http://www.ibm.com/ 内) だ。

USB 起動の Knoppix 6.2 では、 device-mapper がロードされていないので、 まずは、dm-mod module を読み込む。

# modprobe dm-mod

次に、物理ヴォリューム(physical volumes)をスキャン。

root@Microknoppix:/home/knoppix# pvscan
  PV /dev/sda2   VG VolGroup00   lvm2 [148.94 GiB / 32.00 MiB free]
  Total: 1 [148.94 GiB] / in use: 1 [148.94 GiB] / in no VG: 0 [0   ]

/dev/sda2 上に、ヴォリューム・グループ(volumn groups)VolGroup00 が存在することが分かる。タイプは、lvm2。ここで、複数ディバイス上に、同じ名前のヴォリューム・グループがある場合には、 WARNING: Duplicate VG name VolGroup00: のような警告がでる。 もうこれでヴォリューム・グループは判明しているのだが、念のために、ヴォリューム・グループをスキャン。

root@Microknoppix:/home/knoppix# vgscan
  Reading all physical volumes.  This may take a while...
  Found volume group "VolGroup00" using metadata type lvm2

さらに、論理ヴォリューム(logical volumes)をスキャン。すると、 ヴォリューム・グループの下に、2つの論理ヴォリュームが見える。

root@Microknoppix:/home/knoppix# lvscan
  inactive          '/dev/VolGroup00/LogVol00' [145.97 GiB] inherit
  inactive          '/dev/VolGroup00/LogVol01' [2.94 GiB] inherit

lvscan の結果、2つの論理ヴォリュームが、 どちらも inactive ということは、カーネルから見えていない状態。 vgchange で、ヴォリューム・グループの属性を変える。

root@Microknoppix:/home/knoppix# lvm vgchange -ay VolGroup00
  2 logical volume(s) in volume group "VolGroup00" now active

Grub の起動オプションを見ても分かるように(もっと前に気がついているべきだったのだが)、 root=/dev/VolGroup00/LogVol00 となっているので、 /dev/VolGroup00/LogVol00 がルートで、これをマウントすることでデータを救出できる。 後は、昔からの方法で、マウントポイントを作って、マウント。

root@Microknoppix:/home/knoppix# mkdir /mnt/data
root@Microknoppix:/home/knoppix# mount /dev/VolGroup00/LogVol00 /mnt/data
root@Microknoppix:/home/knoppix# ls /mnt/data
bin   dev  home    lib    lost+found  misc  net  proc  sbin     srv  tmp  var
boot  etc  initrd  lib64  media       mnt   opt  root  selinux  sys  usr

これで、無事にマウントでき、データが見えた。

3.  TuxOnIce は優秀だが...
Grub の起動オプションに resume=swap:/dev/VolGroup00/LogVol01 となっているので、 Vine Linux 5.1 では、スワップ領域にハイバネーションのキャッシュを置いている。 そして、スワップも LVM2 で管理されてる。

ということは、clear-linux-memory-cache (http://futuremix.org/ 内) に解説があるように、kernel 2.6.16 以降で使える
# echo 3 > /proc/sys/vm/drop_caches
とか、
#sysctl -w vm.drop_caches=3
のようにして、キャッシュをクリア(1: ページキャッシュ解放, 2: ダーティキャッシュとi-node解放、 3: すべて解放)してもよいのかもしれない。ただし、これは、今回のようにフリーズしてしまっては使えない。

今回は、USB 起動の Knoppix 6.2 を使ったが、 Live CD/DVD を利用してもできるだろう。起動できるハードディスクから立ち上げて、 外部に起動できなくなったハードディスクをつなぐ場合には、同じ名前のヴォリューム・グループができてしまう可能性があり、 そのままでは、active にできないので、グループが inactive なのを確かめて、 # lvm vgrename で名前を変えてから active にしてマウントすることになる。 ちょっとめんどうだ。

TuxOnIce は、suspend2 時代に比べると、 格段に進歩している。そして、今では、カーネルに統合されている (/usr/share/doc/kernel-doc-2.6.27/Documentation/power/tuxonice.txt 参照)。 「氷の上のTux君」、かなり優秀だ。ThinkPad T60 の場合、今回の2つのケースを除いては、 まったく問題なく、しかも本当に速くて早い。本家のサイトにあるように、 "TuxOnIce is most easily described as the Linux equivalent of Windows' hibernate functionality, but better. " というのは本当だと思う。ただし、新しいハードウエアでは、問題のあるケースもあるようだ。

もうすべて作業が終わった頃になって、 [PC] ThinkPad X200s でLinux (Vine Linux )を使う : その2 (2009年9月〜) というページを発見し、同じ状況に陥った同志(?)を発見。ThinkPad X200s でも再現しているようです。

余談:hibernate(冬眠する)という動詞の反意語は、estivate(夏眠する)。 電子辞典の『ブリタニカ国際大百科辞典』によると、夏眠(estivation)とは、 「生物が夏の高温乾燥の季節に活動を一時停止すること。」とあり、「カエル、カタツムリのある種では、水分蒸発を防護するため湿度の高い地中にもぐり、 集団で夏眠する。」とある。さらに、肺魚、その他昆虫類、ヒル、爬虫類などにも夏眠するそうだ。

コンピュータの場合には、「高温乾燥状態になって、眠ってしまう」という戦略は考えにくいですね。 「熱暴走」する危険性が、ある一定レベルを超えた時に、その状態を感知して夏眠する、という戦略はありかもしれません;-) 夏眠する前には、「CPU/GPUを十分に冷やしてから、起動して下さい!」なんていうメッセージを出すとか…。


Vine Linux 5.1 で skype?  [06/16/2010]

0.  イントロ
1.  VMware player 3.1 に Ubuntu 10.04 をインストール
2.  UCAM-DLV300T の認識
3.  skype のソフトウエア
4.  印象

0. イントロ
疾風怒濤の5月に、シンポジウムの打ち合わせのために、(今頃になって)初めて Skype を使ってみた。最初、USB接続でソフトが不要のエレコムの UCAM-DLP130T(BK) を2,980円で購入したら、 これが不良品。しようがなくて、返品したついでにもう少し上の UCAM-DLV300T(BK) を4,980円で購入。 Skype会議は、この Webcam を使い、 場所の関係から Windows マシンで行った。回線の状況から動画が見れなかったが、 音声は良好で2時間超の打ち合わせも無事に終了した。

UCAM-DLV300T は、Vine Linux 5.1でもハードウエアはちゃんと認識していたので、 動かすのは6月の課題とした。

まず、Skype のサイトから、 ダウンロードを選択してLinux のソフトを見てみると、Skype for Linux 2.1 ベータ版 がバージョン 2.1.0.81。動作要件は、以下のようになっていた。

* ハードウェア要件
* 1GHz以上のプロセッサ。
* 256MB以上のRAM。
* ハードドライブ空き容量20MB以上。
* マイクとスピーカー、またはヘッドセット。
* インターネット接続 - ブロードバンドを推奨(GPRSは音声通話をサポートしません)。
* Xv対応のビデオカードドライバ。
* ソフトウェア要件
* Qt 4.2.1+
* D-Bus 1.0.0
* libasound2 1.0.12
* PulseAudio 0.9.10+(オプション)
* PulseAudio 0.9.15+(推奨オプション) 

ハードウェア的には、問題ないので、ソフトウェアの要件を確認すると、Vine Linux 5.1(x86_64) の場合、qt4-4.6.1, dbus-1.2.14, pulseaudio-0.9.15 でここまでは OK だが、libasound2 というのが、libasound.so.2 で代用できるのかどうか不明だった。

結論から言うと、Vine Linux 5.1(x86_64) では、一見要件を満たすようだが、 gcc-4.1.2 に含まれる libstdc++.so.6GLIBCXX_3.4.9 に対応していないため、動かない。だったら、gcc のバージョンを上げればよい。 ただし、32ビット環境で動かすため、Vine Linux 流では、compat32-* が必要になる。

シンポジウムも終わって、6月に入り、バージョンが上の gcc をインストールしようと画策。

tarball から最新版をmake するか、 Vine Seed から *.src.rpm を持ってきてリビルドするか迷ったが、 32ビットのライブラリを作る面倒を考え、Vine Seed からのリビルドを選択。 gcc-4.4.3-5vl6.src.rpm をリビルドするためには、 binutils, dejagnu, sharutils, elfutils-devel, compat32-glibc-devel, mp-devel, mpfr-devel のリビルドから始めなければならない。最終的にリビルドして alternative の設定をすればよい(ひょっとしたら、 そこも自動的にやってくれるかも)。

一通りリビルドが終了し、一時休憩と思いハイバネートしたら、ハードディスクがお亡くなりになってしまった(涙)。 「おたち台」に立てても、USB経由で時々しかマウントできない(何だこれは?)。 まだ1年も経っていないWestern Digital WD3200BEVT-0 (320GB)は、思えば2009年の8月31日に装填したものだ。 今回は、地元のショップで、 日立グローバルストレージテクノロジーズの Travelstar 5K500.B(312581808, 160 GB) を 4,380円で購入し、バックアップデータをリストアした。一週間に1回のバックアップだったので、 不運にもおよそ5日間のデータが消えた。 リビルドした一連の rpm パッケージは、バックアップ期間の合間だったために、 アクセス不能になってしまった(ddrescueを使った救出に、まだ一抹の希望は持っているが)。

折も折、VMware Player 3.1(Build 261024) が 2010/05/25にリリースされていたので、 Ubuntu 10.04 と組み合わせれば、Skype が簡単に使えるかも、 と思った。結果的には、無事に使えるようになった(と思う)。まだ、開通テストはしていない。

ということで、今回は、Skype の話なのだが、結果的には、 Vine Linux 5.1(X86_64) 上で、 VMware Player 3.1(Build 261024)(X86_64) を動かし、その中で、 Ubuntu 10.04(32 bit) を動かし、 そこで Skype 2.1.0.81 を動かした、という話。 考えてみるとかなりの回り道だ。「人生、これすべて回り道」なんてネ。

1. VMware player 3.1 に Ubuntu 10.04 をインストール
2010年5月25日にリリースされた VMware Player 3.1 をまずはインストール。 http://www.vmware.com/ からダウンロードのページへ行き、 アカウントを作成してもらわないといけない(以前登録したプロファイルは、 6ヵ月間以上放置されていたのですでに消去されていた)。いくつかの質問に答えて、メールアドレスの登録をすると、 そのメールアドレス宛に Account successfully created というタイトルで、 カスタマー・サービスからメールが届き、その直後に Activate your VMware Player Download というタイトルの別のメールが届き activationurl を告げられる。ちょっと面倒だが、とにかくアクティベーションをした。

ホストは、Vine Linux 5.1(x86_64) なので、VMware Player for 64-bit Linux をクリックして、
VMware-Player-3.1.0-261024.x86_64.bundle(およそ 97.7MB) をダウンロードした。

奇妙な拡張子だが、シェルスクリプト(VMware Installer Launcher)なので、 インストールするには、
# bash ./VMware-Player-3.1.0-261024.x86_64.bundle とか、
$ sudo bash ./VMware-Player-3.1.0-261024.x86_64.bundle とかやればよい。そうすると、VMware Installer が解凍されて実行される。

line 110: syntax error near unexpected token `newline' のようなエラーがでる人は、 きちんとダウンロードしたファイルのチェックサムをすること(MD5SUMSHA1SUM の値が公表されている)。私は、不完全なダウンロード・ファイルを相手に、 5分程度時間をロスしてしまった(反省)。以下のようなインストーラーの窓が開き、先へ進めばインストールは完了。

VMware player 3.1 installer

結果として、Gnome のメニューでは、【アプリケーション】→【システムツール】以下に、 【VMware Player】が登録される。

VMware-Player 3.1 の特徴は、例えば http://www.vmware.com/jp/support/pubs/ を参照してもらうとして、 3.0以降は、仮想マシンの作成ができるようになった。 Ubuntu Japanese Team のホームページから、2010年5月12日に公開された 日本語Remix版の ubuntu-ja-10.04-desktop-i386-20100512.iso をダウンロードし、VMware Player をスタートして、【新規仮想マシンの作成】をクリックし、 「ファイルから作成」を選ぶと、後は仮想マシンを作成し、VMware Tools を勝手にダウンロードしてインストールしてくれる。 そして、気がつくとネットワークの接続も完了していた。以前は、VMware のネットワーク設定にはまっていたことを思い出すと、 嘘のようだ。

問題が皆無だったかというとそうでもない。まずは、X86_64 用のUbuntu 10.04 がインストールできなかった。 これは、こちらのThinkPad T60 のBIOS設定に問題がある、というメッセージだったので、今回は時間の関係から32bit版で甘んじることにした。

日本語Remix版のISO Image だったにも関わらず、立ち上がってみるとメッセージはすべて英語だった。 設定メニューの【Language & Text】 を選ぶと、以下のようなメッセージが出てきたので、Yes をクリックした。

The language support is not installed completely. 
Some translations or writing aids available for 
your chosen languages are not installed yet.
Do you want to install them now?

ついでに、「日本語環境セットアップヘルパー」を起動して、適当に答えてインストールし、終了後に再起動した。 再起動後、初期設定のフォルダの名を変えるか、尋ねてきたので、そのままを選択。 日本語のフォルダ名はきらいなので、好都合だ。 これで、VMware player 3.1 上の、Ubuntu 10.04 の設定は終り。 後は、背景の色が嫌いなので、さっさとhttp://art.gnome.org/backgrounds/ から、16ページにあった Minimalist (by Amaury) を選択し、背景とした。

2. UCAM-DLV300T の認識
エレコムの WebCam は、当初 Vine Linux 5.1kernel に次のように認識されていた。

kernel: usb 1-5: new high speed USB device using ehci_hcd and address 75
kernel: usb 1-5: configuration #1 chosen from 1 choice
kernel: Linux video capture interface: v2.00
kernel: uvcvideo: Found UVC 1.00 device USB Camera (056e:7006)
kernel: uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
kernel: input: USB Camera as /class/input/input22
kernel: usbcore: registered new interface driver uvcvideo
kernel: USB Video Class driver (v0.1.0)
kernel: usbcore: registered new interface driver snd-usb-audio

ucam dlv300t on Vine Linux 5.1

GET_DEF(PROBE) not supported. Enabling workaround. という行がちょっと気になるが、 Enabling workaround というので、なんとか回避してくれているのだろう。 ちょっと気になるのは、このログの直後に、pulseaudio[3460]: udev-util.c: Failed to get card object. という行が出ていた点だ。

一応、ちゃんと動画を録画できるかをffmpeg でチェックしておくことにした。 Vine Linux 5.x では、ffmpegself-build パッケージになっていて、 すでにインストールされていた。そこで以下のようにすると、無事に Webcam のレンズの脇にあるライトが青色に光っていた。

$ ffmpeg -f video4linux2 -s vga -i /dev/video0 ./temp/webcam-test.flv
FFmpeg version 0.5.2, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  configuration: --prefix=/usr --incdir=/usr/include/ffmpeg --shlibdir=/usr/lib64 --libdir=/usr/lib64 
  --mandir=/usr/share/man --arch=x86_64 --enable-runtime-cpudetect --extra-cflags=-O2 -m64 -mtune=generic 
  -fno-strict-aliasing -fno-schedule-insns2 --enable-bzlib --enable-libdc1394 --enable-libfaac 
  --enable-nonfree --enable-libfaad --enable-libgsm --enable-libmp3lame --enable-libtheora --enable-libvorbis 
  --enable-libx264 --enable-libxvid --enable-x11grab --enable-avfilter --enable-avfilter-lavf --enable-postproc 
  --enable-swscale --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping
  libavutil     49.15. 0 / 49.15. 0
  libavcodec    52.20. 1 / 52.20. 1
  libavformat   52.31. 0 / 52.31. 0
  libavdevice   52. 1. 0 / 52. 1. 0
  libavfilter    0. 4. 0 /  0. 4. 0
  libswscale     0. 7. 1 /  0. 7. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on Jun  5 2010 23:55:02, gcc: 4.1.2 (4.1.3 prerelease 20080708) (Vine Linux 4.1.2-21vl5)
[video4linux2 @ 0x621a60][3]Capabilities: 4000001
Input #0, video4linux2, from '/dev/video0':
  Duration: N/A, start: 1276642589.987751, bitrate: -2147483 kb/s
    Stream #0.0: Video: rawvideo, yuyv422, 640x480, -2147483 kb/s, 1000k tbr, 1000k tbn, 1000k tbc
Output #0, flv, to './temp/webcam-test.flv':
    Stream #0.0: Video: flv, yuv420p, 640x480, q=2-31, 200 kb/s, 90k tbn, 1000k tbc
Stream mapping:
  Stream #0.0 -> #0.0
Press [q] to stop encoding
frame=   81 fps= 10 q=31.0 Lsize=     196kB time=11.06 bitrate= 145.0kbits/s    
video:194kB audio:0kB global headers:0kB muxing overhead 0.745091%
Received signal 2: terminating.

Ctrl-c で止めて、さっそく確認しようと Totem (2.26) で開いて見ようとすると:

エラーが発生しました。 この動画を再生するには -Sorenson Spark Video デコーダー という未だインストールされていないプラグインが必要です。

という返事。調べてみると、Totem は、gstreamer-plugins-ffmpeg を必要としているようだったので、 synaptic で、 これもまた self-build パッケージになっている self-build-gstreamer-plugins-ffmpeg をダウンロード。 友づれで gstreamer-devel, gstreamer-plugins-base-devel, liboil-devel がダウンロードされ、 rpm パッケージがビルドされた。

これで、録画された動画ファイルは、Totem で無事に確認できた。付属のマイク&イヤホンは、 サウンドレコーダーで音声を取り込むことができることを確認してあったのだが、音が出ていない。確かに、画面上のログには、 audio:0kB と出ている。man ffmpeg とか、ffmpeg -formats とかやってみた結果、
ffmpeg -f oss -i /dev/dsp -f video4linux2 -s vga -i /dev/video0 ./temp/webcam-test2.mpg
とすることで、ようやく動画と合った音も取れるようになった。

Ubuntu10.04 on Vine Linux 5.1

さて、VMware Player 3.1 で、Ubuntu 10.04 を立ち上げ、 UCAM-DLV300TUSB に挿すと次のようなメッセージがでる。

Question
The specified device appears to be claimed
by another driver (uvcvideo) on the host
operating system which means that the
device may be in use. To continue, the
device will first be disconnected from its
current driver.

この uvcvideo ドライバをホストOSとゲストOSで取り合いをしてしまうようで、 ホストOSの方を分離するか、という質問なので、Yes で答える。この後、同じメッセージが3回続けて出るのは、 ホストOSのUSB自動認識のせいなのかもしれない。 さらに snd-usb-audio ドライバに関しても同様なメッセージがでるので、 同じようにYes で答える。この時のゲストOSのログは以下のようになっていた。 snd-usb-audio ドライバに関するメッセージがないのが気になるが、 どうせおまけのようなイヤホン&マイクなので、正常に動かなくても、もう少しまともなイヤホン&マイクを後で調達すればよい。

ubuntu kernel: [...] usb 1-1: new high speed USB device using ehci_hcd and address 2
ubuntu kernel: [...] usb 1-1: configuration #1 chosen from 1 choice
ubuntu kernel: [...] Linux video capture interface: v2.00
ubuntu kernel: [...] uvcvideo: Found UVC 1.00 device USB Camera (056e:7006)
ubuntu kernel: [...] usbcore: registered new interface driver snd-usb-audio
ubuntu kernel: [...] input: USB Camera as /devices/pci0000:00/0000:00:11.0/0000:02:03.0/usb1/1-1/1-1:1.0/input/input4
ubuntu kernel: [...] usbcore: registered new interface driver uvcvideo
ubuntu kernel: [...] USB Video Class driver (v0.1.0)
ubuntu kernel: [...] process `skype' is using obsolete setsockopt SO_BSDCOMPAT

3. skype のソフトウエア
skype のソフトウエアは、http://www.skype.com/intl/ja/home/ からダウンロードできる。2010年6月初旬の時点では、Skype for Linux は、2.1 beta (2.1.0.81) だった。ここで、Ubuntu 8.10+ 32-bit を選んでダウンロードしてインストールも可能だが(skype-ubuntu-intrepid_2.1.0.81-1_i386.deb)、 partner repository を追加することで、Skype パッケージが synaptic からインストール可能になる(http://gihyo.jp/admin/clip/01/ubuntu-topics/201005/28 参照)。

[...]partnerリポジトリを有効にするには, [システム]→[システム管理]→[ソフトウェア・ソース]を開いて, 「http://archive.canonical.c/ubuntu lucid partner」という行にチェックを入れるだけ[...]。

skype for Linux 2.1.0.81 on Ubuntu10.04 on VMware player 3.1 on Vine Linux 5.1

これで、synaptic からskype のソフトウエアのインストールは完了。 起動して、スカイプ名でログインすると左のような窓が現れる(個人情報の部分は、消しゴムで消してあります;-)。 これで、動画付きでお話できるはずです。

skype 2.1.0.81-1ubuntu5 のインストール時に依存したパッケージとして引き連れてきているパッケージは、 libaudio2, libqt4-dbus, libqt-network, libqt4-xml, libqtcore4, libqtgui4 だった。 skype-ubuntu-intrepid_2.1.0.81-1_i386.debsudo dpkg -i で手動でインストールする際には、 これらをあらかじめインストールしておく必要がある。また、動かす時には、以下のように、v4l1compat.so をあらかじめロードして実行する必要があるらしい。手動でインストールした場合にはご注意 (Skype for Linux 2.1 betaの注意書きより)。

- Ubuntu 32 bit: install "libv4l-0" package and launch Skype with: 
  LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so skype
- Ubuntu 64 bit: install "lib32v4l-0" package and launch Skype with: 
  LD_PRELOAD=/usr/lib32/libv4l/v4l1compat.so skype

4. 印象
今回は、トラブル続きで、ようやくskype 2.1 が動いているらしい状態までたどり着いた。 副産物としては、感想は、 (1) VMware Player 3.1 が非常に進化しており、インストールもたやすく使いやすくなっていること、 (2) Ubuntu 10.04 も立ち上がりが早く、きびきびと動くこと、 (3) ホストに Vine Linux 5.1 (x86_64) を使っているが、ThinkPad T60(1954-G2J) 上で、1440x1050 の解像度でもサクサクと動くのには、感動してしまった(ちなみに、メモリは、 たったの(?!) 1,529,840 kB。仮想マシンには、標準的に 512MB を割り振っている)。 (4) 動画がこんなに Linux でも扱えるようになっていたのにも、率直に感激した。


QEMU でWindows XP (Vine Linux 5.1)  [03/04/2010]

Windows は、できたら使いたくない」というのは、今でも偽らざる気持ちだ。 使わざるを得ない状況というのは、基本的に、Word, Excel, PowerPoint のデータをやりとりする時だけ。 「Openoffice.org writer で十分」と言えればいいのだが、残念ながらレイアウトは100%同じにはならない。 Vine Linux 4.2 の時は、 Wine を使って、Word を動かしていたのだが、Vine Linux 5.0 では Winex86_64 版が提供されていないので、 以前使っていた ~/.wine 以下のディレクトリにあるデータが無駄になっている。 この状況を打開する1つの策は、QEMU を導入し、そこに Windows XP 環境を作ってしまうことだ。

今回、2010年2月末の Vine Linux 5.1 へのマイナー・バージョンアップを機に、2009年11月にやりかけた QEMU のインストールの顛末をまとめておくことにした。 QEMU は、Windows 上にインストールして、 Linux をゲストに使うこともできるので、それなりのユーザを獲得している。 今回は、もちろんその逆で、ホストが Linux で、ゲストが Windows XP という話だ。結論から言うと、ちゃんと動いたけれど kvm-qemu ではないので、遅い。

0. イントロ
1. QEMU (0.9.1)のインストール
2. QEMU におけるゲスト OS のインストール(on Vine Linux 5.1)
2.1. ディスク・イメージの作成
2.2. Windows XP のインストール(ゲストOSのインストール)
2.3. MS Office 11 のインストール(QEMU ゲストOS の Windows XP上)
3. さて使い心地は?

0. イントロ
QEMU は、「ダイナミック・トランスレーションを使った高速のプロセッサ・エミュレータ」。 今回は、Vine Linux 5.1x86_64 版をインストールしてある ThinkPad T60(1954-G2J) 上で、Windows XP (いつものようにドイツ語版)を動かした。

QEMU Emulator User Documentation には、QEMUqemu-XXX-i386-wine.tar.gz をインストールすることによって、 Wine 上で動くソフトをエミュレートできると書いてあったので、探してみたが、残念ながら見つからなかった。 また、x86_64 環境での Wine を自力で作り上げることも困難と思えたので、 最終的には、~/.wine 以下をバッサリ削除してしまった。

Vine Linux 5.1 が、2010年3月1日現在で提供してくれているのは、

    (1) qemu-0.9.1-3vl5
    (2) qemu-lancher 1.7.4-1vl5
    (3) dkms-kqemu 1.3.0-5pre11vl5
    (4) kqemu 1.3.0-5pre11vl5
    (5) kvm 70-1vl5

http://wiki.qemu.org/ が、 2010年2月23日現在で提供してくれている安定版は、

    qemu-0.12.3.tar.gz
    kqemu-1.4.0pre1.tar.gz

qemu 1.12 以降では、kqemuobsolete となり、 サポートされなくなった。 kvm (Kernel-based Virtual Machine) のサイトは、http://www.linux-kvm.org/ で、2.6.20 以降の main line of Linux に含まれるようになり、 2010年3月1日現在の情報では、kernel 2.6.25 以上の場合は、kvm 76 を使うのがお勧めのよう。

windows XP in Vine Linux 5.1, by means of QEMU

Vine Linux 5.0/5.1 では、カーネルは、2.6.27 にもかかわらず、 kvm 70 だったのでこの辺の問題なのか? Vine Seed のアーカイブを見ると、 どうやら Fedora 12 のパッケージを参考にしているようだ。

2009年の11月15日に kernel 2.6.27-46vl5 で、kvm (kvm 70-1vl5) のインストールも apt-get install kvm で試みたが、 libgnutls.so.13 を要求してきてインストールできなかった。 libgnutls.so を提供するのは、compat32-gnutls あるいは、 gnutls というGNU TLS ライブラリだが、含まれているのが libgnutls.so.26libgnutls.so.26.14.10 。 上位コンパチと考えて、libgnutls.so.13 を作り、単純にリンクしてやることで逃げられるかもしれないが、 今回は時間の関係もあり、人柱になる余裕はなかったのでパスした。

Vine Linux 5.0/5.1kvm の関係は、どうもよく分からない(勉強不足)。 カーネルは 2.6.27 なのだが、以下のように、 x86 環境で kvm はモジュール化されている。

# modprobe -l | grep kvm
kernel/arch/x86/kvm/kvm-amd.ko
kernel/arch/x86/kvm/kvm.ko
kernel/arch/x86/kvm/kvm-intel.ko

1. QEMU (0.9.1)のインストール
まずは、Vine Linux 5.0 の提供する qemu (0.9.1)apt-get でインストールする。 当初は、 dkms-kqemu 1.3.0-5pre11vl5, kqemu 1.3.0-5pre11vl5, qemu 0.9.1-3vl5, qemu-lancher 1.7.4-1vl5 すべてをインストールしてから、ゲストOSの Windows XP をインストールしようとしたのだが、 qemu: fatal: triple fault で止まってしまうので、試しに dkms-kqemu 1.3.0-5pre11vl5, kqemu 1.3.0-5pre11vl5 を削除してみたら、うまくいった。
QEMU 自体のインストールは、# apt-get install qemu だけなので簡単なのだが、 その後のゲストOSのインストールの方が手間がかかる。

2. QEMU におけるゲスト OS のインストール(on Vine Linux 5.1)

2.1. ディスク・イメージの作成
まずは、ディスク・イメージを作成し、そこにゲスト OS をインストールすることになる。

$ qemu-img create -f qcow2 WinXPx86.img 12GB

Formatting 'WinXPx86.img', fmt=qcow2 size=12884901888 のようなメッセージが出てきて、あっというまに終了。 かつては、qcow が使われていたが、現在では、 qcow は、Old QEMU image format. Left for compatibility ということで、qcow2 を使う。
ここでは、ディスクイメージに対する名前を、 WinXPx86.img としているが、 もちろん、拡張子が .img なら何でもかまわない。
ディスクサイズは、 12GB とした(当初、 4GB にしたら Windows Update があっという間に仮想HDDを食い尽くしてしまったので削除してやり直した)。

2.2. Windows XP のインストール(ゲストOSのインストール)
Windows XPCD-ROM を入れると、 当然、 Vine Linux がオートマウントしてしまう。 これでも、いいのかと半信半疑で、/etc/mstab を見ると、
/dev/sr0 /media/VX2POEM_DE iso9660 ro,nosuid,nodev,uhelper=hal,uid=500 0 0
となっていたので、このディバイス名を使って以下のようにして、 Windows XP のインストールを実行した。

$ qemu -m 512 -boot d -cdrom /dev/sr0 -hda WinXPx86.img -localtime &
windows XP installation in Vine Linux 5.1 (QEMU)

-m 512 は、メモリの容量の指定。 -boot d でブートを指定。 ブート先は -cdrom /dev/sr0。 上記のように、/etc/mstab で確認してから、ディバイス名を指定した。 一般的なマニュアルの記載では、-cdrom /dev/cdrom のようになっているはず。 WinXPx86.img は、 カレントディレクトリに作成される。 ネット関係のパラメータは、省略すると -net nic -net user が仮定されるようなので付けないで実行した。

CD-ROM からブートするので、 後は通常の Windows XP のインストールと同じ。 Product ID を入力して、あとはメニューに従って進める。 参考までに記しておくと、グラフィック・カードは Cirrus Logic 5446 compatible、 イーサネット・カードは、 Realtek RTL8139-Family-PCI-Fast Ethernet-NIC が仮想化されて用いられていた。 また、 Windows Update は、Windows XP Service Pack 3 など3つが最初に入り、 その後、56 + 10 が入ってきた(Internet Explorer 8 はインストールしなかったのだが)。 残りの仮想HDDの空きは、この時点で6.44 GB になっていた。 おかげで読書の時間が増えたのは言うまでもない。

2.3. MS Office 11 のインストール(QEMU ゲストOS の Windows XP上)
WinXPx86.imgWindows XP がインストールされた後、 コントロールパネルから日本語環境を選択してインストールし、一旦シャットダウンした。 今度は、MS Office 11CD-ROM を入れてから、 以下のようにして、ネットワークにつなげた状態で QEMU を再スタート。

$ qemu -hda WinXPx86.img -m 512 -cdrom /dev/sr0 -localtime &
windows XP installation in Vine Linux 5.1 (QEMU)

インストールはカスタムを選び、Word 2003, Excel 2003, Power Point 2003, Erweiterte Anpassung von Anwendungen を選択してインストールを続行した。 Word 2003 を立ち上げると、アクティベーションを要求してきたので、さっさと済ます。 これで、一応は動くようになった。

3. さて使い心地は?
Ctrl+Alt で、Vine Linux に戻れるのは気楽でよい。 さて、速度だが、何回か Windows XP を立ち上げてシステムの基本情報を見てみると、 Computer Intel Pentium II-Prozessor 145MHz, 219MHz, 390MHz といった風に変動することが分かった。 「のそのそ」と動く感じで、まあ使えなくもない。

さらに、ドキュメントのやりとりだが、Wine の場合と違い、データはディスク・イメージの中にあるので、 簡単にコピーというわけにはいかない。qemu-smb オプションをつけることで、 Samba 越しにデータ交換する方法がある。

今回は、お手軽に、 usb flash disk を使って簡単にデータの読み書きをする方法をとった。 usb flash disk を挿してから、 -usbQEMU オプションを加えてゲストOS としてのWindows XP を立ち上げる。 ただし、root 権限が必要になるので、 su するのを忘れずに。

# qemu -m 512 -hda WinXPx86.img -usb -localtime &

ゲストOSとしての Windows XP が立ち上がってから、 Ctrl+Alt+2 で、 qemu モニターに移る(qemu モニターから、 ゲストOSに戻るには、Ctrl+Alt+1)。 そこで、 qemu モニターで、 info usbhost として usb flash disk の情報を得て、 usb_add コマンドで認識させる。ここで、一般ユーザで qemu を立ち上げてしまうと、 Could not add USB device 'host:0411:0098' と叱られる。

(qemu) info usbhost
 Device 1.1, speed 480 Mb/s
    Hub: USB device 1d6b:0002, EHCI Host Controller
 Device 2.1, speed 12 Mb/s
    Hub: USB device 1d6b:0001, UHCI Host Controller
 Device 3.1, speed 12 Mb/s
    Hub: USB device 1d6b:0001, UHCI Host Controller
 Device 4.1, speed 12 Mb/s
    Hub: USB device 1d6b:0001, UHCI Host Controller
 Device 5.1, speed 12 Mb/s
    Hub: USB device 1d6b:0001, UHCI Host Controller
 Device 5.2, speed 12 Mb/s
    Class 00: USB device 0483:2016, Biometric Coprocessor
 Device 1.13, speed 480 Mb/s
    Class 00: USB device 0411:0098, USB Flash Disk
(qemu) usb_add host:0411:0098

Ctrl+Alt+1 で、ゲストOSである、Windows XP に戻ると、 usb device が認識されて、次のアクションを待つ窓が開いているので、後は、通常通り、 中身をブラウズし、コピーなどをすればよい。

usb flash disk は、ドイツ語版の Windows では、 USB-Massenspeichergerät とか、Wechseldatenträger と呼ばれている。 で、これを外す時には、ゲストの Windows XP で、通常の外す作業(右下のアイコンをクリックして、ディバイスを選び、 外す選択をしてOKをクリック)をするだけでOKのようだ。 本来だと、qemu モニターに入り、上の例なら
usb_del 1.13 とする必要があると思ったのだが、 実際に実行してみると Could not remove USB device '1.13' と言われてしまい、すでに外れている様子。 ちなみに、ホストの Vine Linux 5.1 でも、すでに unmount されていた。

ゲストの Windows XP は、当初の解像度が 800*600 になっていたので、 1024*768 に上げた。 これで何とか使えるような状態になった。この程度のレスポンスの遅さで Windows XP を使っている人はいるなあ、と思いつつ今回はここで時間切れ。 QEMU Lancher の設定はまた時間ができた時にでもやることにする。


Openoffice.org 3.1.1 でドイツ語(Vine Linux 5.0)  [10/09/2009]

0. イントロ
一般人が時々使うようなソフトウエアのユーザー・インターフェイスは、 バージョンアップにおいても大きな変更をしない方がよいと思う。 イメージとしては、Microsoft Word のような製品だ。 この場合、一般ユーザーは極めて保守的なので、一旦慣れた使い方を大きく変えるようなユーザー・インターフェイスの設計をしてしまうと、 もう見向きもしなくなる。Word 2007 は、おそらくこのようなソフトウエアに属する。 Word 2003 以前のユーザーの中には、新しいパソコンの導入に伴って、 Word 2007 を強いられる場面に遭遇し、混乱し Word 2003 に戻ってしまったり、Openoffice.org に乗り換えるケースがある。 慣れているものを捨てて新しいものに飛びつくのは難しい のだ。

もちろん、このような総合オフィス・ソフトをプロ、あるいはセミプロの人達が使うとなると、話は別。 彼らは、細部に渡る特徴を使いこなしているので、場合によっては Word 2007, Excel 2007, PowerPoint 2007... を歓迎しているかもしれない。あるいは、新たなるバグと日夜戦っているかもしれない。

面白いのは、かなり使い込んでいる Windows ユーザーでも、 「コントロール・パネル」をわざわざ「古いもの」(classic) に切り替えているのをよく目にすることだ。 どこに何があるのかを、ユーザー・インターフェイス上で覚えている場合、なかなか他のシステムに慣れることができない例だと思う。

さて、Openoffice.org の話。 「フリーなオフィス・スィート」(Office Suite) として、MS-Office との互換性を保ちながら発展してきたもので、 一連の WindowsMacLinuxSolaris などの異なったOSのプラットフォームで使えるもの。今回インストールしたものは、 Openoffice.orgコミュニティの成果物をSun Microsystems Inc. がまとめあげたもの。 後述するように、docx 等のファイルの読み込みもできる。 ユーザーインターフェイスは、多少変わることはあっても、それほど大きな変化はないので、安定して使える。

1. Openoffice.org 3.1.1 の Vine Linux 5.0 へのインストール
Vine Linux 5.0 では、標準的なインストールでは、Openoffice.org はインストールされない(x86_64 DVD版ではそうだった)。 Vine Linux 5.0 で提供されているものをインストールすると、 以下のように、2.4.1 がインストールされる。フォント回りなどが調整されたVine Linux版だ。

$ rpm -qa | grep openoffice
openoffice.org-writer-2.4.1-5vl5
openoffice.org-graphicfilter-2.4.1-5vl5
openoffice.org-impress-2.4.1-5vl5
openoffice.org-math-2.4.1-5vl5
openoffice.org-calc-2.4.1-5vl5
openoffice.org-base-2.4.1-5vl5
openoffice.org-draw-2.4.1-5vl5
openoffice.org-core-2.4.1-5vl5
openoffice.org-2.4.1-5vl5

Openoffice.org の最新版(2009年10月現在)は、3.1.1(OOO310m19 (Build:9420)) で、この版では、 MS-Office 2007 以降の OpenXML(OOXML) 形式のファイル (.docx,.xlsx,.pptx)も開くことができる(正確にどの版から可能になったのかは知らない)。 Vine 5.0Openoffice.org 2.4.1 では開けない。 そこで、Vine 5.0Openoffice.org 2.4.1 を削除し、 OpenOffice.org 3.1.1日本語版のダウンロード してインストールすることにした。

上記のページからLinux 64-bit RPM を選択し、 OOo_3.1.1_LinuxX86-64_install_wJRE_ja.tar.gz をダウンロードし、 md5sum の確認をした。

tarball を展開してみると、OOO310_m19_native_packed-2_ja.9420 というディレクトリができ、その中をみると、setup スクリプトがあるので、 それを実行するだけでインストールは、ほぼ完了するはずだ(実は、私は、rpm コマンドでインストールした)。

$ tar zxvf OOo_3.1.1_LinuxX86-64_install_wJRE_ja.tar.gz
$ cd OOO310_m19_native_packed-2_ja.9420/
$ ls
JavaSetup.jar  RPMS/  installdata/  licenses/  readmes/  setup*  update*
# ./setup

以前と同じように、gnome/kde のメニューに Openoffice.org を加えるためには、 OOO310_m19_native_packed-2_ja.9420/RPMS/desktop-integration/ 以下の適切なものを選び、インストールする必要がある。Vine 5.0 の場合は、 openoffice.org3.1-redhat-menus-3.1-9420.noarch.rpm をインストールし、X を再起動すればよい。

# rpm -ivh openoffice.org3.1-redhat-menus-3.1-9420.noarch.rpm

インストール後のrpm パッケージを確認すると以下のようになっていた。 なお、インストール先は、/opt/openoffice.org3 となり、 Vine 5.0Openoffice.org 2.4.1 (X86_64)版が、 /usr/lib64/openoffice.org にほとんどの部分をインストールするのとは異なる。 また、Vine Linux の場合のバイナリーは、owriter のようになるが、今回インストールした、3.1.1 の場合は、swriter のようになる。 コマンドでOpenoffice.org を起動する場合は、 ooffice ではなく、soffice となるので注意。 (以前は、Vine Linuxooffice と共存できたが、今回はできなかった。)

$ rpm -qa | grep openoffice
openoffice.org3-impress-3.1.1-9420
openoffice.org3-writer-3.1.1-9420
openoffice.org-ure-1.5.1-9420
openoffice.org3-3.1.1-9420
openoffice.org3-dict-en-3.1.1-9420
openoffice.org3-math-3.1.1-9420
openoffice.org3-calc-3.1.1-9420
openoffice.org3-ja-3.1.1-9420
openoffice.org3.1-redhat-menus-3.1-9420
openoffice.org3-base-3.1.1-9420
openoffice.org3-draw-3.1.1-9420

日夜送られてくる Word ファイルを、最小限のレイアウトのずれで読み書きするには、 Openoffice.org 3.1.1 インストール直後に、 DefaultSettingsForJapanese.oxt(1.0.1,2009/08/31) を http://extensions.services.openoffice.org/project/DSFJ からダウンロードしてインストールしておくとよい。これによって、MS-Word のファイルを読む時に、 レイアウトが崩れる問題をかなり軽減してくれる(MS-Word なんて関係ない、 という人は、もちろんインストールの必要はない)。
Openoffice.org を立ち上げ、ダウンロードしたDefaultSettingsForJapanese.oxt を、「ツール(T)」- 「拡張機能マネージャー(E)」- 「追加(A)」を選び、ダウンロードしたファイルを指定してクリックで終了。 (実は、単にファイルとして開いても、ちゃんとインストールされる。) インストール後は、Openoffice.org を再起動することで、この設定は有効になる。 (IPAフォントのインストールが前提だが、Vine Linux 5.0 なら標準でインストールされているはず。) インストール後の名前は、「日本語環境改善拡張機能(1.01)」となっていた。

2. ドイツ語環境設定
以前は、「ファイル」- 「ウイザード」から「新しい辞書のインストール」から行うことができたが、 今は、「ツール(T)」- 「言語(D)」- 「ほかのオンライン辞書(F)」で http://extensions.services.openoffice.org/dictionary?cid=926385 が開かれ、そこで辞書を選択してダウンロードすることになる。 (これがうまくいかない場合は、上記のURLを直接ブラウザで開き、辞書を選択してGet it! をクリックしてダウンロードする。) 後は、「ツール(T)」- 「拡張機能マネージャー(E)」- 「追加(A)」で、ダウンロードファイルを指定するか、 「ファイル(F)」- 「開く(O)」でダウンロードファイルを指定して、OK をクリックする。そして、 Openoffice.org を再起動する。

ドイツ語の辞書は、以下の8種類が提供されている。

German (Austria)        Deutsch (Österreich)        German (de-AT-frami) dictionaries: 
                                                    spell checking, hyphenation, thesaurus
German (Austria)        Deutsch (Österreich)        German dictionary, hyphenation, 
                                                    thesaurus (locales: de-AT only)
German (Germany)        Deutsch (Deutschland)       German dictionary, hyphenation, thesaurus 
                                                    (locales: de-DE only)
German (Germany)        Deutsch (Deutschland)       German old spell dictionary and old spell 
                                                    hyphenation patterns
German (Germany)        Deutsch (Deutschland)       German (de-DE-frami) dictionaries: spell  
                                                    checking, hyphenation, thesaurus
German (Switzerland)    Deutsch (Schweiz)           German (de-CH-frami) dictionaries: spell 
                                                    checking, hyphenation, thesaurus
German (Switzerland)    Deutsch (Schweiz)           German dictionary, hyphenation, thesaurus 
                                                    (locales: de-CH only) 

ロケールがde-DE のみ、のようになっているものも使えるようだ。 また、複数の辞書をインストールして、「拡張機能マネージャー(E)」のところで、特定の辞書だけを有効にして使うことも可能だ。 例えば、旧正書法辞書と新正書法辞書の使い分けなども、「拡張マネージャー」で2つの辞書を有効/無効に切り替えることでできる。 今回は、まず Deutsch (Deutschland) de-DE-frami をインストールした(dict-de_DE-frami_2009-07-01.oxt (ca. 2.5MBytes)Karl Zeiler の説明によると、この辞書が、現時点では最強のよう。 (frami は、おそらくFranz Michael Baumann の名前の前の2文字を取って名付けられたのだろう。)

Zitat: Fri, 10/10/2008 - 14:52 - KarlZeiler ...snip... dict-de: spell checker by Franz Michael Baumann (Version: 2008-09-15), including hyphenation (Huggenberger / Naber) and thesaurus (OpenThesaurus, Version: 2008-10-03) - locales only: de-DE! "frami" contains the complete word list of Björn Jacke's dictionary *and* additional numerous supplements by Franz Michael Baumann according to the reform of 2006. At moment this is the newest and most complete German spell checker. ...snip...Zitat Ende

Openoffice.org 3.1.1 locale setting

これで、ドイツ語のスペリングチェック、ハイフネーション(分綴)、シソーラス(同義語辞典)が使えるようになる。 設定は、「ツール(T)」-「言語(D)」- 「すべてのテキスト用(C)」- 「詳細(D)」、あるいは、 「ツール(T)」-「オプション(O)」を選択した後、▽言語設定、▽言語で、この窓に行き着く。

この「オプション - 言語設定 - 言語」の窓では、【ロケールの設定(A)】と【西洋諸言語(C)】の設定で、 ドイツ語(ドイツ)を選択するだけで基本的には使えるようになる。「十進数区切り子キー」は、<□ロケールと同じ> をチェック、【標準の通貨(D)】は、EUR € ドイツ語(ドイツ)を選択。 最後に、<ドキュメントの標準言語>の下の方にある<□現在のドキュメントのみに適用(F)> にチェックを入れるかどうかは、お好みで。つまり、普段、ドイツ語の文章を中心に使うなら、ここのチェックをはずしておくことで、ドイツ語を優先的に使う設定になる。

まずは、スペリング・チェックの様子。「書式(O)」 - 「オートコレクト(E)」からオートコレクトに関する設定ができるが、 まずは、試しに、「入力時(W)」を選択して文書を読み込んでみた。赤の波線が引かれれいる箇所にカーソルを移動し、 「スペルと文法チェック」のアイコン Openoffice.org 3.1.1, icon for a spell-grammar check をクリックすると、以下の窓が現れる。一番簡単なのは、F7(Function key 7)を押すだけ。 「ツール(T)」- 「スペルと文法チェック(S)」をクリックしてもよい。

Openoffice.org 3.1.1, spelling check

ここでは、tranierten というミススペリングを発見したOpenoffice.org writer が、正しい候補として trainierten, tradierten, transportierten, tranchierten, unpanierten, ... を示してくれているところ。(それにしても、unpanieren は、あまり似ていないし、こんな動詞があるなんて知らなかった。)
カーソルのある語に置き換えたい場合は、「変更(C)」をクリックする。 あとの選択肢は、それぞれすぐ見て分かる。地名や人名などで、登録してしまいたい場合は、 「追加(A)」をクリック、一時的に無視するだけでよいなら、「1つ無視(I)」を選択する。

ハイフネーションは、「ツール(T)」- 「言語(D)」- 「ハイフネーション(H)」を選ぶことで自動的にやってくれる。 必ずハイフネーションをする場合には、「ハイフネーション(H)」の前の□にチェックを入れておく。 もちろん、ハイフネーションの位置が気に入らない場合には、調整もできる。 (一般の配布物の際は、適切なハイフネーションが入ることで文書は格段に読みやすくなるが、 論文の投稿時には、ハイフネーションの入った原稿を提出すると、後で校正をする時に仕事量が増えるのでご注意。)

最後にシソーラス(類義語辞典)を見ておこう。 標準では、アイコンは表示されていないので、もしアイコンをクリックしてシソーラスを起動したい場合は、 「ツール(T)」- 「カスタマイズ(C)」から、[ツールバー]を選び、[類義語辞典]を選択して、適当な位置に現れるようにしておくとよい。 類義語辞典は、「ツール(T)」- 「言語(D)」- 「類義語辞典(T)」でも呼び出せる。

Openoffice.org 3.1.1, thesaurus

この例では、topfit をマウスで選択し、「類義語辞典」を起動したところだ。 athletisch, durchtrainiert (umgangssprachlich), gut in Form が類義語の候補として表示されている。

Openoffice.org writer を使っていて、面白いのは、段落ごとに言語を設定できることだ。 日本で販売されている標準設定のMS Word を使って、いきなりドイツ語の文章を入力すると、 「オートコレクト」が働き、ほとんどの単語に赤の波線が引かれてしまうが、Openoffice.org 3.1.1writer では、「オートコレクト」の設定になっていても、段落ごとに言語設定を変えることで、 段落ごとのスペルチェックができる。段落といっても、一行でもかまわない。また、任意の長さの文の一部を特定言語と設定することもできる。

Openoffice.org 3.1.1, spelling check by paragraph

右のように、上の文は、ドイツ語のスペリング・チェック、下の文は英語のスペリング・チェックが働いている。 これは、段落ごとに言語を変えて、スペリング・チェックした結果だ。 特定のパラグラフを選択した後、「ツール(T)」- 「言語(D)」- 「段落用(B)」と降りてきて、言語を選択するのがメニュー式。 一番簡単なのは、writer の窓の下のバーに言語名が表示されているはずなので(例えば、「英語(米国)」)、 そこをクリック。出てきたメニューからターゲットとなる言語を選ぶ。

ここでは、weiss は、当然、weiß の誤り。 また、今回用いている辞書は新正書法なので、daß にも赤の波線が引かれている。 下の文は、英語のスペリング・チェックが働いたもので、woulde というのは辞書にない。 いずれの場合も、「スペルと文法チェック」のアイコンをクリックするか、 F7(Function key 7)を押すことで、スペリング・チェックの窓が開く。 もちろん、その文の言語に応じたスペリング・チェックが行われる。

3. 感想
初期のOpenoffice.org と比べると、格段に使いやすくなっている。 1つの機能を使うのに、さまざまなユーザー・インターフェースからアプローチできるのもよい。 文法チェックがない、という人もいるだろうが、使い物にならない文法チェックなら、むしろ無い方が望ましいといえる。 1つの文章の中に、複数の言語が混在していても、スペリング・チェックできるのは、ありがたい。 ただ、西洋語が一度に2つしか扱えないのは、ちょっと寂しい(3つ以上の言語環境をインストールはできるが、 スペリング・チェッカーや類義語辞典を一度に2つまでしか有効にできない)。 それでも、日本語と合わせて3つ、さらに中国語やハングル、「複合文字言語」(CTL)も一応使えるようになっているので、 マルチリンガルのワープロとしては、1つの形と言えるかもしれない。特に、 他のオンライン辞書 を見ると実感できる。


AX520N を wvdial で動かす(Vine Linux 5.0)  [09/07/2009]

Vine Linux 5.0 から ppxp, tkppxp などがなくなり、 AX520N を今までと同じように動かすことができなくなった。 2年契約の使いたい放題で、学会出張でもバッチリだったはずが、これでは台無しだ。 そこで、急遽 wvdial を試してみることになった。 予想通り、NetworkManager が邪魔をしてくれたので、 ちょっと手間取ったが、一応動いたので、その顛末を書いておく。

まとめ
(プラットフォーム:Vine Linux 5.0 (Lafite), kernel-2.6.27-43vl5AX520N は、 WILLCOM 用の PCMCIA カード。別名、Air Edge ProNEC製)
0. NetworkManager のサービスを止める。
1. /dev/ppp のノードを作成。
2. ppp_generic モジュールをロード。
3. resolv.conf をプロバイダーの DNS に書き換えておく。
4. AX520N 用に /etc/wvdial.conf を書き換えておく。
5. AX520N を挿す。
6. wvdial で接続、切断は、 CTRL-c で。

0. まずは下準備。
NetworkManager は、低速の Modem をサポートしていないようなので、 まずは、NetworkManager のサービスを止める。 GUI なら、「システム」→「システム管理」→「サービス」から。 AX520N (PCMCIA) を指して見ると、以下のようなメッセージがでた。 以前は、irq = 3 だったので、irq = 16 には驚いた。ヴァーチャル(?!)だ。

Sep  5 01:44:50 localhost kernel: pccard: PCMCIA card inserted into slot 0
Sep  5 01:44:50 localhost kernel: pcmcia: registering new device pcmcia0.0
Sep  5 01:44:50 localhost kernel: 0.0: ttyS0 at I/O 0x3f8 (irq = 16) is a 16550A

1. /dev/ppp のノードを作成。
実際には、 AX520N 用に /etc/wvdial.conf を先に作成し、 動かした時に、
pppd is unable to open the /dev/ppp device. You need to create the /dev/ppp device node by executing the following command as root: mknod /dev/ppp c 108 0 というメッセージがログに出たので、その通り、root で以下のように実行した。(以下、 typo発見、109 →108へ修正、2011/8/20)

# mknod /dev/ppp c 108 0

2. ppp_generic モジュールをロード。
実際には、 AX520N 用に /etc/wvdial.conf を先に作成し、 動かした時に、
This system lacks kernel support for PPP. This could be because the PPP kernel module could not be loaded, or because PPP was not included in the kernel configuration. If PPP was included as a module, try `/sbin/modprobe -v ppp'. If that fails, check that ppp.o exists in /lib/modules/`uname -r`/net. See README.linux file in the ppp distribution for more details. というメッセージがログに出る。 Vine Linux 5.0 では、 /lib/modules/2.6.27-43vl5/kernel/drivers/net/ 以下に、 ppp_generic.ko などがあるので分かるように、ちゃんとモジュール化されているが、 ppp.o ではない(だから、# /sbin/modprobe -v ppp しても、そんなの無いと言われる)。 そこで、以下のように、 ppp_generic をロードする。

# /sbin/modprobe ppp_generic

確認のために、lsmod してみると、ppp 関連のモジュールがロードされているのが分かる。

# lsmod | grep ppp
ppp_deflate             5888  0 
ppp_async               9984  0 
ppp_generic            25128  2 ppp_deflate,ppp_async
slhc                    6912  1 ppp_generic
crc_ccitt               3328  2 ppp_async,irda

3. resolv.conf をプロバイダーの DNS に書き換える。
NetworkManager は、/etc/sysconfig/network-scripts を設定していない場合、以下のような /etc/resolv.conf を作成するが、 プロバイダが提供する DNS に書き換えた resolv.conf を用意すればよい。

# Generated by NetworkManager

# No nameservers found; try putting DNS servers into your
# ifcfg files in /etc/sysconfig/network-scripts like so:
#
# DNS1=xxx.xxx.xxx.xxx
# DNS2=xxx.xxx.xxx.xxx
# DOMAIN=lab.foo.com bar.foo.com

例えば、次のように /etc/resolv.conf を書き換える。 以下では、www,xxx,yyy,zzz は、ルーターのプライベート・アドレス。 aaa,bbb,ccc,dddeee,fff,jjj,kkk は、プロバイダ提供の DNSサーバーのアドレス。

# Generated by me
nameserver www,xxx,yyy,zzz
nameserver aaa,bbb,ccc,ddd
nameserver eee,fff,jjj,kkk

4. AX520N 用に /etc/wvdial.conf を書き換える。
実は、wvdial は、wvdialconf という設定用プログラムを用意してくれていて、 root でこのコマンドを投入するだけで、モデムの自動検出と設定ファイルの書き出しをしてくれるはずなのだが、 AX520N の場合は、自動検出に失敗する(通常は、wvdialconf だけで「楽々設定」ができるので、 wvdial で悩む人は少ないらしい。Sorry, no modem was detected! と言われると、ちょっとショックではある)。 そこで、AX520N でモバイル (Vine4.2) で一部紹介した設定を反映させた /etc/wvdial.conf を手書きした。

[Modem0]
Modem = /dev/ttyS0 
Baud = 460800
SetVolumn = 0
Dial Command = ATDT
Init1 = ATZ
Init2 = AT&F
Init3 = ATE0V1&D2X4¥V1¥X1&C1S0=0
Init4 = ATs7=60s30=0&K3
FlowControl = NOFLOW
[Dialer Defaults]
Username = xxxxx
Password = yyyyy
Phone = aaaa-bbb-ccc##64
Stupid Mode = 1
Init1 = ATZ
Init2 = ATS0=0
Inherits = Modem0

5. AX520N を挿して、 6. wvdial で接続、切断は、 CTRL-c で。
後は、AX520N を適切なスロットに挿して、rootwvdial とターミナルから入力するだけ。 そうすると、たらたらと画面に以下のようなログを出力し、接続完了となる。

# wvdial
--> WvDial: Internet dialer version 1.60
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATS0=0
ATS0=0
OK
--> Sending: ATE0V1&D2X4V1X1&C1S0=0
ATE0V1&D2X4V1X1&C1S0=0
OK
--> Sending: ATs7=60s30=0&K3
OK
--> Modem initialized.
--> Sending: ATDT<aaa-bbb-ccc##64>
--> Waiting for carrier.
CONNECT 115200
--> Carrier detected.  Starting PPP immediately.
--> Starting pppd at Sat Sep  5 01:56:57 2009
--> Pid of pppd: 25531
--> Using interface ppp0
--> pppd: ~[7f]
--> pppd: ~[7f]
--> pppd: ~[7f]
--> local  IP address aaa.bbb.ccc.ddd
--> pppd: ~[7f]
--> remote IP address eee.fff.ggg.hhh
--> pppd: ~[7f]
--> primary   DNS address iii.jjj.kkk.lll
--> pppd: ~[7f]
--> secondary DNS address mmm.nnn.ooo.ppp
--> pppd: ~[7f]

で、接続を切る時は、コントロール c 。これで、次のように切れる。

^CCaught signal 2:  Attempting to exit gracefully...
--> Terminating on signal 15
--> pppd: ~[7f]
--> Connect time 2.4 minutes.
--> pppd: ~[7f]
--> pppd: ~[7f]
--> Disconnecting at Sat Sep  5 01:59:21 2009

感想と残された課題
とりあえず使えるようにはなったものの、PAP 認証で、しかも root で起動するのは気が引ける。distribution によっては、 dipdialout のグループに特定の一般ユーザを所属させるようにすることで、 root での起動を回避でき、その一般ユーザで実行できるようだが、 Vine Linux 5.0 では、できなかった。実際に、/dev/ttyS0 の所有者は root、 所属グループは dialout になっていたので、これで大丈夫と思ったのだが。

PAP ではなく、せめて CHAP/MD5 で通信したいのだが、 これは、 ppp の対応でなんとかなるようだ。勉強不足で手がでないが...。

ppp モジュールがロードされていないというメッセージが出た時、 モジュール名が変わっているので、# insmod -o ppp_generic --name=ppp を試してみたが、insmod: can't read '-o' と言われてしまった。 -o オプションは、もう無いのか? ひょっとして、もう insmod を使うことは推奨されていないとか? -h オプションで、ヘルプさえ表示されないのはなぜ?

通信速度は、条件の悪い場所での試行だったため、こんなものだが、もう少しスピードがでると期待している。 無線LAN への対応もやり直さねばならないが、そろそろ時間も尽きてきたので、 これからの環境整備には時間がかかりそうだ。


Vine Linux 5.0 インストール雑感  [8/31/2009]

2009年8月24日に Vine Linux 5.0 がリリースされた。 Vine Linux 4.2 からアップデートしたかったが、 少し様子を見て、クリーンインストールを選択することにした。 およそ2年半ぶりのバージョンアップであり、かなり大きくベースが変わっているからだ。 まだ、すべての移行作業が終わっているわけではないが、雑感をメモしておくことにした。 なお、インストールの対象は、ThinkPad T60(1954-G2J), Memory(1.5GB) だ。

1.  全体的印象
Vine Linux 4.2 と比較して、 ThinkPad T60(1954-G2J) では、 ハードウエアの性能をよりよく引き出すことができている。
具体的には、以下の3つだけでも劇的にパフォーマンスは向上する。
 ·x86_64 アーキテクチャー対応、
 ·TuxOnIce 採用によるハイバネーションの安定、
 ·X.Org X11 server 1.6 採用により、 Intel Graphics Media Accelarator 945GM にも対応。

2.  インストール
今回は、バルクのハードディスク 2.5' SATAWestern Digital WD3200BEVT-0 をおよそ6,200円で購入。 320GB なんて不要なのだが、 地元ショップでは、その下が80GB で 4,000円代だったので、 コストパフォーマンスの高い 320GB を選択した。

Vine50-x86_64-DVD.iso をダウンロードし、 X-CD-Roast(実体は、dvdrecord)を使って焼こうとしたら、 ThinkPad T60 に付属する CD/DVD Drive(HL-DT-SD DVDRAM GSA-4083N) を認識してくれない。しようがないので、

[root@localhost images]# growisofs -dvd-compat -Z /dev/dvd=Vine50-x86_64-DVD.iso

として、実質、dd でタラタラと確実に書き込むことにした。

Executing 'builtin_dd if=Vine50-x86_64-DVD.iso of=/dev/dvd obs=32k seek=0'
/dev/dvd: "Current Write Speed" is 8.2x1352KBps.
          0/1054867456 ( 0.0%) @0x, remaining ??:?? RBU 100.0% UBU   0.0%
          0/1054867456 ( 0.0%) @0x, remaining ??:?? RBU 100.0% UBU   0.0%
          0/1054867456 ( 0.0%) @0x, remaining ??:?? RBU 100.0% UBU   0.0%
          0/1054867456 ( 0.0%) @0x, remaining ??:?? RBU 100.0% UBU   0.0%
          0/1054867456 ( 0.0%) @0x, remaining ??:?? RBU 100.0% UBU   0.0%
    2686976/1054867456 ( 0.3%) @0.6x, remaining 150:06 RBU 100.0% UBU   2.9%
    6979584/1054867456 ( 0.7%) @0.9x, remaining 65:03 RBU 100.0% UBU  32.4%
   11665408/1054867456 ( 1.1%) @1.0x, remaining 44:42 RBU 100.0% UBU  17.6%
   16384000/1054867456 ( 1.6%) @1.0x, remaining 34:51 RBU 100.0% UBU  20.6%
...
 1053261824/1054867456 (99.8%) @0.7x, remaining 0:01 RBU   4.8% UBU  50.0%
builtin_dd: 515072*2KB out @ average 0.6x1352KBps
/dev/dvd: flushing cache
/dev/dvd: updating RMA
/dev/dvd: closing disc
/dev/dvd: reloading tray

と、まあ30分程で焼き上がり、DVD からブートし、インストール。 ファイル・システムのフォーマットに約15分。その後、 インストール・タイプで「ディスクトップ」を選択すると、 30分程度で終了。

3.  インストール後
「ディスクトップ」を選択したインストールが30分という短時間で終了する背景には、 そんなに多くのアプリケーションのインストールを強制しない、 というポリシー(?)にあるようだ。(Vine-manual は、Ver.5.0 用のものが完成していないために、インストールされない)
Openoffice.org (2.4.1) は、 「システム」>「システム管理」>「Synaptic パッケージマネージャ」 から、openoffice.org 2.3.1-5vl5 を選択してインストール。 「システム」>「システム管理」>「アプリケーションの追加と削除」には、 Openoffice.org はなかった。 こちらからは、install-assist-flash-plugin,install-assist-AdobeReader_jpn, self-build-mplayer, task-tetex などを選択。
self-buildパッケージは、 文字通り選択すると、ネットからソースパッケージをダウンロードして、 ビルドして、インストールしてくれる。 ただし、install-assist-AdobeReader_jpn は、説明書きにあるように、「自動的に AdobeReader_jpn のインストールに必要な rpm ファイルをダウンロードします。」 というだけで、インストールまでは進まないようだ。synaptic や、apt-get を使えば、インストールまで行くらしい。しようがないので、 ダウンロードされたファイルを探そうとしたが、ファイル名が分からず、また、 「ダウンロード」ディレクトリになかったので、synaptic で、install-assist-AdobeReader_jpn を一旦完全削除してから、 改めてインストールを選択した。ちなみに、 ダウンロードされるrpm 名は、 AdbeRdr9.1.3-4_i486linux_jpn.rpm のようで、 synaptic での名前は、AdobeReader_jpn.32bitrpm パッケージ名は、AdobeReader_jpn となっていたので混乱した;-)

4.  トラブルと今後の課題
バックアップ用のハードディスクから、データをリストアしながら、アプリケーションのチェックをしたのだが、 これまで、Vine Linux では、バージョンアップに対応してこなかった mew が、6.2 に上がっていた。emacs は、GNU Emacs 23.1.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.16.5)ptetex は、3.0。標準で、日本語の扱いがUTF-8 ロケールに変更になっているのも、 要注意だ。glibc-2.8, gcc-4.1.2, gnome 2.26.3, Firefox 3.5 もバージョンが上がっている例。

まず、Wine, ppxp, tkppxp がなくなった。 Wine の代わりに、 qemu を、 ppxp の代わりに、wvdial を使え、ということなのかも知れない。

次に困ったのは、Office-Bibliothek (Duden) が動かなくなったこと。 これは、購入したアプリケーションなので、ちょっといたい。 今までなら、バックアップしておいた /opt/officebib 以下をコピーして、officebibliothek(4.0.1) のインストーラー officebib.install を実行するだけで、 gnome のメニューからも使えるようになっていた。 今回のエラーは:

[hogehoge@localhost ~]$ officebib &
[1] 28394
[hogehoge@localhost ~]$ xset:  bad font path element (#23), possible causes are:
    Directory does not exist or has wrong permissions
    Directory missing fonts.dir
    Incorrect font server address or syntax
/opt/officebib/officebib.bin: error while loading shared libraries: libXmu.so.6:
 cannot open shared object file: No such file or directory
xset:  warning, no entries deleted from font path.

libXmu.so.6 は、/usr/lib64/libXmu.so.6 にあり、/usr/lib/ 以下には、ないため、シンボリック・リンクで逃れられるかと思ったが、 どうやらダメ。64ビットのランタイムライブラリなので当然か。
そこで、http://www.office-bibliothek.de/FAQ を見ていたら、Office-BibliothekLinux用最新版が 5.0.6 になっていることに気がついた。 見ると、そこには、SUSE, Fedora, Ubuntu 用のファイルがあり、 ダメもとで、FedoraSUSErpm ファイルをダウンロードして試してみたところ、 officebib-5.0.6-1-suse.rpm が無事インストールできて、使えるようになった。 officebibliothek を立ち上げたところ、選べるフォントが少ないことに気づき、 急遽適当にフォントを追加インストールした。意外な結果にちょっと驚いた。

screen shot of Vine Linux 5.0

5.  雑感の総括
少なくとも ThinkPad T60 では、今回の Vine Linux 5.0 は、非常に快適だ。なんといっても、使っていて、これまで以上に「軽さ」を感じる。 X86_64 の威力なのか、それとも、新しいカーネル (2.6.27) のおかげなのか。 もちろん Project Vine のチューンアップに感謝しないわけにはいかない。

数多くの Linux distributions の中で、従来の unix らしさを多く残していたのが、 Vine Linux だったが、 今回のバージョン・アップでは、そうした側面が薄れ、Ubuntu 的になった気がする。

もちろん、コマンドラインでの仕事は、従来のようにできるが、 各種設定が、より GUI 中心になってきて、 細かい部分を隠すようになってきた。例えば、network manager が管理するようになり、ネットワーク・サービス再起動のコマンドを打つ必要がなくなった。 イーサネット・ケーブルは、DHCP 接続の場合は、 何も考えずに抜き差しできる。

「システム」>「システム管理」>「ディスプレイ」の順にメニューを降りると、「ディスプレイ設定」 の窓で、「解像度」と「色の深さ」が変えられるが、「色の深さ」のところの値は、なんと、 <数百万の色> と <数千の色> だ。何ビットのカラーなのだろう、と考えてしまうが、 一般のユーザには、多分どうでもいいことなのだろう。

かくして、現在は、解像度 1400x1050 で、<数百万の色> のディスプレイで過ごしている。 そして、ハイバネーションが劇的に速くなり、フリーズすることもなく、さらに、Ubuntu のように、「電源管理」でサスペンドも選択可能になった。まだいくつかの課題はあるにせよ、 とにかく格段に快適になったことは間違いない。Project Vine に感謝。


なーんだ、USB マウスか!  [5/11/2009]

本日のお題と結論
PowerPoint のリモコン機器は、 ディバイスとして USB Mouse を使っているものがある。
VineLinux + Impress (Openoffice.org 2.0) でも使える。
VineLinux + Impress (Openoffice.org 2.0) (ThinkPad T60, Mobile Intel 945GM Express) で、スライドにゴミ(ノイズ)が残る。
xorg.confDevice セクションに、option "NoAccel" を書き込めば消せる。
教訓:「初めからできないと思うな!」

1. パワーポイントのリモコン
Windows + PowerPoint の発表形式がいつ頃から広まったのか、 定かな記憶はないのだが、私自身の事を振り返れば、 Magic Point を使って学会発表をしたのが2001年だったから、 その1〜2年前だったと思う。それまで、unix 系のOS しか使っていなかったはずのある研究者が、 Windows は好きではないが、PowerPoint はよい、とほめていた記憶がある。なんと節操がない、 なんてその頃は思っていたが、「良い物はよい」というスタンスに半分呆れていた。 今年が2009年なので、およそ10年前のことだろう。

時が移り、Linux の垣根も随分と低くなった。 「Linux は、Windows と違い、 原則的には無料なんですよ」と言っても、パソコンを買えばWindows が付いてくる時代。わざわざLinux をインストールする人は、 日本ではあまりいないようだ。Ubuntu などは、 標準設定でもWindows よりはるかに使い易いことを知らない人達が大多数だ。

Windows + PowerPoint のプレゼンテーションで、 これもあっという間に広まったのが、PowerPoint のリモコン。「いいなあ」と思いつつ 「どうせPowerPoint 専用なんだろう」 と思い、「あれは何と呼ぶのだろう?」、 「あの正体は、Bluetooth かな?」 なんて考えていた。

近くに共用の「PowerPoint リモコン」があることを知り、まあせっかくだから「それ」 を試してみよう、と借りてきてUSB port に挿してみてびっくり。「なーんだ、USBマウスだ!」 ということで、試してみた「あれ」は、VineLinux (4.2) + Impress (OpenOffice.org 2.0) でも、 ちゃんと動作することが分かった。もっと早く試してみればよかった、と後悔。

実際に試してみたのは、次の2種類。
「レーザーポインター for PC Kokuyo サシ-41N」と「レーザーポインター for PC Kokuyo サシ-51N」。

まず、

# tail -f /var/log/messages

として、「受信器」を USB ポートに差し込むと、 以下のような出力があった。

「レーザーポインター for PC Kokuyo サシ-41N」の場合:

May  7 19:14:07 localhost kernel: usb 3-1: new low speed USB device using uhci_hcd and address 2
May  7 19:14:07 localhost kernel: usb 3-1: configuration #1 chosen from 1 choice
May  7 19:14:08 localhost kernel: input: ChoisTec Corp. Sasi-41Device as /class/input/input3
May  7 19:14:08 localhost kernel: input: USB HID v1.10 Keyboard [ChoisTec Corp. Sasi-41Device] on 
usb-0000:00:1d.2-1
May  7 19:14:13 localhost kernel: input: ChoisTec Corp. Sasi-41Device as /class/input/input4
May  7 19:14:13 localhost kernel: input: USB HID v1.10 Mouse [ChoisTec Corp. Sasi-41Device] on usb-0000:00:1d.2-1

「レーザーポインター for PC Kokuyo サシ-51N」の場合:

May  9 18:18:18 localhost kernel: usb 3-1: new low speed USB device using uhci_hcd and address 2
May  9 18:18:18 localhost kernel: usb 3-1: configuration #1 chosen from 1 choice
May  9 18:18:18 localhost kernel: input: KOKUYO S&T RF Remo  as /class/input/input3
May  9 18:18:18 localhost kernel: input: USB HID v1.00 Keyboard [KOKUYO S&T RF Remo ] on usb-0000:00:1d.2-1
May  9 18:18:18 localhost kernel: input: KOKUYO S&T RF Remo  as /class/input/input4
May  9 18:18:18 localhost kernel: input: USB HID v1.00 Mouse [KOKUYO S&T RF Remo ] on usb-0000:00:1d.2-1

両方とも、USB Keyboard, USB Mouse として認識されている。 そう、パワーポイントのコントロールをするために、マウスのクリックをリモートでやるだけなのだ。「なーんだ」と納得。

「サシ-41N」は、ChoisTec Corp. (韓国のメーカーらしい) で、「サシ-51N」は、 KOKUYO S&T RF Remo(コクヨの正式英語名称)のものであることが分かる。 「41」と「51」の違いは、メーカーの違いでもあるようだ。「サシ-51N」では、 「Nextスイッチの長押し(3秒以上)」で、「スライドショー」の開始、 「Backスイッチの長押し(3秒以上)」で、「スライドショー」の終了ができることも確認した。 なお、「サシ-41N」は、認識に多少時間がかかった。上記のログでは、5〜6秒だが、 最初に、Nextスイッチを押して反応しなかった時は、実感として10秒以上かかりダメかと思った。

2つともリモートで使う電波は、RF方式(ラジオ波)だが、ここらへんは、 製品やメーカーによって違うようだ。

2. Impress にごみ(ノイズ)が残る問題
VineLinux + Impress (Openoffice.org 2.0) (ThinkPad T60, Mobile Intel 945GM Express) で、スライドにゴミ(ノイズ)が残る問題は、 『日経Linux』 6月号(2009)の「旧型PCでよく起こる問題10題」(P.40)の「ディスプレイでノイズが入る」 と同じ方法で解決できた。/etc/X11/xorg.confDeviceセクションに、Option "NoAccel" を追記してXの再起動するだけ。 現在使っているThinkPad T60 の設定は、以下の通り。

Section "Device"
        Identifier  "Videocard0"
        Driver      "i810"
        VendorName  "Intel"
        BoardName   "Intel 945"
        VideoRam    131072
        Option      "DDC" "off"
        Option      "MonitorLayout" "CRT,LFP"
        Option      "Clone" "on"
        Option      "NoAccel"
EndSection

ただし、こうするとグラフィック・アクセレレーション機能が抑制されるため、 Firefox でのスクロールがかなり遅くなるが、 それ以外は特に不便は感じない。 Knoppix 6.0.1USB Flash Memory 版で、 同じ ThinkPad T60を起動すると「Impress でスライドにノイズが入る」 ことはないので、X あるいは OpenOffice.org のバージョンアップで解決するのかもしれない。
現象的には、Impress の別のスライドや、 ディスクトップ、ターミナルの文字などの一部が、 スライドショー実行中、画面の特定箇所に、残像的に全てのスライドに表示されてしまう、 というもの(以下の残像の例を参照)。 当初はホーム・ディレクトリ下の .openoffice.org2.0/user/registry/cache にキャッシュされているデータの一部が graphic memory の特定プレインにleak しているのかと思っていたが、 Gnome desktop の背景の一部が出てきたり、 gnome terminal の表示の一部が出てきたりノイズの内容はさまざまだった。

noise on Impress (Openoffice.org 2.0) noise on Impress (Openoffice.org 2.0)

『日経Linux』の記事では、「グラフィックス・チップがTrident のほかにも C&T(chips)Cirrus Logic (cirrus) のドライバでも NoAccel オプションがあり、 同種の方法で解決できる可能性がある。」となっていたので、 ひょっとして Intel でも効くかも、 と思って試したところ、正解だったようだ。

3. 感想
これで、VineLinux 4.2 + Impress でも、 あまり気遅れすることなく(?)プレゼンテーションができるようになった。 「何でもやる前から諦めてはだめ」ですね。 特に、「使用できるパソコンの種類と必要装備」なんていう所に、 「対応OS: Windows XP, Vista, Macintosh のみ」とか書いてあっても、 「専用ソフトウエアを必要としないUSB接続製品」なら Linux でも使える可能性が高い。

そう言えば、最近耳にした発言: 「ポッドキャスト(Podcast) を見るのには、iPod が必要ですから。」 というのも、何も知らない人が聞くと納得してしまうかもしれないが、 そんなことはない。 実態は、たいてい mp3 とか、 mp4 のファイルだから、 それに対応したソフトウエアがあれば、 ポッドキャスト(Podcast) は視聴できる (該当するマルチメディア・ファイルのディコードができるソフトウエアがないと、 もちろん視聴できないが)。

私は、Firefox 2.0.0.20 + MPlayer Plugin(mplayerplug-in-3.50.-1) を使って、VineLinux 4.2 上で ちゃんとGalileo を見ることができている。

Podcast ていうのは、 iPod だから、 iPod を持っていない私には、できない。」 という短絡をしないで欲しい、と思う。 同じような論理で行けば:
「パソコンを買ったら Windows が入っていたから、 Windows しかこのパソコンでは動かない。」とか、 「パソコンを買ったら Windows が入っていたから、 Windows しかこのパソコンでは動かしてはいけないんだ。」 という短絡もしないで欲しい。 えっ、論理的にパラレルでない? はっ、すいません。


Wine on VineLinux 4.2 で MS-Word  [01/30/2009]

日々、MS-Word の添付ファイルが送られてくるが、その多さには辟易。 OpenOffice.org で読めるから、別に気にしないと公言していたが、 最近は平気で docx ファイルを添付してくる人もいる。 さらに、論文の添削ともなると、レイアウトも問題になり、 しようがなく仕事場の Windows XP に持っていきプリントアウトすることになる。 docx ファイルは、ODF Converter をインストールした UbuntuOpenOffice.org で変換して読めるが、なんとも不経済。 MS-Word を使いたくないという気持ちは強いが、 考えてみると新しいコンピュータを買うたびに Windows は付いてくるし、おまけに数年前には、ドイツ語版の Windows XPMS Office も購入している。意図しない内に、Microsoft にちゃんとお金を吸い取られている構図だ。 先日のハードディスク装換でハードディスクからWindows XP を追い出したものの、 MS Word は持っているのだから、 この際 Wine 経由で、 VineLinux 上で使ってみようと思いたった。 基本的にレイアウトが崩れずにdoc ファイルを読めればよいのだ。

Wine は、 http://www.winehq.org/GNU LGPL の元に配布されている「フリーソフトウェア」で、 Unix 環境のための Windows 互換レイヤーだ。 このレイヤーのおかげで Windows のプログラムを Unix 環境で手を加えずに動作させることができる可能性がある。 つまり、すべてのプログラムが問題なく動くことが保証されている訳ではない。 Wine Application Database を参照すると、どのようなアプリケーションが動作するか、およその見当がつく。

すでにベータの時から、Wine は何回か利用していた(参照: Wine-20050930 (とcosmas v.3.6) の VineLinux 3.1CR(kernel 2.4.27-0vl7)へのインストール Wine-0.9の VineLinux 3.1CR(kernel 2.4.27-0vl7)へのインストール)。

Wine は、2009年1月26日現在で、 stable1.0.1、 開発版が、1.1.13(Jan. 16, 2009) だ。 VineLinux 4.2 で提供されている Wine を調べてみると、wine-1.0.1-3vl4 ということで、今回はstable でも支障ないだろうと判断し、 rpm 版をインストールすることにした。

1. Wine のインストール
rpm 版の wine は、 wine-1.0.1-3vl4 で、基本的にこれだけインストールすれば今回の目的は達成されるが、 もしもの時のために、開発環境などの wine-devel-1.0.3vl4, wine-docs-1.0-1vl4, wine-init-1.0.1-3vl4 もインストールした。

    # apt-get install wine wine-devel wine-docs wine-init

すると、以下のようなメッセージが出るが、binfmt_misc 機能をすぐに使う予定はないので、 特に何もしなかった(だったらインストールしなければよいのだが...)。

    パッケージ wine-1.0.1-3vl4 をインストール中に:
    
    WINEのシステムフォントをリプレースするには
    fonts-replace-list.txt(修正版) をお読み下さい。
    
    パッケージ wine-init-1.0.1-3vl4 をインストール中に:
    
    WINE から binfmt_misc 機能を利用するための起動ファイルが
    インストールされ、ランレベル2、3、4、5で有効になりました。
    (ファイル名は /etc/init.d/wine です)
    起動時にファイルシステムのマウントが必要です。
    root権限で次のコマンドを使い、 /etc/fstab に追記して下さい。
    (削除も手動でお願いします)
    
    # cp /etc/fstab /etc/fstab.before  ##バックアップの作成
    # echo 'none /proc/sys/fs/binfmt_misc binfmt_misc defaults 0 0' >> /etc/fstab
    参照(Ja) http://opentechpress.jp/developer/article.pl?sid=06/08/24/0033257

wine appears in the gnome-menu

2. Wine インストール後
インストールが完了するとgnome メニューには、 右のようなメニューが追加される。 「Wineの設定」というメニューを見たが、 特にこれといって設定するようなものもない感じだ。 「設定」→「オーディオ」で、Test Sound をクリックして音が出たので,「適用」をクリックして終了。
「winヘルプ」というメニューは、「Windows Help を閲覧するブラウザ」 だそうだが、winhlp ファイルが初期状態では存在しないので、クリックしてもエラーになるだけ。 そもそも、なんで「Windows Help」をWine で参照する必要があるのか、不明だ。 最初は、Wine Help かと思った;-)

おまけとして付いているのは、「メモ帳」(Notepad)と、 メニューの「ゲーム」に追加される「Wineマイン」(マインスイーパー)だ。

3. MS-Office(ドイツ語版)インストール
さて、MS-Office(ドイツ語版)をインストールするのだが、 これまでの経緯から、ドイツ語版のWindows XP (どの程度のドイツ語カスタマイズが行われているのかは不明)上での MS-Word でも、問題なく日本語が使えることを確認している。 すなわち、コントロールパネルの使用言語のところで、日本語を指定すれば、 日本語のフォントと MS-IME がインストールされていた。 今回は、「日本語のWordの文書を読める」のが目標なので、 MS-IME は不要だが、日本語フォントは必要だ。 そこで、Wine のディレクトリ構成を見てみると、 ホーム・ディレクトリに、.wine ディレクトリが作成され、その下に、Cドライブ(drive_c) が作られていることが分かる。

$ ls .wine/
dosdevices/  drive_c/  system.reg  user.reg  userdef.reg

$ ls .wine/drive_c/
Program Files/  windows/

$ ls .wine/drive_c/windows/
Fonts/         notepad.exe*  system32/     winhlp32.exe*
command/       profiles/     temp/         winsxs/
explorer.exe*  regedit.exe*  twain_32.dll
hh.exe*        system/       win.ini
inf/           system.ini    winhelp.exe*

となっていたので、先日起動不能になったHDDを CROSU2(century) に装着し、 Windows をパティションをマウント。 .wine/drive_c/windows/Fonts/ 以下に、 MSGOTHIC.TTCMSMINCHO.TTC をコピーしておいた。

いよいよ MS-Office のインストールだ。 MS-OfficeCD-ROM をドライブに入れると、/media/OFFICE11/ にオートマウントされる。そこで、terminalで、

    $ cd /media/OFFICE11/
    $ wine setup.exe 

として、手動でインストールを開始する。terminal 上には、fixme: メッセージが多量に吐き出されるが、無視してしばらく待つと、 インストール選択の窓(Microsoft Office Professional Edition 2003) が現れる。インストール形式の選択だ。 Benutzerdefinierte Installation (user defined installation)を選択し、 Word, Excel, PowerPoint を選択 (Outlook, Publisher, Accessをはずした)。 さらに、 Erweiterte Anpassung von Anwendungen にチェックを入れ、細かいレベルでのインストールを選択できるようにした。 かなりめんどうだが、一通り目を通してチェックをしている内に、 Microsoft Handschirftkomponente というのを発見して、チェックを入れた。しばらく前から、 ドイツでの PowerPoint を使った発表でよく目にした手書き文字がインストールされるかな、と期待した。

installation ist erfolgreich abgeschlossen

一通りチェックを終えてインストールを開始。 無事に、左の終了の窓が出て、ほっと一息。 ユーザー名の登録の窓が出た後で、 一瞬、青くなった。そう、 アクティベーションをしなければならなかったのだ! Wine 上でアクティベーションをした話なんて、聞いたことがないぞ、 と思いながら、つらつらと窓に出たメッセージを読んでみると、
Falls Sie jetzt nicht aktivieren, können Sie die Software 49 mal verwenden, bevor viele der Funktionen nicht mehr verfügbar sind. なんて書いてある。つまり、アクティベーションをしないと、 49回までは使えても、その後は、多くの機能が使えなくなるんだそうだ。 まあ、きっと出来るんだろうと楽観的になり、
□ Ich möchte die Software über das Internet aktivieren. (Empfohlen)
をお薦めに従ってチェック。数秒後には、
Vielen Dank. Ihre Kopie von Microsoft Office Professional Edition 2003 ist aktiviert. Schließen Sie alle Anwendungen, und starten Sie erneut, um bislang nicht verfügbare Features zu aktivieren.
というメッセージが無事に出て終了。おお、Wine に感激。

added menu for ms-office on wine

右のように、gnome のメニューの「Wine」の下に、「Programms」→「Microsoft Office」→ が現れ、その下には、インストールで指定した 「Excel」、「PowerPoint」、「Word」、「Tools」と並んだサブ・メニューが表示されている。 で、ここをクリックするとちゃんとそれぞれのソフトが立ち上がってくれた。 しかも、起動は速い。先にインストールした手書き文字をちょっと使って、 日本語は、geditで書いたものをペーストしてみた。

Vine上のWineのWord のスナップ では、手書きフォントLucida Handwriting と、 飾り文字系の FreeStyle ScriptKunstler Script を使ってみた (フォント名にはウムラウトが付いていないけど Künstler「芸術家」ですね)。 Lucida Handwriting がいい感じです。 (ドイツで見たのは、これだったかもしれない。)
MS-IME はインストールしていないので、 日本語入力はできないが、そもそも Word で文章を書くことは想定していないので、OK である。 gedit 2.14.3 で書いた日本語を、 マウスで選択して、 Ctrl-c でコピー、Ctrl-v で問題なく張り付けできた。

4. 雑感
◎ これまで、 Word, Excel, PowerPoint のファイルを開けて動かしたところ、特に落ちることなく安定している。 ( MS OfficeWine で動かしている人たちの中には、不安定だという報告もあるが、 私のところでは、MS-IME をインストールしていないからなのか、極めて安定している。)
Windows 標準のいくつかの英数文字フォントがインストールされていないため、 英数文字が違うフォントで表示されることがある。
X 上で登録されているフォントが、 Word, Excel, PowerPoint でも使える。
◎ 起動も速いし、動作もきびきびしていて使うのにストレスを感じない(日本語入力をしないから、当り前か)。
△ 言語設定がちょっと変。日本語、ドイツ語、英語の自動認識モードにしているが、 ちゃんと認識しているとは思えない(もともと、こんなものなのかも)。
△ ドイツ語入力には、「CTRL+:」 (コントロール・ドッペルプンクト)を入力後に、 「o」とやらないと、ö は入力できない。 エスツェットは、ちなみに「CTRL+&」の後に、 「s」と入力する(もちろん、 「特殊文字挿入」(Einfügen - Symbol...)でも可能)。
uim(Universal Input Method) のバージョンを上げれば、 レジストリを書き換えて日本語入力ができるらしい(未確認)。

MS-OFFICE11 ドイツ語版のCD-ROM の中を見ていたら、悩ましき downloaden  [31/10, 7/11/2008] で話題にした、gedownloadet の例を3つ発見。 ただし、すべて付加語的形容詞としての例です。

• Beim Ausführen der gedownloadeten Datei werden die Dateien auf einzelne Disketten extrahiert.
• Wenn Sie eine Taste drücken, beginnt das Extrahieren der gedownloadeten Datei und das Kopieren der Dateien.
• Wenn der Prozess unterbrochen wird, müssen Sie die gedownloadete Programmdatei erneut ausführen, um alle sechs Disketten zu erstellen.


ブート可能USB disk作成(Ubuntu 8.10)  [01/11/2009]

Ubuntu 8.10 では、 ブート可能 USB disk の作成が簡単にできるようになった。 USB boot ができるコンピュータであるという条件があるが、 ちょっと他人のコンピュータを借りて仕事をする場合に、 ハードディスクに何の情報も残さずに自分の仕事ができる。 また、ハードディスクがクラッシュして再起動できなくなった場合にも、 USB からブートして部分的にデータを救出できる可能性がある。

そんなことを考えながら、 I/O DataTB-ST4G/K を 1,610円で購入。 もちろん、もっと低価格の製品もあるが、手堅く I/O Data を選択。それでも 4GB がこの値段なので、1GBあたり402,5円。 ブート可能 USB disk は、予想以上に簡単に作成できたので、 そのうち出番がくるかなと思っていた。

その矢先に、今度は本当に自分のハードディスク・トラブルに見まわれてしまった(涙)。 久しぶりにハードディスク売り場に行くと、いきなりワゴンセールで、 1TB の 3.5' が 8,000円台(頭がテラクラ)。 その足でバルクのハードディスク売り場へ行き、 120GB の 2.5' HDD を 6,285円で購入(1GBあたり52.357円)。安い! あと 300円足すと 150GB だったのだが、 動画を扱う訳でもなく、120GB ですら使いきる自信もない。 バックアップの大変さを思うと 120GB で十分だ。

万一の事態を予想して準備しておくのはよいことだが、 悪い事態のことばかり考えていると、本当に悪い事態に陥る(いつもの事だったりして)。 今回の復旧作業もついでにまとめて、顛末と感想を付け加えておく。 まず、結論的感想から。

× 今回作成した USB disk (Ubuntu 8.10) は、起動に2分17秒もかかるので、 挿してすぐに使いたいようなケースには不向き。
○ shutdown には、16秒しかかからないのはよい。
○ いったん起動してしまえば、動作はきびきびしていてよい。
△ ソフトウエアのアップデートはしない方が無難なので、長期間(=6ヶ月以上)使うものではない。

0. 準備 1: Bootable CD-R を焼く 「日経Linux 1月号」の DVD から、 ubuntu-ja-8.10-desktop-i386.iso をHDDにコピーし、 X-CD-Roastbootable CD-R を焼いた。今回も作業には、ThinkPad T60 を使っている。

1. 準備 2: BIOS による Boot 順序の設定
ThinkPad T60 では、 起動時に青い ThinkVantage ボタンを押し、 F1 を押すことで、BIOS設定ができる。 Startup を選択し、ATA HDD0 よりも上に-USB HDD を置く。 例えば、私の場合には、以下のようにした。

 1. ATAPI CD0: HL-DT-ST DVDRAM GSA-4083N-(SM)
 2. -USB HDD
 3. USB CD:
 4. ATA HDD0: HTS541080G9SA00 - (PM)
 5. USB FDD:
 [...以下省略]

ここで、準備 1 で焼いたCD-Rを CD-Drive のトレイに入れ、さらに、USB メモリ・スティックも挿しておき、 Bios 設定を終えたら、リブートする。 これで、CD0 から ThinkPad が立上り、USB メモリを認識まで進める。 もちろん、リブートし始めてから、CD-Rを入れて、USBを挿すこともできるだろうが、 けっこう忙しい。

2. Bootable USBの作成
Ubuntu 8.10 が無事に立ち上がったら、
「コンピュータに変更を加えないでUbuntuを使ってみる」を選択。
「システム」→「システム管理」→「 Create a USB Startup Disk」を選択。
あとは、窓に出てくる情報を適当にクリックして終わりだが、 私の場合には、USB を format することを求められた。 クリックすると、すぐに終了。
When starting up from this disk, documents and setting will be:
で、Stored in reserved extra space を選び、How much のところで保存容量を1.5GBに指定。 「終了(Q)」ではなく「Make Startup Disk」 をクリックして終了。
完了したら、再起動を選択すると、親切にも CDを取り出すタイミングで、 一時停止してくれるので、CD-R を取り出し、USB disk を挿入したまま再起動。

3. Bootable USBの使い心地
使ってみた雑感をまとめておく。
• USB disk から起動するのには、1分以上時間がかかる。起動後は、 「コンピュータに変更を加えないでUbuntuを使ってみる」を選択する。 GID:ubuntu、UID:ubuntu としてファイルは作成される。
• Network につなぎ、Emacs と TeX をインストールした。 「日本語環境セットアップ・ヘルパ」を利用して emacs-env-jalatex-env-ja を選択したら 39 packages がインストールされてしまった。 lv, nkf もついでに sudo apt-get install でインストール(Adobe Readerは、インストールできないが evince がすでにインストールされている)。 evolutionsudo apt-get remove で削除。
• updater を見ると、209個のアップデートがあったが、とりあえず無視。 後で、Make USB Startup Disk」 ( 以下、MUSDと略記 ) の使用法 などを参照し、アップデートしないのが正解であることを確認。
USB Boot disk で立ち上げた状態で、 「コンピュータ」を Nautilus で覗くと、 「ファイルシステム」の中が 「Ubuntu USB diskcasper-rw 」、 「/」は、VineLinuxroot だった。 ただし、superuser ではないので、個人のホームディレクトリの中は、 端末から、sudo ls /media/disk/home/hoge のようにしないと見えない。
• 日本語106キーボード設定になっていたので、英語キーボードの ThinkPad T60 とキーボード配列が合わない。 「キーボードの設定」を選んでも、英語キーボードが選択できないので、 これは、各国語サポートの「英語」を選択してインストールしなければ選択できないのかもしれない。 (xmodmap で切替えたくなるが、 Gnome の設定と矛盾してしまうはず...。)
VineLinux を立ち上げて、 USB disk の中身を見てみた。 USB Boot disk は、vfat で、立ち上げた時に見えるシステムの中身は、casper-rw だ。 タイムスタンプは、Stored in reserved extra space を選択してインストールした時に作られたもの。この中に、 ファイルシステムが押し込められていて、新たにインストールしたプログラムやデータが、 その時のタイムスタンプとともに納められているらしい。

[root@localhost hoge]# ls -l /media/disk
合計 1558884
-rwxr-xr-x 1 hoge root        238  1月 1日 18:14 README.diskdefines*
-rwxr-xr-x 1 hoge root         40  1月 1日 18:14 autorun.inf*
drwxr-xr-x 2 hoge root       4096  1月 1日 18:18 casper/
-rwxr-xr-x 1 hoge root 1594884096  1月 1日 18:21 casper-rw*
drwxr-xr-x 3 hoge root       4096  1月 1日 18:18 dists/
drwxr-xr-x 2 hoge root       4096  1月 1日 18:18 install/
-r-xr-xr-x 1 hoge root      14607  1月 1日 18:14 ldlinux.sys*
-rwxr-xr-x 1 hoge root       5141  1月 1日 18:14 md5sum.txt*
drwxr-xr-x 2 hoge root       4096  1月 1日 18:18 pics/
drwxr-xr-x 4 hoge root       4096  1月 1日 18:18 pool/
drwxr-xr-x 2 hoge root       4096  1月 1日 18:18 preseed/
drwxr-xr-x 2 hoge root       4096  1月 1日 18:18 syslinux/
-rwxr-xr-x 1 hoge root         76  1月 1日 18:18 syslinux.cfg*
-rwxr-xr-x 1 hoge root     199517  1月 1日 18:14 umenu.exe*
-rwxr-xr-x 1 hoge root    1145132  1月 1日 18:14 wubi.exe*
[root@localhost hoge]# df -h /media/disk
ファイルシステム    サイズ  使用  残り 使用% マウント位置
/dev/sdb1             3.9G  2.2G  1.7G  57% /media/disk 
[root@localhost hoge]# lv -g "sdb1" /etc/mtab
/dev/sdb1 /media/disk vfat rw,noexec,nosuid,nodev,shortname=winnt,uid=500 0 0

4. HDDの不調
ハイバネーションがよく不調になり、固まってしまうので、 今回も同じことだと高をくくっていたが、fsck が止まってしまい、 マニュアルでの修正を求められた。3つの i-node をクリアしてしまったが、その結果、 リブート後に、avahi-daemon 0.6.13 が立ち上がらなくなった。 こんな所がダメージを浮けたなんて想像していなかったので、 すなおに諦めて、新しいハードディスクに乗り換えることを決定。

HITACHI Travelstar (80GB)から、 Western Digital (Scorpio 120GB)に換えた。 どちらも Serial ATA (=SATA) だが、メーカーが違うと、音も違う。 今度は、「チチチチチ」という静かな音で、たまに「ポヨッ」と音がする。

5. 復旧計画
以前入っていたドイツ語のWindows XP Professional は、不要と判断した。理由は、新しいハードディスクを装着して、 Windows 環境を構築するのには、Linuxの場合に比べて、 3倍以上の時間と労力がかかるからだ。さらに、この一年間を振り返って、実際に Windows の使用時間は、トータルでも3〜4時間しかなかった。 日本語の Windows よりもきびきび動くことは分かったので、 もうそれで十分、という感じだ。

問題は、これまで通り VineLinux をメインにするか、 この際、Ubuntu に完全乗り換えをしてしまうか、という部分だ。 Ubuntu 8.10 の利点は、 VineLinux 4.2 に比べて:
(1) 各国語サポートが充実していること、
(2) hibernation が安定して動作すること、
(3) パッケージが全体的に新しいこと。
結局、差し迫った仕事も抱えていることから、 最小限の労力で環境を復元する道(VineLinux 4.2 のみをインストール)を選んだ。

6. 復旧作業
• 最初に、バックアップの合間に入ったデータを、 USB boot disk (Ubuntu 8.10) で立ち上げて、 もう1本 USB メモリを挿して、コピーしておく。
VineLinux 4.1CR のCDを持っているので、 新しいハードディスクを装着した後、CDを入れて普通にインストール。
apt-get update; apt-get upgrade をして最新の状態にした(127個のアップデート)。 バージョンを 4.2 に上げるには、 現在では、どうやら apt-get update; apt-get upgrade をすればよいようだ。 ただし、 apt-get upgrade してみると、 1回目では、完全に 4.2に移行できていない。2回目の apt-get upgrade を終えた時点で、カーネルのバージョンも上がる。
Synaptic を使い、 必要なソフトウエアをチェックして、まとめてインストール。
Adobe Reader 8.1.3 に関しては、 VineLinux 4.2 ではパッケージは用意されていないので、 http://www.adobe.com/jp/products/acrobat/readstep2.html より、 AdobeReader_jpn-8.1.3-1.i486.rpm をダウンロードして、 # rpm -ivh AdobeReader_jpn-8.1.3-1.i486.rpm してインストール。さらに、既知の問題として、Acrobat に含まれる libstdc++34 では、VineLinux で動かないので、 apt-get install libstdc++34 をしておいてから、 # ln -sf /usr/lib/libstdc++.so.6 /opt/Adobe/Reader8/Reader/intellinux/lib/libstdc++.so.6 のようにリンクして終了。
• rsync でバックアップしておいたホームディレクトリ以下のデータを元に戻す。 何も考えずにすべて戻すことも可能だが、この際、少し不要なデータは削除しておこうと、 時間をかけて選別。cp -R で適当に。 ドット・ファイルのコピーは慎重に。
• 別のUSB に保存しておいたデータを書き戻して、3時間程度で復旧した。

7. 雑談
usb boot diskで起動時間を短縮したり、 不要なソフトをインストールしないようにするためには、 結局、手作業でカスタマイズする方がよい。 Ubuntu Tips/USBデバイスへのインストール/UbuntuをUSBメモリに全自動インストールするには ( 8.10 版 ) にあるように、Ubuntu 8.04.1 を使って、 ある程度、手作業で作成する方が、起動時間も短縮でき、 汎用性のあるものが作れるようだ。
USB disk の中に partition を切って、ext3 の領域を作っておけば、 別のLinux マシンからも直接参照できてデータ交換に便利。
Windows で、空のハードディスクからの復旧になぜ時間がかかるかというと、 バックアップ専門のソフトウエアを利用し、 メーカーの復旧用のCDなどを有効活用したとしても、Windows Update に時間がかかるのと、インストールしているソフトのアップデートが、 ネットワークに接続していると自動的に入ってしまうから。で、そのたびに再起動させられ、 じっと待つわけですね。(再起動は一回だけですむVineLinux の場合とは大違いです。Ubuntu では、2回かな?)
• 結局 Ubuntu 8.04.1 を使って、 USB bootable disk を作り直す決心をした(いつになるのか不明)。

(* 冒頭に示した起動にかかった時間は、2分17秒だが、これは、 ThinkPad T60(1954-G2J), Memory(1.5GB) のマシンで、 emacs-env-ja, latex-env-ja, lv, nkf をインストールし、evolution を削除した USB boot disk で起動し、ストップウォッチで計測したもの。)


音声・動画ファイル関連の作業メモ (Vine4.2/ThinkPad T60,1954-G2J)  [8/10/2008]

今年のオープンキャンパス模擬講義 では、 音声ファイルを加工してプレゼンテーションの中に組み込んだのだが、 結果として、いろいろな音声・動画ツールをインストールして利用することになった。

1. mplayerplug-in-3.50.-1
これは、latex-beamer を使ったプレゼンテーションで、ハイパーリンクでFirefox に飛ばし、音声を再生するために使用した。実は、mplayer は、 mplayer-1.0-0rc2.3 を使っていたのだが、 plug-in はビルドしていなかった。
今回は、mplayerplug-in-3.50.-1.src.rpm を、http://www.mediafire.com/download.php?5ybnwnmtv33 からダウンロードし、リビルドした。 リビルドするには、mozilla-devel が必要だった。

$ rpmbuild --rebuild mplayerplug-in-3.50.-1.src.rpm
$ cd /home/hoge/rpm/RPMS/i386
# rpm -ivh mplayerplug-in-3.50.-1.i386.rpm

これで、拡張子が avi, asf, wvx, wax, mma, wav のものと (Windows Media Player Plugin で開く、 とFirefox の動作設定では言っているが、 mplayerplug-in で開ける)、 拡張子が mpga, m3u, flv, au のものが mplayerplug-in で開けるようになる。

2. ffmpeg-0.4.9
拡張子がflv の動画ファイルをmp3 に変換するためには、ffmpeg を使った。 VineLinux 4.2 では、 self-build-package (self-build-ffmpeg-0.4.9-11662.2vl4) が用意されているので、 それを使ってインストールした。ただし、当日は、パッケージ場所の移動中だったためか、 perl-Text-Unidecode-0.04-0vl0.noarch.rpmtexi2html-1.78-3vl0.noarch.rpm が取得できず、 以下のself-build が完結しなかったので、 あらかじめ、手動でパッケージをサーバーからダウンロードして、 rpm でインストールしてからやり直した。

# apt-get install self-build-ffmpeg

ffmpeg を使い、例えば、 hoge.flvhoge.mp3 に変換するには、以下のようにする。

$ ffmpeg -i hoge.flv -acodec copy hoge.mp3

3. mp3 と wav ファイルの相互変換
mp3wav へ変換するのには、 mpg321 を使った。 VineLinux 4.2 では、 mpg321-0.2.10-4vl2.i386.rpm が提供されているので、apt-get install でインストールした。
hoge.mp3hoge.wav に変換するには、以下のようにする(変換時のoption を前に、後ろにファイル名を書くので、この順序になる)。

$ mpg321 -w hoge.wav hoge.mp3

逆に、 wavmp3 にエンコードするために使ったのは、 lame で、 これは、以前にインストールしてあった VineLinux 4.2 のパッケージ(lame-3.97-2vl4.i386.rpm)だ。 hoge.wavhoge.mp3 にエンコードするには、例えば以下のようにする。

$ lame -V2 hoge.wav hoge.mp3

簡単なオプションは、lame --help で参照できるが、詳細なオプションは、man lame を見た方がよい。ちなみに、何のオプションもつけずにエンコードすると、 Encoding as 22.05 kHz 32 kbps single-ch MPEG-2 Layer III (11x) qval=3 となった。default のクオリティは、V=4 で、この程度。V=0 が最高品質。

4. cutmp3-1.9.2
適当な長さでmp3 でエンコードされたデータを切り取るのに、 cutmp3 を使った。小さなハサミという感じ。 インストールは、上記のサイトから、cutmp3-1.9.2.tar.bz2 をダウンロードし、適当なディレクトリで:

$ tar xjvf cutmp3-1.9.2.tar.bz2
$ cd cutmp3-1.9.2/
$ make
# make install

例えば、hoge.mp3 の最初から8秒後までを切り取り、hoge2.mp3 として書き出すには、

$ cutmp3 -i hoge.mp3 -a 0:00 -b 0:8 -o hoge2.mp3

ただ、wav ファイルの音声だけの切り取りなら、 praat で、 実際に音を聞きながら、波形をマウスで指定して確定し、 保存する方が希望通りのファイルを作成できる。

5. unplug
動画や画像を効率よくダウンロードするために、 Firefoxplugin として、UnPlug 1.6.06 を導入した。


Intel 945 で外部出力 (Vine4.2/ThinkPad T60,1954-G2J)  [8/08/2008]

A4サイズの ThinkPad T60 を使ってプレゼンテーションしようとした時、どうも出力がおかしいことに気がついた。 dual boot なので、 Windows XP で外部出力できる状態だと、 VineLinux では外部出力されず、 VineLinux で外部出力できる状態にすると、 LCD に出力されないのだ。 手元の画面を見ずに、beamer で出力されているスクリーンをみながら、 トラックポイント/タッチパッドでコントロールするのはちょっと大変だ。

ThinkPad T60, external display, beamer など でぐぐってみると、どうやらmain memoryVideo RAM を共有するタイプの Intel Graphics Controller で問題が出ているようだ。このタイプのコントローラは、 i810 から始まった。

ThinkPad T60(1954-G2J) のカタログには、 Video Chip: Intel Graphics Media Accelarator 950
Memory: 512MB (PC2-5300 DDR2 SDRAM)
Max: 3GB , スロット2(空き1)
Video RAM: Max 128MB (メインメモリーと共有)
となっている。lspci をしてみると、 次のようなラインがあった。

00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 
        943/940GML Express Integrated Graphics Controller (rev 03)

で、たどりついたのが Hanne's Blog だった。結論としては、 i810switch をインストールすればよい。 i810switchは、Antonino Daplas によってオリジナルコードが書かれ、 mano 氏によってメインテナンスされているもの。 http://www16.plala.or.jp/mano-a-mano/i810switch.html で手に入るはずだ(Debian系では、 apt-get install i810switch でインストールできるらしい。Ubuntu 8.04 でも、パッケージが存在するところまでは確認)。i810switch-0.6.5.tgz を入手したが、この版で、すでに、i830, 955GM, i845, i830, i855, i915 をサポートしている(中には、まだexperimentalなものもあるが)。
上記のサイトでは、さらに、i945 のパッチも提供しているので、 それを頂き、パッチをあてた。

$ tar xzvf i810switch-0.6.5.tgz
$ cd i810switch-0.6.5
$ gunzip i810switch-0.6.5.i945.mod.diff.gz
$ patch -p0 < i810switch-0.6.5.i945.mod.diff
$ make all
# make install

一部初歩的間違いを発見、修正(2008/1/6)

i810switchは (/usr/sbin/ 以下にインストールされ)、
# i810switch crt on
# i810switch crt off
のようにして、外部CRT出力を切り替える。 ノートパソコンの液晶画面出力をON/OFFする時は、
# i810switch lcd on
# i810switch lcd off
引数をつけずに、実行すると、その時点での出力ステータスが例えば以下のように表示される。
# i810switch
CRT: on
LCD: on

チップセットのレジスタ値は、
# i810switch probe
で分かる。最初の2行だけ以下に貼り付けるが、 i945のはずなのに、i830 と表示されるが、これで正常だ(i830ファミリーらしい)。

# /usr/sbin/i810switch probe
i810switch 0.6.5beta probe
i830 (8086:27a2) io=0xEE100000
...snip...

これでも外部出力の周波数がおかしくなることがあるようだ。 あちこちにこの対策の解説があるが、私は最初に以下のサイトを参考にした。( http://digital.hmx.net/2006/09/i810switchturbolinux_1.shtml) 具体的には、 /etc/X11/xorg.conf の Section "device" に以下の2行を書き込み、X を再起動させるだけだ。

    Option "MonitorLayout" "CRT,LFP"
    Option "Clone" "on"

AX520N でモバイル (Vine4.2)  [5/31/2008]

それまでモバイル用途で使っていたAH-N401C-ADP だが、さすがにメールのやり取りだけならいざしらず、 たまにブラウザを立ち上げねばならない時は、かなりいらいらしていた。 そんな時、W社から、一枚の葉書が舞い込んだ。

  「新つなぎ放題」へ料金コースを変更すると、接続時間制限がなくなります!
   月額料金を削減!年間11,268円おトク!
   さらに機種変更すると高速に!

「より速く、より安く、しかも使い放題」 と誘われると、一瞬ふらふらっとして、誘惑に負けそうになる。 しかし、そこはLinuxユーザ。「そんな新しいカードなんて動くわけはないよね。人柱になっている時間はないのだ」 と思いつつも、葉書に記されている2つの機種名(AX520N, AX530IN) とLinux をキーワードに検索してみると、AX520N の方は動いているという報告を見つけてしまった (AX520N は最大 408kbps, AX530IN は最大 512kbps)。 さらに、価格を調べてみると、のきなみ1円との表示。 「こういうのは、必ず何か裏にあるんだ」と思いつつ店へ直行してしまった。 われながら誘惑には弱い、と反省。しかし、現代を象徴するような、 誰でも引つける3語だな、と一方で感心してしまう。 「速い、安い、し放題」 というのは、 確実に現代社会では 危険信号 だ。近づいてはいけない!

さて、お店に行って判明したのだが、その店では、AX520N は0円だった。 ただし、ここからが問題なのだが、2年間は、 継続して月額1,000円を支払うのが条件で、 通信サービスを途中解約しても、 機種変更しても継続して支払わなければならない。 なんだか変だなと思って詳しく話を聞いてみると、 ようするにこのカード、 電話機として1月1,000円の分割払いで2年間かけて購入するという契約なのだ (個品割賦購入というらしい)。 ((割賦---「かっぷ」と読み、「代金を何回かに分けて支払うこと。」))
ただし、「タブルバリューセレクト」(最長24ヶ月間に割引と、電話機の故障・紛失等に対するサポートが受けられる) を申し込むと、月額700円の割引になる。 そうすると、月々の支払いは、300円となり、かなりお得ではある。 つまり、0円ではなく、24,000円のデータ通信専門の電話機を購入するのだが、 「タブルバリューセレクト」を申し込むと、電話機を 7,200円で購入できるというのと内容的には等しい。 仕組みが分かって、ちょっとたじろいだが、 現状よりも利点があるのは確かなので、購入契約をした。 そうすると、AX520N 代金として、24,000円の領収書をもらった。あれっ、お金をはらったっけ?

AX520N には、マニュアル2冊とCD-ROM x2 などが入っていた。

・まずは qdial
PC-Card スロットにAX520N に挿し込んで、ログを見ておく。

    localhost kernel: pccard: PCMCIA card inserted into slot 0
    localhost kernel: cs: memory probe 0xe4300000-0xe7ffffff: 
      excluding 0xe4300000-0xe46cffff 0xe4e70000-0xe523ffff 0xe5db0000-0xe7ffffff
    localhost kernel: pcmcia: registering new device pcmcia0.0
    localhost kernel: 0.0: ttyS0 at I/O 0x3f8 (irq = 3) is a 16550A

標準的な 16550A と認識されているようなので、 qdialdefault のモデムを選択、 電話先(以下では、xxxx-xxx-xxx##64/1 の部分)と DNS Server は、プロバイダのサイトで確認して設定(xxx.xyy.yyy.yxx, yyy.yzz.zzz.zyy)した。

    set MODE active
    set AUTH.PASSWD air-edge
    set LOG.FILE air-edge.log
    set LINE /dev/ttyS0
    set DIAL.TYPE Tone
    set DIAL.LIST xxxx-xxx-xxx##64/1
    set AUTH.PROTO CHAP/MD5 PAP
    set SERIAL.MODEM default
    set IDLE.INIT 0
    set IP.VJ yes
    set IP.RESOLV yes
    set IP.DNS xxx.xyy.yyy.yxx yyy.yzz.zzz.zyy

結構、このままでもいけるかも、と思いqdial を起動してログを取ったら、下のように、初期化で失敗している模様。

    [19437] OS   : PPxP version 2001080415
    [19437] CONS : <set><LINE></dev/ttyS0>
    [19437] CONS : <set><DIAL.TYPE><Tone>
    [19437] CONS : <set><DIAL.LIST><xxxx-xxx-xxx##64/1>
    [19437] CONS : <set><AUTH.PROTO><CHAP/MD5><PAP>
    [19437] CONS : <set><SERIAL.MODEM><default>
    [19437] OS   : fopen(/etc/ppxp/modem/default) OK
    [19437] OS   : fopen(/etc/ppxp/modem/standard) OK
    [19437] CONS : <set><IDLE.INIT><0>
    [19437] CONS : <set><IP.VJ><yes>
    [19437] CONS : <set><IP.RESOLV><yes>
    [19437] CONS : <set><IP.DNS><xxx.xyy.yyy.yxx><yyy.yzz.zzz.zyy>
    [19437] CONS : <connect>
    [19437] TIMER: PAUSE
    [19437] OS   : open(/dev/ttyS0)=8
    [19734] CHAT : write "ATH0E1\r"
    [19437] TIMER: START
    [19734] CHAT : ignore until 'AT'
    [19734] CHAT : read  "ATH0E1\r"
    [19734] CHAT : read  "\r"
    [19734] CHAT : read  "\n"
    [19734] CHAT : found "ERROR"
... snip ...
    

しようがないので、付属のマニュアルを見てみたのだが、AT コマンドの説明がない。 ということは、NEC のCD-ROM の中かと思い、NEC インフロンティア 「EasySetupTool AIR-EDGE & プロバイダ簡単設定 CD-ROM」を見るとありました。
(/Windows/AX420N/Manual/AX520N_AX420N_ATcommand.pdf)
初期化は、ATZ 「ソフトリセット」が使えそう。

・modem file の作成
そこで、/etc/ppxp/modem/ のファイルを参考に、 とりあえず、ax520n という名前で、 modem fileを以下の内容で作成。

  # NX520N NEC AirEdgePro
  include         standard
  Name            "NX520N NEC"
  Initialize      "ATZ"
  MaxDTESpeed     460800

で、あっけなく動いてしまった。

  ...
  [21193] CHAT : read  "ATZ\r"
  [21193] CHAT : read  "\r"
  [21193] CHAT : read  "\n"
  [21193] CHAT : found "OK"
  [21193] CHAT : write "ATDTxxxx-xxx-xxx##64\r"
  [21193] CHAT : found "CONNECT"
  [21026] OS   : dialer[21193] SUCCESS...

ax520n is working

もう少し細かい初期化をしなければいけないと思いつつ、ネットをさまよってみると、 こちら に先人がおりました。どうやら、WindowsXPで動くノートPCの接続ログを解析されたようです。 そこで、初期化の部分をそのまま設定に加えさせてもらいました。感謝!

ax520n は、ご覧のように、 あまりアンテナらしくないアンテナが2つ端についている。 両方を立てると耳(あるいは、クレーンの2本の腕)のように見え、 この角度で右のモードランプが使用中で光っていると2つのランプが目に見える。 ちょっと不気味だという話もあるが、見ようによってはかわいいかもしれない。 モバイルでも回線速度が上がったのは、率直にうれしい。


VineLinux 4.2/ThinkPad T60(1954-G2J)で無線LAN接続  [2/17/2008]

長いイーサネット・ケーブルが邪魔になる、と言われ、薄べったいタイプに変えたら、 今度はネコにかじられるようになり、ほとほといやけがさして、 ついに無線LAN を導入することになった。 本当は、有線の方が確実だし、安全だと思っているので、 ちょっと残念である。 化石化しつつある ISDN 回線を撤去し、「光」 へ移行することにもなった。結果的に見ると、 些細な「きっかけ」が予期していなかった大きな変化へとつながる、というよくある話だ。

まずは、無線LAN のルータを購入。 普段なら、慎重に Linux 対応品(?)を探すところだが、 それほどの時間はないので、量販店Y で、 イチオシ商品として積まれていた WZR2-G300N を入手。 PC-Card 付きのものを選んだのは、 ノートパソコンに内蔵されている無線LAN チップでうまくつながらない場合に備えての保険である。

あらかじめWZR2-G300N を光終端装置へ直接つないで、プロバイダと光回線の設定を済ませておいた。 光電話を使うことになったため、NTT は、 RT-200KI を置いていったので、 終端装置と RT-200KI を直結し、 RT-200KIはブリッジとして使うことにした。 ようするに、終端装置から、RT-200KI をイーサネット・ケーブルでつなぎ、RT-200KILAN1 から WZR2-G300N WAN の口へつなぐだけで、 RT-200KI は、何の設定もしない。WZR2-G300N の設定は、 わが家唯一のWindows XP マシンに添付ソフトウエアをインストールして行った。

# WZR2-G300N に紙媒体のマニュアルが付属しないのは、 不便だった。ブラウザで読むマニュアルも検索機能がついていないし、 電子マニュアル(?)全体の文書構成の見通しがよくない。

ThinkPad T60(1954-G2J) には、 PRO/Wireless 3945 ABG が入っている (いわゆるCentrino Duo マシン)。 今回は、暗号の脆弱性が明らかになっているWEP(Wired Equivalent Privacy) ではなく、WPA-PSK/WPA2-PSK で接続することをめざすことにした。 無線LANのWEP暗号、60秒でクラッキング(IT-Media) なんていうニュースも2007年4月5日に流れている。 今回は、今はなき『オープンソースマガジン』2006年11月号の特集、 「危険な無線LAN環境を撲滅せよ」が大いに参考になった。なお WPAとは、Wi-Fi Protected Access の略語であり、 今回導入するソフトウエア wpa_supplicant (Wi-Fi Protected Access client and IEEE 802.1X supplicant) は、AESに基づいた CCMPという暗号化メカニズムを使っている。
なお、今回の環境は、VineLinux 2.6.16-0vl76.28 である。

1. 必要なソフトウエアのインストール
今回インストールしたのは、
kernel-module-ipw3945
ipw3945d
ipw3945-firmware
wpa_supplicant

の4つ。VineLinux 4.2 では、いずれも
# apt-get install kernel-module-ipw394 ipw3945d ipw3945-firmware wpa_supplicant
でインストールできる。インストール後、 リブートすればeth1 を認識してくれる (本来は、リブートしなくても認識させられるはず)。

# /sbin/iwconfig eth1
eth1      unassociated  ESSID:off/any
          Mode:Managed  Frequency=nan kHz  Access Point: Not-Associated
          Bit Rate:0 kb/s   Tx-Power:15 dBm
          Retry limit:15   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:31   Missed beacon:0

2. wpa_supplicant.conf の設定
VineLinux 4.2 で提供されているwpa_supplicant (http://hostap.epitest.fi/wpa_supplicant/) は、wpa_supplicant-0.4.8-0vl1 だった (2008年2月の時点での本家の最新ステーブルは、0.5.9、2007-12-02。 本家の0.4.7 が2005-11-20, 0.5.0が2005-12-18 なので、 パッケージとしてはかなり古くなっている)。
インストール後には、/etc/wpa_supplicant/wpa_supplicant.conf が設定ファイルとして配置されるので、これを編集する。 今回は以下のように設定した。

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel

network={
        ssid="ルータのSSID値"
        scan_ssid=1
        key_mgmt=WPA-PSK
        group=CCMP TKIP
        psk=<encrypted passphrase>
}

AirStation(WZR2-G300N)本体裏にも記されているSSID を「ルータのSSID値」に指定。また、 psk には、平文で引用符にくくり psk="This is a secret phrase" と記入することもできるが、平文パスワードが直に書かれているファイルを置くのは気持悪いので、 wpa_passphrase を使って暗号化する。

     # wpa_passphrase <ESSID> [<パスフレーズ>]

とすることで、設定パラメータを算出してくれる。 その暗号化されたパラメータをpskの値として記入すればよい。 以下では、SSIDが、1122334455 で、パスフレーズが This is a secret phrase の場合。出力された network=以下の部分を、 #psk の行を削除して、wpa_supplicant.conf に張り付ければよい。 (以下の例では、実際の計算例とは異なる psk 値を例示している。)

# /usr/sbin/wpa_passphrase 001122334455 "This is a secret phrase"

network={
        ssid="001122334455"
        #psk="This is a secret phrase"
        psk=12141beb3b704d57fe84838279f6038cc2ebc48402541cae20ab9521fc75a7f3
}

3. /etc/sysconfig/wpa_supplicant の設定
ディフォルトでは、以下のような内容のファイルとなっていた。

# wlan0 and wifi0
# INTERFACES="-iwlan0 -iwifi0"
INTERFACES="-iwlan0"
# ndiswrapper and prism
# DRIVERS="-Dndiswrapper -Dprism"
DRIVERS="-Dndiswrapper" 

ndiswrapper は、 Windows XP 用のドライバを Linux で利用するラッパーだが、今回は、使わない。 Intel PRO/Wireless 3945 ABG のカーネルモジュール・ドライバとドライバ、およびファームウエアをインストール済みだが、 ドライバの指定を DRIVERS="-Dwext"とする( Linux Wireless EXTensions)。 というのも、wpa_supplicant がサポートするドライバ ipw は、 ipw2100/2200 しかサポートしていないからだ。 また、wlan0 ではなく、 今回は eth1 をインターフェイスに指定。その結果、 以下のようになった。

# wlan0 and wifi0
# INTERFACES="-iwlan0 -iwifi0"
# INTERFACES="-iwlan0"
INTERFACES="-ieth1"
# ndiswrapper and prism
# DRIVERS="-Dndiswrapper -Dprism"
# DRIVERS="-Dndiswrapper"
DRIVERS="-Dwext"

4. ifcfg-eth1 の作成
/etc/sysconfig/network-scripts/以下に、 ifcfg-eth1 を以下の内容で作成した。 ここでは、SSID の値を001122334455 として示した。 無線ルーターのIP-addressGATEWAY に指定した例。DHCP を使って、無線ルーターから IP-address を割り当ててもらう。

# Intel Corporation PRO/Wireless 3945ABG Network Connection
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=dhcp
ESSID=001122334455
GATEWAY=192.168.11.1

5. wpa_supplicant の起動
最初は、debug オプションをつけて(-d) 起動すると状況把握ができてよいかもしれない。実際に、 以下のようなコマンドラインで起動してみた。

# /usr/sbin/wpa_supplicant -Dwext -ieth1 -c/etc/wpa_supplicant/wpa_supplicant.conf

その結果は、以下のようになった。 ここでは、SSID を上記と同様、001122334455 と置き換えている。

Associated with 00:11:22:33:44:55
Authentication with 00:11:22:33:44:55 timed out.
CTRL-EVENT-DISCONNECTED - Disconnect event - remove keys
Trying to associate with 00:11:22:33:44:55 (SSID='001122334455' freq=0 MHz)
Associated with 00:11:22:33:44:55
WPA: Key negotiation completed with 00:11:22:33:44:55 [PTK=CCMP GTK=CCMP]
CTRL-EVENT-CONNECTED - Connection to 00:11:22:33:44:55 completed (auth)

最初はタイムアウトしているが、2回目で無事につながり、 最後の行で分かるように、これでめでたく無線ルータにつながっている。 /sbin/iwconfig の出力は以下のようになっていた。 ここでは、SSID の値を001122334455Encryption key の値を、 0011-2233-4455-6677-8899-AABB-CCDD-EEFF、 ホスト名をhoge.hogehoge と書き換えてある。

eth1      IEEE 802.11g  ESSID:"001122334455"  Nickname:"hoge.hogehoge"
          Mode:Managed  Frequency:2.437 GHz  Access Point: 00:11:22:33:44:55
          Bit Rate:54 Mb/s   Tx-Power:15 dBm
          Retry limit:15   RTS thr:off   Fragment thr:off
          Encryption key: 0011-2233-4455-6677-8899-AABB-CCDD-EEFF Security mode:open
          Power Management:off
          Link Quality=83/100  Signal level=-50 dBm  Noise level=-51 dBm
          Rx invalid nwid:0  Rx invalid crypt:1  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:4560   Missed beacon:0

5. 仕上げ
あとは、eth1 に対して、dhcp から、IP-addressを割りふってもらえば、 無事にネットに接続できる(dhcpcd は、DHCP クライアントデーモン)。

    # /sbin/dhcpcd -n eth1

とりあえず、バックグラウンドで wpa_supplicant を動かすなら、-B オプションで、 起動時に wpa_supplicant を動かすなら、
# /sbin/chkconfig --add wpa_supplicant
としておけばよいだろう。

上記の設定では、ハイバネーション(software suspend 2)の後、復帰できないので、
# /sbin/service wpa_supplicant restart
# /sbin/dhcpcd -n eth1
が必要になる(wpa_supplicant のリスタートには、 若干の時間がかかるので、/etc/rc.d/rc.local に入れる場合には、ウエイトを入れる必要があるので注意)。
avahi-daemon[1234]: Registering new address record for 192.168.11.5 on eth1.
のようなメッセージが/var/log/messages に残され、再利用可能になる(なお、一定時間、ネットにアクセスにいかないと、 貸し出し期間が過ぎてしまい、同様の状態になる)。
[vine-users:076813] Re: ipw3945エラー にあるように、「hibernation/resume のサイクルで firmware が消えてしまったか壊れてしまう」 こともあるようだ(その対策に関しては、上記のML の内容を参照)。

ThinkPad T60 には、無線LANのON/OFF スイッチがあるが、それをOFFにしてみると、/var/log/messages には、

ipw3945: Error sending SCAN_ABORT_CMD: time out after 500ms.
ipw3945: Radio Frequency Kill Switch is On:
Kill switch must be turned off for wireless networking to work. 

というメッセージが残された。なかなかやるな、と思ったが、 考えてみると変な表現だ。スイッチを切った時には、「停止スイッチが入っています。」 となり、すぐ後に、 「無線ネットワークが作動するように停止スイッチが切られたようです。」 というのは、矛盾しているように聞える。 「無線ネットワークが作動するスイッチが切られたようです。」 だったらよかったのだが、 kill switch のメインな機能が、スイッチを「切る」(OFF) 方にあるから混乱してしまったのだろう。 つづけて、ON にすると、 以下のように検出したというメッセージが残される。

ipw3945: Detected geography ABG (13 802.11bg channels, 12 802.11a channels)

最後に残されたのが、cardbus cardWLI2-CB-G300N だ。 カードスロットに差し込み、 pccardctl で見ても

# /sbin/pccardctl ident
  Socket 0:
  no product info available

とつれない返事。仕方なく、Windows XP 機にお世話になって、カードの素姓を見てみた。その結果、 Ralink Technology, Corp. の製品らしいことが分かったが、そこから先は不明のまま。 ndiswrapper を使って、Windows 用のドライバを使えば動かせるかもしれない。また FedoraDebian/Ubuntu なら、カーネルドライバ iwl3945.ko を使って動かせるようだが、VineLinux ではちょっと大変そうだ。 Softmac layer は、kernelLinux 2.6.17 からサポートされた。 Linux Watchbetter WiFi, faster performance によれば、これで Ralink rt2* 802.11 chip も動かせそうだ。これ以上深みにはまらない程度で、退散。


ころばぬ先のバックアップ  [1/21,25/2008]

今年も卒論、卒研の提出の季節が終わり、今さらながらにバックアップの重要性を強調しておけばよかった、 と思っている。少なくとも1名の犠牲者が出たからだ。 なんでも、ファイルを保存する時、無意識にただWindows上のWordで「保存」 を選んだようで、どこかに何かの名前で保存されたと思い込んでいたらしい。 default の名前でどこかに保存されているか、 それともファイル名のところをブランクにしたまま終了してしまったか、 そこらへんの事情はよく分からない。

どこまで自動に任せるか、というのは実は大きな問題だったりする。 ここぞ、という所では、手動に切り替えて、「意識して行動する」 必要がある。

私のように、文章を書く時は、いつもEmacs と決まっている人間からすると(時々、Word を使わざるを得ない時もあって ふくれているが)、名前を付けずにファイルを保存するなんて、 まったく想像できない世界である。書きながらも、 オートセーブがあるにもかかわらず、 ついつい Ctrl-x-s してしまうのが習慣になっている。

バックアップの基本は、「機械は壊れる」という前提で、 「つね日頃から危険分散をしておくこと」 だ。 マーフィーの法則(Murphy's Law)曰く、 "Anthing that can go wrong will go wrong."なのだ。 「ここぞ、という時に、悪いことは起きる」し、その頻度は決して低くない。 コンピュータを使っていると、つい錯覚し、データは必ず残っているように思える時がある。 近年のユーザーインターフェースは、 あたかも自動的にすべてをやってくれるように見せかけているが、実はそんなに信用できるものではない。

ハードディスクのデータは、メモリースティックやフロッピー、 はたまた別のコンピュータにコピーを取っておくべきで、 メールに添付して他の人に送っておく、というのも場合によってはよい手段となる。 「バックアップはめんどくさい」と思う人も多いが、 めんどくさくないバックアップのやり方を決めて、それに慣れておくのがよい。

私は仕事上、ThinkPad X31 を中心に使っていたので、このバックアップは欠かせなかった。 なぜ過去形か、というと、もはや、そうではなくなった、ということ。

3日前の朝、いくつかのアイコンがつぶれて見えなくなった。 別のウインドウを開くと、下半分が横縞の色とりどりの線となって、 まるで読めない(VineLinux 4.1)。カーネルのバージョンアップがあってから、 ハイバネーションができなくなっていたのも気になっていたのだが、 思い切って4.2にアップデートした。アップデートそのものは成功したかに見えたが、 再起動すると fsck がかかり、修復できない i-node が大量発生。 古いカーネルで立ち上げなおし、再度、新しいカーネルでブートすると、 いくつかの内部コントローラを自動認識できず、kudzu の configure を強制された。

思えば、プロジェクタへの出力が半分しか出ない、というトラブルに昨年の夏以来悩まされていたので、 直接的には、graphic memory あたりがおかしい状況なのだろうと思っていた。X を立ち上げなければ、しばらく使えそうだが、とりあえず修理に出すことを考え、 泣く泣くThinkPad T60 へ乗り換えた。 「いざという時に、もう1台、完動する予備のコンピュータを持っておく」 という贅沢なバックアップ体制をとっておいたのだ。

USB 接続の HDD に、 rsync でバックアップを取ってあるので、 VineLinux 4.1CR をインストール後に、 バックアップファイルを書き込み、めでたく仕事環境は復活した。

Intel(R) Core(TM)2 CPU, T5600 を搭載したこの マシンは、今では、手元にある現役で最高性能のマシンなのだが、 VineLinux インストール時に、 まったく問題は発生しなかった。 ありがたいことだ。 VineLinux 4.2 にアップデートした後も、 快調に動いている。しかし、まだ、A4 ノートという大きさと、 キーボード配列(US-Keyboard)に慣れていないので、生産性は若干落ちている。

予想していなかったのは、ハイバネーション。 無事に機能しているが、 画面の解像度が1280 x 1024(1/25,カット) ハイバネーションすると、読み込むデータが1400MB を越えることもめずらしくなく、1分20秒とか待たされるのだ! Ubuntu のように、 ハイバネーションとサスペンドを両方選択できるとよいのだが...。 だったら、VineLinux ではなく、 Ubuntu を選択すればよかったではないか、 との声も聞こえるが、やはり使い慣れた環境というのは捨て難い。 ハードウエア的にはハイバネーションサスペンド可能なので、(1/25,修正) どうにか実現できる道を探さねばならない。


Ubuntu 7.10 でスキャナ GT-F570を使う  [12/31/2007]

Ubuntu7.10Synaptic でパッケージをつらつら眺めていると、 意外なものがいろいろある。もともとDebian 譲りのパッケージなのだろうが、 yatex, tipa, mew とかまである(OpenSUSEにはなかった)。 別に、パッケージになっていなくても困らないものなので、 こういうものもパッケージか、と思いつつ、スキャナ(Epson GT-F570) の エプソンアヴァシス(株)が提供するiscan を探してみたのだが、 見つからない。ふーむ、Debian 的には、 ソースコードが見えない商用ソフトということで、パッケージとして提供しない、ということなのかもしれない。 OpenSUSE では、提供されていたので、期待していたのだが。

ならば、ということで、エプソンアヴァシス株式会社の http://www.avasys.jp/linux/から, 該当するスキャナGT-F570を選び, iscan をダウンロードした. 今回は、tarballRPM パッケージ、両方を試してみることにした。

今回ダウンロードした RPMパッケージは、
iscan-2.10.0-1.c2.i386.rpm と、 iscan-plugin-gt-f520-1.0.0-1.c2.i386.rpm だ。
以前は、 iscan-2.0.0-0iscan-plugin-gt-f520-1.0.0-1 だったので、バージョンアップしていることがわかる。

1. tarball でのコンパイル
結論から言うと、コンパイルは失敗。ソースコードを見ることもなく、 alienRPMパッケージをインストールして成功してしまったから (alien でのインストール参照)。

上記のエプソンアヴァシスのサイトでは、gcc のバージョン別にファイルを用意しているので、 Ubuntu7.10 でインストールしたgcc のバージョンを確認しておく。

jok@hogehoge:~/src$ gcc --version
gcc (GCC) 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

for gcc 3.4 or later のところから、 iscan_2.10.0-1.tar.gz を持ってきて展開し、 コンパイルした。コンパイルに当たっては、flex, bison などのほか、各種*.devel パッケージが必要にな ることが多いので、sane 関係のものを選んで適当に入れておいた。 一回目の./configure で引っかかったのは、 acct, g++, g++-4.1, g++-4.1-multilib, g++-multilib, gcc-4.1-multilib, gpp, gdk-imlib1, gdk-imlib11, gdk-imlib11-dev, libgtk2.0-dev, bison++ あたり。

上記のエプソンアヴァシスのサイトで配布されているマニュアル (userg_revG_j.pdf)にも目を通しておく。
マニュアルによると、sane 1.0.3 以上がインストールされていることが条件だ。 Ubuntu7.10 で提供されているのは、 sane 1.0.14-2 なので問題ないはず。

久しぶりのmake で、心をときめかせていたが、 まずは、./configure して、make 。 みごとにエラーで止まった。やっぱりこうじゃなくっちゃ、なんて思いながら、 エラーを見てみると:

libimage_stream_la-imgstream.lo のコンパイル に失敗している様子。
imgstream.hh:46:18: error: ltdl.h: No such file or directory ということで、ヘッダーファイルが不足しているらしい。 ネットで「linux scanner debian iscan」をキーワードにして検索してみると、 alienRPM パッケージをインストールできるらしいことが分かったので、とりあえず、そちらを優先してみることにした。

2. alien でRPM パッケージのインストール

alien コマンドで、 RPM パッケージをdeb パッケージに変換してインストー ル、という手がDebian にはある。 これで、 iscan がインストールできる、 という情報がネットにあったので、試してみた。
具体的には、

jok@hogehoge:~/src$ sudo alien -i iscan-2.10.0-1.c2.i386.rpm iscan-plugin-gt-f520-1.0.0-1.c2.i386.rpm

としたのだが、sudo でパスワードを入れた後、 次のようなメッセージを出して、止まってしまった。

Warning: Skipping conversion of scripts in package iscan: postinst postrm preinst prerm
Warning: Use the --scripts parameter to include the scripts.
dpkg --no-force-overwrite -i iscan_2.10.0-2_i386.deb
未選択パッケージ iscan を選択しています。
...中略...
(iscan_2.10.0-2_i386.deb から) iscan を展開しています...
dpkg: iscan_2.10.0-2_i386.deb の処理中にエラーが発生しました (--install):
`/usr/lib/sane/libsane-epkowa.la' を上書きしようとしています。これはパッケージ libsane-extras にも含まれています

libsane-extras は、 実は、sane-backends という RPM パッケージと同等の Debian パッケージである。 これは、iscan-2.10.0-1.c2.i386.rpm をインストールする時に必要であるとされていたので、入れておいたのだが、 どうやらこのパッケージの提供している libsane-epkowa.la を上書きしに行ったようなのだ。 しようがないので、ぶつぶつ言いながら、libsane-extras を削除。

jok@hogehoge:~/src$ sudo apt-get remove libsane-extras
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
Reading state information... 完了
以下のパッケージは「削除」されます:
libsane-extras libsane-extras-dbg libsane-extras-dev

そこで、ふたたび、alien で再挑戦。

jok@hogehoge:~/src$ sudo alien -i iscan-2.10.0-1.c2.i386.rpm iscan-plugin-gt-f520-1.0.0-1.c2.i386.rpm
Warning: Skipping conversion of scripts in package iscan: postinst postrm preinst prerm
Warning: Use the --scripts parameter to include the scripts.
dpkg --no-force-overwrite -i iscan_2.10.0-2_i386.deb
...中略...
(iscan_2.10.0-2_i386.deb から) iscan を展開しています...
iscan (2.10.0-2) を設定しています ...
Processing triggers for libc6 ...
ldconfig deferred processing now taking place
Warning: Skipping conversion of scripts in package iscan-plugin-gt-f520: postrm
Warning: Use the --scripts parameter to include the scripts.
dpkg --no-force-overwrite -i iscan-plugin-gt-f520_1.0.0-2_i386.deb
未選択パッケージ iscan-plugin-gt-f520 を選択しています。
...中略...
(iscan-plugin-gt-f520_1.0.0-2_i386.deb から) iscan-plugin-gt-f520 を展開しています...
iscan-plugin-gt-f520 (1.0.0-2) を設定しています ...
Processing triggers for libc6 ...
ldconfig deferred processing now taking place

前処理、後処理の script がちょっと気になるが、 とりあえず、終了。最後の行の、 ldconfig の出力も若干気になるが放置。 とにかく、インストールは完了したらしい。

3. 動作確認
GT-F570USB で接続し、まずは、スキャナが見つかるかどうかテストした。 エプソンのベンダID(0x04b8) を入れて以下のように確認した。OKのようだ。

$ sane-find-scanner | grep 0x04b8
found USB scanner (vendor=0x04b8 [EPSON], product=0x0122 [EPSON Scanner]) at libusb:001:006

/proc/bus/usb 以下を見たが、 何も見えない。なぜだ、と思いつつも、

jok@hogehoge:~/src$ scanimage -L
device `snapscan:libusb:001:006' is a EPSON EPSON Scanner1 flatbed scanner
device `epkowa:libusb:001:006' is a Epson GT-F520/F570 flatbed scanner

となり、スキャナが音をたてた。snapscan も同時に認識(?)されているのが変ではあるが、こういうものなのかもしれない、と思い先へ進むことにした。

Debian の注意点として、 /etc/sane.d にある設定ファイル dll.conf を同じディレクトリにある dll.d/ へ移動する必要がある。 そこで、

jok@hogehoge:/etc/sane.d$ sudo mv dll.conf ./dll.d

/etc/sane.d/dll.d/dll.conf の適当なところに、epkowa の一行を加える。
epkowa.conf でカーネルモジュールの設定をコメントアウトするようになっているかどうかを確認したところ、ちゃんと #usb /dev/usb/scanner0 となっていたので、その部分はいじらなかった。

コンソールターミナルから、iscan & として起動し、 プリントアウトしたデジカメ写真 (我家の2匹の猫がベランダの手摺でくつろぐ様子) をスキャンしてみたのが以下のスクリーンショット。 iscan も以前のものとは違い、 PNM だけでなく、PNG, JPEG でも保存できるようになっていた。これで、Ubuntu7.10 でもスキャナが使えるようになった。とりあえずは、めでたしめでたし。 今回は、いろいろと不明な現象に悩まされながらのインストールとなったので、 将来への課題を残してしまった。

iscan screenshot


openSUSE 10.2 から Ubuntu 7.10 へ  [11/16/2007]

気がついてみると、VineLinux 4.1 では、ログイン時にディスクトップ環境を多言語から選択できるメニューがなくなってしまった。 英語と日本語だけになっていく、という現代の日本の風潮と一致しているようで、 気になることである。 (「日本人にとって、外国語は英語だけでよい」、 という幻想が大手をふって歩いている世の中だ。もう一方で、 グローバリゼーションだと声高に叫んで、 英語だけで世界を理解できると思っている人達が多いのには、 笑わされる。)

もちろん、メニューやメッセージを除けば、VineLinux 4.1 でも、かなり多くの言語を使えるように設定できる。そんな状況で、 私にとっては OpenSUSEが、多言語環境を実現できる環境だった (Mac なら、昔から実現されているよ、と横槍を入れる友人はいたが...)。

しかし、openSUSE 10.2は、その重さが気になり (GUI の反応に時間がかかりすぎる)、だんだんと使わなくなっていった。そこへ、 openSUSE 10.3 への自動アップデートの失敗 (X が起動しなくなる)というトラブルが発生し、 ログを見てもすぐに解決できそうな状況でなかったので、この際、 最近ユーザが増えているLinuxディストリビューションである Ubuntu7.06を試してみることになった。 軽快に動く、という評判が決め手となった。

Ubuntu 7.06Desktop iso image ファイルをhttp://www.ubuntulinux.jp/ からたどってダウンロードし、CDを焼き、 自作機にインストールしたが、最小のステップでインストールできるというのはあながち嘘では無く、 ディバイスの自動認識も非常に優れていた。 プリンタも、LCDもきちんと認識してくれたが、グラフィックカードのみが駄目だった。 理由は、カードが新しすぎたのではなく、 マイナーすぎたからだろうか? 玄人指向の2,000円程度で買った Radeon 9200 SEだ。 インストール終了後に、ターミナルから
sudo dpkg-reconfigure xserver-xorg
をしてみると、無事に認識してくれた。

そもそも、きっかけは日本でノートブックパソコンを購入し、日本語の Widows Vista Home Premium Edition を使うはめになったドイツ人のノートパソコン(Inspiron 1520)にLinux でドイツ語環境を作ることから始まった。Widows Vista というのは、(日本語の過剰なカスタマイズはないという意味で)内部的には一枚岩になっているはずなのだが、 なぜか一番高価な Ultimate版以外は、 言語環境を切替えられないのである。しかも、この版は、GUI が重いので、 高いハードウエアスペックを必要とする。これ以外の版でも、 多言語環境を簡単に切替えて使えるようにして製品化できるはずなのだが、 それを提供しない姿勢に疑問を感じる。 通常の入出力では多言語に対応していても、 メニューやメッセージが変わらないのでは中途半端だと思う。
以下、Insprion 1520でのインストールの流れを簡単に紹介する。

1. 準備(デフラグ)
Ubuntuをインストールする前に、 Windows Vistaの入っているHDDをデフラグしておこうと思ってやり始めたのだが、 なんと、デフラグの進行状況がまったく分からない。 どこかをクリックすると全体の何パーセントが修了したとか、あとどれくらい時間がかかるとか、 Windows XPの時のように表示されるかと思ったのだが、 そんな選択肢は発見できず、およそ30分後に、勘忍袋の緒が切れ、中断。 本当は、初期状態でも、結構、HDDの中はバラバラなので (インストール中に一時的なファイルを作りあとで消去する、 という処理が多数行われるから)、デフラグはやった方がよかったのだが。
2. alternative の iso image で起動
最新のノートパソコンだったので予想していたように、Ubuntu 7.06 でもXを使ったグラフィカルなインストールはできず、alternativeiso imageを使ったテキスト画面でのインストールを行った。
3 partition の設定
Ubuntuのインストールプログラムは Windowsの領域を自動的に縮小してくれる。 最初の関門をこのようにインストールCD/DVDだけで乗り切れるのは、 初心者にとってありがたい機能だ。
とか言っておきながら今回は、ノートパコソンの所有者の意向もあり、 メーカーのバックアップ領域をUbuntu 用の領域として利用してしまうことにした(真似をしないように)。
4 インストール後の状況
Ubuntu 7.06のインストール終了後に、 アップデートパッケージをすべてインストールすると、 Synapticの中に、Ubuntu 7.10 へのアップデートができるとのメッセージが出るので、それに従って、 Ubuntu 7.10へアップグレードした。 画面のプロポーションが合っていない(Graphic card のドライバの問題、 それにあわせた X の解像度の設定)、音が出ない(7.06の時は出ていた)などのトラブルがあったが、 とりあえず使えるようになった。
sudo apt-get install linux-backports-modules-generic
で、オーディオは復活した。
5 Ubuntu の感想
Ubuntuは、かなり新しいバージョンのプログラムを提供してくれるのと同時に、 Unix系のOS を知らない人にも導入や管理がやさしくなっている (例えば、root のパスワード設定をしないで、sudo ですべて乗り切ってしまう、 というのにはびっくり)。
・評判通り、GUI での操作にストレスを感じない。軽くてサクサク動く。
・多言語サポートは、かなり頑張っている。OpenOffice.org も、さまざまな言語向けの設定をしたものが個別に提供されている。
・後で知ったのだが、どうもUbuntuは急激にユーザー数を伸ばしているためなのか、 (日本の)ミラーサイトが不完全な状態になっていたりする(2007年11月の話)。ちょっと注意しなければならない。

その後、ドイツ語版の Windows XPをインストールしてあるThinkPad T60 にもUbuntuを導入した。ディスクトップ機は、 日本語パッケージ7.06を使ったが、ThinkPad T60には、 本家の非日本語版の7.10iso imageを落としてCDに焼き、 ドイツ語でのインストールを選択した。 ハイバネーション後のXの立上り時に、 白の横しまが出てしまうほかは、特に変わったこともなく他のディバイスも使えている。

ただ、あまりにも中身が分からない状態でインストールが完了してしまうため、 逆にどのファイルがどこにあるのか、そこはかとなく不安になったりする (初心者にはこれでよいのだろうが)。 まずは、TeX環境から調べてみることにしたが、 それはまた別の機会に紹介したい。


aspell から ispell へ(VineLinux 4.1) [07/23/2007]

VineLinux 3.*の時は,geditaspell に依存していたために,geditを削除したくなかったので,そのままにしておいた。 この状態だと,8ビットエンコーディングされたドイツ語のテキストをEmacsでスペリング・ チェックすることはできたが,LaTeX表記のドイツ語文章をスペリング・チェックすることはできなかった。 かといって,geditを別途ソースからコンパイルし直す気力もなく放置しておいた。

一方,openSUSE10.2では,aspell が使われておらず,Emacsでも,ispell が使われるようになっていた。新旧正書法に対応し,7ビットエンコーディングで, LaTeX表記のドイツ語文章も問題なくスペリング・チェックできる。

最初は,aspellを生かして,ドイツ語のスペリング・チェックをやってみたが, VineLinux 4.1gedit を調べてみたら,aspellに依存していないことが分かったので, aspellをはずし,ispell に移行してしまうことにした。

aspellからispell
[1] aspellの削除
# rpm -e aspell あるいは,# apt-get remove aspellでOK。

[2] rpmによるインストール(今回は試さなかった)
# apt-get install ispell ispell-german
これで,ispell 3.1.20-27vl5と ドイツ語の辞書 ispell-german-3.1.20-27vl5がインストールされる。
ドイツ語を含む複数言語の辞書を一度にインストールする時は, ispell-germanではなく,ispell-dicts をインストールする(若干の設定は必要かも)。

[3] ispell-3.3.02のインストール
VineLinux 4.1で提供されているのは ispell 3.1.20だが, ispell's site を見ると,最新版は ispell 3.3.02 だった。
奥村さんのサイト に,永田さんのインストール記録が公開されているので, それに従って無事にインストール完了。
必要だったもの:
ispell本体:ispell-3.3.02.tar.gz
・旧正書法の辞書:hk2-deutsch.tar.gz
・新正書法の辞書:igerman98-20030222.tar.bz2

これで、
(1) 旧正書法+TeX 表記(7ビット) Select Deutsch Dict
(2) 旧正書法+inputenc(8ビット) Select Deutsch8 Dict
(3) 新正書法+TeX 表記(7ビット) Select German Dict
(4) 新正書法+inputenc(8ビット) Select German8 Dict
すべてに対応できるようになる。
(ここでのTeX表記と呼ぶものは,babelや[n]german.styで使われるGr"u"se のような入力方法)

また,日本語まじりのドイツ語の文章を全体でスペリング・ チェックしたい場合は, * ispellで日本語まじりのテキストをチェック で紹介されている山岡さんの以下の設定を .emacs.elに入れるとよい。
(eval-after-load "ispell"
'(setq ispell-skip-region-alist (cons '("[^\000-\377]+")
ispell-skip-region-alist)))

以下に1つ実例を示す。この文書は,hunde.tex という名で保存された以下のようなファイルだ。 上の分類では,(3) 新正書法+TeX 表記(7ビット)にあたる。

\documentclass[12pt]{jsarticle}
\usepackage{times}
\usepackage{ngerman}
\begin{document}


ドイツの憲法(基本法)に「動物保護」が含まれているというのは, 知らなかっ
たのでさっそく確認してみた.『ドイツの犬はなぜ吠えない?』 P.188 には,
次のような説明がある(引用).

\begin{quote}...ドイツで,「動物の権利を基本法に」という議論が始まって10
 年。 1998年にドイツで政権についた社会民主党と緑の党の連立政権も, 「動
 物の権利を基本法(憲法)の20条a に盛り込むこと」を「国家的目標」 の1つ
 としたが,そこまで到達するには合意ができていなかったため, 幾度か廃案に
 なっていた。

しかし,2002年5月17日,第14期のドイツ連邦議会第237会期で, 賛成577票,反
対19票,棄権15票により,圧倒的多数で「動物保護を基本法に盛り込む」 こと
が可決された。20条a には, 「国は次世代のために自然の生活環境を責任を持っ
て保護する」というもとの文面が, 「国は次世代のために自然の生活環境と動
物たちを責任を持って保護する」 へと,新に「動物たち」という言葉が加えら
れた。
\end{quote}

そこで,現在の基本法を調べてみると,

\begin{quote}
Artikel 20a \\
$[$Umweltschutz$]$ \\
Der Staat sch"utzt auch in Verantwortung f"ur die k"unftigen
Generationen die nat"urlichen Lebensgrundlagen und die Tiere im Rahmen
der verfassungsm"a"sigen Ordnung durch die Gesetzgabung und nach
Ma"sgabe von Gesetz und Recht durch die vollziehende Gewalt und die
Rechtsprechung.
\end{quote}

確かに,「動物たち」(die Tiere) が基本法に入っている. うーん,すごい!
日本の憲法に「国は,動物たちを保護する」なんて, 永久に入りそうもない.
日本では,せいぜい動物保護条例がいいところか. 自然環境という視点から見
たら,植物だけでなく動物も入るのに, 人間が食べる動物や人間に害になる動
物,希少動物は気にしても, 広い意味での日本に住む動物全体の保護を気にす
る,なんて発想がそもそも欠如している.
\end{document}

最初に「ツール」→「スペルチェック」→ 「Select German Dict」を選択し,
次に「ツール」→「スペルチェック」→ 「Spell-Check Buffer」を選択。
すると,以下のような状態になる。ここでは, Gesetzgabungがミススペリングとして検出され, (0) Gesetzgebung が候補としてあげられている。 そこで,「0」をキーボードから入力すると,Gesetzgebung に置き換わる。 ちなみに,この文章では,他の単語はまったくスペリングチェックにはひっかからなかった。

hunde ispellchecked

上記の単語を修正した後の最終的な出力の一部は、以下のようになる。

hunde.dvi


VineLinux 4.1 の gnome-keyboard-applet の憂鬱 [07/16/2007]

Gnome 2.4までは,Keyboard Layout Switcher(GKB 国際化キーボードアプレット) でキーボードを切替えて geditや,Firefox などでドイツ語入力が普通にできる環境だった。 しかし,Gnome 2.14.2 を採用しているVineLinux 4.1 では,「キーボード表示器 2.14.2」(gnome-keyboard-applet) になってしまい,タコになった。

「キーボード表示器の設定」→「レイアウト」を選ぶと,標準では以下のような窓が開く。

問題はこの後,例えば,ドイツ語のキーボードを追加すると起きる。 「キーボード表示器の設定」→「レイアウト」を選び,「追加」 をクリックして,Romanian keyboard with German letters を選択する。すると, アプレット上は、「Jpn」と「Deu」がクリックするごとに入れ替わるようになる。 しかしだ、「Jpn」の時に入力されるのは,なんとキーボードに記されているカタカナ文字になってしまう。日本語変換をしないでも, 「abc」と打つと「チコソ」と表示される。これには,まいった。 逆に、「Deu」の時には,anthy でローマ字変換ができる。 「だったらいいじゃない!」と言われてしまいそうだが, キートップと文字の一致しない記号類の入力が一大事になってしまう。

左に示すのが,Romanian keyboard with German letters にした時のキーボード入力の状態だ。この状態だと, 「|」(パイプ)が使えない,「\」(バックスラッシュ)が使えない,「>」 や「<」,さらに,「{」「}」や「[」と「]」も使えない。これでは, ドイツ語が入力できても,普通のTerminal を開いて仕事ができないことを意味する。

Google で,gnome keyboard applet をキーワードに検索してみると,同様の状態で困っている人がいることが分かる。 例えば,Ubuntu では, [xkb] new japanese layout に,日本製のToshiba Dynabook V7/513LMDW Laptop を使っているフランス人ユーザが,フランス語のキーボードを選択したとたんに, jp106 のキーボード配列での入力が,カナ直接入力に変わってしまったと報告している(2005-02-28)。 問題は同じである。

そこでは,3つの解決法が紹介されていた。まずは,最初の2つから。
(1) /etc/X11/xkb/symbols/jp を書き換え,[Group1]jp106 の隠された default 属性を latin にしてしまう,
(2) /etc/X11/xkb/symbols/jpjp106 の隠された default 属性を削除し,/etc/X11/xkb/rules/xorg.xml にパッチをあて,[Group1][Group2] の両方が,keyboard applet で選択できるようにする。
が,Vine 4.1/etc/X11/xkb/symbols/jp は,明らかにUbuntu のパッチを当てる前のものとは違っており,(私のざっと見たところ) これなら問題ないように見える。また,(2) のパッチは,/etc/X11/xkb/rules/base.xml に対してのもので,Vine 4.1 では見当たらない。 /etc/X11/xkb/rules/xorg.xml の中に,variant の記述があるので, /etc/X11/xkb/symbols/jp の名前(name)を参考に,実験的に4957行目から以下のように追加してみた。

      <variantList>
          <variant>
              <configItem>
                  <name>US/ASCII</name>
                  <description>romaji keyboard</description>
              </configItem>
          </variant>
          <variant>
              <configItem>
                  <name>Japanese</name>
                  <description>katakana keyboard</description>
              </configItem>
          </variant>
      </variantList>

この状態で,Xを再起動し,gnome-keyboard-applet からキーボードの追加を選ぶと,JAPAN の下に romaji keyboardkatakana keyboard が現れる。そこで,おもむろにromaji keyboard を選択し,リストの最上位へ移動させようとしたが, romaji keyboardを選択した時点で「エラー」となった。 残念ながら,そう簡単ではなさそうだ。

XKB の設定を有効にする際にエラーが発生しました。
この問題は、いろいろな状況に依存して発生します:
- ライブラリ libxklavier のバグ
- X サーバのバグ (xkbcomp、xmodmap コマンド)
- 実装で互換性のないライブラリ libxkbfile を使った X サーバ
X サーバのバージョン情報:
The X.Org Foundation
60900000

(3) 最後の手は,setxkbmap でキーボードを設定するというもの。 上記のUbuntu からの情報を一部訂正すると:

    $ setxkbmap -rules xorg -model jp106 -layout fr -option ""
    $ setxkbmap -rules xorg -model jp106 -layout de -option ""
    $ setxkbmap -rules xorg -model jp106 -layout jp -option ""

のようにターミナルから打ち込んで、キーボードを変更する。 一番上の例がフランス語キーボードにする場合, 真ん中の例がドイツ語キーボードにする場合, 一番下の例が日本語のキーボードに戻す場合。 これだとちゃんと動くが,パネルに「カスタムアプリケーションのランチャ」として登録すれば, 一応,クリックでどちらかのキーボードを選択できる(ただし,現在どのキーボードが選択されているかは見えない)。 結局 gnome-keyboard-appletをパネルから削除し, ランチャ指定時に選択した奇妙なアイコンが2つパネルに並ぶことになった。 とほほ...

ちなみにopenSUSE 10.2では,gnome-keyboard-applet が,16.1 で,この問題に気がつかなかったのは,US keyboard を使っているからだった。そもそも,jp106 keyboard は,好きではない。


VineLinux 4.1CR の ThinkPad X31 へのインストール [06/06/2007]

ついに,ThinkPad X31 にインストールしてあった VineLinux 3.2 を捨てて, VineLinux 4.1CR をクリーンインストールすることになった.その3つの理由をあげると;
(1) HDD の異音が聞こえるようになった.経験的に,この音が聞こえ始めると, およそ1ヶ月の内にHDDはクラッシュする.
(2) VineLinux 3.2 からのアップデートも可能だが,後々,特殊環境に悩まされる可能性がある.
(3) CR を購入すると美しい商用フォントが簡単に使える環境ができる.

以下では,今回の事の顛末を紹介する.

[1] まずは新しい HDD 購入
ゆっくり秋葉原でバルクの安いHDDを探すことができるような余裕のある 生活はしていないので,通りがかりの店で「ノートパソコン用ハードディスク」なる箱物を購入. 購入したのは,Baffalo HD-NH80/M (80GB, 2.5'). このような箱物には,添付ソフトがいっぱいついてくる.この商品には, Acronis True Image LE, Acronis Migrate Easy, Acronis PartionExpertLE, Acronis DriveCleanser, ファイナルパソコン引越し LE, 蔵衛門デジブック PLUS, ウイルスバスターが付いている. これだけ付いてくると,使ってみてもいいかな,という気になった(事の顛末は後で).
さっそくHDDを見てみると, Samsung 製のMP0804H5400rpm, Ultra ATA/100 仕様の2.5' HDD であることが分かった. Samsung製のHDDを購入したのは初めてだ.流体軸受けで,平均シークタイム12msec というのは,今どき特に目立った性能ではない.しかし,これまで使ったことがないメーカー品ということで,若干の期待をしてしまう.

[2] 古い HDD バックアップ
RAIDのバックアップシステムが不良なので,しばらく前から USB 2.0接続の外付けHDD(Ratoc RS UZEC5X)を接続し, /home/etc, /opt$ rsync -a --delete /home/hoge /mnt/hogehoge しておいた.
せっかく「おまけ」として Acronis True Image LE, Acronis Migrate Easy, Acronis PartionExpertLE などがあるので,Windows XP Professional に,これらをインストールし,Microtech XPRESS を接続し,Acronis Migrate Easyを試してみた.

(1) Windows 上で,まずは Microtech XPRESS で接続した新しいHDDをフォーマットしておいた(とりあえず, Baffalo disk formatter というのが付いていたので, FAT32にしたのだが、不要だったかもしれない).
(2) PC-CardのスロットにMicrotech XPRESS で新しいHDDを接続し,Acronis Migrate Easyを,CD-ROM から起動.後は,若干の質問に答えるだけで,お任せとなった.

Acronis Migrate Easy しかしだ,残り時間が7時間08分 というメッセージが...バックアップする対象のHDDには, Windows XP の領域(+ IBM Recovery)と Linux の3つの領域があるのだが, Acronis Migrate Easyは,Linux の ext3 にも対応しているので一応信頼していた.
覚悟して放置しておき,数時間して行ってみると, IBM Preload領域で, 「移行元ディスクのセクタ 1からデータを読み取ることができませんした」 という不気味なメッセージ.何回か,再読み取りを試してみたが, 駄目そうなので,やむなく「すべて無視」を選択. まあ,セクタ・エラーが出ているようなので,バックアップしているのだから, 当然と言えば当然だ.無難なデータ領域のエラーであることを祈りながら, さらに放置することにした.気がつくと,残り時間は, 14時間07分 になっていた(この手の時間表示はいい加減なので,気にしないでいた). やがて夜もあけ,翌日に見に行ってみると,残り時間が10時間10分! (これが,右上の写真)
しようがないので,さらに放置して,仕事に出かけた.帰宅してみると,
「おめでとう! 処理が完了しました。ハードディスクのアップグレードは正常に完了しました。」というメッセージが出ていた. 「おっ」と,一瞬の期待.

さっそくHDDを付け替えてブートしてみると,System Commander からWindows XP は起動できるものの, VineLinux 3.2 の起動はできず,Access IBM のボタンも効かない.ここで,すでにセクター・エラーの出ている古い HDD に戻し,クラッシュしないように祈りながら一週間を過ごした.

[3] 新しい HDD セットアップ
結局,古いHDDのデータは救出してあるので, 新しいHDDを再度ThinkPad X31 に装着し, Recovery CD-ROM (x5) でオーソドックスにリカバリすることにした. 無事にリカバリは成功したが,元の HDD のWindows XP の領域が保持され,そこにIBM PRELOAD 領域が作られたので,後のLinux のインストールが楽になった. ちなみに,恐れていたWindows XP ProfessionalWindows Update は,84個 (2+1+81) に及んだ.

[4] VineLinux 4.1CR のインストール
Acronis Migrate Easy は,2つのext3 領域とswap 領域を作ってくれていたが, Disk Druid で削除し,新しくパーティションを切り直した. しかし,Disk Druid はタコである. 当初,/,/boot, /home, swap を作成し,/2000MB 確保したのに, 途中で「/には786MB必要としているけれど,領域が足りません」とか言われて,先に進めない. fdisk を使えばよかったのだが,とりあえず/, /boot, swap だけにしてパーティションを切った.
Disk Druid で,swap1600MB 要求すると1592MB/boot100MB 要求すると94MB/36000MB 要求し「残りすべて」を選択すると 36570MB が確保された. なぜか 4MB の自由領域が作られてしまい, swap だけが/dev/hda4 の中の拡張領域として/dev/hda5 に確保されたのが不満だったが, パーティション設定ははまると時間を浪費するので,もうOK とし,インストール続行となった. dump バックアップをしないから, パーティションにはこだわらないことにした.パッケージの選択ではカスタムを選び, 無事にインストールは終了した.
リブートした結果,GRUB 画面で,VineLinuxother が選択でき,other を選べばWindows XP が起動することを確認. VineLinux 4.1CR は, Xやサウンド,ネットワーク等の設定を含めて, 問題なく動いた.

[5] リストアと各種設定
クリーン・インストールの後のリストアは:
(1) rsync しておいたバックアップHDD から, /home/hogehoge のデータを, ドット・ファイル群を除いて再起コピーした.
(2) ドット・ファイル群は,古いものを別のディレクトリへコピーし, 時間をかけて慎重に移行する(例えば,.emacs.elなど).
(3) /etc ファイル群も, とりあえずネットワーク関連の設定を以前のファイルを参考にしながら設定 (/etc/hosts, /etc/sysconfig/network, /etc/sysconfig/network-scripts/ifcfg-eth0 等).
(4) 商用ソフトとして導入している Officebibliothek は,/opt に入っていることは知っていたので, バックアップしておいた/opt を新しいHDD に再起コピーし, 旧ホームディレクトリにあった.officebib/, .officebib.history.dat を新HDDのホームディレクトリへコピー.この時点で, /opt/officebib/officebib から起動できることを確認したが, メニューへの登録等は,officebib-4.0.1-3-intel-linux.tar.gz を上書きインストールすることで済ませてしまった.
(5) 最後に,忘れずに/etc/apt/sources.list のミラーの所にextras を加えて,コメントをはずし, # apt-get update; apt-get upgrade を済ませておく (するとカーネルのバージョンが上がってしまい (2.6.16-0vl73),サスペンドができなくなっていた. サスペンド前後で,カーネルが違うとリジュームできない.リブートすれば,できるようになる).

[6] VineLinux4.1CR 雑感
全体的印象: GUIまわりは,予想していたように重くなった. クリックしてから特定のアプリが起動するまでに,3.2 の時より時間がかかる. ただ,ひとたび動き始めれば,キビキビと動く. openSUSE 10.2 ですでに知っていたのだが, 「フリーセル・ソリティア」は,「きたなく」なった. カードの動きは面白いが,ThinkPad X31 には重すぎ,「のたのた」とカードが移動する.
個別のこと雑感(順不同):
ハイバネーションの時間がかかりすぎる.いわゆるソフトウエア・サスペンド(suspend 2)は, 「ディスクトップ」→「設定」→「電源管理」で設定できる (ThinkPad X31 の蓋を閉めても,「寝に行かなかった」のであせった). サスペンドするのに,45秒から50秒位かかるし,復帰するのにも,50秒から55秒かかる. これまでのハードウエア・サスペンドが5秒程度だったことを考えると, 元に戻したくなる.電源管理はかしこくなったようで,バッテリーでの駆動時間が増えたように感じる.
GNU Emacs21.4.1(2007-01-16) になったのは,ちょっとうれしい.なぜかMew がいまだに 3.3.yatex TeX のパッケージを選択しても自動的には入らないので, # apt-get install yatex をしなければならない.
VineLinux4.1CR は,フォント回りが充実しているのはうれしい点 (リコーのTrueType 8書体,ダイナコムのTrueType 5書体). Anthy+SCIM の漢字入力システムの設定が初めから使えるのもよい.
teTeX 3.0 が標準となった. おそらく数あるLinux ディストリビューションの中で, これだけきちんとしたTeX システムを構築しているのは, VineLinux だけだろう.
ただし,私のようにインストール時にカスタムを選択して,teTeX を入れた場合には要注意 だ.一部,不完全なインストールになるようで, 私の場合は,\usepackage{times} を指定すると,dvipdfmx が以下のようなエラーを吐いた.

[hoge@hage]$ dvipdfmx gji-05.dvi
gji-05.dvi -> gji-05.pdf
[1kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 utmr8a
mktexpk: don't know how to create bitmap font for utmr8a.
kpathsea: Appending font creation commands to missfont.log.

** WARNING ** Could not locate a virtual/physical font for TFM "ptmr8r".
** WARNING ** >> This font is mapped to a physical font "utmr8a".
** WARNING ** >> Please check if kpathsea library can find this font: utmr8a
** ERROR ** Cannot proceed without .vf or "physical" font for PDF output...

これは,tetex-extra パッケージがインストールされていないので, /usr/share/texmf-dist/fonts/afm/urw/times/utmr8a.afm が参照できないために起きる(のだと思う).
簡単な解決法は,# apt-get install task-tetex をしてしまうことである.私の場合は,これで tetex-extraxdvik-search が追加インストールされ,上記の不具合は解消された.

・無線LAN未対応の機種を使っている関係上,未だに 0円で入手した AH-N401C-ADP を利用している.以前の設定のまま, tkppxp を起動したら動かなかった.これは, 調べてみると/dev/modem がないために起きていたので, /dev/ttyS1 を指定し,qdial してやることで動かすことができた.

Adobe Reader 7.0.8 が自動的にインストールされるようになった;
OpenOffice.org 2.0 の設定もなかなかよい(コマンドは,ooffice).
・カーネルが2.6系になり,alsa が統合されているので, カーネルのバージョンアップのたびに,ドライバを手動でコンパイルし直す必要がなくなった;
という3点はありがたい.


ケーブルを疑え! 失敗談 [1/15/2007]

年末にかけて,SUSE Linux 10.1から, openSUSE 10.2 への移行作業をした.まずは,その時の(結果としては成功したのだが)失敗談から. バージョンアップした結果,サウンドが変,プリントアウトができない, という状態に陥った.それ以前は,ちゃんと動いていたことを思い出すと, ソフトウエアを疑うのは当然のことだ.さんざん疑いまくった挙げ句, 実は,その原因はどちらもケーブルにあった,というお粗末な結果だった. 昔から,「ケーブルを疑え!」という合い言葉があったのを思いだし, 苦笑いをせざるをえなかった.

コンピュータのトラブルに見舞われた時に,さまざまな可能性を疑うのは常識だが, その時の症状から,経験則に照らし合わせて,最短の解決法を模索する. 世の中,何が本当に正しいのか分からないところはあるが, 間違いを見抜く力は常に必要とされている.実はこれが難しい.

[1] アップデート時のトラブル
バージョン・アップ(アップデート)の仕方は,OS,はたまた, Linuxならディストリビューションによって異なる. SUSE Linux 10.1から,openSUSE 10.2 へは,openSUSE 10.2CD-ROM (あるいは,DVD-ROM)イメージから行なう. openSUSE-10.2-GM-i386-CD1.isoから, openSUSE-10.2-GM-i386-CD5.isoまで,さらに openSUSE-10.2-GM-Addon-NonOSS-BiArch.iso の合計6枚分のiso image をダウンロードし, md5sumでイメージのチェックをしてから, SUSE Linux 10.1 上の K3b(version 0.12.14) で,CD-R に焼いた.後は, openSUSE-10.2-GM-i386-CD1.iso を焼いた CD-R からブートし,アップデートをクリックするだけだ.

iso imageCD-R に焼くのは, 以前にcdrecord を使ってやったことはあったが, 結構記憶の彼方にあったので,今回は,SUSE Linux 10.1 のお薦め, K3b を使って焼いた.焼く前に, MD5SUMSをチェックしてくれ, 安心して焼けたのだが,いざ,ドライブに入れてリブートすると, ブート後に読み出しエラーで先に進めない. 仕方なしに,Vine 3.2 上のX-CD-Roast (xcdroast-0.98alpha15) で焼き直してみたら,今度は無事に,インストール画面に進み,アップデートできた.

openSUSE 10.2 の1枚目のCD は,かわいい冬景色を表示した後,CDMD5のチェックサムをする画面になったので, これを機会にと,すでに焼き上がっている残りの5枚のCD-R をチェックしたら,おみごと,すべてMD5SUMS が違うとのお達し(涙).やむなく,X-CD-Roast で,すべて焼き直しとなった. K3b の設定が悪かったのか, それとも,使用しているDVD drive(HL-DT-ST DVDRAM GSA-4163B A104) のドライバが原因なのか,よく分からない内に,CD-R 6枚の入れ替えとともに,openSUSE 10.2 のアップデートは完了した.

[2] 音が変:alsa のトラブル?
ASUS P4P800-E Deluxe というマザーボードを使っているが, 以前,VineLinux を使っていた時から,自動認識してくれ, インストール時に何のトラブルもなかった(オンボード Realtek ALC850 '97 Audio CODEC). がしかし,RealPlayer でドイツ語入りの動画再生をしてみて気がついたのだが,なんか音が変. 音割れがひどいのだ.RealPlayer の調整を最初やり始めた. 効果なし.kernel 2.6 では, Alsa が組み込まれたが,その設定がどうなっているのか, 不勉強なために分からない.かくしていろいろさまよった挙げ句, おもむろに手元にあった『立喰師列伝』のCD を入れ,『妄想ブギ』を聞いてみたら,声がほとんど聞こえない.その瞬間, 問題のありかが分かってしまった.ケーブルだ. 本体とスピーカーをつなぐミニプラグ付きケーブルが, ステレオ音声を伝達していない可能性が高い.自宅のケーブルの山から, 状態のよさそうなケーブルを探しだし,取り替えると,何事もなかったように, RealPlayer の音声も,音楽CD の『妄想ブギ』も聞こえるではないか!「ああ!」,ケーブルを最初に疑えばよかった! 後悔先に立たず,です. ちなみに,proc システムで, いったいどこにサウンド関係の情報が見えたか, というと,/proc/asound/card0/codec97#0/ac97#0-0 だった.

[3] ptetex3 の xdvi が動かない
これは,予想していた通りだった.ライブラリ関係が変わってしまったので, 再コンパイルが必要だ.そこで,teTeX 3.0 を openSUSE 10.1 へインストール でやったことを繰り返すことになった. 参考までに,xdvi を起動すると出るメッセージは,

xdvi-motif.bin: error while loading shared libraries: libXm.so.3: cannot open
shared object file: No such file or directory

openmotif-devel, gd-devel, pnglib がないので, make uninstallし,make distclean し,unset TEXINPUTSしてから, 今回は,my_option を以下のようにして再コンパイルし, 無事に使えるようになった.

### 
conf_option --with-system-zlib
conf_option --with-system-gd
conf_option --with-system-ncurses
conf_option --with-system-t1lib
### 
conf_option --without-dviljk
conf_option --without-info
conf_option --without-texi2html
conf_option --without-texinfo
# conf_option --without-dvipng
# conf_option --without-dialog

[4] 印刷できない
xdvi で印刷する前に,プリンタの設定をする必要がある. cups でのプリンタ設定は,すでに何度かやっているので, システムのプリンタ・アイコンをクリックして設定しようとしたが,うまくいかない. パラレルで接続しているプリンタを自動認識してくれていないのだ. しようがなく,マニュアルをぱらぱらと読んでみると, YaST2 の「ハードウエア」の下にある「プリンタ」 をクリックして,まず自動認識させなければならないことが分かった. ま,確かにこれも自動認識ではある.すると今度は,ケーブルが変だよ, というメッセージ.急遽,「ケーブルの山」からUSB のプリンタケーブルを探しだし,接続して無事に自動認識にたどりついた. なんと,二度目のケーブルトラブルだった.やはり,プリンタは, ネットワークでつなぐべきだな,と思ったが,肝心のイーサネットケーブルが手元になかったので, とりあえず設定はこれで終えることにした.

[5] ついでにスキャナも設定
プリンタの自動認識から学んだSUSE流, それならスキャナもそうすればいいんだ,と思い立ち, エプソンのGT-F570USB 接続し,電源を入れ, YaST2 の「ハードウエア」の下にある「スキャナ」 をクリックして,まず自動認識 させた. すでに,openSUSE 10.2 iscan 2.3.0.1-24, iscan-firmware 2.0.0.1-14, iscan-proprietary-drivers 2.0.0.1-13OSS CD-ROM をマウントしてインストールしてあったので, iscan はみごとに動作.なーんだ,簡単じゃん, と思ってしまった(実は,SUSE Linux 10.1の時には, このハードウエアの自動認識を知らず,動かせていなかった). その世界の「流儀」を知らないと,簡単にできることも結局は無意味, ということを思い知らされてしまった.openSUSE 10.2 の設定は,まず,YaST2 から, ということだ.慣れてみると,実に便利で利にかなってはいる. ただ,もう少し,速く動いてくれるといいのだが(動作が重い).


teTeX 3.0 を openSUSE 10.1 へインストール [12/10/2006]

VineLinux が2006年11月22日に 4.0 になり,Kernel-2.6.16, GNOME-2.14, teTeX 3.0 等の環境となった.一方, openSUSEは,2006年12月7日に 10.2 をリリースした.が,しかし,私は全然追いついていない.VineLinux 3.1apt-line を向けていたVineLinux 3.1 マシンが,apt-get upgrade で,いきなり3.2 へアップグレードされてしまい,あせってしまった.しかし,kernel-2.4.33-0vl0.5 用に lilo.confを書き換え,alsa の再コンパイルを強いられたほかは,特に問題は出なかった.

日常的にTeX を使っている関係上, VineLinux 3.2openSUSE 10.1 の互換性を確保しておかないと困ることは目に見えているので,急遽, openSUSE 10.1と, VineLinux 3.2 に, teTeX 3.0 をインストールすることにした.

unix系のOSに, TeX をインストールするのは,結構大変だが, それに輪をかけて大変なのは,日本語環境の整備だ.しかし,

土村さんのサイトのptetex パッケージ を使えば,非常に楽に導入できる.感謝感激! 基本的には,

    (1) tetex-src-3.0.tar.gz
    (2) tetex-texmf-3.0.tar.gz
    (3) ptetex3-*.tar.gz

をダウンロードしてコンパイルするだけだ. 今回ダウンロードしてインストールしたのは,以下の3つ.

    (1) tetex-src-3.0.tar.gz
    (2) tetex-texmf-3.0po.tar.gz
    (3) ptetex3-20061130.tar.gz

土村さんは,開発環境として VineLinux 3.2 を使っておられるようなので,ここでは openSUSE 10.1 のケースを簡単に紹介する.

[0] 準備  コンパイルするにあたっては,gcc, patch(gnu) などの開発環境が必要になるので,あらかじめYaST で必要なものをインストールしておく.
今回,私の場合は,以下のパッケージを新にインストールした.
bison, flex, ncurses-devel, openmotif, openmotif-devel, t1lib-devel, gd, gd-devel
その他インストールに必要とされるのは, ptetex3 を展開した中にある README を参照のこと.
私が確認したのは,
ed, zlib-devel, libpng-devel, t1lib, xorg-x11-devel

[1]  上記3つの*.tar.gz ファイルを作業ディレクトリへ置く.ここでは, ˜src/tetex3 を用意した.

[2]  %  tar xzvf ptetex3-20061130.tar.gz
として展開.

[3]  %  cd ./ptetex3-20061130
として新にできたディレクトリへ移動.

[4]  %  mv my_option.sample my_option
とし,my_option のコンパイルオプションを設定する.

[5]  my_option の中心部分は,以下のようにした.

    conf_option --with-system-zlib
    conf_option --with-system-pnglib
    conf_option --with-system-gd
    conf_option --with-system-ncurses
    conf_option --with-system-t1lib
    ##################################
    conf_option --without-dviljk
    conf_option --without-info
    conf_option --without-texi2html
    conf_option --without-texinfo
    # conf_option --without-dvipng
    # conf_option --without-dialog

[6]  TeXの環境設定をリセットする.bash を使っているので.
% unset TEXINPUTS

[7]  一般ユーザでコンパイル.
% make
コンパイルが通らなかったら,エラーログをみて,オプションを変え, make distclean

[8]  一般ユーザでfont と babel をコンパイル.
% make font babel

[9]  一般ユーザでコンパイル結果をテスト.
% make test
特にエラーがなければ,

[10]  rootでインストールして終了.
# make install

[11]  パスの設定.(bash を使っているので,) 以下のように一時的な設定を入力するとともに,
˜.bashrcに同じ設定を書いておく. これにて終了.
% export PATH=/usr/local/teTeX/bin:$PATH
% export MANPATH=/usr/local/teTeX/man:$MANPATH

これで,dvipdfmxも一緒にインストールされ, 使えるようになる.VineLinux 3.2 でも同様に環境作りをしたので,当面,openSUSE 10.1 も使えるようになった.ただ, utf-8PDF出力がどうも変だ. AdobeReaderの英語版に, 日本語フォントという組み合わせが悪いのかもしれない. また,新たな悩みを抱えてしまった...


SUSE Linux 10.1 の第一印象 [10/31/2006][11/03修正]

SUSE Linux は,ドイツでは主流のLinux のディストリビューションで, もとは Slackware をベースに,1992年に始まった. 外から見ていて,新しいものをどんどん取り入れる巨大なディストリビューションという印象で, 2002年に日本で正式販売が開始されてからも,気にはなっていたが, 見送っていた.その後,いろいろあって,2003年には,NovellSuSE を買収,2005年には,コミュニティベースの openSUSE プロジェクトが立ち上がり,2006年5月に SUSE Linux 10.1 が公開された.

今回,SUSE Linux 10.1 をインストールすることになったのは, いくつかの動機があったが(その1つが,Der digitale Grimm のインストール),普段,どちらかというと保守的なVineLinux を使っていると,時には,新しいソフトウエアを使わねばならなくなった時, ソースからのコンパイルを強いられ,場合によっては,ライブラリから入れ直さねばならなくなる. これは,コンフリクトが起きたりして, 難しい作業となることもある(その点では,Gentoo は,すばらしいのだが...) SUSE Linux 10.1 は,「てんこ盛り」とか, 「ヘビーな最新オートマチック高級車」というイメージだったが, 日本語にも現在ではきちんと対応しているということだったので,チャレンジすることにした.

「オープンソースマガジン」8月号に,DVD-ROM が付いていたので, 新しいHDD をセカンダリー・マスターにし, DVD-ROM からブートし,インストールした. 何の問題もなくインストールは終了.その後,すぐにやらねばならないのは, YaST2 で,ソフトウエアのアップデート. なにしろ,「オープンソースマガジン」8月号は,2006年6月頃のものを収録しているので, 4ヶ月のギャップがある.国内のネットワークレポジトリを登録し,アップデートとなった. Windows 並み(?)に2度リブートさせられたが,山のようなアップデートを済ませてなんとか終了.

しかし,最後の最後で,オートログインとかの窓が出たのに対して,クリックしてしまい,後悔した. 1人で使う場合に,ログイン画面を迂回できる(つまり,ログインしなくても,自動的に1人のユーザー環境に入ってしまう) のだが,これは,ありがた迷惑だった. /etc/sysconfig/のどこかのファイルに,autologin の設定ファイルがあるはずなのだが,すぐに見つからなかった. 結局,ネットからの情報をたよりに,YaST2 で,オートログイン解除を解除した.やり方は,以下の通り

YaST2を起動.→ 「システム」を選択(クリックのこと,以下同様).→ 「/etc/sysconfigエディタ」を選択.→ 「Desktop」を選択.→ 「Display manager」を選択.→ 「DISPLAYMANAGER_AUTOLOGIN」と言うエントリがあるので、選択.→ この設定の現在値を示すテキストウインドウが現れるので, プルダウン矢印を用いて自分のUIDから、空白(入力無し)に変更.→ 完了をクリック→ 変更された変数の確認がでるので、OK をクリック

こういうのを,簡単と言うのかどうか,いまいちわからないが,とにかくログイン画面を復活できた. 後で分かったのだが,/etc/sysconfig/displaymanager の中の, autologin のエントリーに,自分のUID が入っている箇所があるので,そこを消せば(空にすれば)よいはずだ.

実は,仕事をしながら,わきでインストールを時々見ていたのだが, プリンタがつながっている親機なので,プリントアウトする必要が出てきた. そこで,ついでに TeX 環境を確認しておこうと, 追加インストールを始めた(ディフォルトでは,TeX が入らないことを知っていたので).そこからが,ちょっと大変なことになった.

YaST2 で一発,と思いきや...

まず,Emacs が入っていなかったので, YaST2Emacs 21.3 をインストール.依存関係もちゃんと見て, 適当にパッケージを選択してもらえると,たかをくくっていたら, Xaw3d が入らなかったようで,YaST2 で追加インストール. Emacs は日本語環境になるように設定されていないので, 以下のように,skel から持ってきて,追加設定. [11/03修正].

    $ cp /etc/skel/.gnu-emacs .gnu-emacs
    $ chmod +w .gnu-emacs

ホームディレクトリの.gnu-emacs に以下の設定を入れる。

    (set-language-environment "Japanese")
    (set-default-coding-systems 'euc-jp)
    (set-buffer-file-coding-system 'euc-jp-unix)
    (set-terminal-coding-system 'euc-jp)
    (set-keyboard-coding-system 'euc-jp) 

YaST2 で適当にTeX 関連のパッケージを入れて,Emacs で日本語のLaTeX ファイルを作成後,コンパイルしたら,xdvi がアボート.

xdvi は日本語を通さないようなので, xgdvi を使えとのお達しをネットで発見したので, xgdvi でプレビュー.しかし,プリンタの設定をしてあるにもかかわらず, プリントアウトできないことが判明(プリントアウトする際に,dvips を使っているので).

(ぶつぶついいながら)dvipdfmxYaST2 で探してもないので,dvips を試すが,エラー. またしても,ネット内を探してみると,日本語が通るのは,pdvips だそうで,pdvips を使ってps ファイルを無事に生成.

結局, ggv で,ps ファイルをプリントアウトできることが判明し,ようやく難を逃れた.

しかし,dvipdf でも,日本語ファイルを作れないのは, ちょっと困った.

TeX 関係の日本語を使うための環境をまとめると,
(1) xdvi の代わりに xgdvi を使う
(2) dvips の代わりに pdvips を使う
(3) dvipdfdvipdfmx の代わりに,ps2pdf を使う
(4) プリントアウトは,ps ファイルにして,ggvで.

というのが,初期状態なので,これからのカスタマイズがしばらく楽しめそう. VineLinux では,インストールした時点から何もしないで日本語のTeX 環境が整備されている. それに比べるとSUSE Linux 10.1TeX 環境は,まだまだこれから整備が必要,というところか.かつては, 日本語がうまく通らないソフトウエアが多い状況が unix の世界でも普通だった. だから,いろいろと自分流にカスタマイズさせられたものだ.久しぶりにやるか, という気になった(が,時間がない...).

SUSE Linux 10.1 をインストールしてみての感想だが, 一般的にunix 文化と関係のなかったユーザ(例えば,Windows ユーザ) には,親しみ易い環境がほぼ作られている. が,逆に,unix 系の環境を初めから期待している人達にとっては, gcc, Emacs, TeX などがディフォルトでインストールされない,という驚くべき環境となっている. もっとも,YaST2 で簡単に追加インストールできるので, たいした問題ではないのだが.

ちなみに,前回書いた,Der digitale Grimm は,以下のようにSUSE Linux 10.1 上では, 問題なくインストールでき,フォントも十分に綺麗だった(解像度が 1280x1024だったせいもある). SUSE Linux 10.1 のもう1つの魅力, それはドイツ語のマニュアルが入っていること,なんてね.本当に, 英語とドイツ語のマニュアルが入っていて,日本語のマニュアルが入っていなかった.

Der digitale Grimm on SUSE Linux 10.1


Linux でも Der digitale Grimm! [10/28/06]

もうしばらく前に購入していた Der digitale Grimm を一ヶ月ほど前にようやくインストールして使い始めた. ドイツ語の最大の辞典と言えば, グリム兄弟によるDeutsches Wörterbuch であり,dtv(Deutscher Taschenbuch Verlag) のペーパーバック版(33巻, 1999年)を購入しても,499.00 € (2006年10月のレートは,1ユーロ およそ 150円なので74,850円)で, 置き場所に困ってしまう程の量だ.しかも現在絶版となっており,出版社には, 再版する予定はない.そこに今回インストールした Der digitale Grimm: Deutsches Wörterbuch の登場となる.値段は,たったの49.9 € (上記レートで換算すると,7,485円!だが,国内の本屋さん経由だと, 税込みでおよそ1万円), Windows 98/2000/XP, Linux, Mac OS 10.3以降で動く. Linux 使いとしては,見逃せません.

SuSE Linux 8.0 で検証済みというのがちょっと気になるところだが,インストールは, クリック一発とはいかないが, ちょっとコマンドを入力するだけだった.以下は, VineLinux 3.1CR の環境でのインストールの模様だ.

まずは,CD-ROM をマウントしておく. オートマウントを使っていないなら,VineLinux 的には,
$ mount /mnt/cdrom  
以下では, /mnt/cdrom にマウントされているものとし, インストールディレクトリは,個人のホーム・ディレクトリとする(理由は後述).

    $ mkdir DWB
    $ cd DWB
    $ sh /mnt/cdrom/Linux/installCD1.sh /mnt/cdrom
    ...(CD-ROM の入れ替えをして)...
    $ sh /mnt/cdrom/Linux/installCD2.sh /mnt/cdrom

DWB の実体は,TCLのスクリプトで書かれているプログラムで, 起動するときは,インストールしたディレクトリ (これも,DWB)に移って,
% ./DWB &
というやり方.ま,UNIX 的ではある(メニューを探さないように).

uninstall したい時には,
% rm -rf DWB
しましょう,なんて書いてある  ;-)   要するに,個人ユースを考え, root でなくてもインストールや削除ができる, という観点から作られているのだが,フォントの切り替えができないのは不便である.

まあ,要するに辞書データを参照するために作られた,スクリプト群, というのが Linux 版の実態のようだ (Trier November 2002に作られた. ftp のログや,Windows のバイナリまでインストール中にコピーしないで欲しい...ぶつぶつ). せめて,OfficeBibliothek 上で動くようにしてもらえれば,うれしかったのだが. だから,root でインストールして, 共用するなんてことは考えて作られていないので,ご注意ご注意./usr/share/local/ あたりに,インストールすることはできるが,パスを通しておいても, エラーになってしまう.そのディレクトリへ行き,root で起動なんてことはしたくないし,スクリプトの手直しをするほど, 暇はないので,一般ユーザで,自分のディレクトリあたりにインストールするのがお薦めというところか.

使ってみると,確かに便利だが,最初にインストールしたノートパソコン (解像度 1024x768)でみると,ボールド?のフォントが異様にきたない. bitmap fonts でも使っているような気がする. X のフォント回りをいじってみたが,効果なし.

Der digitale Grimm on VineLinux 3.1

あきらめてもいられないので,まずは,ドラッグ &ペーストで gEdit に持っていくと,綺麗に読めることが判明.続けて, 本文のところで右クリックすると出てくるメニューから, 「html として Export」(Artikel als HTML exportieren) できるので,それを試すと,これも結果は上々. Firefox(1.5.0.7)で見てみました.

Result of the HTML-Export, der digitale Grimm on VineLinux 3.1

しかし,なんとなくしっくりこないので,削除してから, SuSE Linux 10.1 を親機にインストールすることにした. HDD が1つ余っていたので,ついつい. が,これがその後の災難の始まりだった.


LinuxでもOCRを使うぞ! [03/20/06]

OCRとは,Optical Character Recognition の略.「光学文字認識」と訳されている.スキャナで読み取るデータは,基本的に画像イメージなので, たとえオプション機能でPDF に変換してくれるソフト付きのスキャナであっても,データとしては, 画像イメージのPDF化でしかないことがある. 最近では,このようなソフトウエアにOCR 機能を持たせているものもあり, 画像イメージから文字認識をして, 文字コードに変換してくれる.こうすれば,文字から成る文書として,全文検索の対象になる.

元来,文字認識は,パターン認識(Pattern Recognition)の一種で, コンピュータ処理としては,かなり高度なものに属する. 以前は,Omnipageとか, Recognita のような優秀だが非常に高価なソフトウエアと高分解能スキャナが前提とされていた. しかし,近年では,Windowsソフトウエアで, 日本語と英語に対応したOCRがお手頃な価格で出回っているし, スキャナの価格は劇的に下がり,性能も十二分に高くなった.

だだし,日本語と英語以外の言語に対応した,いわゆる多言語対応製品となると, それほど選択肢は多くない.2006年3月現在で, 市販されているものではOmniPage Pro 15(62,800円), CROSS OCR JX(15,642円)は,9カ国語に対応する. Presto! OCR Proは,欧米15カ国語対応で 14,800円だったが,今はすでに販売を終了している.

しかし,Linux上で動くOCR ソフトというのはあまり聞いたことがない.そこで,今回は,2006年3月現在での Linux上のOCRソフト探しと, その結果をまとめてみた. 日本語対応のOCRソフトは, 発見できなかったことをまず最初に明記しておく. … 続きはこちら


LANTANKに手を出してしまった... [12/31/2005]

アイ・オー・データ機器といえば,コンピュータの様々な周辺機器を製造販売している会社で, 昔はシャープのMZシリーズ向けのボードなんかも出していたので愛着があります (私は,昔,MZ-80Bユーザだったので). そこからのPCパーツブランド「挑戦者」なるものが出ていて,一部でかなりの人気になっています.

私は,つねづねデータのバックアップ体制が自宅で確立されていないことが不安でした. そこで,バックアップ専用のコンピュータ導入を検討していたわけです. 候補としては,(1) 玄箱(玄人志向),(2) LANTANK(アイ・オー・データの通称 「白箱」,正式名称(SOTO-HDLWU)),(3) miniPC(MP915-B, AOpen JAPAN), (4) Mac mini(Apple Computer)あたり.

結局,一番安いLANTANKを選択しました(1万9800円). 決め手は,その安さと,『日経Linux』(2006年1月号)での特集を読んで, できそうだという感触を得たから.メーカーからのサポート無し,HDD無しの NAS(Network Access Storage) ですが, 同社のサポート有りのLANDISK と互換性がある(というか,ほとんど同じ). 自作に自信がない人はLANDISKを購入しても, 同じような使い方ができるのも見逃せません.
  私は,本体を挑戦者オフィシャルホームページ から注文し, … 続きはこちら


OpenOffice.org 2.0 VineLinux 3.1CR へのインストールとスペリングチェッカーの設定 [11/15/2005]

OpenOffice.org 2.0 は、 Microsoft Office と互換性のあるオフィススイートとして、複数のプラットフォーム (Windows,GNU/Linux,Solaris,Mac OS X) で使える GNU Lesser General Public License Version 2.1 の元で公開されている無料で利用できるソフトウエアだ。 英語版は、2005年10月20日に、 http://www.openoffice.org/OpenOffice.org 2.0.0が発表され、日本語の対応版は、 10月28日に各国語版と同時にリリースされた。 日本語版は、http://ja.openoffice.org/ からダウンロードできる。製品版は、 サン・マイクロシステムズから StarSuite8 として発表され、ソースネクストから StarSuite8 (3,970円)として発売されている。

なぜ、私が OpenOffice.orgを使うか、というと、まず第一に、 VineLinux上で、MS WordExcel のデータを処理したいからであり、それも、積極的な理由というよりは、 周囲のWindowsユーザが、情け容赦無くWordExcelのデータを送りつけてくるからだ。 ここまでMicrosoftという会社に依存していいのか、 という問題意識すらない人が増えている。

第二の理由は、 OpenOffice.orgが、 現在、36カ国語の言語に対応していて、 … 続きはこちら


AdobeReader_jpn-7.0.1-1 VineLinux 3.1CR へのインストール [11/02/2005]

http://www.adobe.co.jp/products/acrobat/readstep2.html から AdobeReader_jpn-7.0.1-1.i386.rpm をダウンロードしてインストールしました。
[linux版AdobeReader7: メモ]
(1) rpm package には、フォントも含まれている。 日本語 CIDFont は、 KozGoPro-Medium, KozMinProIV-Regular が使われる。
(2) 今までと同様に、本体は、/usr/bin/acroread続きはこちら


Wine-0.9 の VineLinux 3.1CRへのインストール [10/29/2005]

Wineのベータ版wine-0.9 がついに10月25日にリリースされました。 http://www.winehq.org/ からダウンロードできます。

Wine-20050930のインストールに関しては、 すでに、こちら ですでに紹介しています。 今回は、最初のベータということで、緊急にインストールしてみました。
wine-0.9.tar.bz2 は、 10,036,834 bytes です。 Wine-20050930.tar.gz12,838,537 bytes でしたから、少し小さくなりました。 bzip2で固めてありますので、その影響もあるでしょう。 … 続きはこちら


Wine-20050930 (とcosmas v.3.6)の VineLinux 3.1CRへのインストール [10/12,13/2005]

Wine は、よく知られているように Microsoft Windows のプログラムを unix 系(Linux, FreeBSD, Solaris など) のプラットフォームで動かすことができるようにするソフトウエアです。 その仕組みは、簡単に言ってしまえば Microsoft Windows のプログラムをロードし、 Windows APIunix 系のOS (のX上)で、エミュレートする、というものです。

*

まだαリリースなのですが、 Wine Application Database や、 2chlinux.org のWine の動作報告 を見る限り、現在ではかなりの数のアプリケーションが動くようです。[10/13/2005]

Wineの最新版は、 http://www.winehq.org/ からダウンロードできます (まだようやくαリリースの最後にたどり着いたところですが)。

Wine は、GNU LGPL の元に配布されているフリーソフトウエアです。

私がWine を必要とした理由は、 IDS (Institut für Deutsche Sprache) が配布している言語コーパス検索プログラムcosmasWindows 上でしか動かない、 ということが分かったからです。説明を読むと、Wine を使えば、Linux 上で動くと書いてあったことが直接の動機です。 …詳細はこちら
スクリーンショット(1) solitaireスクリーンショット(2) cosmasスクリーンショット(3) cosmas KWIC


OfficeBibliothek の VineLinux 3.1CR (kernel 2.4.27-0vl7)へのインストール [09/09/2005]

Vine 2.6r4に OfficeBibliothekUniversalwörterbuch をインストールした時の記録は、ここ に公表していましたが、その後、同じマシンで、VineLinux 3.1 へアップグレードしたところ、動かなくなり、再インストール後も、 ルートでしか起動できない状況に陥っていました。今回、ハードディスクのクラッシュに遭遇した結果、 VineLinux 3.1CR をクリーンインストールすることになり、再度インストールすることになりました。結果から言うと、 ほぼ問題なく動作することが確かめられました。 (結果だけを見たい人は、 ここ をクリックしてブラウザの「戻る」で戻りましょう。)

VineLinux3.1 では、 /etc/redhat-release が、消滅したところから、 今回は、tarball からのインストールを試みました。 詳細はこちら


ThinkPad X31 ハードディスク・クラッシュ事件 [09/02/2005]

もちろん事件といっても、私的なできごとです。2005年8月26日(金) の午後に起きました。 翌日にひかえたオープン・ キャンパスで使う音声資料をきちんと再生できる環境を作ろうと、 alsa-driver をコンパイルし、 波形とフォルマントを表示でき、さまざまな編集や逆転再生が可能な SND-7 http://ccrma.stanford.edu/software/snd/ からダウンロードしてインストール。 *.wma ファイルがあることに気づき、 mPlayer のコンパイルをしている最中に事は起こった。

台風11号が過ぎ去った午後、気温は急激に上昇しているにもかかわらす、 熱い部屋の中でハードディスクを酷使してしまった。気がついた時には、 ハードディスクの異音。やがてフリーズ。リブートしても、 fschk で固まってしまう (別パーティションのWindows XP も立ち上がるのだが、しばらくするとフリーズ)。

ハードディスクのクラッシュは、毎度のことではあるが、やはりショックは大きい。 よりにもよって、明日に講義が控えているというのに…。
さて、泣いていてもしょうがないので、やったことを紹介しておきます。 詳細はこちら


Mozilla, Firefox で日本語のチルダが表示されない!VineLinux 3.1CR [06/16/2005]

VineLinux 3.1CR のクリーンインストール後、 Acrobat Reader 5.0.10 のインストール、 flashplayer 7.0 のインストールと順調に進んでいるかに思えたのだが、 気がつくと、Mozilla 1.7.8 も、 Firefox 1.0.4 も日本語のチルダ「〜」 が四角の箱の中に数字301Cが並んでいるという情けない状況になっていることに気づいた。

もう1台の Vine 3.1をインストールしてあるX31では、 このようなことになっていない。X のフォント回りや、 それぞれのブラウザのフォント設定をいじってみても状態がつかめず、 Googleへ。どうやら、いろいろなところで、日本語のチルダ表示でトラぶっていることが分かる。

ターボ でのやり取りを読むと、22番に、

「FontForgeでフォントの中身を見ると、TLGothic, TLPGothic は301Cには何も定義されていません。一方、sazanamiフォントには301Cに「〜」が定義されています。 標準で指定したフォントに文字が未定義な時は、 fontconfig が他のフォントから探しているのではないかと思います。」

という記述を発見。安易な解決方法として、sazanami フォントのインストールで表示できるようになるようなので、 これでしのぐことにした。
# apt-get install TrueType-sazanami
で、TrueType-sazanami 1.1-0vl1 がインストールされ、Xの再起動後、Mozilla, Firefox 共に日本語のチルダ が表示できるようになった。フォント回りの扱い方が、知らぬ間にいろいろ と変化しているようだ。ところが、 「TrueType-kochi-subst や TrueType-sazanami をインストールしてい ると、xdvi や GhostScript がリコーフォントの明朝体とゴシック体を使ってく れません。」という記述を発見。 sazanami フォントをインストールした時の問題点と対策 を参考に、いずれは手を入れなければならないかもしれない。 X31のMozilla 1.7.8 では、sazanami フォントが入っていないのに、 ちゃんと表示されるのは謎である。(もっとも、X31は、Vine 2.6 からアップデートや tarball でのさまざまなソフトのインストールを経て、 現在に至っているので、単純な比較はできないのだが。)


VineLinux 3.1 をクリーンインストール:追加インストールするのは? [06/13/2005]

メインマシンを6年ぶりに自作した話 を書いたが、昨年の暮れにOSの再インストールしたHDDをそのまま流用した。 結果として、クリーンインストールされた環境ができ、 別マシンのデータを ssh でファイル転送し、一応の環境が整った。意外に悩まされたのが、 「ゴミ・ファイル」の存在だ。「これは、後で必要になるかもしれない」 と思うと、ついつい削除せずに HDD にため込んでしまう。 再帰的に全部ファイル転送してしまえば簡単だったのだが、この際、少しお掃除をしよう、 とディレクトリ単位で見直しをした。どうも、私は「ため込む人」であって、 「捨てる名人」ではないことを今さらながらに実感してしまった。
次に、apt-get update; apt-get upgrade しておき、後で、 不要なものを削除、あるいは、起動しない設定にした。 しかし、すぐに不足しているものが判明。とりあえず、 今回、必要なものとして、apt-get install したものを挙げておく。

  • Mule-UCS (emacs でutf-8を使うため)
  • galculator (なぜか、Vine3.1では、Gnome で電卓がない!)
  • openoffice.org (言わずと知れた、MS-Officeに代わるもの)
  • lv (utf-8 の less ができるだけでなく、日本語のファイルの grep にも使えるので必需品)
  • wv (Wordの添付ファイルを送ってくる人が多いのでmewで読むために必要)
  • xlHtml (Excelの添付ファイルをとりあえずmewで読めるようにするために必要)
  • tetex-extra (txfontsが入っているので。omegaとかlambda、 hugelatexなども入っている)
  • firefox (定番のブラウザ)

この他にも、ブラウザ関係の拡張や、 acroread のインストールも必要なのだが、また後で。 それにしても、AcrobatReader 7 for Linux は、巨大なので少し引いてしまう。acroread 5 で十分な気もする。 まあ、それを言ったら、Pentium 4/3GHzの CPU なんて、仕事内容から言ったら (例えば巨大な動画ファイルを扱うようなことはないので) 本当に必要なのかどうか怪しい。ソフトが巨大化して、OSも巨大化するから、 5〜6年もすると、やたらにソフトが重くなってしまう、そして新しいハードウエアでその「重さ」を解決する、 そんなサイクルが一般的に繰りかえされている。「技術の進歩は、ユーザーを幸せにするか?」 と問われると、そうではない部分が増えているような気がする。


VineLinux 3.1CR で,ドイツ語のaspellを使う [06/05/2005]

aspell は、GNULGPL の下に配布されている ispell を置き換えることを目指して作られているスペリングチェッカーです。 aspell のバージョンは、本家でも、 まだ0.6x の段階ですが、 以下の説明にあるように、英語のスペリングチェックでは、 すでに性能的に ispellMicrosoft Word をしのいでいるとしています。 Vine/Linux 3.1 では、バージョン 0.50.3 が採用されています。 ... Vine/Linux 3.1では、emacs 21.3.1 がインストールできます。 その環境で、 英語以外のスペリングチェックができるかどうかやってみましょう。 続きはこちら


OfficeBibliothek のインストール [05/24/2005]

Linux のソフトウエアで、 ドイツで市販されているものをインストールするとどうなるか、 というのが気になっていました。ドイツでは、 SUSE Linux が主流ですので、若干の不安がありましたが、 思いきって、OfficeBibliothek というシリーズの Universalwörterbuch を購入してインストールしてみました。

結論から言うと、Vine 2.6r4(kernel 2.4.22-0vl2.13) には問題なくインストールできましたが、その後、 Vine 3.1(kernel 2.4.27-0vl7) へ移行して、動かなくなりました。 それでも、そこで泣き寝入りしても始まらないので、試行錯誤の結果、 今では、なんとか動かすことが出来ています。 その顛末は、別にまとめることにしました。とりあえず、 Vine 2.6r4OfficeBibliothekをインストールした記録 を公表します。