Linux - Panasonic LF1000 Optical Disk mini HOWTO 日本語版 V1.0 ************************************************************** 原文:Linux - Panasonic LF1000 Optical Disk mini HOWTO version 1.1 - March 29, 1996 著者:Skip Rye root@brspc_0064.msd.ray.com 抄訳・修正:Yoshinori Mamoto, <ymamoto@ent.med.osaka-u.ac.jp> <macky@msic.med.osaka-cu.ac.jp> このファイルは、IBM PC互換機上のシステムにのみ当てはまります。 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 原文でおかしな設定をしていると思われる部分は、適宜変更してあります。 免責事項 ======== この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[7,8]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 [ $sel ] 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 [ $ans1 ] then echo "Enter the fully qualified path name of the PD drive" echo "ie. /dev/sdb" read pdpath if [ $pdpath ] then if [ $ans1 = "y" -o $ans1 = "Y" ] then echo "This will DESTROY ALL data on disk $pdpath. Enter y to co ntinue" read ans2 if [ $ans2 ] then if [ $ans2 = "y" -o $ans2 = "Y" ] 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が公開してくれることを願っています。