【2010.2.9】 バージョン 4.3.1 JP での方法について追記
とりあえずWindows上での作成方法をめも。puppy-2.16.1-JP.isoでの確認。128MB以上のUSBメモリでおk。
※ あっと、Windows上での作成は楽ではありますが、CDブートして Puppy Linux 上で作成する方が色々融通がきくので常用するには便利です。このページのやり方はあくまで「とりあえず」ということで。
参考ページ
- Puppy Linux 日本語版
- Puppy Linux 日本語版 - 私的 Linux LiveCDめも
- Puppy上での作成方法と注意点など
USBメモリ版作成
- ダウンロード
- ISOイメージの展開
-
Windows上で直接isoイメージを展開(抽出)するには 7-Zip や Universal Extractor などが便利です(※7-Zipで展開時の[BOOT]ディレクトリはブートセクタなので基本的に不要です)。
仮想CDソフトや WinRAR などでは、ファイル名がすべて大文字の8.3形式となってしまうことがあるため上記をおすすめします。
※CDに焼いたり、仮想ドライブ、WinRAR などでは、ファイル名がすべて大文字8.3形式になっちゃうので注意。
pup_412JP.sfs
がPUP_412J.SFS
になってしまいます。 - ファイルをコピー
-
【追記】注意:USBメモリブートに対応していてもFAT32フォーマットがだめな場合もあるので、その際はFAT(16)フォーマット(※パーティションは2GB以下)で。
- isoファイルを展開
- USBメモリへすべてコピー
- ※boot.catとisolinux.binは不要ですけど
isolinux.cfg
をsyslinux.cfg
にリネーム- syslinux.cfgをテキストエディタ(メモ帳はだめ。ワードパッドはおk)で開き、
pmedia=cd
をpmedia=usbflash
に変更
- SYSLINUXのインストール
-
- Index of /pub/linux/utils/boot/syslinux(Ringミラー)から
syslinux-x.xx.zip
をダウンロード - ファイルを解凍
win32\syslinux.exe
をUSBメモリのルートへコピー- コマンドプロンプト(※ Vista /7 では「管理者として実行」すること)を起動
- USBメモリに対して syslinux.exe コマンド実行
※ ドライブレターを間違うとWindowsが起動しなくなる場合がありますのでご注意!
<USBメモリのドライブレター>: syslinux.exe -ma <USBメモリのドライブレター>:
USBメモリのドライブレターが仮にX:だとするとこんなかんじ。
C:\Documents and Settings\yassy>x: X:\>syslinux.exe -ma x:
何もメッセージが出なければおk
- Index of /pub/linux/utils/boot/syslinux(Ringミラー)から
【追記】バージョン 4.3.1(日本語版) では...
ブートローダーが SYSLINUX から GRUB for DOS に変更されてますね。というわけで、あくまでpalm84流の邪道的手段(何)ですが...
- 変更点:
- SYSLINUX から GRUB for DOS をチェインロードさせませう
- isolinux.cfg はなしなので、syslinux.cfg をちょいちょいと作成
【追記】※ chain.c32 なしでもできますた。
- ISOイメージ展開ファイルをすべてコピー
- SYSLINUX をインストール(※ 上記参照)
SYSLINUX に含まれるcom32\modules\chain.c32
をコピーsyslinux.cfg
を作成 - 内容は下記の通り
syslinux.cfg
DEFAULT grub4dos LABEL grub4dos BOOT grldr
- chain.c32 を使う場合は...
-
- syslinux.cfg
DEFAULT chain.c32 APPEND file=grldr
- USBメモリの内容
M:\>tree /f | sort AUTORUN.INF boot.catalogchain.c32grldr initrd.gz ldlinux.sys menu.lst pup-431JP.sfs PUPPYJP.ICO README.HTM READMEJA.HTM splash.xpm syslinux.cfg vmlinuz zp431305.sfs
menu.lst 内の pmedia=cd
を pmedia=usbflash
に変更しておくともっと確実かな。
いんやぁー、GRUB for DOS を直接USBメモリへインストールするのが王道(何)という気がしますが、SYSLINUXならHD扱い・FD扱いどちらでも使えるので、ということで(※ 512 MB以下だと自動的にFD扱いになるBIOSもあったりします)。
- HD上のmenu.lstが表示されちゃう場合は...
-
あるみたいですね。 grub.exe で menu.lst を直接指定してみますかな?
- USBメモリへSYSLINUXインストール
- Browse GRUB4DOS and WINGRUB Files on SourceForge.net
- grub4dos-0.4.4.zip をダウンロード
- grub.exe をUSBメモリへコピー
syslinux.cfg
作成
- syslinux.cfg
DEFAULT grub.exe APPEND --config-file="configfile /menu.lst"
- menu.lst の修正
-
必須じゃないけど、USBメモリがBIOS上で第1HDとしてブートしてる場合は内蔵HDが第2HDとなってメニューの下記エントリが使えないので修正しておいた方がいいかもです。
title Bootup from HDD\nBootup from the master boot record of the hard disk drive chainloader (hd0)+1 title Windows VISTA/2008/7\nStart Windows if installed on HDD fallback 6 find --set-root --ignore-floppies /bootmgr chainloader /bootmgr title Windows NT/2K/XP\nStart Windows if installed on HDD fallback 7 find --set-root --ignore-floppies /ntldr chainloader /ntldr title Windows 9x/Me\nStart Windows if installed on HDD fallback 4 find --set-root /io.sys chainloader /io.sys
修正分。
title Bootup from HDD\nBootup from the master boot record of the hard disk drive map (hd0) (hd1) map (hd1) (hd0) map --hook chainloader (hd0)+1 title Windows VISTA/2008/7\nStart Windows if installed on HDD fallback 6 find --set-root --ignore-floppies --ignore-cd /bootmgr map () (hd0) map (hd0) () map --rehook find --set-root --ignore-floppies --ignore-cd /bootmgr chainloader /bootmgr title Windows NT/2K/XP\nStart Windows if installed on HDD fallback 7 find --set-root --ignore-floppies --ignore-cd /ntldr map () (hd0) map (hd0) () map --rehook find --set-root --ignore-floppies --ignore-cd /ntldr chainloader /ntldr title Windows 9x/Me\nStart Windows if installed on HDD fallback 4 find --set-root --ignore-floppies --ignore-cd /io.sys map () (hd0) map (hd0) () map --rehook find --set-root --ignore-floppies --ignore-cd /io.sys chainloader /io.sys
参考リンク
- ブート時のパラメータについて
-
うまく起動しない場合などLABEL(puppyのみ)と追加パラメータを指定する。
【追記】GRUB for DOS の場合は、
kernel
行に追記します。コマンドラインでは e キーを押して編集モードにて。acpi=off
- 起動画面で止まってしまう時など、電源管理機能を無効にpfix=ram
- 保存された個人設定ファイル(pup_save*.2fs
)を無視。つまり初期設定での起動pfix=nox
- コンソールモード。X(GUI)を起動しない(startxでX起動)psubdir=puppy
- 保存された個人設定ファイル(pup_save*.2fs
)のディレクトリ名を指定
- 例:(※ SYSLINUXの場合)
boot: puppy acpi=off
boot: puppy pfix=ram
boot: puppy acpi=off pfix=nox,ram
保存した設定などを選択して起動できるようになったみたいです?
4.1.1ではファイルが複数あると選択画面が出ます。ディレクトリを分けて psubdir
を指定するってのもいいかも。
USBフラッシュドライブからブートする場合、「pmedia=usbflash」を指定するとパピーはCDドライブと他のドライブ(特にCDの検出は遅い)のプロービングに無駄な時間を使わなくても済みます。或は、「質素な」ide hdのインストールをする場合、「psubdir=puppy300 pmedia=idehd」を使えば、パピーはIDE-HDだけを検出し、「puppy300」フォルダの中だけを探します。この方法は特にマルチ「質素なインストール」に対して有効で、各「質素なインストール」を区別します。
下記ページはUSB(フラッシュメモリ)ブートの仕組みについて、大変参考になりました。
CDブートでUSBメモリを使う
う?んとですね、Puppyはフルインストールした場合を除き、ルートイメージをメモリにロードします。つまりオンメモリで動くのでCDであれUSBメモリであれ、“初回起動時は”外してしまえます(※ バージョン 4.3.1 ではだめみたいです)。
Puppy上で保存したファイルや設定は、差分ファイル(pup_save*.2fs
)として追加で保存します。次回起動時には自動で検索されてマウントされます。この際差分ファイルが保存されたデバイスはアンマウントできません。
別PCで使う場合はUSBメモリに差分ファイルを保存して使うのが一般的だと思われます(マルチセッションCD-RWにも保存できたりしますが)。
USBブート非対応PC向けにCDブートでUSBメモリを使う方法をよく訊かれるのですが、通常のPuppy CDと差分ファイルを保存したUSBメモリを併用するのとあんまり変わらなかったりするような気がしないでもありません・・・てなかんじ。
とか言いつつ、書いてみるのでした。あ?しから?
- USBブート非対応PC用起動ディスク(カーネル)を使う
-
これが使えたら、めちゃ楽なんですが、古いPCでは使えないことがあるんですよね・・・
- めちゃ手抜き!
-
- 通常のPuppy CD でブート
- カーネルとinitrdのロード後、「Ok, booting the kernel」のメッセージが出たら、CDを抜いてしまう...
Puppyはオンメモリで起動するから、あんま意味ないかも。
- ブートプロンプトで追加パラメータを指定
-
- 通常のPuppy CD でブート
- ブートプロンプトで
puppy pmedia=usbflash
とか入力
これも、あんま意味ないかも。
- ルートイメージを削除したCDを再作成
-
50 MBサイズとか名刺型CDとか使う場合。これは意味あるかも?(でも名刺型CDはブック型PCで使えなかったりすることもあるけど)
- バッチファイル
makeiso.bat
作成
@echo off echo isoイメージ作成開始します... pause mkisofs -v -l -r -J -o ../puppy.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table . echo. if ERRORLEVEL 1 (echo ...なんかエラー出たみたいです orz...) else ( echo *** 正常に終了しますた! ***) echo. pause
- 適当なディレクトリに下記をコピー(※ファイル名はすべて小文字で)
cygwin1.dll
とmkisofs.exe
は下記ページの【CDRtoolsバイナリ】をダウンロード
boot.msg cygwin1.dll initrd.gz isolinux.bin isolinux.cfg makeiso.bat mkisofs.exe vmlinuz
makeiso.batを実行すると、一つ上のディレクトリにpuppy.isoが作成されるのでこれをCDに焼きませう...
- バッチファイル
- 日本語名ファイルについて
-
「pup_save」ファイルが保存され、Puppy上で自動マウントされてるUSBメモリなどの話...
Puppy上で保存した日本語名ファイルは、Windows上では文字化けするかも?、逆にWindows上で保存した日本語名ファイルはPuppy上では文字化けするかも。
「pup_save」ファイルが保存されてるUSBメモリなどにファイルを保存する場合は注意!