How to Create a Ghost 8.0 Network Boot CD
Symantec Ghost provides a Boot Wizard to assist in the creation of a Network boot disk. This allows you to initiate a Ghost session with a remote Ghost server without using the Ghost Console. This is desirable when the Ghost console client is not already installed on the machine you wish to re-image, or if the machine has failed and needs to be rebuilt from scratch.
Unfortunately, in Ghost 8.0 the size of the Ghost executable file has almost doubled in size from version 7.5, meaning that you can longer create a single boot floppy that includes both the software necessary to initialize the network card and the executable file necessary to load and run Ghost.
Instead the Symantec Ghost Boot Wizard creates (2) floppies, one that includes the network drivers that load on boot, and a second floppy that includes the Ghost executable. Quite frankly it is a pain to have to use two floppies each time you want to Ghost a machine so I was looking for a better alternative. I had gotten used to using a Ghost Boot CD with previous versions of Ghost and not having this ability in Ghost 8.0 was a major annoyance.
Creating a boot CD when using Ghost 8.0 is a problem because while many CD burning applications can easily create a bootable CD from a floppy disk image, if everything doesn’t fit on a single floppy it is much more complex. At this time Symantec does not support creating Ghost Boot CD’s so you are on your own figuring out how to do this.
To work around these issues there are several solutions.
The easiest solution if you would like to create a bootable CD for Ghost that supports a single network card is to begin by adding a CD-ROM device driver to your boot floppy along with the old DOS MSCDEX.EXE program. MSCDEX was used in past versions of DOS to allow a CD to be made accessible to the operating system.
By adding a CD-ROM device driver and MSCDEX to the boot floppy, it is possible to create a single boot CD that can both load the necessary networking software and the Ghost executable. More importantly, with a few modifications to this process you can create a single boot CD that supports multiple network cards!!!
Basic Method to support a single network card
Run the Ghost 8.0 Boot Wizard and create a Network Boot disk.
Select an NDIS2 driver (not a Packet Driver) for the NIC card you have and select Next
Select Use MS-DOS (recommended as PC-DOS doesn’t work well on some machines). If you haven’t previously installed the MS-DOS files you will need an MS-DOS boot floppy from an old Windows 98 installation and then you’ll need to click the “Get MS-DOS” button on the screen above. Once you have done this the first time, you will not have to do it again, Ghost will save the necessary files for you.
Select “Symantec Ghost” as the client to include, verify the location where the GHOST.EXE file exists and click Next
Most users should leave unchecked the Override BIOS settings and click Next
Select DHCP if you want this boot CD to be able to obtain an IP address dynamically and click Next
Verify the location where your floppy disk drive is located from this screen:
Click Next to begin the process of creating your floppy boot disks. Note Ghost will issue a warning that everything won’t fit on a single floppy and will tell you that it is going to create a two disk set.
Accept this warning by clicking OK.
Ghost will ask you to format a couple of floppies and then it will copy the necessary files to these floppies. Located on floppy 1 will be the network files appropriate for your network card and on the 2nd floppy will be the ghost executable file (GHOST.EXE). Floppy disk 1 will look something like this:
Preparing the Ghost Boot Floppies to Create a CD
You will need to manually add a couple of files to the 1st Ghost Boot Wizard generated Floppy before you can create a bootable CD.
First, use Notepad or a similar editor to create a file called “mouse.ini”. Place mouse.ini at the root of the floppy. The contents of mouse.ini should be:
MouseType = PS2
If you don’t create the mouse.ini file, some versions of DOS will try and write to the filesystem when mouse.com is loading during the boot-up process. This will generate an error with an abort, retry, ignore prompt because the boot device (a CD) is read-only. As long as you have a mouse.ini file present you should not receive such an error.
Next you need to add a CD-ROM device driver (for example if your CD-ROM drive is an IDE drive you will need a CD-ROM device driver like OAKCDROM.SYS. You also will need to copy the MSCDEX.EXE program to the first Ghost generated floppy. Both are available from old Windows 98 installations.
The Ghost Boot Wizard can also generate these files for you if you can’t easily find them.
To have Ghost generate the files, run the Ghost Boot Wizard again and select the CD/DVD Startup Disk option.
Follow the wizard to create a second set of floppy disks. (Note: Keep your original two disks that were created above, don’t write over them as you will need them later.) As before, Ghost will want to create a two floppy disk set however the OAKCDROM.SYS and MSCDEX.EXE files that you need will be created on the first disk so you can cancel the Wizard when asked to insert the second floppy.
You now should have (3) floppies. Two that you created by running the Network Boot Wizard, and a third that you created using the CD/DVD Boot Wizard. On the third floppy are several CD-ROM device driver files including the OAKCDROM.SYS driver and the MSCDEX.EXE file.
Assuming you have an IDE CD-ROM, copy the OAKCDROM.SYS file and MSCDEX.EXE to the first floppy that we previously created. If you have a SCSI CD you will need to copy the appropriate SCSI APSI drivers (as opposed to OAKCDROM.SYS) as well as the MSCDEX.EXE file to the 1st floppy.
After you do that, your 1st boot floppy should look something like this:
Next you will need to edit the CONFIG.SYS file on the first floppy so that it looks like this:
Note: DEVICE=OAKCDROM.SYS is the device driver necessary to support most IDE-CDROM drives. If you have a SCSI CD you may need to change that line as appropriate to support your CD.
The DEVICE=net lines load the network drivers for your selected NIC (in this case a 3COM 3C90X card). Your device=lines will vary depending on the NIC that you selected when you generated the initial Network Boot floppy using the Ghost Boot Wizard. By default Ghost looks for the files necessary to initialize the network card in the NET folder.
Next we need to edit the AUTOEXEC.BAT file so that it loads the Microsoft CD-ROM extensions. An example is provided below. By loading the CD-ROM extensions we will be able to load the GHOST.EXE file after the network drivers have loaded.
Sample AUTOEXEC.BAT file:
mscdex /L:D /d:mscd001
echo Loading Ghost…
Note the MSCDEX line. It will load the CD-ROM as drive letter “D” (with the /L:D parameter) and it is using the device name mscd001. Note that the device name matches the /D: parameter in the CONFIG.SYS file above where the OAKCDROM.SYS file is loaded. If these don’t match things will not work correctly.
As a result of this CONFIG.SYS and AUTOEXEC.BAT file, once we create a bootable CD we will have an “A” drive that includes everything that is on the boot floppy (all of the network drivers) and a “D” drive will include the folder with the GHOST executable file.
Finally, note the –nousb option on the line that starts Ghost in the AUTOEXEC.BAT file.
I needed to include this as we have a number of machines that have USB keyboards. Apparently Ghost 8.0 tries to load some USB support in by default so that it can talk to USB disk drives. But in so doing it “breaks” the USB keyboard on several of our Dell machines. (The keyboard becomes unresponsive when Ghost is loaded and you can’t do anything other than power-off). By using the –nousb option, our USB keyboards now work correctly. This is backwards from what you would expect. You may not need the nousb option in your environment if you don’t have USB keyboards in place.
Creating the Bootable CD
Now that we have a floppy with the necessary files to start the network and with a CONFIG.SYS file that loads the correct network drivers we can finally create a Bootable CD to put all of these things together.
To do that I will illustrate the process using Roxio’s EZ CD Creator 5.x.
Insert your 1st Ghost Network Boot Floppy Disk into your floppy drive.
Open a DOS command prompt (Start, Run, cmd) or Start, Run, Command if you are using Win98 or ME
At the command prompt be sure to mark the files IO.SYS and MSDOS.SYS as system files. If you don’t do this, EZ CD Creator will not create a Bootable CD from the floppy. It will give an error that the floppy cannot be read.
To do that, at the command prompt type:
attrib +s io.sys
attrib +s msdos.sys
Next run EZ CD-Creator. From EZ CD-Creator 5.x select File, New CD Project, Bootable CD.
Make sure that you have your 1st Ghost boot floppy in the disk drive and select the option “Generate Image from Floppy”. Then hit OK. EZ-CD Creator will generate the boot image files necessary to make the CD bootable. When complete you will see something similar to the following:
Next, you will need to add the GHOST.EXE file to this CD.
Since the GHOST.EXE file exists in a folder called GHOST on the 2nd Boot floppy that was created from the Ghost Boot Wizard, replace the first floppy disk that includes the network drivers with the 2nd floppy that the GHOST boot wizard generated.
Note: By default the Ghost Boot Wizard will just put the main Ghost.EXE file on the 2nd floppy. I elected however to manually copy a few other Ghost utilities to that folder just in case I ever needed them. In addition to GHOST.EXE I included GDISK.EXE and OMNIFS.EXE for example. You can add them or not to that 2nd floppy if you think they might be useful.
Additional Note: If you elect to add more to the GHOST folder, it is highly likely that you will run out of space on the 2nd floppy disk. This is actually not a problem. Just copy the GHOST folder from the 2nd floppy disk to a hard disk, add all that you want to it, and then when you burn the CD image you drag the GHOST folder on your hard disk to the CD project rather than using the 2nd floppy.
Once you have everything you like in the GHOST folder (minimally you must have GHOST.EXE) drag that Folder to the EZ-CD Creator Project Window. When you do that things will look like this:
At this point you have all the data you need on the CD. Press the RED RECORD button to generate your bootable CD.
Again at this point when you boot from this CD you will have an “A Drive” that will load the network drivers and then a “D Drive” where the GHOST.EXE file will run from.
Creating a MultiCard Bootable CD
I spent a fair amount of time trying to create a Ghost 8.0 multicard boot CD but I had some trouble. A multicard boot CD would allow me to use a single CD to support multiple NICs. Without that you have to create a different boot CD for each different NIC.
The Ghost 8.0 Boot Wizard can create a multicard boot floppy. However when using a CD-ROM boot disk as opposed to a floppy drive there is a problem.
The method that Symantec uses to create a multicard boot floppy requires write access to the boot disk. Basically they copy around the necessary networking files to the correct location on the floppy to get everything working and modify the PROTOCOL.INI file as needed.
With a boot CD you obviously can’t do this, since a CD is not writeable. I spent a fair amount of time trying to use a RAMDISK and fuss with copying the correct files to the necessary location and then edit the PROTOCOL.INI file on the fly to make everything go.
I eventually scrapped the RAMDISK idea as many of the network drivers failed to load with this method and I resigned myself to having to have a different boot CD for each NIC.
However a couple days after initially giving up, I came up with a simple idea that seems to work.
Since the GHOST.EXE executable is no longer on the 1st boot floppy there actually is a lot of space available on that disk. So…I actually just created a different folder for each network card I needed to support and I copied the appropriate network files and necessary PROTOCOL.INI file into each folder.
Then by using the [menu] option within CONFIG.SYS I can present the end-user with a menu of available NICs. I can then load the necessary files from the folder where the driver and correct PROTOCOL.INI file are located for each NIC.
Here is a sample CONFIG.SYS file for a Multicard Ghost 8.0 Boot CD. This file actually supports the (6) different NICs that I commonly use. Notice the [menu] section. This is where I specify the network cards that I support on this boot CD. Each MENUITEM is a particular NIC.
The first parameter is the menuitem label (and I just used the name of the NIC driver so I wouldn’t get confused), the second parameter is the text that appears on the menu that the user will see when they boot from this CD.
I specified the name of the NIC and some specific models of computers we have that use that NIC to make life easier for me so I don’t have to remember what NIC is in what type of box. You can edit these MENUITEM lines as needed for your environment.
The [COMMON] section includes things I want to happen regardless of the menu selection.
Notice that for each NIC, rather than telling it to us the NET folder for the drivers I tell it to use a folder specifically made for that NIC. Yes there is redundancy as many files are replicated on the floppy, but it works without much effort and doesn’t require using a RAMDISK on a CD. And…now that the GHOST.EXE file isn’t on the floppy, we have the room to do this.
Sample multicard CONFIG.SYS file:
MENUITEM=3C90X, 3Com 3C90x – Dell 340, AOpen PC
MENUITEM=EL556, 3Com EL556 – Thinkpad T20
MENUITEM=B57, Broadcom NetExtreme – Dell 2650 Servers
MENUITEM=E100B, Intel 100B – Thinkpad T22, X30
MENUITEM=E1000, Intel 1000 – Dell 260, Intel 865 mboard
MENUITEM=RTSND, RealTek 8139 – Motion 1300 Tablet
LASTDRIVE = Z
Again to make all of this work, there is a folder on the floppy for each NIC. See below for an example directory listing:
Notice that there is still a NET folder, but it actually is just a master location where I put all the NDIS drivers. The only file in that folder that you must keep is NETBIND.EXE as it is called from the AUTOEXEC.BAT file. The rest of the files in the NET folder can potentially be deleted and everything would work OK if you need more space to add additional NICs to this floppy.
Inside each folder for the specific NIC, (3c90x, b57, e1000, e100b, el556, and rtsnd) you will find the following files: DIS_PKT.DOS, NETBIND.COM, PROTMAN.EXE, and PROTMAN.DOS. These are the same and in every folder for each NIC.
In addition there is the .DOS file that is the NDIS2 driver for the NIC in question. In this case EL90X.DOS. And finally there is a PROTOCOL.INI file that is appropriate for that NIC.
Here is a 2nd example. This one is the for the Intel 1000 GB NIC (e1000.dos) driver:
So in essence, to create a Multicard Ghost 8.0 Boot CD the process is quite simple.
- Edit the CONFIG.SYS file and create a new menu item for each NIC that you wish to support. Use the example CONFIG.SYS above as a guide.
- Create a new folder for each NIC and in that folder place the files: DIS_PKT.DOS, NETBIND.COM, PROTMAN.DOS, and PROTMAN.EXE.
- Copy the appropriate NDIS2 driver for that network card to that same folder. (e.g. E1000.DOS for the Intel GB card, or EL90X.DOS for a 3Com 3C90X)
- Create a PROTOCOL.INI file in that folder (you can copy the protocol.ini file from an existing folder), edit the last line so that the correct driver name is specified. You can optionally add additional options to the PROTOCOL.INI file that are appropriate for that NIC if you need to.
Once you have this floppy built with these files and folders, follow the same steps as above to create your bootable CD-ROM by running EZ CD-Creator and select File -> New -> Bootable CD. And then:
- Generate the Bootable CD image from the floppy.
- Remove the first floppy, insert the 2nd Ghost floppy that includes the GHOST folder that has the GHOST.EXE file in it and then you drag the GHOST folder to your CD project.
- Record the CD and you are done.
To get your started quickly, I have zipped up a version of my multicard boot floppy that you can download as a sample. Please note that I have not included on the disk the Windows 98 boot files, MOUSE.COM, MSCDEX.EXE, or OAKCDROM.SYS. Sorry about that but I wasn’t sure I could legally re-distribute them. Therefore you will need to first create a bootable floppy disk on your own, and then add those files yourself to the floppy. Again if you use the Ghost Boot Disk Wizard and select the “CD/DVD Startup Disk” option, the files I have not included will be placed on the floppy that it creates. You will probably have to clean it up though to remove the “stuff” that you don’t actually need. See the listing of files that are in the root of the A: drive above as an example.
Once you have that complete you should be able to extract this ZIP file to your floppy.
The resulting floppy will be used to generate a Floppy Disk Boot image from within EZ CD Creator. You also will need a second floppy that has a folder called “GHOST” on it, and that you have copied the GHOST.EXE file to. Again I can’t give this to you since I’m sure Symantec would not like me distributing copies of the GHOST executable! Once you have that floppy however, just add it to your project in EZ CD Creator (see instructions above) and you should be all set.
If you already have OAKCDROM.SYS and MSCDEX.EXE on hand, just copy them to the root of the 1st floppy disk that was created above and you can skip this next step.
If you have any questions after reading this article or if you need any help, please don't hesitate to contact the iSchool IT Help Desk.