ブート可能なCD-ROMをUSBメモリから起動する

ブート可能なCD-ROMをUSBメモリから起動する






会社で使用しているパソコンのレンタル期間が終了し、レンタル会社に返却する場合は
ハードディスクを初期化しないといけない規則になっている。

通常は専用の初期化CD-ROMをセット&ブートしハードディスクを初期化する。
ところが、今回返却するノートパソコンは
小型でCDドライブが付いていないタイプ。

会社に有るUSB外付けCDドライブを接続するも
ドライブがへぼいのか、相性が悪いのか接続してもCD-ROMからブートできない

返却するノートパソコンを調べるとUSBメモリから起動できそう

そこで初期化CD-ROMをUSBメモリに入れて、USBメモリから立ち上げる手順です。


■必要なソフト
1.grub4dos
以下のサイトから
GRUB4DOS and WINGRUB プロジェクト日本語トップページ - SourceForge.JP
grub4dos-0.4.4.zip
をダウンロード&解凍

2.syslinux
以下のサイトから
Index of /pub/linux/kernel.org/utils/boot/syslinux
syslinux-4.05.zip
をダウンロード&解凍

3.CD-ROMをisoファイルに変換したもの
今回、CD-ROMからisoファイルの作成には

「Roxio Creator DE」を使用しました。
CD-ROMをセット後このソフトを起動し「ハードディスクにイメージを保存」時に
ファイル名にisoを指定すればisoファイルに保存できる。

なお、必要なUSBメモリのサイズはCD-ROMのサイズにより異なります。
isoファイルを複数格納し、menu.lstを修正すれば起動するCDイメージを選択し
ブートすることも可能。
DOSとKNOPPIXを1本のUSBメモリで起動する その2にmenu.lstの簡単な説明があります。

■ブートUSBメモリ作成

CD-ROMから作成したisoファイルのファイル名を
「ABCD」という名前で説明しています。

作業する場合は適宜「ABCD」を実際のファイル名に置き換えて実施してください。

(1)USBメモリへsyslinuxのインストール
syslinux-4.05.zipを解凍し「win32\syslinux.exe」を実行します。

コマンドプロンプトからsyslinux.exeを実行します。
syslinux.exe -ma -d syslinux [USBメモリのドライブ]

実行例

>syslinux.exe -ma -d syslinux E:

コマンドの補足説明
「-d syslinux」は(2)のフォルダ構成の「syslinux」フォルダに対応しています。
「E:」はUSBメモリがEドライブに割り当てられた場合の例です。


(2)フォルダー構成

 USBメモリ
  | menu.lst         設定ファイル編集
  |
  +---CDROM           isoファイル格納用フォルダ
  | ABCD.iso       CD-ROMをisoファイルに変換したもの1枚目
  | XYZ.iso        CD-ROMをisoファイルに変換したもの2枚目
  |
  \---syslinux
   syslinux.exe     syslinuxの「win32\syslinux.exe」
   syslinux.cfg     設定ファイル編集
   grub.exe       grub4dosの「grub.exe」


2013年3月29日修正
CD2枚を選択できるよう修正しました。

(3)ファイルのコピー
フォルダー構成を参考に各ファイルをコピーします。
  • syslinux.exe
  • grub.exe
  • ABCD.iso

(4)設定ファイル編集
各設定ファイルを編集し
所定の位置にコピーします。

menu.lstの内容

default=ABCD
timeout=30

title ABCD
find --set-root /CDROM/ABCD.iso
map /CDROM/ABCD.iso (0xff) || map --mem /CDROM/ABCD.iso (0xff)
map --hook
chainloader (0xff)
title XYZ
find --set-root /CDROM/XYZ.iso
map /CDROM/XYZ.iso (0xff) || map --mem /CDROM/XYZ.iso (0xff)
map --hook
chainloader (0xff)


「default= timeout=」は選択しなかった(キー入力が無かった)場合に待ち合わせる経過時間(秒)と
経過時間後起動するisoイメージの「title」を指定します。

menu.lst内の/CDROM/ABCD.isoは「CDROM」フォルダ内の「ABCD.iso」ファイルを意味しています。

syslinux.cfgの内容

DEFAULT /syslinux/grub.exe
APPEND --config-file="configfile /menu.lst"
PROMPT 0



スポンサーサイト

DOSとKNOPPIXを1本のUSBメモリで起動する その2





DOSとKNOPPIXを1本のUSBメモリで起動する



その2 USBメモリでDOSとKNOPPIXのマルチブート



■準備
CD-ROMに焼けるパソコンを用意し
1.KNPOPPIX
KNPOPPIXのisoファイルをCD-ROMに焼きます。
過去記事
KNOPPIX 6.4.4をUSBメモリーから起動する

今回はKNOPPIX_V7.0.3CD-2012-06-25-JA-LCR.isoを焼きました。

2.grub4dos
以下のサイトから
GRUB4DOS and WINGRUB プロジェクト日本語トップページ - SourceForge.JP
grub4dos-0.4.4.zip
をダウンロード・解凍

3.memdisk
以下のサイトから
Index of /pub/linux/kernel.org/utils/boot/syslinux
syslinux-4.05.zip
をダウンロード・解凍


■USBメモリのディレクトリ構成とファイル一覧
以下はDOSとKNOPPIXマルチブートUSBメモリのディレクトリ構成&ファイル一覧です。

KNOPPIX
+---boot
| \---syslinux
| balder.img
| boot.msg
| f2
| f3
| german.kbd
| grub.exe    上記2.置き換え
| grub.exe.org
| linux
| logo.16
| memdisk     上記3.置き換え
| memdisk.org
| memtest
| menu.lst    追加
| minirt.gz
| syslinux.cfg  修正
| syslinux.cfg.org
|
+---DOS         追加 各ファイルはmenu.lstで指定
| lets_uty.vfd   フロッピーイメージファイル
| me.vfd
|
\---KNOPPIX
| background.jpg
| background_sky3.flame
| index_de.html
| index_en.html
| index_es.html
| index_fr.html
| index_it.html
| KNOPPIX
| knoppix-cheatcodes.txt
| knoppix-data.img
| knoppix-logo-medium.png
| knoppix-logo-small.png
| LICENSE.txt
| README_Security.txt
| sha1sums
| SOURCES.txt
|
\---modules

上記「.org」のファイルは置き換え前、または修正前のファイルです。

boot\syslinux のディレクトリ

2012/10/03 04:31 1,474,560 balder.img
2012/10/03 04:31 174 boot.msg
2012/10/03 04:31 1,335 f2
2012/10/03 04:31 1,404 f3
2012/10/03 04:31 256 german.kbd
2012/09/11 15:43 234,697 grub.exe
2012/10/03 04:31 210,445 grub.exe.org
2012/10/03 04:31 3,944,048 linux
2012/10/03 04:31 18,683 logo.16
2012/09/11 15:48 26,140 memdisk
2012/10/03 04:31 20,052 memdisk.org
2012/10/03 04:31 124,648 memtest
2012/10/03 05:07 210 menu.lst
2012/10/03 04:31 951,936 minirt.gz
2012/10/03 05:00 2,799 syslinux.cfg
2012/10/03 04:31 2,536 syslinux.cfg.org


■モジュールのコピー
1.grub4dosのgrub.exeを置き換えます。

2.memdisk\memdiskを置き換えます。

■DOSイメージファイルのコピー
USBメモリの直下に「DOS」のディレクトリを作成し
先に作成した


■menu.lst
menu.lstの内容(新規)

default=MS-DOS
timeout=30

title MS-DOS
root (hd0,0)
kernel /boot/syslinux/memdisk raw
initrd /DOS/lets_uty.vfd

title Win Me DOS
root (hd0,0)
kernel /boot/syslinux/memdisk raw
initrd /DOS/me.vfd




■syslinux.cfg
オリジナルのsyslinux.cfgを一部修正します。

syslinux.cfgの内容(修正後)

DEFAULT knoppix

APPEND ramdisk_size=100000 lang=ja apm=power-off initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime
TIMEOUT 100
# TOTALTIMEOUT 20
# KBDMAP german.kbd
PROMPT 1
F1 boot.msg
F2 f2
F3 f3
DISPLAY boot.msg
LABEL kn
KERNEL linux
APPEND ramdisk_size=100000 lang=ja apm=power-off initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime
LABEL adriane
KERNEL linux
APPEND ramdisk_size=100000 lang=ja apm=power-off video=640x480 initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime adriane
LABEL adriane64
KERNEL linux64
APPEND ramdisk_size=100000 lang=ja apm=power-off video=640x480 initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime adriane
LABEL knoppix
KERNEL linux
APPEND ramdisk_size=100000 lang=ja apm=power-off initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime
LABEL knoppix64
KERNEL linux64
APPEND ramdisk_size=100000 lang=ja apm=power-off initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime
LABEL debug
KERNEL linux
APPEND ramdisk_size=100000 lang=ja apm=power-off initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime debug
LABEL debug64
KERNEL linux64
APPEND ramdisk_size=100000 lang=ja apm=power-off initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime debug
LABEL grub
KERNEL grub.exe
APPEND --config=;
LABEL fb1024x768
KERNEL linux
APPEND ramdisk_size=100000 lang=ja apm=power-off vga=791 video=1024x768 xmodule=fbdev initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime
LABEL fb1280x1024
KERNEL linux
APPEND ramdisk_size=100000 lang=ja apm=power-off vga=794 video=1280x1024 xmodule=fbdev initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime
LABEL fb800x600
KERNEL linux
APPEND ramdisk_size=100000 lang=ja apm=power-off vga=788 video=800x600 xmodule=fbdev initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime
LABEL fb640x480
KERNEL linux
APPEND ramdisk_size=100000 lang=ja apm=power-off vga=785 video=640x480 xmodule=fbdev initrd=minirt.gz nomce libata.force=noncq hpsa.hpsa_allow_any=1 loglevel=1 tz=localtime
LABEL memtest
KERNEL memtest
APPEND foo
LABEL dosorg
KERNEL memdisk
APPEND initrd=balder.img
LABEL failsafe
KERNEL linux
APPEND ramdisk_size=100000 lang=ja vga=normal atapicd nosound noapic nolapic noacpi pnpbios=off acpi=off nofstab noscsi nodma noapm nousb nopcmcia nofirewire noagp nomce libata.force=noncq hpsa.hpsa_allow_any=1 nonetwork nodhcp xmodule=vesa initrd=minirt.gz

LABEL dos
KERNEL /boot/syslinux/grub.exe
APPEND --config-file="configfile /boot/syslinux/menu.lst"



通常起動する「LABEL knoppix」から3行をコピーし「LABEL kn」を追加しました。
これでKNOPPIXを起動する場合は「kn」だけを入力すればOKです。


元々ある「dos」を「dosorg」に変更します。


「dos」起動のメニューを表示します。
これでDOSの選択メニューを起動する場合は「kn」を入力すればOK


■使用方法
USBメモリから起動できるよう、BIOSを設定します。

USBメモリを指してパソコンを起動します。

DOSを起動する場合は dos[Enter] を入力するとDOS選択画面が表示されます。
起動したいDOSを選択し[Enter]

KNOPPIXを起動する場合は kn[Enter] を入力します。


以下のサイトを参考にさせていただきました。
isoイメージをマルチブートするの巻【その3】マルチブートUSBメモリ作成編@Palm84

DOSとKNOPPIXを1本のUSBメモリで起動する その1





DOSとKNOPPIXを1本のUSBメモリで起動する

その1 USBメモリでLet's noteのユーティリティフロッピーのイメージファイルを作成する



以前、Let's NOTE のSSD換装を行った際
フロッピードライブもCDROMドライブも不要ならいいのになと思っていました。
そうすれば、外付けのSDドライブもフロッピードライブも不要になります。

既に、KNOPPIXはUSBメモリから起動できていましたが
DOSを起動する方法が良く分かりませんでした。

調べると、フロッピーもUSBメモリから起動できそうです。
どうせなら、1本のUSBメモリでDOSとKNOPPIXをマルチブートできたら良いなと。

マルチで起動できる様に設定したUSBメモリを保管しておけば緊急用にもなるし。
中身のファイルだけをパソコンに保存しておけば必要な時にUSBメモリに焼くこともできそうです。

それと、Windows XPはフロッピーを初期化する際
「MS-DOSの起動ディスクを作成する」が選択できる貴重なOSです。
他のOSでは別の手順が必要です。
Windows XPをいつまで使い続けられるかも心配です。

そこで、「1本のUSBメモリでDOSとKNOPPIXをマルチブート」に挑戦しました。

実は前々から調べていました。
USBメモリでDOSもKNOPPIXも立ち上げるだけなので
簡単だろうと思っていたのですが

他のサイトにも色々説明されていましたが
どこを見ても私にはあまり理解できませんでした。


また、KNOPPIXのisoファイルをUSBメモリから直接起動できるらしいのですが
「KNOPPIX_V7.0.3CD-2012-06-25-JA-LCR.iso」で試したら起動直後に
「Could not mount disk to /mnt-system. Starting debugging Shell.」
エラーで起動できません。うっ前途多難?

もちろん、isoファイルをCD-ROMに焼けば正常に起動できます。
起動後にUSBメモリにKNOPPIXをインストールすればUSBメモリからも普通に起動できます。

そこで考えたのが「KNOPPIXをインストールしたUSBメモリにDOS起動を追加できないか」
試行錯誤。

取りあえずは「Let's noteのHDD換装時に使用するフロッピーの作成」することを目的に
手順を整理しました。USBメモリでブートできるパソコンならBIOSの書き換えにも使えます。

■DOSの起動方式の選定
USBメモリでDOSを起動する方法も沢山あります。

色々調べた結果、フロッピードライブ装置が無いパソコンでも使用できる
Virtual Floppy Driveを使用することにしました。
Windows XPにVirtual Floppy Driveをインストールすれば
普通のフロッピーと同じように「MS-DOSの起動ディスクを作成する」でDOS起動可能な
イメージファイルが作成できます。
また、用途によってイメージファイルを準備・設定すれば起動時に
イメージを選択できます。
ただし、本当のフロッピーならDOS起動後にフロッピーディスクの交換ができますが、
Virtual Floppy DriveでDOS起動後はイメージファイル交換できません。
(Windows XP上でVirtual Floppy Driveを使用した場合はイメージファイル交換は可能です)

他のフロッピーのイメージファイル(例えばWindows meの起動ディスク)から
イメージファイルを作成すればWindows meの起動ディスクも作成できます。

■準備
作業するに当たり、フロッピードライブは必要ありませんが、
フロッピー初期化時「MS-DOSの起動ディスクを作成する」が必要なため
OSはWindows XP限定です。

必要なソフトは以下の通りです。
Virtual Floppy Drive

フロッピードライブがあれば実際のドライブとVirtual Floppy Driveの仮想ドライブ間で
diskcopyコマンドを使用したディスクの複写も可能です。

>diskcopy /?
フロッピー ディスクの内容を別のディスクにコピーします。

DISKCOPY [ドライブ1: [ドライブ2:]] [/V]

/V 正しくコピーされたかどうか検査します。

同じ種類のフロッピー ディスクを使わなければなりません。
ドライブ1 とドライブ2 には同じドライブを指定することもできます。


起動前
フロッピードライブはありません。



ダウンロードした「vfd21-080206.zip」を解凍し「vfd21-080206\vfdwin.exe」起動する。

初回起動時はドライバのインストールを行う。
解凍した「vfd.sys」をドライバに指定し、[インストール]



状態が「VFDドライバは停止中です。」の状態になる。
次回以降、起動時はこの状態になる。



[開始]をクリック



状態が「VFDドライバ2.1が動作中です。」の状態になる。



[ドライブ0]タブを開き[変更]ボタンをクリックしドライブ文字をAに設定する。



FPDドライブAが現れる。



ただし、この状態ではフロッピが入っていない状態なので
エクスプローラでAドライブを選択すると、エラーが表示される。



[開く/新規]ボタンでイメージファイルを割り当てる。
新規:新しいフロッピーを使うイメージ
開く:過去に使用したフロッピーを使用するイメージ
最初は[新規]になる。


イメージファイルの保存先を指定する。ファイル拡張子は「vfd」で。




[作成]をクリック




フロッピーがアクセス可能に


「MS-DOSの起動ディスクを作成する」でフォーマット


フォーマット後の仮想フロッピーディスクの内容


いったん、イメージを[保存]する


「既存ファイルを上書きする。」で保存
エクスプローラ等でAドライブを参照しているとエラーになることがあります。


[閉じる]で終了


■Let's noteのリカバリツールのコピー

続けてLet's note隠し領域にあるツールをコピーします。
c:\util\oxp\tools\showRHDD.jsを実行し再起動。

先ほど保存したイメージファイルを開く


仮想フロッピードライブが使用できるようになりました。



仮想フロッピードライブにLet's noteのユーティりティをコピーします。

コピー元:[リカバリ領域]:\tools\
 makebeer.exe
 recvmode.exe

コピー後、[保存]、[閉じる]をクリック


これで、Let's noteのユーティりティをコピーした起動可能なフローピーイメージ「lets_uty.vfd」が作成できました。



次回は実際にUSBメモリでDOSとKNOPPIXのマルチブートの説明です。
アクセスカウンタ
オンラインカウンター
現在の閲覧者数:
プロフィール

たっきー

Author:たっきー
たっきーのブログへようこそ!
パソコン・スマホを
より使いやすくするため奮闘中!
改造したり、root取ったり
色々やってます。

カテゴリ
最新記事
最新コメント
月別アーカイブ
最新トラックバック
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR