## Linux - Panasonic LF1000 Optical Disk mini HOWTO

Skip
Rye

    root@brspc_0061.msd.ray.com

Yoshinori
Mamoto
抄訳・修正

    ymamoto@ent.med.osaka-u.ac.jp

v1.1, March 29, 1996

LF1000 (PD) を Linux で使う。

このファイルは、IBM PC 互換機上のシステムにのみ当てはまります。 原文でおかしな設定をしていると思われる部分は、適宜変更してあります。

## Legal notice

### 免責事項

この HOWTO 文書の著者および配布者は、この文書の内容によって引き起こさ れるいかなる類の物理的、金銭的、精神的損害に対しても、一切の責任を負わ ないことをここに宣言します。

### 著作権

この文書は、Skip Rye に著作権(1996年)があります。Linux HOWTO 文書は、 著作権表記を残してありさえすれば、その一部もしくは全体を、いかなるメディ アで配布しても構いません。商用配布も構いませんし、応援しています。しか し、この文書の配布に関して注意事項があります。Linux HOWTO 文書の内容を 含む、あらゆる翻訳物、派生文書、まとめも、この著作権規約に従う必要があ ります。いいかえれば、この規約以外の条件を付けた形での配布をしてはいけ ないということです。この規約の例外は、特定の場合のみ許されます。要する にこの情報をできるだけ多くのチャンネルを通して広めたいのです。私たちは、 HOWTO 文書の著作権を保持しようと思ってはいるものの、再配布するためのい かなる計画も考えてはいません。もし、何か質問があれば、Linux HOWTO 文書 管理者の Greg Hankins に、E-mail:gregh@sunsite.unc.edu 宛で連絡をとってく ださい。電話番号を教えてもらい、さらに詳しい情報を得られるかもしれませ ん。

## はじめに

### 光相変化技術

「光相変化技術」は、相変化書き込みのための特殊なメディア上に、「結晶 状態」と「アモルファス状態」とを作りだし、その相違をビットデータとして 扱う技術です。このために、相変化ドライブは、エネルギーレベルの異なるレー ザーを使用して、この状態を変化させるようになっています。結晶化している 領域は、アモルファス化している領域と、読み込み用のレーザーの反射率が異 なることを利用して、ディスクからデータが読みこめるわけです。

光相変化ディスクが特別なのは、磁気ディスクや光ディスクと同じく、同心 円状のトラック・セクタ形式でフォーマットされているものの、各トラックは、 非常に高密度に並んでいるので、一枚のディスクに極めて大量のデータが記録 できるようになっている点です。（訳注：これじゃ、特別でもなんでも無いで すね。最近の HDD や MO の記録密度を考えると）CD-ROM は、音楽レコードと同じ く螺旋状のトラックを持っている点が磁気ディスクと異なる点です。光相変化 ドライブは、トラックやセクタに分割されている点では、光ディスクとの違い はありませんが、より優れた性質があります。どういうことかというと、光磁 気ディスクが廉価にはデータのオーバーライトが出来ないのに対し、光相変化 ディスクでは可能であること。また、光相変化メディアが、磁気や電荷に対し 全く影響を受けないので、極めて長寿命であることなどです。

### 利点

- 500 ドル以下であること。（訳注：現在は、4 倍速で 30000 円程度？）

- 既に SCSI コントローラを持っていれば、今あるものと一緒に、もしくは予備 のディスクとして利用できるようになります。

- 読み書き可能な光ディスク

- 4 倍速で CD-ROM が読める。

- Kodak の PhotoCD が読める。

- メディアは 15 年の寿命がある。

- SCSI-2 インターフェースである。

- CD-ROM が螺旋状に記録するのと異なり、トラック／セクタ形式のフォーマッ トである。

- アクセスタイム 165ms - テープより遥かに速い。

- 650MB の大容量メディアである。

- ディスク 1 枚約 50 ドル（訳注：今は日本橋では 2600 円が普通）

### 理解して欲しい事

- ドライブと一緒に売っている SCSI コントローラが、Linux で動作するか否か は不明です。もし、その SCSI コントローラか別のコントローラが動作すること が判ったら、是非私にメールを送って下さい。

- 光ディスクのフォーマットは、他のディスクドライブのフォーマットと互換 性はありません。しかし、PC 用の次世代ドライブであるのに十分なチャンスが あります。

- ベンダーは、UNIX をサポートするようには思えません。残念ながら、 DOS/Windows や Macintosh を対象にしているようです。

- LUN ジャンパ 7 番は、AT 互換機では、OFF に設定しておく必要があります。 （訳注：原文では、どちらでもいいようになってますが、間違えると原文の ように、CD-ROM と PD を同時に使えなくなります。その代わりに、ジャンパを MAC モードにしておくと、最初に入れておいたメディアタイプのドライブとし て認識します。）

## インストール

LF1000 は、SCSI-2 互換のデバイスです。ブロックサイズは、512 バイトで、 Linux の SCSI ドライバと互換性があります。このドライブを、Adaptec 1542C SCSI コントローラを使って AMD 486-100MHz マシンにインストールしてみました。 インストールと、読み書き可能な光ディスクのマウントは、以下に述べるよう な手順で行ないました。

### インストールの手順

- ドライブを取り付け、他のデバイスとぶつからないように SCSI ID をセットする。 その後、ケーブルを繋ぎ直す。

- コンピュータを起動し、SCSI コントローラがドライブを認識していることを 確認する。

- Linux のカーネルが起動している間に、SCSI デバイスが新たに認識されるこ とと思います。私の場合は、`/dev/sda` にハードディスク があるので、`/dev/sdb` として認識されました。

- overwrite warning が出るので、また dosemu の設定をいじりたく無かったの で `fdisk` コマンドは使いませんでした。

-       mkfs -t ext2 /dev/sdb

-       mkdir /pd

-       mount -t ext2 -o ro,suid,dev,exec,auto,nouser,async /dev/sdb /pd

  とすれば、読み込み専用マウント

-       mount -t ext2 -o defaults /dev/sdb /pd

  とすれば、読み書き可能でマウントです。

これで準備は完了です。

### ヒント

SCSI カーネルドライバが、CD-ROM ISO 9660 フォーマットと ext2 フォーマット などのデバイスモードの変更をサポートしているかどうかは、不明です。どな たか、判りましたらメールを下さい。

訳注：少なくとも、`aic7xxx, ncr53c&lsqb;7,8&rsqb;xx, ncr53c8xx` などのドライバでは、可能でした。カーネルを、LUN を検索にいく ように作り直すか、 boot prompt で `max_scsi_luns=1` を設定する必要はあります。

補足：後述しますが最新カーネルでは、`max_scsi_luns` の設定は 無関係です。

Linux のブート時に、ちゃんとドライブを認識していますか？ `dmesg` の出力の抜 粋をつけておきます。MATSHITA ドライブを認識しているかどうか確認して下さ い。たぶん同じようなメッセージが出る筈です。

#### 注意点

"Adding Swap" の下 3 行は、Linux が PD を使えるようにブートしたため です。もし、CD-ROM を PD-Drive に入れたままブートした場合、この CD-ROM を iso9660 フォーマットのメディアとして `/cdrom` にマウント します。CD-ROM を使って Linux をインストールする場合には、PD ドライブに CD-ROM を入れたままブートしなくてはいけません。いったん Linux がブートした 後は、"`umount /cdrom`" とすることで、メディアを交換できます。 もちろん、マウントし直さなければいけません。以下に、この操作を助ける Shell Script を用意してあります。"`mgrpd`" の名前で ファイルに切りとり、"`sh mgrpd`" として実行して下さい。

（訳注：カーネル及び PD ドライブの LUN の設定を正しく行なえば、先に CD-ROM を入れておこうが、PD を入れておこうが、いつでも、mount, umount 処理でメ ディア交換は可能です。）

      #-----------dmesgコマンドの出力-------------------------------------
      Configuring Adaptec at IO:330, IRQ 11, DMA priority 5
      scsi0 : Adaptec 1542
      scsi : 1 host.
        Vendor: QUANTUM   Model: PD1050iS          Rev: 3110
        Type:   Direct-Access                      ANSI SCSI revision: 02

      Detected scsi disk sda at scsi0, id 0, lun 0
        Vendor: MATSHITA  Model: PD-1 LF-1000      Rev: A109
        Type:   Optical Device                     ANSI SCSI revision: 02
      Detected scsi disk sdb at scsi0, id 1, lun 0
      scsi : detected 2 SCSI disks total.
      SCSI Hardware sector size is 512 bytes on device sda
      SCSI Hardware sector size is 512 bytes on device sdb
      Linux version 1.2.13 (root@bigkitty) (gcc version 2.7.0) #1 Wed Aug 23 03:54:14

      CDT 1995
      Partition check:
        sda: sda1 sda2 sda3 sda4
        sdb: bad partition table
      VFS: Mounted root (ext2 filesystem) read-only.
      Adding Swap: 34812k swap-space
      end_request: I/O error, dev 2100, sector 64
      isofs_read_super: bread failed, dev 0x2100 iso_blknum 16
      Unable to identify CD-ROM format.
      #-------------------ここまでdmesgコマンドの出力-----------------

Adaptec 1542C SCSI コントローラのドライバは、Slackware の scsinet1 カーネ ルのものを使いました。このコントローラの場合は、無事動きましたが、違う コントローラを使う場合は、Drew Eckhardt 氏の書いた SCSI-HOWTO ( 日本語訳) を見て下さい。

LF1000 ドライブを使う上で便利な Shell Script を以下に付記しておきます。自 由に使ってもらって結構ですが、Copyright 表示は残しておいてください。 （訳注：後述する理由で、AT 互換機ではあまり役に立たないです。MkLinux を動 かす場合には意味があるかも）

      ------------------------ここから--------------------------------
      #@/@/@ mgrpd    ABR Linux 1.2.13 486  mgr shell for phase change drive
      #************************************************************************#
      #                                                                        #
      #  program : mgrpd                                                       #
      #                                                                        #
      #                                                                        #
      #                                                                        #
      #                                                                        #
      #       Author : Skip Rye  Copyright 1996                                #
      #                                                                        #
      #       Revision : v1.0  02-01-96 Start                                  #
      #                        03-13-96 Released                               #
      #                                                                        #
      #       Calls : None                                                     #
      #                                                                        #
      #       Files :                                                          #
      #                                                                        #
      #                                                                        #
      ########################################################################*/
      # Display menu and process choice:
      sel=0
      while &lsqb; $sel &rsqb;
      do
         echo "***************************************************************"
         echo "*                         MGRPD                               *"
         echo "* Version v1.0, Copyright 1996, Author Skip Rye              *"
         echo "***************************************************************"
         echo "**************  ext2 formated file system *********************"
         echo "1)  Format pd disk - mkfs /dev/sdb"
         echo "2)  Mount pd read/write"
         echo "3)  Mount pd read only"
         echo "************** dos formated file system ***********************"
         echo "Note : must have been formatted using dos"
         echo "4)  Mount read/write"
         echo "5)  Mount read only"
         echo "40)  List disk space - df"
         echo "50)  umount"
         echo "######################## CDROM ################################"
         echo "Note : must have Use LUN Numbers jumper on drive"
         echo "100) Mount CDROM"
         echo "101) umount CDROM"
         echo "END Hit  to End"
         echo
         echo "Select option: \c"

         read sel
         case $sel in

         1)
            echo "This option assumes ext2 is the default mkfs format"
            echo "This will DESTROY ALL data on disk. Enter y to continue."
            read ans1
            if &lsqb; $ans1 &rsqb;
            then
               echo "Enter the fully qualified path name of the PD drive"
               echo "ie. /dev/sdb"
               read pdpath
               if &lsqb; $pdpath &rsqb;
               then
                  if &lsqb; $ans1 = "y" -o $ans1 = "Y" &rsqb;
                  then
                      echo "This will DESTROY ALL data on disk $pdpath. Enter y to co
      ntinue"
                      read ans2
                      if &lsqb; $ans2 &rsqb;
                      then
                        if &lsqb; $ans2 = "y" -o $ans2 = "Y" &rsqb;
                        then
                           mkfs $pdpath
                        fi
                     fi
                  fi
               fi
            fi
         ;;
         2)
            mount -t ext2 -o defaults /dev/sdb /pd
         ;;
         3)
            mount -t ext2 -o ro,suid,dev,exec,auto,nouser,async /dev/sdb /pd
         ;;
         4)
            mount -t msdos -o rw,suid,dev,exec,auto,nouser,async /dev/sdb /pd
         ;;
         5)
            mount -t msdos -o ro,suid,dev,exec,auto,nouser,async /dev/sdb /pd
         ;;
         40)
            df
         ;;
         50)
            umount /dev/sdb
         ;;
         100)
            /etc/rc.d/rc.cdrom
         ;;
         101)
            umount /cdrom
         ;;
         esac
      done

      ------------------ここまで----------------------------------

もし、うまくいかなかった場合は、以下の点をチェックしてみて下さい。

- SCSI コントローラは何を使っていますか？ サポートされているカードですか？ Drew Eckhardt 氏の SCSI-HOWTO (日本語訳) を見て下さい。

- SCSI コントローラのドライバをカーネルに組み込んでいますか？

以下 3 点は、誤解を招くので、AT 互換機ユーザーは読み飛ばして下さい。

- CD-ROM を使うには、Linux のブート前に LF1000 の電源を入れ、CD-ROM を入れ ておく必要があります。CD-ROM を認識できた後には、CD をアンマウントし、 CD-ROM を取り替えたり、マウントし直したりできるようになります。 -- "`mgrpd`" Shell Script の使い方を参照のこと。

- 光ディスクを扱うには、CD-ROM を入れずに Linux をブートしてください。

- LF1000 のジャンパ設定は、LUN を使うようになっていますか？

AT 互換機ユーザーは、以下の点もチェックして下さい。

- LF1000 ドライブの電源は入っていますか？

- Kernel Configuration で Probe all LUNs on each SCSI device を on にして カーネルを再構築してありますか？ もしくは、ブートプロンプトで、 max_scsi_luns=1 を設定しましたか？ (訳注：最近のカーネルでは、Probe all LUNs on each SCSI device が off の ままでも、PD の LUN はサポートされるようになりました。Kernel 2.0.22 以降 だったように思います)

- LF1000 の LUN ジャンパ 7 番を off の位置に合わせてありますか？

PDのメディアは、約 500000 回の読み書きができるそうです。（訳注：私の知る ところでは 100 万回オーダーです。）しかし Linux などの OS を PD 上にインストー ルすることは勧めません。このような OS は、プロセスをディスクに書き込んだ り読み込んだりするものです。こういう使い方では、簡単にメディアの寿命が くることになってしまいます。

できるだけ、読み込み専用でマウントするようにしましょう。

書き込みは、大きな固まりの単位で行ないましょう。これによって、読み込み 時のシークを増やす元となるフラグメンテーションを減少させることができます。

しかしながら、バックアップや、画像、あまり使う事の無い巨大プログラムの 保存用には、素晴らしいメディアです。バックアップからのリストアは、テー プよりも何倍も高速です。バックアップは、テープドライブでは役に立たない "`cp -rp`"コマンドでも行なえます。が、この場合は、 シンボリックリンクが実ファイルに置き換わってしまいます。

## 追加・補足

この節は、訳者の勝手な追加事項です。

私の知っている限り、PD ドライブの出荷時デフォルト設定は、ライトキャッシュ がオフになっています。Panasonic 版に付属のツールを DOS 上で動かせば ライトキャッシュをオンの状態でセーブできます。 ですが、少なくとも、トーレ・ブランドに付属のツールでは、電源を切るた びに、ライトキャッシュがオフの状態に初期化されることが確認できています。

MO のライトキャッシュがオンになっている状態で、Win95 などの柔な OS 上で 使用すると、大量のファイルをコピーする場合にシステムがハングしたりする こともしばしばですが、PD の場合は、そのような事態が発生したことはありま せんでした。（自分自身や友人達を含めて）どうも、ドライブのキャッシュ アルゴリズムの問題のせいではないかと推測されます。

しかし、Linux 上では、大きなファイルのコピー時にシステムがハングした という報告もありましたが、JF-MLでの実験報告によれば、SCSI カードの型番・ リビジョンによって起きる可能性があるようです。

雑誌などで、PD は MO に比べて書き込みが遅いと書かれていますが、少なくと も、PD もライトキャッシュをオンにすれば、230M-MO よりは高速な結果が出て います。（複数の環境で）

ライトキャッシュをオンの状態で使用した方が快適に使えるとは思いますが 先に書いた問題が起きる場合もあるので、at your own risk で、好きな方に設 定して下さい。

もちろん、FAT, VFAT でマウントするより、ext2 で makefs して Linux 専用で 使うほうが快適です。(私は 2 台の PD の一台を ext2、一台を vfat でマウント するような設定をデフォルトにしています。)正確に計測はしていませんが、 少なくとも 4-5 倍は高速になったように思えます。

ライトキャッシュがオンになっているかどうかは、フロントパネルの LED が 書き込時にオレンジ色になっているかどうかで区別できるようです。（数社の 製品を調べた結果）オレンジになるならライトキャッシュはオン、ならなけれ ば、ライトキャッシュはオフです。一度ご確認のほどを。

なお、Panasonic 以外で、ライトキャッシュなどの初期設定情報を、記憶さ せられるツールを付属しているものは、あるのかどうか不明です。さすがに 交友関係だけで、各社のドライブを調べるには限度があります。

「うちのは付いてた」「うちのには付いてなかった」といった情報を教えて ください。

1997/4/30 現在、WWW、ftp などで、Panasonic Tools を入手する方法は無いよ うです。Panasonic が公開してくれることを願っています。