▲ PC LABO Menu


■ LAN接続できるDOS起動ディスクを作る ■


2002/07/28(日)--- LAN接続できるDOS起動ディスクを作る

LANが使えるDOS起動ディスク、作成できました。
以下、その方法をメモ代わりに残します。



FDD有り・CD-ROMドライブ無しのノートPCに、新規にOSを入れるにはどうしましょう?
例えば今回は、Win98を入れたいんですが。

大体、以下のような方法があると思います。

  1. あきらめる。
  2. FD版を入れる。
  3. CD-ROMドライブを買ってくる。
  4. 別のPCにHDDだけ取りつけて、セットアップ関連のファイルをコピーする。
  5. LAN接続ができるDOS起動ディスクで立ち上げて、別PCのリソースを利用する。

1は論外ですね。

2は…
今時FD版のOSなんてあるのだろうか。あったとしても、FD入れ替えはシンドそうです。

3が、当たり前といえば当たり前でしょうか。
もっとも、起動ディスクで立ち上げたその後、そのCD-ROMドライブが認識できるかどうかでハマる事例もあるらしいので、購入する際は、そのあたりをあらかじめ調べておいた方がいいかもしれませんね。

4も結構普通でしょうか。(もっとも、4、5は、他にPCが必要になりますが。)
ノートPCの場合、2.5→3.5HDDコネクタ変換ケーブルを使って、デスクトップPCで必要なファイルを当のHDDにコピーして…というのをよく見かける気がします。

で、自分が今回やったのは5です。
これなら、ノート、デスクトップPCのケースを開けなくて済みますし、利用したLANアダプタは、OSインストール後もそのまま使えますし。
これが一番メリットが大きいかなと。


となると、ネットワーク接続ができるDOS起動ディスクを作らないといけないわけですが…
そのあたりに関しては、先人の方々が詳しい解説ページを書いてくださってますので、そちらを紹介させてください。
(リンクすることで、何か問題等ありましたら御連絡ください。)


さて今回、ThinkPad760EL + PLANEX FNW-3600-T の環境用に、LAN接続ができるDOS起動ディスクを作成するわけですが。
DOSでLAN接続するには、MSが公開・配布してるソフト…
…あたりを使うのが良いらしいと知りました。
今回のような場合、起動ディスクに入れるファイル数が少なく、メモリも食わない(何せDOSですからこのへん切実)、手間隙も少ないらしい、Workgroup Connectionを利用することが一般的に多いようです。

ただ、Workgroup Connectionは、NetBEUIしか利用できないんですね。しかし、ウチのLAN環境にはNetBEUIは入れてませんし…
今回の為だけにNetBEUIを入れるのも、なんだか負けた気がします(<何に? ( ̄□ ̄;)!! )
ですので、自分は、TCP/IPが使える Network Client for DOS を使ってみました。


実際の起動ディスクの作り方ですが…
上記のサイトで詳しく解説されてるので、説明は省かせていただこうかと… <ヲイ
ていうか、ほとんど、こちらの方のページに書かれた内容を、見様見真似でやっただけだったり…(爆)

とりあえず、自分がハマったところだけ、以下にメモしておきます。


Network Client for DOS のインストールでハマったところは、LANアダプタの指定です。LANアダプタの付属FDを突っ込んだだけでは、選択リストに出す事ができませんでした。そこで、ひとまず「NE2000 Comatible」を選択してインストールだけは済ませてしまい、後から、 protocol.ini , system.ini を編集して対応してみました。
…ただ、IOADDRESS=0x300と書くべきところを、IOBASE=0x300 と書きつづけていて、ずーっとハマってしまいましたが(爆) (そのままだとIOBASEと書かれてたんですが、ここはIOADDRESSと書かなきゃいけないみたい。)


ダイレクトカードイネーブラ(lanen.exe)の入手ですが、PLANEXでドライバを落としたら中に入ってましたので、それを使いました。
ドライバは、NDIS2フォルダ以下にある、LE100.DOSというファイルです。それを起動ディスクにコピーしました。


Network Client for DOS 関連のファイルをFD1枚の中に入れてしまうと、他のDOS関連ツールを入れる容量が残ってません。(日本語表示すらできない…)
そこで、起動時に読みこまずに済むファイルは、lzh圧縮してFDに収め、起動時にRAMDISKを作ってその中に解凍して使えるようにしました。
RAMDISKですが、こちらのページで、xmsdskというソフトが紹介されてましたので、私もそれを使わせていただきました。このソフトは、MS提供のRAMDRIVE.SYSと違い、ドライブ名を指定できるのがありがたいです。例えば、OSをインストールするためにHDDのパーティションを切り直したら、次に再起動した際、RAMDRIVE.SYSではドライブ名が変わってしまいます。そうなると、一々各種ファイルを自分で書き換えないといけないので面倒です。xmsdskなら、そういう面倒を避けられるわけです。(RAMDRIVE.SYSでも、ドライブ名を明示的に指定できれば問題無いのですが…私が知らないだけなのかな…?)
xmsdsk.exeの入手ですが、googleで、海外のサイトを「xmsdsk.exe」で検索したら見つかりました。


…大体ハマったのはそのくらいでした。

FDに収めたファイルの構成や、config.sys , autoexec.bat , protocol.ini , system.ini の内容について、以下に示します。





ファイル構成:

a:
|  AUTOEXEC.BAT
|  COMMAND.COM
|  CONFIG.SYS
|  EMM386.EXE
|  HIMEM.SYS
|  IFSHLP.SYS
|  IO.SYS
|  LHA.EXE
|  MSDOS.SYS
|  NET.LZH       <--- Network Client for DOS 関係のファイルを圧縮
|  SE3.EXE       <--- ファイルサイズの小さいエディタ。vectorで入手。エディタはあったほうが楽
|  TOOLS.LZH     <--- DOSツール関係のファイルを圧縮
|  XMSDSK.EXE    <--- RAMDISKを作成するソフト
+- JKEYB
|     JKEYB.SYS
|     JKEYBRD.SYS
+- JP
|     ANK16.FNT
|     ANK19.FNT
|     ANSI.SYS
|     BILING.SYS
|     JDISP.SYS
|     JFONT.SYS
|     KANJI16.FNT
+- NIC
      LANEN.EXE     <--- PLANEXのサイトからドライバをDLすれば中に入ってる
      LE100.DOS     <--- LANアダプタ添付FDのNDIS2フォルダ以下からコピー
      LMHOSTS       <--- 念の為入れました。いらないかも…?
      MIEKI.PWL     <--- これ、必要なのかな…?
      PROTOCOL.INI
      SYSTEM.INI

NET.LZH
NEMM.DOS
NET.EXE
NET.MSG
NETBIND.COM
NMTSR.EXE
PROTMAN.DOS
PROTMAN.EXE
SHARES.PWL
TCPDRV.DOS
TCPTSR.EXE
TCPUTILS.INI
TINYRFC.EXE
WFWSYS.CFG

TOOLS.LZH
CHEV.COM
COUNTRY.SYS
DELTREE.EXE
FDISK.EXE
FORMAT.COM
JP.BAT
NLSFUNC.EXE
SE3.EXE
US.BAT
XCOPY32.EXE
XCOPY32.MOD




config.sys

DEVICE=A:\HIMEM.SYS
DEVICE=A:\EMM386.EXE NOEMS X=D000-D7FF
DOS=HIGH,UMB
FILES=20
DEVICEHIGH=A:\NIC\LANEN.EXE
DEVICEHIGH=A:\JKEYB\JKEYB.SYS /106 A:\JKEYB\JKEYBRD.SYS
DEVICE=A:\IFSHLP.SYS
LASTDRIVE=Z
DEVICEHIGH=A:\JP\BILING.SYS
DEVICEHIGH=A:\JP\JFONT.SYS /P=A:\JP\ /MSG=OFF
DEVICEHIGH=A:\JP\JDISP.SYS /HS=LC
DEVICEHIGH=A:\JP\ANSI.SYS




autoexec.bat

set RAMDRIVE=X:
xmsdsk 2000 %RAMDRIVE% /y
copy command.com %RAMDRIVE%\
set COMSPEC=%RAMDRIVE%\command.com
set path=%RAMDRIVE%\;a:\;
copy a:\lha.exe x:\
copy a:\*.lzh x:\
lha x x:\net.lzh x:\net\
lha x x:\tools.lzh x:\
del x:\*.lzh
cd a:\nic
copy *.ini x:\net
copy *.dos x:\net
copy *.pwl x:\net
copy lmhosts x:\net
set path=x:\net;%path%;
x:\nlsfunc.exe x:\country.sys
net initialize
netbind.com
rem umb.com
tcptsr.exe
tinyrfc.exe
nmtsr.exe
rem emsbfr.exe
net start
a:
cd \




protocol.ini

[network.setup]
version=0x3110
netcard=le100_nif,1,LE100_NIF,1        <--- 書き換えた行
transport=tcpip,TCPIP
lana0=le100_nif,1,tcpip                <--- 書き換えた行

[TCPIP]
NBSessions=6
SubNetMask0=255 255 255 0              <--- サブネットマスク
IPAddress0=192 168 1 27                <--- IP
DisableDHCP=1                          <--- DHCPをOFFにしてる
DriverName=TCPIP$
BINDINGS=LE100_NIF                     <--- 書き換えた行
LANABASE=0

[LE100_NIF]                            <--- 書き換えた行
IOADDRESS=0x300                        <--- 書き換えた行。ここでハマってた…
INTERRUPT=5                            <--- 書き換えた行。LANアダプタのIRQ。
DriverName=LE100$                      <--- 書き換えた行。

[protman]
DriverName=PROTMAN$
PRIORITY=MS$NDISHLP




system.ini

[network]
sizworkbuf=1498
filesharing=no
printsharing=no
autologon=yes
computername=KING      <--- コンピュータ名
lanroot=x:\NET
username=MIEKI         <--- ユーザ名
workgroup=MHOUSE       <--- ワークグループ名
reconnect=yes
dospophotkey=N
lmlogon=0
logondomain=WORKGROUP
preferredredir=full
autostart=full
maxconnections=8

[network drivers]
netcard=le100.dos               <--- 書き換えた行
transport=tcpdrv.dos,nemm.dos
devdir=x:\NET
LoadRMDrivers=yes

[386enh]
TimerCriticalSection=5000
UniqueDosPSP=TRUE
PSPIncrement=2

[Password Lists]
*Shares=x:\NET\Shares.PWL
MIEKI=x:\NET\MIEKI.PWL         <--- 要らないのかな…?




以上、何か参考になれば幸いです。

▲ PC LABO Menu