MacOS9用の古い SCSI HDD の データを、Ubuntu Linux へ救出した時の記録。
古いPowerMacが壊れて起動しないので、もし内蔵HDが生きているなら
取り出してデータを救出できるかもしれないというわけで、挑戦してみました。
IDEのHDDなら市販のアダプタを使えば済みますが、SCSI HDDだったので少し大掛かりです。
今回はファイルはMac のhfs から Linux の Ext3へ移動したため、アプリケーション関係は全滅。
テキストファイルや画像データを移行したかったので問題はなかったです。
現時点のUbuntu(8.04)では MacOSXのディスクユーティリティのような、
GUIのマウント管理ツールは付いてきていません
そこで、手動設定を書き換えでマウントさせることになります。
将来的にはもっと簡単にこれらの設定が出来るといいんですが...。
【必要なもの】
●作業用PC (今回使ったのは自作PC、OSは、 Ubuntu 8.04が入ってます)
●50pinの SCSIリボンケーブル(これは IDE(ATAPI)リボンケーブルよりも幅広のものです。)
●容量に余裕があるUSBメモリ
●SCSI インターフェースボード(これを使えば、SCSIコネクタを接続できるようになる)
私が使ったのは、玄人志向 ULTRASCSI-PCI (DMX3192U) 。
これは Linux に対応していると外箱に書かれていたので選びました。
● Macから取り出した内蔵SCSI HDD
【1.インターフェースボードを取り付け、SCSI HDと繋げる】
静電気に注意。事前に体に溜まった電気をどこかに逃がす等、対策しておきます。
PCの電気プラグを外し、PCのケースを開け、
PCのマザーボードの PCIバスに、インターフェースボードをしっかり差し込む。
内蔵タイプの場合:リボンケーブルで、インターフェースボードの内部SCSIコネクタと内蔵 SCSI HDD のコネクタを繋ぐ。
外付タイプの場合:ケースを閉じ、インターフェースボードの外部SCSI コネクタに接続する。)
今回は、一時的に接続したかったのと、内蔵 SCSI HDD をマウンタに取り付けるスペースがが無かったのとで、
ケースのパネルを開けたまま行ないました。 HDDやCPUが熱暴走しないように、気を付けて下さい。
【2.PCを起動】
外装を元通りにしてから、PCの電源を入れる。
なにやらメッセージが流れたが、ドライバは自動認識されたので、
インターフェースボードに同梱されたドライバインストールのフロッピーは使わなかった。
【3. Ubuntu8.04 の起動後、必要な情報を調べる】
パーティションの状況をみるため に システム>システム管理>Gpertded を起動。(無かったらインストールしておきます)。
Gparted が起動したら、ツールメニューの右端にある、アイコン付きのプルダウンメニューから dev/sda を選択。
すると、SCSI HDのパーティションマップが表示されます。
見ると、SCSI HDは機器として認識されていますが、ディスクはマウントされていません。
このときのデバイス名とファイルシステムを覚えておきます。
今回はSCSI HD だったので sda という名前が割り当てられています。
このハードディスクでマウント可能なのは
/dev/sda5
/dev/sda6
/dev/sda7
/dev/sda8
4つのパーティションでした。
また、ファイルシステムはMacOS9で使われている hfs でした。
Gperted ではマウントすることができないので、手動でマウントさせます。
Gperted は終了してもよいし、しなくてもよいです。
後で、ディスクをマウントした状態で情報を更新すると、どんな変化が起きているか分ると思います。
【4.作業するために root管理者 になる】
「端末」または「コンソール」を起動。
ubuntuで、 root管理者になるため
sudo -i
し、ログイン時のパスを入力します。
一旦 root管理者 になっておくことで、後のいくつかの作業をスムーズにこなせます。
【5.マウントポイントを作る】
USBメモリやCD-ROM等をマウントする時に使う場所 /media に、
mac0というマウントポイントを作っておきます。
mkdir /media/mac0
と打ち込みます。
【6. fstab ファイルを編集し、保存する】
Ubuntu では、マウントされるディスクは、システムにある
fstabというテキストファイルで管理されています。
従ってOS上で、HDDのファイルシステム種別と、どんなデバイス名なのかが 分かれば、
マウントポイントを用意し、fstabに、これらとマウントポイントの情報を登録することで
mountコマンドで、マウントすることができます。(パーティション単位も可能)。
それで、ディスクのマウント情報が書かれたfstabファイルを開きます。
端末から、geditというテキストエディタを立ち上げ fstabファイルを読込ませます。
gedit /etc/fstab
geditは、 GUIインターフェースを持つ便利なテキストエディタです、
そして fstab ファイルを編集して下さい。
/dev/sda5 /media/mac0 hfs iocharaset=utf8,users,umask=000,rw 0 1
という一行をファイルの最後に書き足します。ほかはいじりません。
最初のパラメータは、デバイス名が分っているので、/dev/sda5 とします。UUIDで登録しなくても良いです。
2番目のパラメータにはマウントポイントを記述します。/media/mac0 とします(先ほど作った)。
3番目のパラメータはにファイルシステムの種類。 OS9 なのでで hfs と記述
4番目はアクセス権とマウント方法。誰でも読み書き(rw)できるようにumask=000、自動マウントさせないのでauto はつきません。
5番目6番目は 0、 1
ファイルを上書き保存します。
(作業が残っているので、gedit はまだ終了しません)。
※ もし gedit を終了してしまったら再び gedit /etc/fstab と打ち込めば復帰できます。
【7.mount コマンドで ディスクをマウント】
端末に戻って、mountコマンドを使います。
mount /dev/sda5
するとデスクトップにSCSI HDDの(マウントされたパーティション)のアイコンが現れます。
後は、ファイルをUbuntuのHDDにコピーするだけです。
【8. ファイル救出が終ったら、 umount コマンドで ディスクをアンマウント】
アンマウントするときは、ファイルブラウザのGUI上で、ディスクをアンマウントできます。
端末でumountコマンドを使って同じ事ができます。
umount /dev/sda5
【9. ルーチンワーク:ファイルをコピーする。】
今回つないだSCSI HD は 継続的に使わないので
そのまま gedit で、
/dev/sda5 /media/mac0 hfs iocharaset=utf8,users,umask=000,rw 0 1
の行のデバイス名、sda5の部分をsda6 などと変えて上書き保存する。
例によって、マウントすると今度はsda6のパーティション領域がマウントされる。
必要なファイルをコピーし終わったらアンマウントする。
このようにして、マウントポイントは1カ所そのままにしておいて、
fstabのデバイス名を書き変え保存することで、複数のパーティションを、次々とマウントさせていきました。
※アンマウントする前に、間違えて fstabファイルに書かれたデバイス名を、別のに書き換えてしまうと、
テーブルが一致しないのでアンマウントできなくなります。こういうときは落ち着いて、
書き換える前のデバイス名に戻し保存してから、改めてアンマウントすると大丈夫です。
もし、今後もこのSCSI HDを使いたいと思えば、fstabファイルに、パーティションの数だけ登録しておけば良いでしょう。。
/dev/sda5 /media/mac0 hfs auto,iocharaset=utf8,users,umask=000,rw 0 1
/dev/sda6 /media/mac0 hfs auto,iocharaset=utf8,users,umask=000,rw 0 1
/dev/sda7 /media/mac0 hfs auto,iocharaset=utf8,users,umask=000,rw 0 1
/dev/sda8 /media/mac0 hfs auto,iocharaset=utf8,users,umask=000,rw 0 1
auto は自動的にマウントする設定。noauto は mountコマンドをつかって手動でしなければいけない。
realtime は 8.04からできる オプションらしいが、詳細不明。
【10. 終ったら】
作業が終ったら root管理者から抜けます。
端末から、logout
コマンドで抜けます。
MacOSXへ持っていくには、ハードディスクに保存したファイル群を、USBメモリにコピーします。
この時、Icon というファイルはコピーが不正な名前なのでダイアログが出ます。
「スキップする」を選択し飛ばしてください。
終った後のディスクは、そのままにするなり、初期化してから外す等できます。
残念ながらGparted は ファイルフラグを mac に変更できますが、 hfs 形式でフォーマットすることができません。
Last modified 2008.11.01