Installing Fedora 7

This is a brief set of instructions I've left for friends to follow, instead of me repeatedly explaining the same things over the phone.  If you're looking for in-depth tutorials on this subject, you'll want to look elsewhere.  This page is mostly about FC7, I've another page with generic hints on how to start installing software on Fedora, and yet another that's a review of Fedora 7.

Fedora 7 only comes from the official sources as a DVD or all the individual files.  You have to go elsewhere if you want it on CD-ROM.  Since all I had to hand was a CD-burner and one hard drive with FC6 already installed on it, I took the option of downloading and burning the “rescue” CD ISO image file, as my boot disc (which also gives me recovery options if something fouls up).  And downloading the DVD ISO image file to be left on a hard drive partition for the installation process to use as its install source.

In the past, I have done network installs of Fedora, but that can be a bit dicey if you have network hardware that's not supported, or not supported well, by whatever drivers are included with the installation routine.  If your networking hardware and speed is not a problem, you can avoid downloading all of the huge ISO file, just using the small rescue disc to start the install, fetching whatever else it needs off the network, to install.

I already had a /tmp partition big enough for it, so that partition was where DVD ISO image file went.  And since I want to be able to easily plug in other hard drives without Fedora having a fit about different partitions with the same labels, I gave all the partitions a unique label before doing the installation—after booting the rescue disc, but before you start working on the actual installation.  Before the installer's partitioning tool, even—it doesn't let you choose your own labels.  (Boot from the rescue/install disc, go through the various steps until you get asked to make some sort of choice about the hard drive, press CTRL+ALT+F2, or one of the other F keys, to get to a terminal, then issue your commands in that terminal).  This way, you're not trying to alter drives that the computer is using at the same time.

My technique is to write a name on the drive with texta (so you can easily tell drives apart, physically), and to include that name in the partition labels.  So, for example, the /home partition on the “john” drive is labelled as “john/home”, and so on for other partitions (the / is “john/”, the /tmp is “john/tmp”).  I do the same with the swap partition (remember to do this before installing a kernel if you want suspending-to-harddrive to work, or you'll have to remake the initrd file, afterwards, to suit).  I pick personal names so that I don't have to contend with two drives simply named Seagate or Western Digital, for example.

But before the labelling must come the partitioning (divide them up and call them names, bad pun intended).  I'm familiar with fdisk (the Linux version), but you can use other tools.  I like to avoid LVM—I had another drive go wonky, that used LVM, and it was a lot of pain to recover files from.  Not to mention that it's completely pointless if you never intend to connect another drive to the system, and have a partition span across the two of them.  Even if you do, there's other things, like RAID, that offer the same feature, and more.  I take the approach of having separate /boot/, /, /home/, /tmp/, /var/, and swap partitions, at least.  If you've got plenty of space, there can be some benefits in having a separate /usr/ partition.  And if you have masses of space, you can leave some unused for future expansion, or just create a great big spare partition (that's very useful for replacing operating systems without losing files you want to keep, when your work, and install files, are separate from the computer's files).

There's different ways to label the partitions.  You can use the e2label command on ext2 or ext3 partitions, and you can include the label as a parameter for the mkfs.ext3 command.  After having drive problems, previously, I did it with the mkfs.ext3 command, as I could also specify an option to check for bad blocks while formatting.  The mkfs.ext3 command lets you format, check the drive, and label the partition all in one command.

e.g. mkfs.ext3 -c -L john/home -v /dev/sdb2

In the past, the Red Hat Linux installer allowed you to do a bad block check while preparing your system, but that feature disappeared long ago.  I'd much rather find out about a bad drive before I try to use it, not some time after it destroys my work, even though it does take quite a while to complete checking large drive partitions.

You need to label swap partitions in another way, with the mkswap command.

e.g. mkswap -c -L john-swap /dev/sdb5

Obviously you can't format a partition that's holding files on you need to keep, like where I placed my installation DVD ISO file, so I just made sure it had the label I wanted, and forgoed formatting and checking that partition, for now.  I did that after the installation was over and done with.  Choosing the /tmp partition made that easier, as nothing needs to be kept in it.  And if you boot up into a text-only mode, or from another disc, nothing is being used in it when you want to format it.

e.g. e2label /dev/sdb7 john/tmp

After that bit of fiddling around, I went back to the provided installation routine, chose the drive it was going to be installed to, went with the option for manual/custom partition handling (all the prior work will be wasted if you do not do that).  In the partition editor, I'd select to edit each partition in turn, pick the appropriate mount point from the drop-down list, forgoing any formatting options and ignoring any protests about it (it doesn't need doing twice, and you can't format the partition with the install ISO file in it).  And then carried on through to picking what to install.

Log of my installation events (22-June-2007)
Time Doing what
few minutes Manual tweaking to set up drives and choosing what to install
2 min Getting ready to install
30 min Installing
20 sec Post install setting up (reboot, afterwards)
1 min 30 sec First bootup
few moments Customising
10 sec Logging in to a fully working system
8 min Downloading software updates
18 min Installing the updates
few moments Turning off a few services I didn't need, then rebooted (to use new kernel update)
1 min 20 sec Booting
few minutes Choosing additional software to install (either not on the install media, or simply not on its list)
1 min 45 sec Resolving dependencies
8 min Downloading additional software
5 min Installing the software
few minutes Choosing lots of fonts to add (forgot to do this earlier)
12 sec Resolving dependencies
15 min Downloading fonts
8 min Installing fonts

Afterwards, it required running “system-config-display --reconfig” to get the full resolution that my monitor and display adapter could run at.  It wouldn't go above 1280 × 960 pixels, yet they both do actually work at 1280 × 1024, at least.  I'm not sure if this was because the graphics was setup before there was an Xorg update installed, and I forgot to try doing this before the update.  But prior releases of Fedora got this right without giving me any grief about it.

Then I spent a few more minutes installing some extra software that doesn't come with Fedora 7.

Main sections:
contact details
business info
personal info
eBay & trading
“sales” ads
“wanted” ads
video production
misc info
website info/help
my computers
general info
desktop publishing
typing skills
WWW authoring
internet primer
turn it off?
electrical safety
why use Linux
why I use Linux
compatible hardware
feeling lucky?
Evolution signatures
installing software
auto NTPD restart
local DNS serving
restoring GRUB
overzealous HDD parking
Post-install customising
NFS serving
SMTP settings for Yahoo
time serving