まだ死なせないABI310 - ABI Prism 310 Genetic Analyzerをエミュレータで使う
201907にやった。
ABIのシークエンサ、310のコントロールPCが挙動不審になった。WindowsNT4.0で動く年代物である。常時通電の電流は来ているが電源ボタンを押すとLEDが橙点滅して起動しない。どうも電源がいけないようなのでエアダスターで内部を清掃したら一応起動した。
が、まあもう長くはなさそうだ。
古いマシーンであるからして、導入時についてきたCD-Rはすでに劣化して読めないものがある。 特にData Collectionが入っているはずのCDが読めないのには参った。 これでは新たなマシーン上で新たな環境を作ることは難しい。 まあ、そもそもWindowsNT4.0が動く世代のマシーンがない。 Data Collection自体も単純に移動して動くソフトでは無いようだ。 仕方がないのでHDDが無事なうちにデータをサルベージした上でいわゆるP2V、Physical to Virtualによってエミュレータで動作させる事にした。
元PCのHDDのイメージ化
IDEとSerialATAの両方を接続可能なPC(すでに使っていない旧式)があったので、これを利用して元HDDのイメージ化を行なった。 元PCからIDE接続のHDDを抜き出し、PCに組み込む。イメージファイルの保存先となるSerialATAのHDDも組み込む。 Biosをいじり、UbuntuのliveUSBで起動する(起動可能なOSがインストールされていなかったため)。 起動したPC上でIDE接続のHDDをddでディスクイメージにする。 この時、ディスクイメージを保存するHDDはFATであってはならない(ファイルサイズの4GB制限があるので)。
で吸い出し元と保存先のHDDを確認。 sdaが保存先、sdbが吸い出し元だった。 保存先HDDをマウントしてから
でマウント先を確認。
でディスクイメージを作成した。/media/500GB/sdb.imgはマウントした保存先ディスク内にsdb.imgを作るということ。 イメージはパーティションごと(sdb1,2)ではなく、まるごと(sdb)作る。 かなり時間がかかる。250GBのHDDをイメージ化するのに数時間を要した。また進行度は表示されない。
ディスクイメージの変換〜仮想マシーンの作成
エミュレータ・VirtualBoxを動かすPCのOSはubuntuとした。 Windows10にでもしてシークエンス中にアップデートで勝手に再起動などされては困る。 PCはSandyBridgeのi5搭載のもの。 貰い物の旧式機だがシリアルポートが付いているので都合が良い。
Ubuntuをインストール後、VirtualBoxをインストールする。 別に最新版でなくてもよかったので
を実行したのみ。
次にディスクイメージをVirtualBoxで使える形式に変換する。
を実行してディスクイメージをVirtualBox用に変換。少々時間がかかる。未使用領域が圧縮されるのでファイルサイズは小さくなる。
VirtualBoxで新規仮想マシーンを作る。Windows、NT4.0指定。 仮想ハードディスクファイルは作成したディスクイメージを指定。 無事に起動したら旧環境の移行は完了。
シークエンサの接続
310はシリアルポート経由で通信するので、PCに付いている実シリアルポートを仮想環境からアクセスできるようにしないといけない。
使えるシリアルポートを確認する。
や
などで使用できるシリアルポートを確認。今回は「/dev/ttyS0」だった。
Virtualbox側のシリアルポート設定を行う。
ポート番号 COM1
ポートモード ホストデバイス
パス/アドレス /dev/ttyS0 ←確認したシリアルポート
これだけ設定して仮想マシーンを起動してみるとエラーが出る。
どうもシリアルポートのパーミッションに問題があるらしい。
シリアルポートのパーミッションを調整する。
でパーミッション確認。rootかdialoutでしか使えない様である。
で使用するユーザをシリアルポートを使えるユーザグループdialoutに追加する。
仕上げに310 Data Collection Softwareの設定を変更する。 Window > Preferences > General Settingsで通信をCOM1に設定

これで310シークエンサのステータスを取得できるようになった。 試しにバッファバルブを開けたり閉めたりしたところ、ちゃんと動く。 シークエンスしてみたところData Collection、Sequencing Analysis共に問題は無いようだ。 年代物の旧式機の代替であればエミュレータでも十分ということなのだろう。
問題点
WindowsNT4.0ではVirtualBoxの共有フォルダがうまく動作しない。
シークエンスしたファイルの取り出しのためにネットワーク接続を確立する必要がある。
コントロールパネルのNetwork > AdaptersでAMD PCNET Family Ethernet Adapterを加える(WindowsNT4.0のCDのi386フォルダを直接指定してドライバをインストール)。
他は消す。
不要そうなサービスを削る。
VirtualBoxの仮想マシーンの設定 > ネットワークでNATかブリッジアダプターを選択。
これでLAN接続可能になった。
旧式のWindowsをネットワークに直接接続するのはセキュリティリスクがあるのでクローズなネットワークを構築する方が良さそうである。