- 【追記】バージョン 0.9.1
-
0.9.1 では、ntfs-3g でNTFS書き込みやSerialATAサポートなどが追加されました。
内容は、バージョン0.4.1のものです。新バージョン(ntfsmountとかSerial ATAサポートとか)についてはまたいずれ。
ブート手段がFDドライブしかない時に。逆境になればなるほど燃えてしまう私のような変人Grace under pressureな人(笑)向けレポート。FDブートでネットワーク対応。
私的には手持ちのUSB-LANアダプタ(USB-ET/TX-S )対応なのでLANアダプタが故障した時とかに使えるのがnice。
■ 概要
紹介記事
- できること
-
- maybe...USB-FDドライブでブート可能。
- ramdiskで動くのでUSBデバイス差し替えOK
- USBストレージデバイスの利用
- NTFSからUSBメモリへ日本語名ファイルの救出(機種依存文字もOK)
- ネットワーク利用可能
- 一部のPCMCIA LANアダプタやUSB−LANアダプタにも対応
- wget/ftpput/ftpgetコマンドでWEB/FTPサーバからのダウンロード(アップロード)
- smbclientコマンドでWindowsマシンの共有ドライブとファイルのやりとり
- NFS/TELNET/TFTPクライアント。netcat
gpart
でパーティションテーブルの調査fdisk
でパーティションの作成削除ms-sys
コマンド
ntfscloneやntfsresizeは入ってるけどNTFSへのファイル書き込みはだめみたいやねぇ。
- 起動の流れ
-
- DOS起動ディスクでブートしてloadlin.exeを実行
- 2枚目のFDからkernel読み込み
- 3枚目のFDからramdiskイメージ読み込み
■ 起動ディスク作成
配布されてるFDイメージそのままでは、kernel panicで起動できなかったので小細工してみた。
ダウンロードするもの
- BG-Rescue Linux
- rescuefd.zip(FreeDOS起動ディスクイメージ)とrescue-0.4.1.zipをダウンロード
FDイメージ書き込み用ツールは下記が便利かなと
- 1枚目(DOS起動ディスク)
-
- rescuefd.zipを展開し、rescuefd.imgをFDへイメージとして書き込み
- FD内からstart.batを削除
- rescue-0.4.1.zipを展開し、下記ファイルをFDへコピー
- choice.exe
- welcome.txt
- start.bat
FDへコピーしたstart.batを編集。パスを追記。(ごまかしだったりw)
< 省略 > :1 loadlin B:\vmlinuz initrd=A:\initrd.img root=/dev/ram0 GOTO Ende < 省略 >
同様に :2 から :6 にも追記。
FDの内容は以下のとおり。
choice.exe command.com kernel.sys loadlin.exe start.bat welcome.txt
- 2枚目
-
- rescue-0.4.1.zip内のvmlinuzをそのまま(ファイルのまま)コピー
- 3枚目
-
現時点ではrescue-0.4.1.zipにinitrd.imgが含まれていないようなので、rescue-0.4.1.img(2.88MBイメージ)をダウンロード。Virtual Floppy Driveでマウントなどして(またはSuper ウルトラISOなどで展開)、initrd.imgを取り出すとかする。
- rescue-0.4.1.zip内のinitrd.imgをそのまま(ファイルのまま)コピー
■ ブート
- FreeDOSが起動したら(date/timeはそのままEnterで)startコマンド入力
※start.batをautoexec.batにリネームしておくと自動実行となる。
- 解像度を数字で入力
... と出たら2枚目のFDへ入れ替えてEnterInsert diskette in drive
- 同じく次は、3枚目のFDへ入れ替えてEnter
- keymapの選択画面は jp で
- PCMCIA(LANアダプタ)を利用するなら、そのままEnter
- USB(2.0)を利用するなら、そのままEnter
メッセージが出て画面が止まる場合がありますが、そのままEnterする。
■ 使用方法
- シャットダウンは
poweroff
で - キーボード配列を再選択したい場合は
/etc/init.d/S10keymap
で
起動後はUSB-FDを抜いてしまってもおk。但し、マウント後にUSBの差し替えやFDの入替する前には必ずアンマウントすること。
- マウント
# mkdir /mnt/floppy # mount /dev/sda /mnt/floppy
※USBメモリなどは、sdb,sdc..、パーティションを切っている場合は、sdb1,sdc1...
- アンマウント - マウントポイントを指定
# umount /mnt/floppy
- NTFSからUSBメモリへファイルをコピー
-
パーティションの確認がちと面倒。
cat /proc/partitons
,fdisk -l
などでは通常のデバイス名が出ないのでdmesg | grep hd
,dmesg | grep sd
とかしてから、fdisk /dev/hda(hdb..)
とかfdisk /dev/sdb
(sdc..) とかで確認するとかかな。- NTFSパーティションのマウント
# mkdir /mnt/win # mount -t ntfs -o ro,nls=utf8 /dev/hda1 /mnt/win
- USBメモリ(FATフォーマット)などのマウント
# mkdir /mnt/usbkey # mount -t vfat -o utf8,shortname=winnt /dev/sdb /mnt/usbkey
- USBメモリなどへ My Documents をコピー
# cd /mnt/win/Documents\ and\ Settings/username # cp -r My\ Documents /mnt/usbkey
日本語ファイル名も問題なしだった。
- ネットワークの設定
-
- DHCPで自動設定
# dhclient
- LANアダプタが複数ある場合はデバイス名指定
# dhclient eth1
- 状態確認
# ifconfig -a
- 手動設定
-
- IPアドレス設定
- ifconfig - (IP)ネットワーク環境の確認/設定を行う
※ネットマスクが
255.255.255.0
の場合# ifconfig eth0 inet 192.168.0.100
- ゲートウェイ設定(※確認は
# route
)
# route add default gw 192.168.0.1
- DNSサーバ設定(※確認は
# cat /etc/resolv.conf
)
# cat <
>> /etc/resolv.conf > end
- ダウンロード
-
httpサーバからファイルをダウンロード
# wget URL
- smbclient - Windowsマシンの共有へ接続
-
Windowsマシンへ接続するにはhostsファイルの修正が必要?
# cat <
/etc/hosts > 127.0.0.1 localhost > 192.168.0.100 rescue > end - ローカルのディレクトリをリモートへコピー
# tar cf - ディレクトリ名 | smbclient //hostname/sharename "password" -U username -N -Tx -
日本語ファイル名はすべて文字化け。スペース含む場合もだめかな。
- 対象ホストの共有一覧表示
# smbclient -L hostname -U username
- ホストへ接続
# smbclient //hostname/sharename -U username
prompt
- 問い合わせを表示しないrecurse
- ディレクトリを再帰的に取得!コマンド名
- ローカル上でコマンド実行lcd
- ローカルのディレクトリ移動help
- コマンド一覧表示
- ローカルのディレクトリをリモートへコピー
- nfsサーバをマウント
-
# mkdir /mnt/nfs # mount -t nfs -o nolock 192.168.0.2:/server/share /mnt/nfs
※日本語ファイル名についてはサーバへのコピーはできましたが文字化け。
■ 使い道は?
USE IT AT YOUR OWN RISKですけどねー。
CDブート、USBブート、PXEネットワークブートができない、ブート手段がFDドライブしかないPC向けの話。KnoppixなどのLinux LiveCDはUSB/ネットワークでもブート可能なのでわざわざこれを選択する意味はないかと。
- 起動しないWindowsマシンのファイル救出
-
USBデバイスやネットワーク上へファイルをコピー。
- ファイルのコピー手段がない時
-
CDドライブやLANアダプタがない(または故障)FAT32なWindows向けの話。たまにあるのがLANアダプタやUSB機器など新しいデバイスを使おと思ったら、ドライバのコピー手段がない、ってな時。USB-FDからと思ったら、そのUSB-FDもドライバが必要だったり。
- ハードディスクからLiveCDなどをブート
-
ext3、またはFAT32パーティションが必要。BG-RescueでハードディスクにUSBデバイスなどからファイルをコピー、あるいはインターネットからダウンロード。GRUB起動ディスクでKnoppixなどをブート。
- Linuxのインストール
-
インストール用kernelとinitrdをハードディスクにコピー、またはインターネットからダウンロード。GRUB起動ディスクでブートしてLinuxのインストール。
- Windows(XP/2000)のインストール
-
FAT32パーティション作成してフォーマット。USBデバイスやネットワークからi386フォルダをコピー。DOS起動ディスクでブートして、winnt.exeを実行。
こんなとこかなぁ。