Welcome to FIPS The First nondestructive Interactive Partition Splitting program Version 2.0 May 11, 1998 Copyright 1993-98 Arno Schaefer Parts of the code Copyright 1997/98 Gordon Chaffee 0. What you need to use FIPS 1. Introduction 2. What FIPS does 3. Safety 4. Restrictions 5. Before you start 6. Use with a multitasking OS 7. Using FIPS 8. After splitting the partition 9. Commandline Switches 10. Troubleshooting 11. Credits In file SPECIAL.DOC: S1. Use with Stacker/SuperStor/Doublespace etc. S2. Use with OS/2 S3. Use with OnTrack Disk Manager and similar drivers FIPS is a program designed to split an existing DOS partition without deleting the data on it. FIPS is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. FIPS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with FIPS; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. Report problems and direct all questions to: schaefer@rbg.informatik.th-darmstadt.de 0. What you need to use FIPS You need a defragmentation program in order to move all data to the beginning of the hard disk. FIPS will only split your partition if you have enough free space at the end. Windows 95 and later MS-DOS versions contain DEFRAG, which is suitable for this purpose. Other suitable programs are Norton Speedisk PCTools' Compress, DISKOPT in Novell DOS 7, or the shareware programs ORG, DOG or SAFPAK (available by anonymous FTP from any SimTel mirror in the diskutil directory). I did not test these however, so don't blame me if they don't work for you. You may also want to use a program like Norton Disk Doctor (or 'scandisk' in DOS 6.*/Windows 95) to check your harddisk before and after using FIPS. FIPS was developed under DOS 5.0. It should work fine with anything above 3.0, perhaps even with 2.0. However it will not be of much use with older DOS versions, since the large partition sizes are only available since DOS 4. It has been reported to work with DOS 6.0 and 6.2 and Novell DOS 7. I have also received reports about successful use with Windows 95 partitions. Note that the long filenames are no problem for FIPS, because it works on a lower level where directory structure is of no concern. It is probably sensible to boot from a DOS disk before using FIPS in such a setup (see 6.) 1. Introduction The program was inspired by the Linux Project. When installing Linux on a PC that was used for DOS / Windows, many people want to retain a smaller partition for their DOS software. However, since most Harddisks contain only one large partition, you would normally be required to do a complete backup, erase the partition and build two (or more) new partitions. Then you would restore the backup to one of the new partitions. On today's systems with hard disk capacities of usually 500MB or more, a complete backup becomes practically infeasible without large media like streamer tapes once the drive has filled up to some considerable fraction. Even though many people backup their most valuable date (a practice which I would highly recommend in any case), the process of reinstalling all the software packages takes many hours or even days. FIPS was written to remedy this problem. You can now split a partition without losing any data, provided there is enough free space for the new partition at the end of the old one. 2. What FIPS does FIPS reduces the size of a partition by changing some values in the partition table and boot sector. It does not change the formatting of the partition, especially not the cluster size and the size of the file allocation table (FAT). Therefore the reduced partition will have a FAT that is in part unused, but this is not a problem for DOS. From the free space that is won by this, FIPS creates a new _primary_ DOS partition. If you want to use the new partition under a different OS (e.g. Linux), use its supplied fdisk program to make any necessary changes (refer to the OS manuals). If you want to use the new partition under DOS/Windows, you can use it as it is (after formatting!), but be aware of the following: According to the official references, DOS can only have one primary partition. All DOS versions (at least from v5.0 on) will happily work with multiple primary partitions, but this is an 'undocumented feature'. If you want to follow the official rules, you can delete the new partition with fdisk and create an extended partition in its place. There are reasons for having multiple primary partitions, among them the possibility to boot from different partitions by changing the active par- tition with fdisk. Known problems with multiple primary partitions are: - If you accidentally delete one primary partition with fdisk, you can not easily recreate it, since fdisk will refuse to. There may be other fdisk programs around that work, and if all else fails you can boot from a Linux boot disk to run Linux' fdisk, but it is always a hassle. - There exist some software packages that work with the partition table and which may be confused by multiple primary partitions. Among them was SFS, the 'Secure file system' by Peter Gutmann. I think Peter has made a change to his program to accept some unusual configuration, but there may exist other software packages that will have problems. 3. Safety FIPS was specifically designed to provide a maximum of safety. On startup it checks the Partition Table, Boot Sector and FAT for any inconsistencies. If it finds anything suspicious, it will tell you so. If there are errors, FIPS will not proceed. You have the possibility to write backup copies of your root and boot sector to a floppy disk before proceeding. If something goes wrong, you may restore these with the program 'restorrb.exe' (see section 5). I strongly recommend making use of this feature. It will also enable you to reverse the partition split afterwards, so it might be a good idea to save the root/boot sector image in a safe place. FIPS checks for free space on the partition and will let you choose the new start cylinder accordingly. After having calculated the new partition table and boot sector, FIPS will check everything again, so that possible bugs in the calculation may be detected. Only if everything is ok, FIPS will ask for permission to write the new root and boot sector. 4. Restrictions FIPS will only work with Hard Disk BIOSes that use interrupt 13h for low level harddisk access. This is true for almost all PCs. I have received a report that an older Adaptec SCSI controller had a software driver that worked on a higher level. In this case you can only hope to get a new driver from Adaptec. This is no problem any more for all newer Adaptecs (I personally use one). FIPS will only work on disks with a sector size of 512 bytes. It seems that DOS is prepared to deal with different sector sizes, but so far I have never seen this. FIPS will not split partitions with 12 bit FATs (you would not want to split partitions with less than 10 MB, would you?). FIPS will only split DOS partitions. Partition table and boot sector must conform to the MSDOS 3.0+ conventions. This is marked by the system indicator byte in the partition table, it must have the value 4 (16 bit sector number) or 6 (32 bit sector number). It will especially *not* split Linux partitions. NEW: Windows 95 FAT32 partitions are now also supported. FIPS does not work on extended DOS partitions. FIPS will not work if you already have four partitions, since it needs one free partition entry. FIPS will not reduce the original partition to a size with less than 4085 clusters, because this would imply rewriting the 16 bit FAT to a 12 bit FAT. 5. Before you start Run CHKDSK or SCANDISK on the partition you want to split. If you have Norton Disk Doctor or something similar, you may use it alter- natively. Make sure there remain no 'dead' clusters on the disk. Prepare a bootable floppy disk in drive A:. Under DOS this is usually done by giving the command 'sys a:' or 'format a:/s'. Under Windows NT or OS/2 this may be different, if in doubt check your manual or boot from a boot disk from a DOS PC. Copy the FIPS files RESTORRB.EXE, FIPS.EXE and ERRORS.TXT to this disk. Test booting from the prepared floppy disk. Read you manual or ask a local guru if you can't boot from floppy disk or if you can not access your hard disk after booting (test this by giving the command 'dir c:', you should see your hard disk's root directory). If all else fails, try using FIPS after booting normally from the hard disk (a bit more risky, but sometimes the last resort). When you start FIPS (later!), you will be given the opportunity to write backup copies of your root and boot sector to a file on drive A: called ROOTBOOT.00x (where x stands for a digit from 0 to 9). If anything goes wrong while using FIPS, you can restore the original configuration by booting from the floppy and running RESTORRB. Please note: if you use FIPS more than once (this is normally not necessary, but it may happen), more than one ROOTBOOT file is written to the floppy disk. RESTORRB lets you choose which configu- ration file to res...
marcinvx