My adventures with:
Email me at:
Sample unattended files
MBR track 0 / Master Boot Record
Various various
Norton Ghost 2003: commercial, about $50. Creates "images" of partitions or complete disks that can later be selectively restored / cloned to other disk drives. Also had various utilities to boot into PC-dos, either via a boot floppy that the utility makes, or straight to your hard drive (i guess it plays with the partition tables?). The boot floppy utility can also create so-called network boot disks so that you can boot from floppy to PC-dos and also connect up to a network share. It depends (obviously) on having a network card that the program understands -- it worked great for me with the Intel Pro/100b drivers. I also have burned the floppy image onto a bootable CD rom, to speed up the process. In this way I can have a "fileserver" on my Lan then when i want to Ghost a new machine or hard drive i just hook it up to the Lan and go. Addendum: there are multiple versions of Ghost 2003. sigh.
Ranish Partition Manager: runs in DOS only. Seems to handle drives at least as large as 137GB. Freeware. I use the so-called latest stable version 2.40. There are also a couple of newer ones that add some esoteric features (up to 31 primary partitions), but may be necessary to address above 128G drives? (partial answere: I got a 200G drive, and the 2.40 version seemed fine) See my sample. Update: this is now included as a multiboot option for the system rescue Cd project, very handy.
DOS: I usually use Windows 98 for DOS. Can be used to create EBD (emergency boot diskette) with DOS. I use the EBD image to make bootable CD's (I used linux to dd the raw floppy image to a file, then I create a bootable CD with Nero selecting the image file and floppy emulation). Other sources of DOS: Many CDs are bootable to PC-DOS -- e.g. Ghost, Seatools, Maxtor's disk utilities.
Linux: Lately I have had RedHat 9 loaded up on a partition on my extended partition (I works out to be the eighth partition, /dev/hda8 in linux-speak). Rather than fooling with Lilo or some other boot loader scheme, I just use LINLD.com (don't use loadlin.com anymore, it can only load kernels smaller than 1 megabyte -- it "broke" on RH9) which runs from DOS.
Partition signatures -- i stumbled onto this problem where I thought i was being clever by hiding (marking unusued) a data partition before doing the partition backup... the problem being that when i restored, XP would not boot up. The problem being that it turns out that XP when restored must be booted off the same drive letter as it thinks it is. See http://www.goodells.net/multiboot/ for a detailed discussion of this and more... So the moral to the story is XP is sensitive to shuffling partitions around, I tend to install Win98 on the first primary partition -- so that always works out to be drive C. I usually then partition the entire balance of the drive into one huge extended partition that I then can carve up as I please. Below is a sample of how I might divide up a 40GByte hard drive.
Linux name / Dos-Win name / file system / size (G Bytes) / usage :
/dev/hda1 C FAT32 5 Win98 installation drive /dev/hda2 n/a Ext'd /dev/hda5 D FAT32 5 Win XP installation drive (sometime i make it NTFS) /dev/hda6 E FAT32 5 Backup files /dev/hda7 F FAT32 20 Misc. Media files /dev/hda8 n/a Linux 5 Linux Redhat 9 Installation drive /dev/hda9 n/a Lin swap .5 Linux Swap drive
In this way the system is "quadruple" booted -- really double. From the microsoft boot menu I can select either Win98 (from which a quick F8 allows a quick boot to dos prompt), Windows XP on partition 2, and finally to boot Linux I boot dos and then run linld.com to boot me up to /dev/hda8
Installation order: Prepare a raw drive with something like Ranish and divide up the drive as above. Ordering is important because the microsoft scheme of multiple booting is sensitive to this. You must first install Win98. Then install Win XP (do a "fresh install", not an upgrade -- if starting it from win98, chose Advanced options / allow me to choose installation partitoin). Later on install Linux.
Sample Boot.ini (will be found in root
of c:\ if following installation order as given above)[Boot Loader] Timeout=5 Default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS [Operating Systems] multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows XP Pro, 2" /fastdetect C:\="Microsoft Windows 98" |
Lots of unattend info here: http://unattended.msfn.org/beginner/winnt_sif.htm. I've never made an unattended CD installation, I've always just used batch files, as in the ones below. The scheme on a CD is if a file called winnt.sif is found it is used as an answer file.
unattend.bat@rem SetupMgrTag @echo off rem rem This is a SAMPLE batch script generated by the Setup Manager Wizard. rem If this script is moved from the location where it was generated, it may have to be modified. rem set AnswerFile=.\unattend.txt set SetupFiles=f:\XP-CD\I386 f:\XP-CD\I386\winnt32 /s:%SetupFiles% /unattend:%AnswerFile% /tempdrive:D: rem the tempdrive should force the install to take place on D (the 2nd partition) rem Here is an example of the DOS mode command. Note that options are shortened rem to 1 letter, and especially note that only 8.3 filenames are allowed! rem if you attempt a DOS install BE SURE TO HAVE smartdrv LOADED! otherwise it rem will take HOURS to do the initial file copies. rem rem f:\XP-CD\I386\winnt /s:%SetupFiles% /u:%AnswerFile% rem other things to think about: I don't think the /tempdrive thing works to force rem install on a particular partition(?). What I have been doing is creating a smallish rem 1st partition, then when it tries to install it fails and allows manual intervention rem after the partition is chosen, the unattended install takes place as usual. unattend.txt ;SetupMgrTag
[Data]
; if no autopartition, then will go to partition where temp files are
; AutoPartition=1
MsDosInitiated="0"
UnattendedInstall="Yes"
[Unattended]
; UnattendMode=ProvideDefault
UnattendMode=FullUnattended
OemSkipEula=Yes
OemPreinstall=Yes
TargetPath=\WINDOWS
[GuiUnattended]
AdminPassword="123456"
EncryptedAdminPassword=NO
OEMSkipRegional=1
TimeZone=15
OemSkipWelcome=1
[UserData]
; put your real key here
ProductID=xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
FullName="yo"
OrgName="yoco"
ComputerName=yo
[TapiLocation]
CountryCode=1
Dialing=Tone
AreaCode=480
[RegionalSettings]
LanguageGroup=1
Language=00000409
[SetupMgr]
DistFolder=F:\XP-CD
DistShare=whistlerdist
[Branding]
BrandIEUsingUnattended=Yes
[Proxy]
Proxy_Enable=1
Use_Same_Proxy=0
HTTP_Proxy_Server=10.1.1.101:8000
Secure_Proxy_Server=10.1.1.101:8000
Gopher_Proxy_Server=10.1.1.101:8000
Socks_Proxy_Server=10.1.1.101:8000
[Identification]
JoinWorkgroup=WORKGROUP
[Networking]
InstallDefaultComponents=No
[NetAdapters]
Adapter1=params.Adapter1
[params.Adapter1]
INFID=*
[NetClients]
MS_MSClient=params.MS_MSClient
[NetServices]
MS_SERVER=params.MS_SERVER
[NetProtocols]
MS_TCPIP=params.MS_TCPIP
[params.MS_TCPIP]
DNS=No
UseDomainNameDevolution=No
EnableLMHosts=Yes
AdapterSections=params.MS_TCPIP.Adapter1
[params.MS_TCPIP.Adapter1]
SpecificTo=Adapter1
DHCP=No
IPAddress=10.1.1.100
SubnetMask=255.255.255.0
DefaultGateway=10.1.1.101
DNSServerSearchOrder=10.1.1.101
WINS=No
NetBIOSOptions=0
|
Results of Linux fdisk and
hdparm commands, on my Seagate 40G drive: Disk /dev/hda: 40.0 GB, 40020664320 bytes
255 heads, 63 sectors/track, 4865 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 255 2048256 b Win95 FAT32
/dev/hda2 256 4854 36941467+ f Win95 Ext'd (LBA)
/dev/hda5 256 1020 6144831 b Win95 FAT32
/dev/hda6 1021 2040 8193118+ b Win95 FAT32
/dev/hda7 2041 4202 17366233+ b Win95 FAT32
/dev/hda8 4203 4789 4715046 83 Linux
/dev/hda9 4790 4854 522081 82 Linux swap
Model=ST340014A, FwRev=3.04, SerialNo=3JX09SX2
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=2048kB, MaxMultSect=16, MultSect=16
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=78165360
|
Track 0 is normally considered the first 63 sectors of a disk -- nominally a (parallel) ATA / IDE hard disk. I don't know how/if this applies to Serial ATA drives, but I would suspect it does. Another way of referring to these sectors is using the C/H/S -- Cylinder/Head/Sector -- nomenclature. So the first 63 sectors is from 0/0/0 to 0/0/62.
The MBR -- Master Boot Record -- is the very first sector, or sector 0/0/0 in C/H/S terminology. This sector holds the partition table and the default microsoft bootstrap code.
There are any number of utilities for manipulation of the MBR/Partition table. When i need to get the job done ruthlessly, I usually resort to booting up a linux live cd (like Knoppix), and just dd'ing the sectors. Here are some examples (assumes the hard disk in question is the master on the primary IDE, i.e. /dev/hda). WARNING -- these commands could easily render you hard disk UNUSABLE...proceed at your own risk!:
dd if=/dev/zero of=/dev/hda bs=512 count=63 //zeroes out 63 512byte sectors of hda! dd if=/dev/hda bs=512 count=1 of=filename // saves first sector (the MBR) to a filedd if=/dev/zero of=/dev/hda bs=512 count=63 //zeroes out 63 512byte sectors of hda! dd if=/dev/zero of=/dev/hda bs=512 count=62 seek=1 //zeroes out everything in track 0 after the MBR dd if=/dev/zero of=/dev/hda bs=512 count=1 seek=32 //zero out sector 32 dd if=/dev/zero of=/dev/hda bs=512 count=1 seek=62 //zero out sector 63 (used by Norton Ghost to "mark" drive)
Sector 32 is used by Macrovision Safecast by certain applications to manage licensing. In particular Macromedia MX2004 flash, fireworks, etc. And more recently Adobe Photoshop CS. ERASING THIS WILL CAUSE ANY APPLICATION THAT RELIES ON THIS TO STOP WORKING! In olden times past (around 2000?) turbotax used a version of safecast that used sector 33. Some consider the use of reserved sectors to be a form of spyware.
Other sectors (above 1) are used by alternate boot loaders, e.g. GRUB in Linux
See http://www.goodells.net/multiboot/ for a detailed discussion of booting.
There are some clever freeware windows-based utilities at roadkil.net including a hard disk sector editor, and MBR tools.
To write new master boot record code with default Microsoft boot loader do the following, and note that there will be no further prompt or anything it will just do it and return to the dos prompt:
fdisk /mbr
This is often necessary to recover a failed grub installation -- say if you delete the partition that held the boot files.
To mount an .iso file as a file system (it assigns a drive letter, and all) I used something called winxpvirtualcd.zip which apparently came from the microsoft beta program, it is one of those "unsupported" tools. It contains a readme that makes using it fairly self-explanatory. There are something else that does this called Daemon Tools that look like freeware that does this same function -- but i have never tried it.
I had occasion to need to start a service, and it was a hassle to get it going from the "Computer Management" snap in (compmgmt.msc). After some hunting around, I finally found what i wanted was the sc.exe, Service Controller, command. The command to start a service is very straightforward, e.g.:
sc.exe start TwonkyVision_Media_Server