# Linux + Windows HOWTO

### Jonathan Katz

`<jkatz@in.net>`

### Dr. Robert J. Meier

`<robert.meier@fanucrobotics.com>`

Eric Womack - Conversion from HTML to DocBook 4.1 (SGML)

Revision History
Revision 0.1.1 | 2001-12-28 |
Conversion to SGML
Revision 0.1.0 | 1999-11-04 |
Collected from LDP
Revision 0.0.2 | 1999-10-21 |
First draft of Linux+Windows-HOWTO
Revision 0.0.1 | 1995-11-01 |
Wrote Linux+Win95

This HOWTO is aimed at assisting those who wish to use the features of both Windows and Linux on the same host.

# 1. Overview

## 1.1. Copyright and License

This document, Linux+Windows HOWTO, is copyrighted (c) 1999 by Dr. Robert J. Meier. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is available at http://www.gnu.org/copyleft/fdl.html.

## 1.2. Disclaimer

No liability for the contents of this document can be accepted. Use the concepts, examples and information at your own risk. There may be errors and inaccuracies, that could be damaging to your system. Proceed with caution, and although this is highly unlikely, the author(s) do not take any responsibility.

All copyrights are held by their by their respective owners, unless specifically noted otherwise. Use of a term in this document should not be regarded as affecting the validity of any trademark or service mark. Naming of particular products or brands should not be seen as endorsements.

## 1.3. Intended Audience

Nancy just bought a new computer. It came preloaded with Windows 98. Nancy wants to run accounting software supported by Windows 98 and mathematical research software. Nancy is an accountant and donates her time as the accountant for the local chapter of a charitable organization. The charitable organization requires the chapters to use standard software that they have chosen. This software is only supported on Windows 98, so Nancy must have Windows 98 to donate her accounting services. Nancy also teaches mathematics and personally pursues research mathematics. She is not a programmer amd doesn't want to waste unnecessary time doing system administration nor working with inflexible software. She believes that octave, c++ and the best research software is supported by unix. As a unix dialect she wants linux.

Lisa is shopping for a new computer to replace her aging host. Her computer will be preloaded with RedHat 6.2 linux. Lisa is a professional programmer, who plans to run a server and firewall on her old computer. Lisa wants a low maintenance machine that reliability does her bidding. Occasionally she needs to read and write files for Macintosh and/or Windows users. She plans to remove Windows 95 from her old computer and run a dedicated server and firewall under linux. In accordance with her Microsoft End User License Agreement she will transfer Windows 95 to her new computer. Since she plans to spend most of her time in linux, it isn't worth buying a second Windows license to run Windows on both hosts.

Oscar is a system administrator for a large corporation that uses Windows NT and Irix workstations. One of the Windows NT workstations has just crashed and won't boot. Oscar has to recover critical data from the host which was not backed up. He needs tools to script searches and filter files. Oscar wants to use the panolpy of unix commands to low-level examine the hard disk in his search for the lost corporate assets. Last year Oscar configured a "dual booter" but he no longer remembers the details.

Tom is a graduate school teacher. Tom also teaches continuing education at the local community house. Nancy is a friend of Tom and asked for his help with her new computer. Tom is happy to oblige and this HOWTO is one of the consequences.

## 1.4. How to Use This HOWTO

This HOWTO is focused on a general step-by-step procedure. You should first read which character among the intended audience that you most nearly match. Follow along as Tom helps each characters configure their systems. Before doing more than skimming, you should at least skim the critical concepts. Some of the words used may be unfamiliar, obsolete, or applied differently, so it is important to understand their usage in this HOWTO. Please write the maintainer with your experience good or bad.

## 1.5. Concepts

Understanding this HOWTO depends on understanding its use of the following concepts.

- Disk and Format

- Partition and Filesystem

- Operating System

# 2. Procedure

## 2.1. Reference

1. Backup your software and data

2. Compile a catalog of hardware component models and software versions.

3. Attach new disks.

4. Compact the existing software and data.

5. Repartition the disk.

6. Format the new partitions.

7. Load the new operating systems.

8. Install the boot manager (uc).

9. Cross mount the devices.

### 2.1.1. Backup

Installing linux on Nancy system will involve repartitioning. Any time you repartition a hard disk you run a significant risk of losing data on the disk. More precisely repartitioning does not actually cause data loss, but does tend to discover data that was lost piror.

Tom warned Nancy that she should backup everything before starting. Familiar with pluming repair, Tom knew that whey you shut off the water for 10min to replace a dripping faucet, you often find that the pipes in the floor were rusted and leaking. Nancy knew nothiing of plumbing, but she had a good book collection and had moved several times. She knew that bookshelves often break when you move them.

Since Lisa is buying a new computer, she has nothing yet to backup. When Oscar asked for the backups of the crashed computer he was met with the usual blank expressions. His job is essentially ot make a backup of the otherwise lost data.

This version of this HOWTO does not detail how to backup. If you wish to see more information on backing up or if you wish to provide information please contact the maintainer.

### 2.1.2. Catalog

During installation, the size of disks, and other accurate specifications will be necessary. Entry of slightly wrong values will result in subtle problems that may not show up immediately but will often be chronic, frustratingly difficult to diagnose, and maybe impossible to fix.

Windows and your linux distribution may not support the same hardware. You should see the Hardware Compatibility HOWTO for a list of what is known to be compatible or incompatible.

In general Windows is the more restrictive with exception of WinModems/WinPrinters/.... Any hardware supported by Windows will usually be supported by linux, though not necessarily included in your distribution. Much hardware, especially the old and the cutting edge, may be supported by linux but not by Windows. If not included in your distribution, you can usually download linux drivers and or modules from the Internet.

Winmodems, Winprinters, Winscanners, etc. are not supportable under linux. These devices are actually firmware that depend on proprietary Windows software. In the United States it is illegal to sell a linux distribution that supports these devices.

Lisa has dealt with software long enough to know the value of specifications. Even before purchasing a computer, Lisa has already created a log. For each computer being considered from each prospective vendor, Lisa has a list of each component, its model and capabilities.

Tom knows that one of the least expensive means to support reliability in any complex system (computer, airplane, car, etc.) is by keeping accurate maintenance records. Many (if not most) of the compatiblity problems reported by Tom's students would be prevented if accurate records were kept and consulted.

Tom usually recommends avoiding WinModems, etc. because their performance limitations are too severe for most people..

Oscar's company keeps records on the hardware components of each computer. Before trying to fix any problem, Oscar examines the log and often finds that intractible problems becomre easily solved when you know the model details.

### 2.1.3. Attach

One of the useful features of linux is the wide range of diagnostic and repair tools that it supports. The easy ability to write scripts also makes it easy to write worms and do other recovery operations.

Oscar has easy access to a spare hard drive. He checked the Hardware Compatibility HOWTO to select a hard drive model.

- Oscar grounds himself with a wrist strap to avoid accidental electrostatic damage.

- He opens the case according to the service manual.

- He slides the disk into the secondary drive slot and attaches an IDE cable.

- Oscar closes the case and ungrounds himself.

This version of this HOWTO does not detail how to attach new drives. If you wish to see more information on attaching or if you wish to provide information please contact the maintainer.

### 2.1.4. Compact

Most new computers preloaded with Windows are delivered with a single FAT32 partition that occupies the entire disk. Before loading a second operating system on a shared disk, it must be split into at least two partitions, since Windows and some linux distributions will not tolerate another operating system on the same partition.

Software is normally stored distributed across the disk partition. Before splitting a partition, all the data must be moved to the start of the partition, so that when the partition is split, the old software and data won't be lost. Tom warns Lisa, Nancy, and especially Oscar that compacting is not reversible. If the partition is error-free, no active files will be lost, but disconnected (deleted) files may be lost. If the partition has errors, tools exist that can often (but not always) recover disconnected files before compaction. After compacting , the disconnected files are probably unrecoverable.

The fips included in tomsrtbt-1.6.335 is 0.9e and Tom has used it directly with Windows 95. Windows98 requires fips-2.0 or later which (at press time) was not included in the archived tomsrtbt distributions.

Nancy is unafamiliar with open source code and the Internet, so Tom offers to create her fips disk.

1. Download fips-2.0 and expand in the directory $FIPSROOT

   (This may require privelege depending on Tom's linux configuration)

   (The address will probably change by the time you read this.)

       bash> FIPSROOT=/opt/packages/fips-2.0
       bash> mkdir -p $FIPSROOT/original
       bash> cd $FIPSROOT/original
       bash> wget ftp://sunsite.icm.edu.pl/pub/Linux/sunsite.unc.edu/system/installl/fips-2.0.zip
       bash> cd $PIPSROOT
       bash> unzip -d oritinal/fips-2.0.zip

2. Insert and mount the startup disk from Nancy.

   (This may require priveleges depending on Tom's linux configuration)

       bash> mkdir -p /floppy
       bash> mount -t vfat /dev/fd0 /floppy

3. Follow the instructions for fips. At press time, this means copy 3 files to the startup disk.

       bash> cp restorrb.exe fips.exe errors.txt /floppy

4. Unmoun the floppy and return it to Nancy.

       bash> umount /floppy

Nancy's new machine was delivered preloaded with Windows 98 on a single partition occupying the entire disk. The installation was already compact, but Nancy used scandisk and defrag anyway just to be safe. When splitting the partition with fips, it warns that the physical partition length does not equal the logical partitin length. Tom explains that this is expected since her disk has more than 1024 cylinders. Tom suggests that Nancy record the current partition info in case it is needed to recover from a disaster. Following Tom's suggestion, Nancy reduces the first partition to approximately 30% of the total disk size.

1. Create a statup disk and give it to Tom.

   [Start][Settings...\Control Panel] [[Add/Remove Programs] [Startup Disk] [Create Disk ...]

2. Verify that the disk has no detectible errors.

   (There may still be hiddent errors.)

   [My Computer] {(C:\)} [Properties ...] [Tools] [Error-checking status\Check now ...] [Type of test\Thorough] [Start]

3. Fis any errors reported.

4. Defragment the disk to remove blank areas and deleted files.

   [My computer] {(C:\)} [Properties ...] [Tools] [Defragmentation status\Defragment now ...]

5. Insert the fips startup disk from Tom and restart the computer.

   [Start] [Shutdown...] [Restart] [OK]

6. When the computer reboots, split the partition.

       A:\> fips
       Save current partition info: yes
       New partition start: 501

### 2.1.5. Repartition

A normal linux installation requires at least two partitions. It usually improves performance to more partitions. Most bioses support no more than 4 primary partitions.

Tom recommends that the disk be divided into 4 partitions.

1. ~33% Windows bootable

   Windows requires residency on the first primary partition

2. ~33% linux bootable

   On most computers, bootable partitions must reside entirely below 1024 cylinders.

3. ~64M swap

   A filesystem optimized for memory caching improves performance.

4. ~33% data

   The last partition may be used by either or both operating systems if is compartible.

The Windows bootable partition must be one of the filesystems supported by Windows. Likewise the linux bootable partition must be one of the filesystems supported by linux. The swap partition must have a filesystem supported by the operating system that will use it. The last partition will be used for data, and can have any filesystm.

At press time, the above division is safe for most computers.

Nancy is unfamiliar with open source and the Internet, so Tom lends her one of his diagnostic disks with tomsrtbt..

tomsrtbt is a small distribution of linux on a single floppy disk that loads into RAM. Since it does not occupy nor run on the hard disk it is superb for situations where the hard disk will be modified (e.g. repartitioning).

Tom stresses that repartitioning is simple but must be done with meticulous care, since everything else depends on it. Like ignoring a crack in the foundation of a house, partition table errors may not become apparent for a long time, when it will be difficult or impossible to correct.

Nancy will be using her system primarily with Windows, so Tom recommends that her data partition use FAT32 From the compoent catalog that Tom prepared for her computer, Nancy knows that her hard disk has 1661 cylinders.

1. 0001-0501 Windows FAT32 bootable

2. 0502-1002 linux ext2 bootable

3. 1003-1011 linux swap

4. 1012-1661 data FAT32

Lisa will be using her system primarily with linux, so her data partition will use ext2 The data partition will then be unavailable to Windows, but will be more easily used from linux. Lisa's hard disk has 787 cylinders.

1. 0001-0262 Windows FAT32 bootable

2. 0263-0525 linux ext2 bootable

3. 0526-0779 linux swap

4. 0780-0787 data ext2

Nancy uses the tomsrtbt disk provided by Tom and fdisk on it to edit her partition table.

1. Insert the tomsrtbt disk and restart the computer.

2. Read the fdisk instructions and list of known partition types

       bash> /bin/fdisk
       fdisk> m
       fdisk> l

3. Read and record the partition table

   (After fips, her disk has two partitions.)

       fdisk> p

4. Since her disk has more than 1024 cylinders, update the cylinder count known to fdisk with an advanced command

       fdisk> x
       fdisk expert> c 1661
       fdisk expert> r

5. Delete the 2nd partition which was created by fips.

       fdisk> d
       ... partition[1-2]? 2

6. Add the new 2nd partition for linux

       fdisk> n
       ... partition ...? 2
       ... extended ... primary ... type? p
       ... start ...? 502
       ... end ...? 1002

7. Add the new 3rd partition for swap

       fdisk> n
       ... partition ...? 3
       ... extended ... primary ... type? p
       ... start ...? 1003
       ... end ...? 1011

8. Add the new 4th partition for data

       fdisk> n
       ... partition ...? 4
       ... extended ... primary ... type? p
       ... start ...? 1012
       ... end ...? 1661

9. Reprint the partition table and check carefully for errors.

   (delete and add the partitions if there are any errors)

       fdisk> p

10. Set the type (filesystem to be used) on each partition.

        fdisk> t
        ... partition ...? 2
        ... type ...? 83
        fdisk> t
        ... partition ...? 3
        ... type ...? 82
        fdisk> t
        ... partition ...? 4
        ... type ...? 0c

11. Record and repriint the partition table and check carefully for errors.

    If unsatisfied quit.

        fdisk> q

12. If satisfied, write the partition table.

        fdisk> w

Nancy records the new partition table in her computer log.

    Disk /dev/hda: 255 heads, 63 sectors, 1661 cylinders
    Units = cylinders of 16085 * 512 bytes

       Drive  Boot  Start  End   Blocks  Id  System
    /dev/hda1 *        1   501   402451+ 0c  Win95 FAT32 (LBA)
    /dev/hda2        502  1002   402482  83  Linux Native
    /dev/hda3       1003  1011    72292  82  Linux Swap
    /dev/hda4       1012  1661  5221125  83  Linux Native

### 2.1.6. Format

In order to use any hard disk effectively, it must be formatted. After formating, whther successful or not, all the old data in that partition is lost (the cost of recovery goes up 10-100x).

Tom warns that Formatting is the only operation that is neither idempotent nor reversible. The tool provided by the intended operating system should be used to format the partitions intended for that partition. Use format under Windows to format FAT32 partitions. Use

Nancy formats the data partition under Windows.

1. Restart the computer in Windows

2. Format the partition

   [[My Computer]] {(D:)} [Format ...] [Format type\Full] [Start] Nancy uses the tomsrtbt disk provided by Tom to format the linux and swap partitions under linux.

3. Insert the tomsrtbt disk and restart

4. Check for bad blocks and format the linux partition.

       bash> mke2fs -c /dev/hda2

5. Check the filesystem

       bash> e2fsck /dev/hda2

6. Check for bad blocks and make the swap file system

       bash> mkswap -c /dev/hda3

(untested) Lisa formats only linux partitions using tomsrtbt in the same manner as Nancy.

1. Insert the tomsrtbt disk and restart

2. Check for bad blocks and format the linux partition.

       bash> mke2fs -c /dev/hda2

3. Check the filesystem

       bash> e2fsck /dev/hda2

4. Check for bad blocks and make the swap file system

       bash> mkswap -c /dev/hda3

5. Check for bad blocks and make the data partition

       bash> mke2fs -c /dev/hda4

6. Check the filesystem

       bash> e2fsck /dev/hda2

### 2.1.7. Initial Program Load

Now is when the operating system(s) becomes a part ot the computer. All prior steps laid the foundation. This is the first time when the detail and accuracy of the catalog will be especially useful. Follow the installation instructions provided with your distribution. This HOWTO does not detail how to load the distribution because the distribution instructions will provide the best instructions.

Though linux is available at no cost, Tom recommends purchasing a distribution with hardcopy instructions and support tools.. The price of a good distribution is well worth it. In Tom's opinion, asking friends is the best way to choose a linux distribution. A distribution that satisfies your friends with similar interests will probably satisfy you.

Tom knows that Nancy got a newly released graphics card with which he has no experience. He warns Nancy that the X configuration may not work. When she calls him, he uses the expert options of yast which tell him that though her card is not listed by manufacturer and model it used the mach64 X server. Now familiar with yast, Nancy installs the mach64 x server and removes the svga X server. Tom stays to talk Nancy through X installation. Nancy's monitor is not named in the configuration list, but with the model known from the catalog, a quick visit to the manufacturer's website provides the scan rate limits.

Tom knows that the configurability of linux frightens many new users and so he has often recommended RedHat to first-time users because of its commercial technical support and default configuration settings. He lets Nancy know that though she should try to consider each question before answering, she need fear a mistake because she can reverse almost any configuration decision later. Most packages managment tools offer to load and save configurations files (e.g. /etc/linuxrc).

- Keep a list of the configuration questions and each answer to them.

- When in doubt, add a package to linux, and note that it was in doubt.

- A month after installation, go back and remove any packages that you haven't used, and log the removal.

- Expect to discover some linux configuration errors by loss.

- Change the linux configuration when you find that it is different from your desires.

- When in doubt, do not add a package to Windows.

Tom knows that some differences between Windows and linux force some compromises.

- Set the hardware clock to local time.

  Windows displays time, timestamps file operations, and synchronizes with the netowrk from the same clock.

  Linux uses separate clocks for each of these. On a linux only system, the hardware clock is usually set to UTC (Universal Time Coordinate), the network standard. The network and file operations clock are usually just views of the hardware clock by linux. For display, linux usually shifts the hardware clock according to the timezone and date.

  Since Windows supports only one clock, you must decide (unless you live in Greenwich England) whether to set the hardware clock to local time or UTC.

  If you use UTC, you will have to mentally convert the time displayed by Windows to local time.

  If you use local time, some network activity may become confused. International email problems are most commonly reported. Mail sent from Berlin at 1300 local time may be stored a second later in New York at 1200 UTC where it awaits a channel to its San Francisco destination. To save space, the New York host may delete mail that could not be sent in a reasonable time of 30min. If the Berlin mail was unclear that ti was sent at 1300 Berlin time, or if the New York host is unwilling to do the conversion, the email may be lost as undliverable after 1 hour (1300 - 1200).

Since Nancy is an accountant, Tom recommends that she use the SuSE distribution. SuSE comes with the ApplixWare suite of office software. Nancy has already read the installation chapters of the book that accompanied her SuSE distribution. yast from SuSE lets her store her configuration choices in a file which she includes in her computer log.

1. Nancy makes sure she has the catalog (and Tom's phone number) handy.

2. She inserts the SuSE CDROM and reboots the computer.

3. She selects installation options (English, Color, ...)

4. She examines the hardware detected for her system and confirms that it matches her own catalog.

   Both the hard disk and CD-RW were detected.

   Both the sound and graphics cards were detected.

   Both the PCI and USB buses were detected.

5. Following the instructions from SuSE, she starts YaST, the system configuration tool.

6. Already partitions, Nancy declines YaST's offer to repartition her disk.

7. Already formatted by Windows, Nancy declines YaST's offer to format her Window's partitions.

8. Though already formatted, Nancy accepts the offer to reformat her swap and linux partitions.

9. Set the mount points for the partitions.

       [CREATING FILESYSTEMS]
       /dev/hda1     no    vfat /WinC Win95 FAT32
       /dev/hda2 ... check ext2 /     Linux
       /dev/hda4     no    vfat /WinD Win95 FAT32

10. Nancy now selects the packages she wants.

    Nancy includes the nonstandard packages that she knows she wants (e.g. CD writing).

    Nancy excludes the standard packages that she knows she doesn't want (e.g. tape drive support).

    Nancy selects packagas for her specific hardware (e.g. X server) using her catalog.

    She indicates that the hardware clock is set to local time.

    Nancy saves a copy of her configuration and puts in her log.

(This subsection of this HOWTO is not yet written.)

### 2.1.8. Boot Manager Load

If you have two or more operating systems on a computer, you must have a means of selecting which operating system is loaded.

Before installing a boot manager, Tom recommends that Nancy and Lisa make a boot disk (and master boot record backup). He also recommends that each test their boot disks before installing the boot manager. This is done so that the computer can be booted and the master boot record restored to the hard disk if the boot manager installation fails

Because of its configurability and robustness, Tom recommends lilo to most users.. Most linux distributions support multiple linux versions on the same partition. This means that you can install and test an upgrade to the operating system without the trouble of a lengthy reinstallation. When the upgrade is satisfactory (or not) you can remove versions no longer useful.

During installation, SuSE offers to make a boot disk, and master boot record backup, before installing lilo.

1. Create a rescue floppy.

       [CREATE A BOOT DISK?/YES]

2. Nancy write-protects the disk and puts in her log.

3. Nancy installs lilo

       [LILO INSTALLATION ...]
       Windows /dev/hda1
       SuSE    /dev/hda2 /boot/vmlinuz

Windows installation overwrites the master boot record with one that loads Windows. After installing Windows, Lisa must reinstall lilo. To make this easier she uses loalin under Windows to load her existing linux and then uses linus to configure and install lilo..

### 2.1.9. Mount

(This subsection of this HOWTO is not yet written.)

# 3. Choices

## 3.1. Architecture

The following is a summary of the architecture choices that you should consider. Your choice will probably depend most on your compuer expertise level, value of existing data, and expected division of usage between Windows and linux.

Table 1. Architecture

Separate for linux and Windows | Shared by linux and Windows | Support | Pros | Cons
--- | --- | --- | --- | ---
| address space | Not Supported. Windows must be the only operating system in its partition. |  |
address space | partition | Not covered by this HOWTO. VMWare under Windows | No need to disturb the current configuration. Linux can be loaded on the emulated system. | linux is slow.
address space | partition | Not covered by this HOWTO. VMWare under linux | No need to disturb the current configuration. (unverified) Windows can be loaded on the emulated system. | Windows is slow
address space | partition | Not covered by this HOWTO. DosLinux | No need to disturb the current configuration. |
address space | partition | Not covered by this HOWTO. Armed distribution (unverified) | No need to disturb the current configuration. |
partition | disk | Windows requires that Windows reside in the first primary partition | Works with standard mail-order home computers from the major dealers. | Requires more installation effort.
disk | host |  | Minimizes risk to existing system and data. Requires less installation effort. | Normally requires a second computer and extra disks.
host | network | Not covered by this HOWTO. Classes, books, and online help is readily available. | Minimizes installation effort. | Requires at least two computers equipped with network interface cards. Data is not directly available to the other operating system.

## 3.2. Filesystems

Your choice of filesystem is usually constrained by the hard disk manufacturer, your choice of Windows version, and your choice of linux distribution.

Table 2. Filesystems

Type | Code | Support | Description
--- | --- | --- | ---
DOS6 | 0x06 | Windows 95, Windows 98, Windows NT, linux | IBM DOS default filesystem. Names limited to eight characters + 3 character type
NTFS | 0x07 | Windows NT, linux read-only | Windows NT default filesystem. Names have arbitrary length. Names cannot include special characters
FAT32 LBA | 0x0c | Windows 95, Windows 98, Windows NT, linux | Windows95/98 default filesystem. Names have arbitrary length. Names cannot inlcude special characters
swap | 0x82 | linux | linex default memory cache filesystem
ext2 | 0x83 | linux | linux default filesystem. Names have arbitrary length. Names can contain arbitrary characters. Tends to suffer little external fragmentation. Scales well over several magnitudes of size. Runs quickly on semirandom access systems.

## 3.3. Linux Distribution

Your choice of distribution will depend mostly on friends' recommendations, your level of computer expertise, and easy availability of packages. Most distributions will happily reside on the same disk, so there is no reason not to try several distributions until you find the one that is best for you.

Table 3. Distributions

Distro | Publisher | Source | Pros | Cons
--- | --- | --- | --- | ---
RedHat | Red Hat, Inc. | http://www.redhat.com/ | Easy to install. Home-user-friendly. Commercial support available. Large number of bundled packages. Tolerates unbundled packages. | Does not tolerate multiple versions on same partition.
Slackware | Walnut Creek CDROM | http://www.slackware.org/ | Largest number of bundled packages. Professional-user-friendly. Easiest software development. New packages most often appear here first. Tolerates unbundled packages. Tolerates multiple versions on same partition. | Moderate computer expertise required.
SuSE | SuSE Gmbh | http://www.suse.com/ | Easy to install. Business-user-friendly. Aimed at business users. Commercial support available. Tolerates unbundled packages. Tolerates multiple versions on same partition. |

## 3.4. Backup Tools

Table 4. Backup Tools

Tool | Requirements | Description
--- | --- | ---
Norton Ghost | Windows 95/98/NT network drive | Easy to use. Makes and restores images of disks or partitions. No selection or deselection of files/directories. No index generated.
tob | linux tape drive | Easy to use. Easy to configure. Selects or deselects files/directories to backup or restore. Generates index of backups searchable to find archived files.
yast (untested) | backup tool | Graphical interface for system administration tools. Included with SuSE linux

## 3.5. Compaction Tools

Table 5. Compaction Tools

Tool | Requirements | Description
--- | --- | ---
fips | Windows95 (Included in tomsrtbt-1.6.335) | Splits a FAT16 or FAT32 partition into two partitions without destroying data so that the new partition can be loaded with a different operating system.
fips | Windows98, Windows98 (requires at least version 2.0), Run under Windows98 | Splits a FAT16 or FAT32 partition into two partitions without destroying data so that the new partition can be loaded with a different operating system.

## 3.6. Repartitioning Tools

Table 6. Repartitioning Tools

Tool | Requirements | Description
--- | --- | ---
fdisk | Included in tomsrtbt-1.6.335 | Supports editting of a partition table. Two-tiered menu system. The first level includes read and normal operations. The second level lets you fix inconsistencies.
fdisk | Included with Windows 95 and Windows 98 | Does not permit creattion of partitios associated with filesystems not supported by Windows, nor selecting a bootable partition other than the first primary partition.
yast (untested) | backup tool | Graphical interface for system administration tools. Included with SuSE linux

## 3.7. Formating Tools

Table 7. Formating Tools

Tool | Requirements | Description
--- | --- | ---
e2fsck | Included in tomsrtbt-1.6.335 | Checks an ext2 filesystem for errors
format | Included with Windows 95 and Windows 98 | Creates a vfat filesystem on a chosen partition
mke2fs | Included in tomsrtbt-1.6.335 | Creates an ext2 filesystem on a chosen partition.
mkswap | Included in tomsrtbt-1.6.335 | Creates a swap filesystem on a chosen partition.

## 3.8. Boot Managers

Table 8. Boot Managers

Tool | Requirements | Description
--- | --- | ---
lilo | linux | Configures which operating system is booted. lilo itself if very robust and configurable. Some care is required, since lilo is usually used to overwrite the master boot record, lest one carelessly loose the ability to boot Windows automatically.
loadlin (uc) | Windws 95 or 98 | Started from Windows in dos mode. (Can be placed as shortcut in Windows) Replaces linux with Windows in memory. Since loadlin does not overwrite the master boot record, a failed installation should not be able to risk Windows.

# 4. Actual Experiences - Adding linux to New Computer Preloaded with Windows 98

Nancy is unfamiliar with keeping a log, so Tom prepared it for her as he unboxed and assembled her new computer. tom also knows that it is far easier to remove the computer case once and record all the model numbers, chipsets, and model types than it is to later open the case to get a single model number or to guess the information that will be later needed. During the computer service life, only 10% of the numbers collected will ever be used, but there is no easy way to predict which 10%.

The following is an extract from Nancy's log. Identidation numbers have been changed and some irrelevant data has been removed. Most of the data came from the invoice that accomapanied the computer and the specifications [Start\Run...\] Open: c:\DELL\DOCS\EDOCS.EXE [OK] that were provided on the computer.

## 4.1. Configuration

A hardcopy of critical portions of this information, master disks, and backup disks is kept in a white binder, located physically close to this host, labelled Nancy System Administration Log.

### 4.1.1. Hardware

Table 9. Hardware

Date | Bay or Slot | Contents
--- | --- | ---
1999-10-21 | Primary Hard Disk Bay | Hard Disk
1999-10-21 | Secondary Hard Disk Bay | empty
1999-10-21 | Diskette Drive Bay | Floppy Disk
1999-10-21 | Drive Cage Top 5.25" Bay | CD Writer
1999-10-21 | Drive Cage Bottom 5.25" Bay | empty
1999-10-21 | Drive Cage Top 3.5" Bay | empty
1999-10-21 | Drive Cage Bottom 3.5" Bay | empty
1999-10-21 | Dimm Socket Bank 0 | RAM
1999-10-21 | Dimm Socket Bank 1 | empty
1999-10-21 | Dirmm Socket Bank 2 | empty
1999-10-21 | Primary EIDE Bus | Hard Disk
1999-10-21 | Secondary EIDE Bus | CD Writer
1999-10-21 | ISA Expansion Slot | empty
1999-10-21 | PCI Expansion Slot 1 | empty
1999-10-21 | PCI Expansion Slot 2 | Modem
1999-10-21 | PCI Expansion Slot 3 | empty
1999-10-21 | PCI Expansion Slot 4 | Sound
1999-10-21 | PCI Expansion Slot 5 | empty
1999-10-21 | AGP Port | Graphics

### 4.1.2. Components

Table 10. Components

Date | Component | Action
--- | --- | ---
1999-10-21 | Case |
    Tower
    Mfr Dell
    Model Dimension XPS Txxx
    M/N MMS
    Mfr Date mmddyy
    P/N 01968D Rev A04
    S/N nnnaa
    DP/N 000338D Rev A00
    DS/N xxxxx-xxx-xxxx
    FCC Class B
1999-10-21 | Dell Dimension XPS Txxx Reference and Troubleshooting Guide |
    Mfr Dell
    Model MMS
    P/N 8868D Rev. A01
1999-10-21 | Central Procssing Unit |
    procssor: 0
    vendor_id: GenuineIntel
    cpu family: 6 (Pentium III)
    model: 7
    model name: 00/07
    stepping: 3
    cpu MHZ: 448.971025
    cache size: 512 KB
    fdiv_bug: no
    hlt_bug: no
    sep_fug: no
    f00f_bug: no
    coma_bug: no
    fpu: yes
    fpu_exception: yes
    cpuid level: 2
    wp: yes
    flags: fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca
    cmov pat
    bogomips: 447.28
    FCC Class B
1999-10-21 | System Battery |
    CR2032 3.0V
1999-10-21 | System Board |
    DP/N AA722396-109 Rev. A01
    S/N xxxxxxxx-xxxxx-xxx-xxxx
    FCC Class B
1999-10-21 | Hard Disk |
    Primary Hard Disk Bay
    Primary EIDE Bus
    FCC Class B

    Capacity 13.6 GB
    RPM 7200RPM
    LBA 26.712.000 SECTORS
    CYL 1661

    DeskStar
    Mfr IBM Disk Storage Products KFT.
    Model DPTA-371360 IDE/ATA
    MLC F42312
    P/N 31L9151
    DP/N 0003570T-47710-9A2-31TJ
    Rev A00
1999-10-21 | Floppy Disk |
    Diskette Drive Bay
    FCC Class B

    Mfr Sony
    Model MPF920
    S/N xxxxxxxx
    DP/N 0003884D Rev A00
    DS/N xxxxx-xxx-xxxx
1999-10-21 | CD Writer |
    Drive Cage Top "5.25" Bay
    Secondary EIDE Bus
    FCC Class B

    Jumpers
     Reserved
     Reserved
     R Audio Out
     Gnd
     Gnd
     L Audio Out
     CSEL (closed)
     SLAVE (open)
     MASTER (open)
     ATAPI Cable (40-pin keyed)
     Power Supply (IBM 4-pin)

    CDR 4x
    CDRW 4x
    Read 24x

    Mfr Sony
    Model CD-R/RW ATAPI
    M/N CRX100E
    S/N xxxxxx
    DP/N 0002064P Rev A00
    DS/N xxxxx-xxx-xxxx
1999-10-21 | RAM |
    Dimm Socket Bank 0
    FCC Class B

    16Mx 64 MB SDRAM
    Non-ECC
    PC100-222-620
    168-pin

    Mfr Toshiba
    M/N THMY6416H1EG-A0
    S/N xxxxxx/xxxxxxx
1999-10-21 | Modem |
    PCI Expansion Slot 2
    J8 -> Sound Telephone Audio Out
    FCC Class B

    56K
    See CD 3Com U.S.Robotics
    Modem CD-ROM

    USRobotics V.90/56K
    Model 0727
    Mfr 3Com
    Product 3CP3298-DEL
    SN xxxxxxxxxxxx
    DP/N 00046XVP Rev A00
    DS/N xxxxx-xxx-xxxx
1999-10-21 | Sound |
    Montego II
    PCI Expansion Slot 4
    CD IN -> CD Writer Audio Out
    TAO -> Modem J8
    FCC Class B

    Mfr Turtle Beach
    Model A3D 320V
    DP/N 0005931D Rev A00
    DS/N xxxxx-xxx-xxxx
1999-10-21 | Graphics |
    AGP Port
    FCC Class B

    Mfr ATI Technologies Inc
    P/N 1024980311010171
    S/N xxxxxxxxxxxxxxxxxxxxxxxxxx.
    DP/N 0000320D Rev A00
    DS/N xxxxx-xxx-xxxx
1999-10-21 | Power Supply |
    FCC Class B
    DP/N 0009228C Rev N02
    DS/N xxxxx-xxx-xxxx
1999-10-21 | Monitor |
    FCC Class B

    17" (15.3" visible)
    Color 1024x768
    See CD Displays by Dell
    Ultrascan P780 Color Monitor

    Mfr Dell Computer, Inc.
    Model UltraScan P780
    P/N 6271R
    S/N xxxxxxxxxxx
1999-10-21 | Speakers |
    Right Analog Input -> Sound ((( )))
    FCC Class B

    Mfr Harmon/Kardon
    Right M/N HK195
    Right P/N 3862A201
    Right DP/N ZL001-98U Rev B
    Right DS/N xxxxx-xx
    Left M/N HK195
    Left DP/N ZL001-98URev B
    Left DS/N xx-xx
    Adapter M/N A41411C
    Adapter P/N HK195-01T
    Adapter Input 60Hz 22W
    Adapter Output 15VAC 1.1A
1999-10-21 | Keyboard |
    QuietKey
    PS/2 Keyboard Connector
    FCC Class B

    Mfr Dell
    DP/N 0004939R Rev A00
    DS/N xxxxx-xxx-xxxx
1999-10-21 | Mouse |
    MS IntelliMouse
    PS/2 Mouse Connector
    FCC Class B

    Mfr Microsoft Inc.
    Model IntelliMouse 1.1A PS/2
    S/N xxxxxxxxx
    DP/N 03235E Rev A00
1999-10-21 | Microphone |
    -> Sound Mic In
    FCC Class B

### 4.1.3. BIOS

Table 11. BIOS

Date | Component | Action
--- | --- | ---
1999-10-21 | Setup Procedure | Restart When Dell splash screen appears, [del] Dell Dimension XPS T450 Setup
1999-10-21 | Main\BIOS Version | A05
1999-10-21 | Main\Processor Type | Pentium(R) III
1999-10-21 | Main\processor Speed | 450 MHz
1999-10-21 | Main\Cache RAM | 512KB
1999-10-21 | Main\Service Tag | zzzzz
1999-10-21 | Main\System memory | 128 MB
1999-10-21 | Main\L2 Cache ECC Support | Auto
1999-10-21 | Advanced\Peripheral Configuration\Plug & Play O/S | No
1999-10-21 | Advanced\Peripheral Configuration\Reset Configuration Data | No
1999-10-21 | Advanced\Peripheral Configuration\NumLock | Auto
1999-10-21 | Advanced\Peripheral Configuration\Serial Port A | Auto
1999-10-21 | Advanced\Peripheral Configuration\Parallel Port | Auto
1999-10-21 | Advanced\Peripheral Configuration\Mode | ECP
1999-10-21 | Advanced\Peripheral Configuration\Legacy USB Support | Enabled
1999-10-21 | Advanced\IDE Configuration\IDE Controller | Both
1999-10-21 | Advanced\IDE Configuration\Primary IDE Master | IBM-DPTA-371360-(PM)
1999-10-21 | Advanced\IDE Configuration\Primary IDE Slave | None
1999-10-21 | Advanced\IDE Configuration\Secondary IDE Master | CD-RW CRX100E- (SM)
1999-10-21 | Advanced\IDE Configuration\Secondary IDE Slave | None
1999-10-21 | Advanced\Diskette Options\Diskette Controller | Enabled
1999-10-21 | Advanced\Diskette Options\Diskette A | 1.44/1.25 MB 3.5"
1999-10-21 | Advanced\Diskette Options\Diskette Write Protect | Space Available
1999-10-21 | Advanced\DMI Event Logging\Event log validity | Valid
1999-10-21 | Advanced\DMI Event Logging\View DMI event log | No unread events
1999-10-21 | Advanced\DMI Event Logging\Clear all DMI event logs | No
1999-10-21 | Advanced\DMI Event Logging\DMI event logging | Enabled
1999-10-21 | Advanced\DMI Event Logging\Mark DMI events as read | No unread events
1999-10-21 | Advanced\Video Configuration\ISA Palette Snooping | Disabled
1999-10-21 | Advanced\Video Configuration\AGP Aperature Size | 64MB
1999-10-21 | Advanced\Video Configuration\Default Primary Video Adapter | AGP
1999-10-21 | Advanced\Resource Configuration\C800-CBFF | Available
1999-10-21 | Advanced\Recource Configuration\CC00-CFFF | Available
1999-10-21 | Advanced\Recource Configuration\4000-43FF | Available
1999-10-21 | Advanced\Recource Configuration\4400-47FF | Available
1999-10-21 | Advanced\Recource Configuration\4800-4BFF | Available
1999-10-21 | Advanced\Recource Configuration\4C00-4FFF | Available
1999-10-21 | Advanced\Recource Configuration\IRQ 3 | Available
1999-10-21 | Advanced\Recource Configuration\IRQ 4 | Available
1999-10-21 | Advanced\Recource Configuration\IRQ 5 | Reserved
1999-10-21 | Advanced\Recource Configuration\IRQ 7 | Available
1999-10-21 | Advanced\Recource Configuration\IRQ 10 | Available
1999-10-21 | Advanced\Recource Configuration\IRQ 11 | Available
1999-10-21 | Power\Power Management | Enabled
1999-10-21 | Power\Inactivity Timer | Off
1999-10-21 | Power\Hard Drive | Enabled
1999-10-21 | Power\VESA Video Power Down | Standby
1999-10-21 | Boot\Boot-time Diagnostic Screen | Disabled
1999-10-21 | Boot\QuickBoot Mode | Disabled
1999-10-21 | Boot\First Boot Device | Removable Devices
1999-10-21 | Boot\Second Boot Device (obsolete) | Hard Disk
1999-10-21 | Boot\Second Boot Device | ATAPI CD-ROM Driv
1999-10-21 | Boot\Third Boot Device (obsolete) | ATAPI CD-ROM Driv
1999-10-21 | Boot\Third Boot Device | Hard Disk
1999-10-21 | Boot\Fourth Boot Device | Network Drive
1999-10-21 | Boot\Hard Drive\1 | IBM-DPTA-371360-(PM)
1999-10-21 | Boot\Hard Drive\2 | Bootable Add-In Card
1999-10-21 | Boot\Removable Devices\1 | Legacy Floppy Drive

### 4.1.4. Firmware

Table 12. Firmware

Date | Component | Action
--- | --- | ---
1999-10-21 | Partition Table |
    tomsrtbt-1.6.335 (linux-2.0.35)
    bash>/bin/fdisk
    fdisk> p
     Disk /dev/hda: 255 heads, 63 sectors, 1024 cylinders
     Units = cylinders of 16085 * 512 bytes

     Drive     Boot Start   End    Blocks  Id  System
     /dev/hda1  *       1  1662  13349983+ 0c  Win95 FAT32
    (LBA)

    Partition has different physical/logical endings
    phys = (1022, 254, 63)  logical = (1661, 254, 63)
1999-10-22 | Partition Table |
    Windows98 Startup Disk +fips.exe
    A:\> fips
    (Ignore warning about physical != logical length)
    Save current partition info: yes
    (saved as rootboot.000)
    New partition start: 501

    tomsrtbt-1.6.335 (linux-2.0.35)
    bash>/bin/fdisk -v
    fips Version 2.8
    bash>/bin/fdisk
    fdisk> p
    Disk /dev/hda: 255 heads, 63 sectors, 1661 cylinders
    Units = cylinders of 16085 * 512 bytes

      Drive  Boot  Start  End    Blocks   Id  System
    /dev/hda1 *        1   501   402451+  0c  Win95 FAT32 (LBA)
    /dev/hda2        502  1002   402482   83  Linux Native
    /dev/hda3       1003  1011    72292   82  Linux Swap
    /dev/hda4       1012  1661  5221125   83  Linux Native
1999-10-21 | Windows Operating System |
    DESC KIT,DOC/DSK,W98,OSR1,ENG

    Language English (United States)
    Keyboard United States 101
    First and Middle Jo'an K.
    Last Name Meier
    Country Code United States of America
    Area Code 336
    Access Code No
    Touch Tone Yes
    Time Zone (GMT-05:00) United States Eastern
    Daylight Savings Time Automatic
    Mfr Microsoft
    Model Windows98 2nd Ed
    Product Key G74XD-KMV7J-XJC3X-PYBG6-DHPP6
    S/N xxxxxxxxxx
    DP/N 08001T Rev. A00
1999-11-03 | linux Operating System |
    SuSE-6.2.0-2

    reboot CDROM1
    linuxrc v0.91 (kernel 2.2.10)

    linuxrc> ... language ... English
    ... display ...? Color display
    ... keyboard ... English (US)
    Main menu
      System Information
        Harddisks / CD-ROMS
          (Hard Disk and CD-ROM found)
        Processor
          (no bugs)
      Start Installation / System
        Start Installation
          Source: CD-ROM

    Yast v1. 01
     Install Linux from scratch
      [SELECT SWAP PARTITION] /dev/hda3
       ... format ... yes
      [PARTITION HARDDRIVES/Do not Partition]
      CREATING FILESYSTEMS:
       /dev/hda1     no    vfat /WinC Win95 FAT32
       /dev/hda2 ... check ext2 /     Linux
       /dev/hda4     no    vfat /WinD Win95 FAT32
       Create/Change Configuration
       Xserver = svga (otherwise unrecognized)
      [SELECT KERNEL/Standard (E)IDE Kernel]
1999-11-05 | Root password |
    In sealed envelope in hardcopy log.
1999-11-05 | X11 |
    XFree86-3.3.4
1999-11-05 | X11 mouse |
    bash> yast
    [System Administration/X86 Configuration/SaX]
     [Mouse]
      Vendor: Microsoft
      Name: Intellimouse PS/2
      Port: PS/2
      Buttons: 3
      [Expert]
       Protocol: IMPS/2
       Device: /dev/psaux
     [OK]
    [Apply]
1999-11-05 | X11 keyboard |
    bash> yast
    [System Administration/X86 Configuration/SaX]
     [Keyboard]
      Model: Dell 101-key PC
      Language: U.S. English
    [Apply]
1999-11-05 | X11 Graphics Card |
    bash> yast
    [System Administration/X86 Configuration/SaX]
     [Card]
      Vendor: ATI
      Model: XPERT98
      [Expert]
       Server: XF86_mach64
       Memory: 8192k
       DAC: 207
    [Apply]
1999-11-05 | X11 |
1999-11-05 | TimeZone |
    EST5EDT

    Hardware Clock set to local time
1999-11-05 | Network |
    Hostname: xxxxxxx
    Domain: xxxx.xxx

    No network card
    [TCP IP CONFIGURATION/Loopback only
1999-11-05 | Mail |
    Modem will be used

    [SENDMAIL CONFIGRUATION/... temporary connection ...]
1999-11-05 | Boot Manager |
    lilo

    Windows /dev/hda1
    SuSE /dev/hda2 /boot/vmlinuz
1999-10-21 | Partition 1 Filesystem |
    C:
    FAT32
1999-11-02 | Partition 2 Filesystem |
    omsrtbt-1.6.335 (linux-2.0.35)
    bash> /bin/mke2fs -c /dev/hda2
    bash> /bin/e2fsck /dev/hda2
1999-11-02 | Partition 3 Filesystem |
    tomsrtbt-1.6.335 (linux-2.0.35)
    bash> /bin/mkswap -c /dev/hda3
1999-10-21 | Partition 4 Filesystem |
    D:
    FAT32

    [[My Computer]] {(D:)} [Format ...] [Format type\Full] [Start]

    [Close]

    ScanDisk reported no errors in a thorough test.

# A. Appendix

# A.1. Frequently Asked Questions

A.1.1. After running fips, why does Windows report that I still have only one partition?
A.1.2. Why does my tool report an error that physical length does not match the logical length of the partition?
A.1.3. How do I know what version of Windows I have?
A.1.4. How do I know what version of linux kernel I have?
A.1.5. How do I know what version of linux distribution I have?
A.1.6. If I make a mistake can I start over?
A.1.7. How large should my swap partition be?
A.1.8. Should I add package xxx?

A.1.1. After running fips, why does Windows report that I still have only one partition?

Windows 98 does not recognize the effect of fips-0.9e. fips-2.0 has successfully been used to split a Windows98 partition. According to an unreliable source, Windows 98 reads partition data from the first 512 bytes of the partition itself and considers this more reliable data than the partition table.

A.1.2. Why does my tool report an error that physical length does not match the logical length of the partition?

This means that the partition table is inconsistent, and may be inaccurate. Modifying a disk with an inaccurate partition table usually requires an expert to reduce the almost certain chance of data loss.

The severity of this message is dependent on the size of the disk. Due to historical limitations, most (but not all) computer BIOSs only support disks with less than 1024 cylinders. Booting the operating system depends on the bios, therefore (on such systems), the entire operating system must fit within this 1024 cylinders.. For the same historical reasons, the partition table format only supports reporting disk sizes of 1024 or less cylinders. Many disks today have more than 1024 physical cylinders but by convention the partition table records exactly 1024 cylinders. The operating system still needs to know where the actual partitions begin an end beyond the first 1024 cylinders and this is recorded in the partition table.

A large disk with more than 1024 cylinders will have a logical size (sum of partition sizes) that exceeds 1024 and matches the actual size, though the partition table reports a physical size of exactly 1024 cylinders. In the case of a large disk, this message is essentially useless.

A.1.3. How do I know what version of Windows I have?

One or more of the following should tell you what version of Windows you have.

- C:\>ver

- {My Compuer} [Properties] [General]

- [Start] [Run...] Open: command [OK]

- [Start\Run...] Open: ver [OK]

- [Start\Run...] Open: cmd ver [OK]

A.1.4. How do I know what version of linux kernel I have?

bash> uname -a

A.1.5. How do I know what version of linux distribution I have?

The question may have no meaningful answer. Since unix dialects (e.g. linux) use many interchangeable parts, it makes little difference to this HOWTO what distribution you have. The applications loaded on most linux hosts varies with time and the tastes of the owner, so that they seldom match any distribution for more than a very brief period.

Most distributions are loosely classed by the package manager that they use.

- pkgtool - slackware

- rpm - RedHat

bash> uname -a

A.1.6. If I make a mistake can I start over?

In general, no. For this reason, meticuluous care is required, especially at certain stages. Some of the operations are idempotent. An idempotent operation is one which either fails and has no effect, or succeeds and has no effect after its first success. Some of the operations are reversible. A reversible operation has an inverse operation so that you can return things to what they were and start over.

Formatting is especially dangerous because it is neither idempotent nor reversible. If formatting succeeds, the original data is lost. If formatting fails, the original data is probably lost (since indices are usually destroyed early).

Table A-1. Distributions

Operation | Idempoten | Reversible | Inverse Operation | Caveat
--- | --- | --- | --- | ---
Backup | Yes | Yes | Destroy the backup | Try reading the backup lest it be corrupt
Catalog | Yes | Yes | Destroy the catalog | Record too many details since only 1-10% will ever be used, though it is hard to predict which 1-10%.
Attach | No | Yes | Disattach the devices | Use electrostatic protection and personal safety procedures lest the delicate components or yuurself be damaged physically.
Compact | Yes | No |  | Repair filesystem errors before compacting, since recovery will probably be impossible after compacting.
Repartition | Yes | Yes | Record the starting table. Reenter the recorded starting table | Carefully check the partitioning before using the computer, since applications will believe the partition table and may destroy files. A small error in partition borders or lengths may cause infrequent disk errors that are not seen for months, but can become very time-consuming.
Format | No | No |  | All data in the partition is destroyed so make sure that there is no useful information in the partition and/or that the data is in a good backup.
Initial Program Load | Yes | Yes | Format the partition | Carefully record, test, and expect to change the configuration of linux as your understanding, needs, and desires change. As you use your computer, you can expect to quickly find that you wish you'd made different configuration decisions. Most linux distributions allow easy reconfiguration of a running system.
Boot Manager | Yes | No |  | Windows installation overwrites the boot manager with one that loads Windows automatically. If you isntall Windows+linux, you must installl Windows first.
Mount | Yes | Yes | Unmount | Care with permissions is needed to prevent undesired use of the computer (e.g. openning your telephone to anyone on your cable modem network may tend to increase your phone bills.).

A.1.7. How large should my swap partition be?

Swap partition size (or even its existence) is a hotly debated issue beyond the scope of this HOWTO. Many books on performanc tuning provide guidelines on swap partition size and how to recognize a need to expand or shrink it. At press time, the author recommends 64M as a safe size.

A.1.8. Should I add package xxx?

A reader of this HOWTO presumably wants to benefit from the strengths of both Windows and linux, and suffer the shortcomings of neither.

Most linux distributions allow you to cleanly remove any package. unix dialects support permissions so that each package gets a well defined share of the computer and this share can be identified and taken back in its entirety. unix dialects support symbolic links so that the package can appear to be in a convenient place without actually occupying space from the convenient place. The distributions that do not support easy removal are usually tiny specialized distributions like tomsrtbt. The risk that an unwanted package will plague your linux indefinitely is small since you can remove it at any time.

Most Windows packages can never be uninstalled cleanly under Windows, as they usually leave dll updates and registry entries. It is therefore important to add packages only when you are sure that you need them, since your only way of removing them may be to reinstall Windows and every package that you want.

Sharing a machine between Windows and linux, means that linux can aid clean removal of packages from Windows. Since it only identifies but does not predict, linux cannot insure clean removal. Since linux find resolves to the second rather than Windows find to the day, it can much more accurately identify what was changed.

1. Record the date and time before you install a package to Windows.

2. Install the package.

3. Record the date and time after you install the package.

4. Under linux, use touch to create a file timestamped at the start of installation.

5. Under linux, use touch to create a file timestamped at the end of installation.

6. Under linux, use find to identify every Windows file and folder that was altered during installation.

7. Store the list of altered files and folders to identify what has to be removed or restored.

# A.2. Caveats

There ar no caveats at press time. Please contact the maintainer with any suggestions that you have.

# A.3. Tips and Tricks

There ar no tips and tricks at press time. Please contact the maintainer with any suggestions that you have.

# A.4. Reference

## A.4.1. Legend

Table A-2. Legend

Symbol | Meaning | Example
--- | --- | ---
[...] | Left-click a button | [File/Close] appears in most X applications. [OK] appears in most Windows dialogs
[[...]] | Double-left click a button | [[My Computer]] displays the devices of a Windows systems
{...} | Right-click a button | {My Computer\Properties} displays the configuration of a Windows system
...\... (or) .../... | Walk a hierarchy in a menu or filesystem | linux uses / to delimit elements in hierarchies. Windows uses \ to delimit element in hierarchies.
bash> .. | Enter instructions into a bash-style shell | bash> uname -a (returns linux kernel version information)
A:\> ... (or) C:\> ... | Enter instruction into a dos shell |
    [Start\Run...] Open: command [OK]
    C:\> ver
    (returns Windows version information)
<...> | replace with indicated value | Enter First Name: <your first name>

# Glossary

# B

BIOS
(BIOS)

  A bios (Basic Input/Output System) is a small operating system supplied with and usually encoded in the computer hardware. The bios is often little more than is needed to load and run the operating system normally used. Most BIOSs at press time reside in shadow ram which is electronically removed from the computer once the normal operating system is loaded and starts running.

Boot Manager

  See: Master Boot Record

# D

Defragmenting

  See: Repartitioning

Disk

  A disk is a physical storage medium. A disk must be formatted before data on the disk is accessible. A municipal library building is a good model of a disk. The building itslf has a fixed volume and can therefore hold a fixed number of books. The largest number of books can be stored by simply dumping them inside the building, but the result would simply be a big trash pile and the books would not be available for use. In order to use the books, they are placed on bookshelves so they can be accessed. Placing the equivalent of bookshelves on the disk is called formatting

  Table 1. Distributions

  Component | Analog
  --- | ---
  disk | municipal library building
  format | bookshelves

# F

Filesystems
(MBR)

  See: Partition

Format
(MBR)

  See: Disk

Formating

  Though beyond the scope of this HOWTO, low-level formatting refers to the phsyical division of the magnetic media into magnetic domains similar to applying the bias to magnetic tape.

  See Also: Disk.

# M

Master Boot Record
(MBR)

  Each bootable partition has firmware that runs in the bios. This firmware historically occupies the 446 bytes before the partition table. A simple master boot record simply copies the operating system from the media into memory and turns computer control over to the operating system.

  At power up, cold boot, or warm boot, the bios searches the computer storage media until it finds a master boot record which it then executes it. The search locations and order differ between different bioses. Often the search order is configuratble with firmware encoded in the computer hardware with the bios. The most common search order is floppy, cdrom, network, usb disk, scsi disk, ide disk.

  A more complex master boot record, called a boot manager, loads a program into memory that gives the user an opportunity to select which operating system to load.

# O

Operating System
(OS)

  An operating system is firmware that supports effective computter use. As an allocator, the operating system verifies that only one process at a time controls the cpu , disk, write access to a file, and other unshareable resources. As a toolkit, the operating system provides a set of software pieces for common functions (e.g. reading from a file, writing to the screen). As a virtual machine, the operating system makes the physical computer behave like another well-specified computer, so that software can be written once for the well-specified computer and then run on many physical computers with compatible operating systems. As an allocator, the operating system is like the staff that schedules the use of meeting rooms in the library. As a toolkit, the operating system is like the library staff that reshelves books or the library copier. As a virtual machine, the operating system is like one of the many libraries that endeaver to look like the U.S. Library of Congress with vertical bookshelves, a circular reference desk, and a lobby area with indices. A patron entering any such library finds the layout familiar, and one patron can give usable directions to a patron of a different library.

  - Allocator

  - Toolkit

  - Virtual Machine

  Table 2. Operating System

  Component | Analog
  --- | ---
  operating system | library staff

# P

Partition

  A disk is a physical portion of a disk. A filesystem is a map between addresses and files accessed on the disk. Most libraries are divided into floors or sections, such as Adult Fiction, Reference, and Juvenile Non-Fiction. Each section usually has its own card catalog and often different sections use different schemes. Adult Fiction is usually indexed by Author Name. Reference is usually indexed by Subject. There are even competing indexing schemes for the same section such as Dewey Decimal or Library of Congress.

  Table 3. Partition

  Component | Analog
  --- | ---
  partition | library building floor
  filesystem | indexing scheme and card catalog

Partition Table

  Every disk has a partition table stored in a standard location and in a standard format on the disk. The partition table describes where each partition begins and ends on the disk. The partition table also describes what filesystem is used in each partition. The partition table is like the wall map that usually appears at the entry to any library. This wall map tells where each section (e.g. Reference, Adult Fiction, Juvenile Non-fiction) is located and how the books are shelved (e.g. Title, Author, Dewey Decimal)

  Table 4. Partition Table

  Component | Analog
  --- | ---
  partition table | library floor map

# R

Repartitioning

  Before defragmenting, the index (I), active files (A) and deleted files (d) are distributed across the partition.

      .-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
      |I|I|d|A|d|d|d|d|d|d|d|d|A|A|d|d|d|d|d|d|A|A|A|d|d|A| | | | |
      '-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'

  After defragmenting, the index(I), and active files (A) are concentrated. Some deleted files (d) are lost. Some space formerly occupied by active files become lost (l).

      .-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
      |I|I|A|A|A|A|A|A|A|d|d|d|l|l|d|d|d|d|d|d|l|l|l|d|d|l| | | | |
      '-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'

  After splitting, no active data is lost, and a new partition appears that is not yet formatted.

      .-.-.-.-.-.-.-.-.-.-.
      |I|I|A|A|A|A|A|A|A|d|
      +-+-+-+-+-+-+-+-+-+-+-.-.-.-.-.-.-.-.-.-.
      |d|d|l|l|d|d|d|d|d|d|l|l|l|d|d|l| | | | |
      '-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'

  After repartitioning, the new partition is further split.

      .-.-.-.-.-.-.-.-.-.-.
      |I|I|A|A|A|A|A|A|A|d|
      +-+-+-+-+-+-+-+-+-+-+
      |d|d|l|l|d|d|d|d|d|d|
      +-+-+-+-+-+-+-+-+-+-+
      |l|l|l|d|d|l| | | | |
      '-'-'-'-'-'-'-'-'-'-'

  After formatting, each formatted partition has an empty filesystem. (e.g. dos6 (I, A), ext2 (N, A), vfat (V, A)).

      .-.-.-.-.-.-.-.-.-.-.
      |I|I|A|A|A|A|A|A|A|d|
      +-+-+-+-+-+-+-+-+-+-+
      |N| |N| | | | | | | |
      +-+-+-+-+-+-+-+-+-+-+
      |V|V|V| | | | | | | |
      '-'-'-'-'-'-'-'-'-'-'

# S

Splitting

  See: Repartitioning

# W

Winmodem

  Winmodems are a class of devices including winprinters, winscanners. Winmodems are a subset of the class of devices that achieve low-cost by replacing hardware in their convential equivalents with firmware run by the host. The drawback of these devices is that their dependence on the host usually slows or prohibits other operations simultaneously on the host.

  By analogy low-cost headlights for an automobile might consist of a flashlight atop a battery tray that sits in the front passenger seat. To use the headlights, you must start the car, remove the battery from the car, and install the car battery in the flashlight tray. The headlight cost is reduced by the cost of the solenoid, dashboard switch, wiring, and fuses. If you use the headlights, the limitations mean that you can't carry a front passenger, you can't restart the car, you can't use the car radio, and the fuel guage reads empty.

  Winmodems are distinct from the slightly larger class of these low-cost devices by the fact that they use proprietary firmware included in the Windows operating system. In the United States, it is illegal to sell firmware to use this proprietary firmware without Microsoft consent. At press time, the price of Microsoft consent is only slightly less than the cost of a convential device.

# Bibliography

DosLinux: Small linux distribution installed on an existing Dos system i.e. msdos, pcdos, opendos, and win95/98., .

e2fsck: ext2 filesystem checker Included in tomsrtbt, .

fdisk: Partition table editor Included in most linux distributions (e.g. tomsrtbt, Slackware), .

ftp://ftp.rge.com/pub/systems/linux/slackware/slakware/a14/util.tgz

fips: Partition Splitter, .

ftp://sunsite.icm.edu.pl/pub/Linux/sunsite.unc.edu/system/installl/

format: Windows Partition Fromatter Included in Windows 95/98/NT, Microsoft.

Ghost: Windows Partition Backup, Norton.

http://www.norton.com/sabu/ghost/

Hardware Compatibility HOWTO: compilation of linux support experience what works, what doesn't, If the product manufacturer does not support linux, it may be several months before user experience is reported, .

http://howto.linuxberg.com/LDP/HOWTO/Hardware-HOWTO.html

lilo: Simple text configuratble boot manager, .

mke2fs: ext2 filesystem creator Included in tomsrtbt, .

mkswap: swap filesystem creator Include in tomsrtbt, .

System Performance Tuning: , O'Reiley & Associates, Inc., 0-937175-60-9.

http://www.ora.com/catalog/spt/

tob: Unix Tape-Oriented Backup, .

http://metabab.unc.edu/pub/Linux/system/backup/

tomsrtbt: Tom's Root Boot Small Linux distribution that fits on a single floppy disk t's useful as a root/boot/recovery disk, Toms Ochser.

http://www.tux.org/pub/distributions/tinylinux/tomsrtbt/

vmware: x86 emulation, VMware, Inc..

http://www.vmware.com/

yast: Yet another Setup Tool Suse System Configuration Tool, SuSE GmbH.

http://newton.ikp.physik.tu-darmstadt.de/doc/susehilf/pak_e/paket_yast.html