Introduction
Hi,
My name is Bernard Tyers, and I have been using Linux for about 2/3 years.
I still consider myself as a newbie.
I am a electronics student in Waterford Institute of Tech.
I wrote this for my own need really. I wanted to have something that I
could use as a question answerer.
If it is useful, you use it. If you want to add/change anything, you
can. Just let me know first, and make sure those involved get a mention.
Ok so, you have heard so much about Linux, it's faster, more stable, cheaper,
more efficient. You say, " I want to learn more but I don't want to loose
my Windows files and applications... Well good news. Don't despair. You can
have both Linux, and Windows9* (and other operating systems as well, see
farther down) living on the same computer, even better, living on the same
hard drive. This is really useful if you *DO* want to learn, and take
the
bother of switching to a better OS.
Windows and Linux can live comfortably on the same the same machine, even
the same harddrive. The choice of operating systems can be made at the
boot-up sequence when you thro the power switch. This configuration is
known as the "dual-boot" configuration. This is how most linux users start
off. Unless you're a BOFH of course *grin*.
Ok, so what type of a machine do you need? Well it depends on what type of
installation you want. Well, my current machine is a Pentium 166MMX,
32MB memory, hda = 2GB, hdb = 2GB (both IDE. hda is the Win95 drive,
hdb is the Linux drive), a logitech wheel mouse, two floppy drives (1.44MB),
a 32X CD, and a 100MB parallel Zip, and an external 56K modem.
The configuration I am going to show here will be installing Linux on the
same physical drive as the Windows drive. I will later, (when I get a chance)
write
an install faq/manual thingy for a two physical drive installation.
Ok, are do you have your seat-belt on? Here we go.
Anything typed inside these ' ' is a command. Type what's inside them.
Partition and File System
So, the first two terms that you should be conversant with are:
1) partition, and 2) File System. The physical disk can be divided into
smaller, seperate pieces which can belong to different owners, and have
different systems on each.
For a dual boot, Windows * will own some and Linux will own others. The
word "partition" does not refer to the wall, the "partition", but the
actual space that is seperated. Therefore we can say that Win will be
installed on the first (second, etc) partition.
The file system is the method of organiation, the system uses.
For example on CDs, the file system is the ISO9660 file system
. Regarding the operating system, the hard
disk can have different file systems located on it. The operating system
provides the directory tree (like the *nix tree analogy) as a file system,
catalog of available files.
Each operating system has its own file system. One advantage of Linux over
Win* is it can read both file systems used by Win95 and Win98.
Move over Windows, here comes Linux.
Most Linux distros come with a tool to allow you to resize/repartition your
drive. The most popular/widely distributed tool is called FIPS. The First
(non-destructive) Interactive Partition Splitter, it is usually found on
the Linux distro CD.
It normally resides in a /dosutils directory. You should also have a
blank formatted floppy at hand for use as a boot disk. I have found it is
handy to do a full format, scandisk, and defrag the harddrive. The one thing
you don't want happen in an emergency, is you "backup" boot floppy be
fragged or have bad sectors. Not nice! For Win95, 3.XX that should be
enough.
If you have Win98 installed or a more recent install of Win95 with a
large hard disk (bigger than 2GB), you probably need to add some tools
if you are using a FAT32 file system.
In this install I have used partition magic dos version (pqmagict), a little
dos based version of PQMAGIC. If you want this little disk, you can download
it from my website. At http://snet.wit.ie/bbt/downloads.
It should be there. The
whole thing fits on a 1.44MB (dos) floppy, with about 300K free. It is a
very useful, and easy application to use.
FAT32 Support Requirements
To have access to your Win partition from Linux (file sharing between Linux
and Win), which is useful, think of all those MP3s... you will also need a
version 2.0.34 of the Linux kernel or higher. Below is a list of recent
Linux distros and the kernel build versions (2.0.34 or higher!) that support
FAT32.
If your kernel version doesn't support Fat32 you will have to upgrade the
kernel. I'm not too hot on kernel upgrades, so I'm not going to say too much
on that. As ever RTFM!
Distributions with FAT32 support (kernel 2.0.34 or higher)
Distribution:
Earliest Version with FAT32 Support
Red Hat
Version 5.1 (with kernel 2.0.34)
Red Hat
Version 6.0 (with kernel 2.0.36)
SuSE
Version 5.3 (with kernel 2.0.35)
SuSE
Version 6.0 (with kernel 2.0.36)
Debian GNU/Linux
Version 2.0 (with kernel 2.0.34)
Doctor, shall we prepare the patient?
OK, so you are really sure you want to go ahead. Right well, before you can
resize the Win partition, you should take a few steps, that have saved me at
times.
Delete unnecessary files
Firstly, delete any files from the drive that are not being used. For example
you can get rid of all those *.tmp files you see lurking in directories. Also
look in the c:\win\temp directory, again a lot of *.tmp files. You should then
empty the recycle bin.
Scandisk and Defrag
Like for the boot disk you will make, you should also check the file system
for errors using scandisk, and compact the drive using Defrag. One tip on
scandisk (as in Linux Journal), when running scandisk, be sure to check the
box next to "Automatically Fix Errors". Defragmentation consolidates all the
data at the "front" of the drive to make room at the "back" of the drive for
your new partition. When both are finished, you should also take a note of
how much space is now available on the disk. If it does not meet the
requirements needed for Linux, you should look again for files you can
*safely* delete.
OK, you have PQMAGIC, a floppy? so we can begin.
Restart the machine in DOS mode.
Open PQ MAGIC T. Select the drive you want (in my case its the second drive
drive 2 - 1032 MB).
You are then given a choice of different commands. Select A new drive,
Select new partition, options, advanced options, bootmanager, preferences,
about pq magic, exit pq.
The following are the possible choices:
D: Select a new drive. Gives you choice of physical drive.
P: Select a new
partition. (Here we have only the main partition)
O: Options. Gives you option to create a new partition, or gives
informtaion
on the selected partition.
A: Advanced options.
B: Boot manager
F: perferences. Allows you to select perferences on drive information.
Disables OS/2 EA errors on FAT. Enables NT 64K clusters. FAT32 Options,
Skips bad sector checks.
So, we want to create two partitions, 1 for ROOT (/) and 1 for usr
information. Firstly, select a new drive(d). Choose you LINUX drive,
(here I choose drive 2).
Then, options (O). We create the partition (T).
We then get the messgae :" Seletced Free space crosses 1024 cylinder boundary
FAT partitions will be limited to 504.0MB.
You must limit other partitions to this size and place them at the start of
the free space for the partitions to be bootable. "
We can ignore this. Just press any key. So, we are going to create the
PRIMARY partition.
We can choose an unformatted type (5), since it doesn't give an option for
any LINUX type.
We are then asked to enter the new partition size. We are given a valid
range value.
For my SWAP partition, I am going to give 80MB. Quite often you'll read:
"Swap should be at least as large as physical RAM." This quote is a relic of
times when 8MB was regarded as alot of RAM.
Applications that need considerable memory have shifted this value up.
Generally, 64MB of virtual swap should be sufficient. Don't be a scrooge.
SWAP can help when your physical mem is used up. If you compile a kernel
under X and want to look at man pages in HTML and have a heavy-duty editor
(like EMACS running you'll eat up that 64MB very quickly.
To be safe opt for about 96MB of SWAP. Never not assign SWAP. Even on a
256MB RAM machine give a SWAP.
We are then asked where we want to create the partition, at the beginning or
at the end. We will choose to put the SWAP at the beginning.
We then get a confirmation, of how big the partition is going to be, what
type, and where it will be. We then press T to create it.
We then choose the D again to select a new drive.
We again choose the LINUX drive. We choose the final partition that is left.
We create another partition. (T).
Again the cylinder boundary message comes up, ignore it.
We the choose the unformatted version again. I only want to have 2 partitions
on my drive, so, I make the last partition the full size of the remainder.
(In my case 951.9MB), this is pretty much up to yourself. It is better
practice to create:
one partition for SWAP, one partition for personal data (something like /usr/)
and one for the actual root dir, ( ' / '). This does help, if you accidently
do a 'rm -rf', and delete all your system /personal information. But
since its only a standalone, home usage, I just keep it all on the one
partition.
Again I create this partition at the end of the drive, and hit T to create.
The we can exit PQ Magic.We then change our BOOT sequence in our BIOS to
CR-ROM first. This is to allow your machine to detect the LINUX install
medium, which will be more-than-likely from CD-ROM. Then reboot your
machine.
On my machine at the boot stage I hit delete key and it allows me enter the
BIOS. Hit the Advanced Boot setup, and it will show the current sequence.
Change it and reboot. (This information will change from pc to pc, have a look
at your BIOS before you begin the install). When the machine reboots, it
should pick up the CD-ROM. In my case it was S.u.S.E 6.
The pc then tells me that it will use LILO-Boot from CD. It then loads the
setup sequence, and presents you with a black/white screen, and a list of
lanugages.
Choose ENGLISH, unless your feeling adventrous, and want to try installtions
in French. The colour display. The Keyboard MAP then (UK). You can pick the
primary ENGLISH setup.
Then MAIN menu.
You have a choice of Settings (which is just what you were at)
System INFO, whioch consists of Kernel messages, Harddisk /ROMS found.
Modules already loaded.
PCI info
Processor
Memory
I/O PortsNTS Devices
Network Card
DMA
Kernel Modules.
You are given a choice of Loading
SCSI
CD-ROM
NIC
PCMCIA
Show loaded
Unload
Autoload
modules. The easiest way is to autoload the modules, if you don't know what
hardware you have installed in your machine. One thing is if you have a ZIP
drive, you will have to hand install the module. Another strange little thing
is the module for the ZIP is in the SCSI list.
You then choose that you want to install LINUX from scratch.
Select the destination hard disk.
Choose your target drive, mine is /dev/hdb.
Choose the partitioing choice then
| /dev/hdb1 | 1 | 183 | 92200 | type 82
swap |
| /dedv/hbb2 | 184 | 2097 | 964656 | 83
native |
You change the type with F3. We then continue.
We must select swap partition.. in my case /dev/hdb1 92200
You will then get the message "your swap seems to be valid". YAST then
configures the swap
We then create filesystems
"An inode is created for every file when it is created. They are stored AFAIK
in linked lists on the disk and are used to describe the directory , owner and
access rights of a file. It also stores file type , creation ,access and
modification times. Files are mapped to inodes using their directory files and
all file access is carried out through the inode via a direct or indirect data
block pointer.
Inodes may be listed using ls -lai."
We must change the INODE dentisy to 1096.
"The INODE density gives the average size of a file on a particular partition.
The number of inodes determines how many files can be created on a given
partition. If this number is too small, it can happen that a partition seems
to be full although there are still some blocks left. Eg, if you choose 4096
bytes pre inode, it means that onb average you expect each file to have a size
of 4KB. Imagine you put only small files(1KB) on this partition, you will only
be able to use a quarter of your HD since the partition will seem to be
"full"."
4KB seems to be an adequate size in most cases. More INODES per partition
means there is less net data space, since inode tables also have to be written
on this partition.
Pressing F4 lets you choose where you want to mount the partitions.
You HAVE to assign one partition as the root partition, put in mount point,
which is ' / '
Then continue. If you need HELP, you can press F1.
It asks you do you want to create the SWAP filesystem.
"Do you want to create the /dev/hdb2 partition. All data will be lost."
It then creates the filesystem.
Thats about it, when it comes to the actual setup of the install. After that
it is up to you what packages you want to install.
Once you have chosen which packages you want to install you can choose the
install packages command. You have to have all the CDs at hand, because it
will ask you to change CDs during the install process.
Kernel and Boot Configuration.
You can choose to install any of the precompiled kernels on the SuSE CD. TaST
will suggest to write the kernel config file (called .config) to
/usr/src/linux.
As soon as you have set up the distribution, you should build a customized
kernel which is perfectly adapted to your system.This kernel will be suited
exactly to your machine and faster then any on the distro CDs.
You can also create a BOOT disk for your system, which is VERY important,
since you will be able to boot your entire system even if something goes wrong
while installing LILO or you can't boot from the harddrive for some reason.
Configuring LILO.
YaST also allows you to configure LILO. You will be using LILO as your
boot-manager, to boot between your two (or more) OS installs. One thing BE
CAREFUL WITH WINDOWS NT. For reasons( not yet known to me) NT seems not to
like to share the boot management with anything.
It will ask you "where to install LILO". If you plan to start Linux in a dual
situation (you should be, or why are you reading this!) you should install it
in the Master-Boot-Sector.
Then choose a reasonble time for the "Timeout time". This is the time it takes
for the boot sequence to wait for you to choose which OS you want to boot.
You will have to create a new configuration, use F4. Give your new config a
name. It has been proven to be a good choice to name this linux. You can
change the config by F5.
"Which operating system?". Here you have two alternatives, Boot Linux, and
Boot DOS.
To choose the root partition press F3.
When this is all configured. Reboot your machine and pray to the great tux in
the sky.
How to boot with LILO
"When LILO is launched, it displays the test LILO and a greeting. Thereafter,
a command prompt appears:
boot:
Here you select you operating system by entering its name, which is then
booted. The name of the operating system has also been set by you during the
installation. You can get a list of all the names of all operating systems by
pressing TAB.
After that it is up to you. You can set up accounts, setup users, etc.
Ok, thats it. If anyone wants to mail me you can get me at: btyers@snet.wit.ie.
One more thing, thanks to:
Shane Dempsey for the information on the INODE problem
Linux Journal for giving alot of useful information
And the SuSE team for producing a well readable manual.
Related: Alternatives to Windows Software Booting Up Partitioning your Hard Disk for Linux The Install Process VMWare 1.0
About the author, Bernard Tyers.
USERS COMMENTS
While the advice in this article is still worthwile, you should also look at the section in the Beginners Linux Guide on Partitioning your Hard Disk for Linux as it provides some more up to date information (October 2004) on the tools available for resizing partitions and the partition types used by newer versions of Windows (NT/2000/XP).
Also the link to the boot disk mentioned in this article is no longer available, though there are now up to date and stable free tools to perform the same task so the entire section on using this boot floppy should generally be ignored.
|