Originally Published: Wednesday, 7 July 1999 Author: David Apfelbaum
Published to: featured_articles/Featured Articles Page: 1/1 - [Printable]

Dave's Diary, Entry 4 (Part 2): Installing Red Hat 5.2

This part of the diary entry is a continuation of Part 1 of Entry 4, Installing Red Hat 5.2.

Next window: "Components to Install"....

   Page 1 of 1  

This part of the diary entry is a continuation of Part 1 of Entry 4, Installing Red Hat 5.2.

Next window: "Components to Install". There is an option on this window to "Select Individual Packages". I've never used it. It's so easy to add packages after linux has been installed, why bother with it now?

In terms of "Components to Install", pick whatever you like. On smaller systems, I've stripped this down to a bare minimum. Which includes leaving off the GUI. But on the system I'm installing today, I have a gig to play with. Which is plenty of disk space. So I can include everything I want...

So, using the arrow keys to move up and down, and space to select, I'm selecting everything but "News Server" and "Everything". Then I'll just tab down and select "Ok".

I should point out that this system is not going to sit directly on the Internet. (I have a makeshift firewall.) If it were going to be attached to the internet, even if only through PPP, I'd be a lot more concerned about security. And I'll go into security issues, including how to disable some of the features and packages that I've just added, in a future diary entry.

Next window: "Install log". Red Hat's just letting me know that there will be an install log located in /tmp/install.log afterwards. Which has been useful in the past when things didn't go quite right. (The system involved had been cracked. "lsattr /bin/login" showed that the cracker had altered /bin/login with chattr to make it both immutable and append only. Which prevented us from upgrading /bin/login until we did a "chattr -ia /bin/login".)

Anyway, I'll just tab down and select "Ok".

We're now making the ext2 filesystem on /dev/hda9. (This will take a few minutes.) And we're now installing all the packages. Sit back and enjoy the show. Or go get a cup of coffee. I'm going to go feed my cat. Who is being, shall we say, less than subtle.

Ok. It's a few minutes later. Next window: "Probing Result". I am informed that Red Hat has found my serial mouse. I'll select "Ok".

Next window: "Configure mouse". I have a dirt cheap 3-button mouse so I'll choose "Generic 3-Button Mouse (serial)".

Now, there is an option here to "Emulate 3 Buttons?". This option is useful if you have a standard two-button mouse. Windows likes two buttons. Apple, originally, liked one button. X-windows, the Linux GUI, likes three. This option, "Emulate 3 Buttons", allows you to emulate the third button by pressing both buttons simultaneously on a two-button mouse. Personally, I'd rather just buy a $10 3-button mouse from the cheap racks at CompUSA. (SKU#192316. Hint: The CompUSA I go to doesn't have them anywhere near the rest of their mice.)

Anyway, on the "Configure mouse" window, "Generic 3-Button Mouse (serial)" is selected, "Emulate 3 Buttons?" is not selected, and I'll tab down and select "Ok".

Next window: "PCI Probe". It found my video card. It knows it's a Millennium. It wants to use the SVGA driver. That happens to be the correct driver, so I'll select "Ok".

If you have a problem with the driver here, keep in mind that you don't need the video driver until you activate the GUI. And it's pretty easy to swap drivers around after the installation. There is a brief intermission here while the GUI driver is installed.

Next window: "Monitor Setup". The Linux GUI (the X Window System) needs to know about your monitor. Specifically, it needs to know about the horizontal and vertical sync rates, possibly the bandwidth, and the sync timing information. Before you get uptight about this "complexity," you should realize that it's not all that complex. The horizontal and vertical sync rates are usually in your monitor's manual or available on the Web. And most common sync timings are standardized. Plus none of this matters until you start up the GUI. Which means you can go in and customize everything after the installation has completed. (And I'll cover this in a future diary entry.)

One word of caution: Do NOT enter a sync frequency that exceeds your monitor's capabilities. This is one of the well-established ways to toast (destroy) your monitor. When in doubt, error on the side of caution.

Now, if your monitor is listed in the monitors list, then by all means choose it. I, on the other hand, tend towards cheap no-name brands to keep the cost down. So I'll choose "Custom", tab down, and select "Ok".

Next window: "Custom Monitor Setup". It's a nice little blurb telling me that I will need to enter my sync frequencies. I'll tab down and select "Ok".

Next window: "Custom Monitor Setup (Continued)". Red Hat wants me to pick the sync range of my monitor. Unfortunately, I can't just specify my monitor's ranges. No matter. I'm going to go through and edit my XF86Config file long before I start up the GUI anyway.

So I'll choose "Standard VGA, 640x480 @ 60 Hz", the nice cautious choice, tab down, and select "Ok".

Next window: "Custom Monitor Setup (Continued)". (Yes, the same name as the last window.) Here I select the vertical sync range of my monitor. From my monitor's manual, I know that my monitor can do 50-150Hz. Red Hat does not offer this choice. They do offer "50-100" and "40-150". To be safe, I will choose "50-100". (And, again, correct this in the XF86Config file later on.) Followed by--you guessed it--tabbing down and selecting "Ok".

Next window: "Probing to begin". Red Hat is going to run the Xconfigurator program to generate my initial XF86Config file. I am warned that the screen will blink a couple of times. I select "Ok".

Next window: "Probing finished". I am informed that Xconfigurator has successfully probed my video card and would like to configure me for 640x480 at 8 bits per pixel. I don't really care what it sets things to since I'm just going to change it all around anyway. So I select "Use Default", the equivalent of "whatever."

Next window: "Network Configuration". Red Hat asks me if I want to configure my ethernet card. I select "Yes".

Next window: "Load Module". Red Hat wants to know which Ethernet card I have. I have a 3com 509-B ISA-based ethernet card. Why? Well, I can buy them used for $10-$15. And 3com, as of last December, had a lifetime warranty policy. If it breaks, or arrives broken, 3com would replace it free of charge. No questions asked.

Caveat: If you have one of these cards, you will need to use 3com's DOS-based 3c5x9cfg.exe configure program to specify the interrupt, io-ports, and that it should disable plug-and-pray. 3c5x9cfg.exe stores this information in non-volatile memory on the Ethernet card. Once set, these settings will be used by Linux, DOS, Win95, or whatever else you load onto your computer. Look around over at 3Com's support site. Specifically, grab the disks down from the bottom of the download page and unpack them.

Anyway, as I have a 3com 509-B card, I will select the 3c509 driver, tab down, and select "Ok".

Next window: "Module Options". Red Hat wants to probe my Ethernet card. Or, alternatively, I can specify the options. I am cautioned that autoprobing could hang my computer. I am not afraid. I have used Windows. I am used to machines hanging. I select "autoprobe", tab down, and select "Ok".

Next window: "Boot Protocol". Red Hat wants to know how to get my IP address. This is sometimes determined dynamically (through BOOTP or DHCP) by asking other machines what IP address my machine should be using. I do not utilize dynamic addresses on my network. So I will give my machine a permanent (static) IP address. Unchanging until, of course, I decide to change it.

So I select "Static IP Address", tab down, and select "Ok".

Next window: "Configure TCP/IP". I need to enter four values: The IP address, the Netmask, the Default gateway IP address, and the Primary nameserver.

I can leave some of these blank, if I so choose. And, normally, I would leave the default gateway and perhaps the primary nameserver blank. But my network is set up with another Linux box, that old 486/25, running IP-Masquerade. (One of these weeks I'll have to do a diary entry on IP-Masquerade.) That 486/25 IP-Masquerade box is hooked into ADSL. So if my new box, the one I'm currently installing Red Hat 5.2 on, wants to see the internet, it needs to use that 486/25 IP-Masquerade box as its gateway.

The primary nameserver is not terribly important right now. I'm just going to go through and frob the /etc/resolv.conf file after installation anyway.

In terms of my static IP address, there are certain IP address ranges that have been set aside for anyone to use. These IP addresses are never attached to machines directly connected to the Internet. As such, you can use them without fear of conflicting with another machine. From the NET-3-HOWTO, just before the end of section 5.1.4, the network address -, -, and - are reserved specifically for a private network.

I've chosen to use for my machine, and for my 486/25 IP-Masquerade box. Why those particular addresses? It's a long story involving a legacy NeXTCube that also lives on my network. And these numbers just happened to be convenient when I started building my network.

Sidenote: You probably want to avoid IP-address numbers that end in .0, .1, .254, or .255 when you're first starting out. These addresses tend to have special significance which could cause confusion.

I use for my netmask as all the IP addresses on my local network start with 192.168.172. They all start with 192.168.172 because, so far, I haven't exceeded 250+ network devices.

My nameservers come courtesy of Bell Atlantic, my ADSL provider. You should use your own nameservers, courtesy of your Internet access provider, not mine. Unless, of course, you are also using Bell Atlantic's system.

So I will enter:

IP Address:
Default Gateway (IP):
Primary Nameserver: [not shown]

(Note to self: One of these days I really do need to start using that caching nameserver on the 486 box. No doubt another future diary entry.)

I should note that Red Hat will try to fill in the latter three elements based upon the IP Address. Erase those values if they don't apply to your situation. I just changed them to the appropriate values for me, tabbed down, and selected "Ok".

Next window: "Configure Network". It's a private network, so I'll make up my own domain name. I'll use "luna.pc.dba". "dba" being my initials. And planets/planetoids being my machine naming scheme. Hardly original, I know, but what the hell.

So I'll enter:

Domain Name: pc.dba
Host Name: luna.pc.dba
Secondary nameserver (IP): [not shown]
Tertiary nameserver (IP):

You will note that the tertiary nameserver is blank. I don't have a third name server. And I'll tab down and select "Ok".

Next window: "Configure Timezones". I'll select "US/Eastern". I will NOT check the "Hardware clock set to GMT" box. My hardware clock is on Eastern time, not GMT time. And tab down and select "Ok".

Next window: "Services". What services should be started when the machine boots? You can pretty much leave these as they are and things will be just fine. If you know what you're doing, you can frob them to your heart's content. If you don't know what they mean, you can hit F1 on any service to get a brief description.

If you disable some of these, Linux may not behave gracefully. A few that novices may want to frob include:

  • httpd: If you want to enable or disable the Web server.
  • nfs & nfsfs: If you want to enable or disable NFS, the Network File System.
  • pcmcia: Can be left on even if you don't have any pcmcia slots. But some folks will still want to turn it off.
  • postgresql: If you want the SQL server started.
  • rusersd & rwhod: If you want people on your network to be able to see who's on your machine. (I don't! Your mileage may vary.)
  • smb: If you want to enable/disable the Samba process that shares your linux filesystems with Windows 95/98/NT boxes.
  • sendmail: I recommend leaving sendmail active. The first time you send e-mail directly and it fails to go through right away, you will appreciate have sendmail there to retry delivering it. Otherwise your email stays in /var/spool/mqueue forever. Of course, most folks use SMTP servers, and this doesn't apply to them. But I'm fond of using emacs as a direct mailer. The other side of this, that you may or may not appreciate, is having sendmail receive mail on your machine from other machines on your network.

You should NOT enable routed unless you really know what you're doing. It tends to really torque off (annoy) your ISP. To the point of termination of service.

I should also point out that you can change these things around after the install pretty easily. And you can manually start and stop any of these services at whim, without rebooting.

I'm disabling smb. I use Samba so rarely that I'll just start it manually if/when I ever need it. And I'll leave everything else the same. Then it's tab down and select "Ok".

Next window: "Configure Printer". I have a printer. But it's an Epson Stylus Photo 700. Which will require a newer version of ghostscript than Red Hat is permitted to distribute. So I will tab over and select "No". (And then go back in later on after the install and configure my printer properly.)

Next window: "Root password". Root is the name of the master account under Linux. Kind of like Administrator under Windows NT. Only Linux has better security and root can bypass everything.

Choose your password with care. Consider that, if your machine is ever connected up to the internet, even if it's through PPP, crackers could try to guess your password. The weakest link in any security system is the human element. Passwords like "secret", "love", etc., are awfully easy to guess. And crackers will happily throw an entire dictionary at your system trying to guess the root password.

Passwords are typically 6 to 8 characters long. My recommendation is that you have at least one letter, at least one number, and at least one non-alphanumeric character (spaces, symbols, etc). Try not to choose a name that can be researched, like your maiden name or your pets' names or your street address. And try not to use words from the dictionary!

Whatever you do, do not leave the password field for root (or any other account) blank! That's just asking for trouble.

I'll just pick a password here. And, if it's all the same to you, I think I'll just keep that password to myself. I'll enter it twice, since I can't see it, to make sure I got it right. Then tab down and select "Ok".

Next Window: "Bootdisk". A bootdisk lets one boot into one's Linux system after a problem develops. (Like, say, after I reinstall Windows yet again.) I want a bootdisk, so I'll select "Yes".

Next Window: "Bootdisk". Red Hat would like me to insert a blank floppy into the a: drive, which linux typically refers to as /dev/fd0. Diskette is inserted. I select "Ok". A new "Bootdisk" window comes up, informing me that the bootdisk is being created.

Next window: "Lilo Installation". Where do I want to install the bootloader? If you don't want to install LILO, select "Skip". You can still boot off that bootdisk we just made. If I were using Linux with another bootloader, like NT, I'd stick LILO in the first sector of my root partition (/dev/hda9). But as I want to use LILO as my one and only bootloader, I'll stick it in the Master Boot Record of /dev/hda. Then tab down, and select "Ok".

Next window: "Lilo Installation". Here you can specify the options that LILO should pass into your kernel at boot time. Assuming you can boot into linux, you can also add these options in after installation. Or you can specify them at the LILO boot prompt. So don't think anything's being set in stone here. I've never started out passing options into LILO. (Though occasionally I've added them in later on.) So I'll just leave this blank.

There's a check-box here: "Use linear mode (needed for some SCSI drives)". I don't have any SCSI drives, so I'm not checking it. I'm just tabbing down, and selecting "Ok".

Next Window: "Bootable Partitions". Here you can specify what partitions you'd like LILO to be able to boot. I'm making a dual-boot system (Linux/Win95), and Red Hat has nicely picked up that /dev/hda1 is my bootable dos (win95) partition and /dev/hda9 is my bootable Linux partition. You can tweak your settings around if you want. I'm not going to bother. As long as I can boot linux, I'll just go in and tweak the lilo.conf file after installation is completed. So, tab down, and select "Ok". A brief window flashes on the screen as the boot loader is installed.

Next Window: "Done". Linux is installed. Take the floppy out of the drive and select "Ok". You will see a few messages as the system shuts down and prepares to reboot. Once the machine has rebooted, you should see a "LILO boot>" prompt. I'll enter "linux", or just wait five seconds. And linux should boot up.

At this point the only userid available to you is root. Log in and take a look around. Use:

  • 'ls' to get a directory listing. 'ls -l' to get a long directory listing.
  • 'cd' to change directories.
  • 'pwd' to print the current directory.
  • 'cat' or 'less' to view the contents of a file.

Linux will use the forward slash (/), not the backslash (\) as the directory separator.

When you're all done, use '/sbin/shutdown -h now' as root to shut your Linux machine down. (And give it about 30 seconds.) This is important! If you shut down your Linux machine abruptly, without halt'ing it properly, you can corrupt the data in the linux partitions on your harddrive. (Linux caches data, and sync's it to the disk later on. Proper shutdown is important!) When your machine has completed shutting down, you will see these last two messages:

The system is halted
System halted

For further reading, you might want to browse the Red Hat manual. Specifically, Sections 3 "Starting the Installation", 4 "Continuing the Installation", and 5 "Finishing the Installation". Also, there's some fairly good beginner's guides listed here at Linux.com.

   Page 1 of 1