Next Previous Contents

7. Hardware Questions

7.1 Problems with Linux finding all of a machine's RAM

Question:

My machine has 128 MB of RAM, however Linux only sees 64 MB of it. What is going on, and how can I fix it?

Answer:

On most systems, the reason is that the BIOS has a limit of how much memory it will tell the OS is present in the machine, even though the board can have more. Common limits seen with this problem are 16M, 32M, 64M, and 128M. To get around this, we need to explicitly specify the amount of memory to the kernel at boot time via the mem=< actual memory goes here > flag.

In the following example, we have a 128M machine but only 64M are being seen by Linux. At the LILO prompt, we type

                LILO: linux mem=128M
              

After the machine boots, we use the free command to see if the larger amount of memory was recognized by the kernel. If so, we can add an append line to the /etc/lilo.conf file and rerun LILO to make it happen permanently. The example from above could look like the following:

boot=/dev/sda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
image=/boot/vmlinuz-2.2.12-20
        label=linux
        root=/dev/sda1
        initrd=/boot/initrd-2.2.12-20.img
        read-only
        append="mem=128M"
              

Do not forget to run /sbin/lilo -v after editing the file.

7.2 Problems with machine speed and large amounts of RAM

Question:

I have over 64 MB in my Pentium or greater machine, however it seems sluggish when doing anything. If I tell Linux to use only 64 MB with the mem=64M machine, it seems to speed up. What is going on and can I do anything about it?

Answer:

The most likely answer to this problem has to do with the motherboard of the computer. Many motherboards limit the L2 cache to be able to access up to 64 MB. The ones that we know of to be affected by this problem are the NX (I believe this was only for pentium 60-90), FX, VX, and TX boards from Intel. These are limited to a maximum of 512K of L2 cache. There may be other boards that have this problem, but these are our current candidates.

The following is from a user who researched the problem for us:


                ... typically have a maximum of 512k of L2 cache (either on
                the motherboard, or in a COAST module - looks a little like
                a DIMM, but a bit shorter) and can only cache up to 64 meg.
                If Linux utilizes memory the same way as Microsoft OS's do,
                it goes from the top of the memory stack and works its way
                down.  This can result in a pretty significant slowdown
                unless you really need the aditional memory.  The exception
                to this was the HX chipset, which was also the only chipset
                (i think) that could handle dual or quad processor pentium
                boards (and even MMX).  However, the vast majority of HX
                boards that I have seen also required a TAG-ram chip to
                cache over 64 meg, and still had a limit as to how much it
                could cache (the exact number escapes me at the moment).

                There were ways around this - the most obvious being a
                non-intel based motherboard.  The VIA motherboards are a
                good option here, and very often can be found with 1 meg of
                cache (or even, a little more rarely, 2 meg).  These boards
                can cache between 512 and 1 gig of memory, depending on the
                exact variation of the chipset.
        

7.3 Getting a Zip drive to work

Question:

How can I get my Zip drive to work?

Answer:

There are excellent references in the ZIP HOWTOs at http://www.redhat.com/mirrors/LDP.

Also, there is a Zip HOWTO at:

http://www.linuxdoc.org/HOWTO/HOWTO-INDEX-3.html

In Red Hat Linux 6.2, there are a few extra steps needed to get a parallel port Zip drive to work:

Edit your /etc/conf.modules and add:

        alias parport_lowlevel parport_pc
        alias scsi_hostadapter ppa
        
Then log in as root and run:

modprobe ppa

Some people have had problems if they daisy chain a Zip drive off of a chain with a printer on it. Currently, we recommend that you use either the printer or the Zip drive.

For more information, check www.torque.net/paraport

If you are having problems with an IDE Zip drive, here is further information:

First check and make sure there is a disk in the drive. Also, make sure you are mounting it as partition 4 instead of 1. An example would be hdc4. The reason for this is that the Macintosh uses partition 4 for its data partition and has problems if data is on another partition.

7.4 Configuring the Jaz drive and Linux

Question:

How do I configure my Jaz drive under Linux?

Answer:

Documentation on using Jaz with Linux can be found on the CD-ROM in doc/HOWTO/mini/Jaz-Drive and on the system in /usr/doc/HOWTO/mini/Jaz-Drive.

7.5 Moving data from a floppy to a hard drive

Question:

How do I get data from a floppy to my hard drive?

Answer:

Most floppies you will run into are DOS formatted. However, Red Hat Linux defaults to using its native format called ext2. Because of this you can run into some difficulties unless you do the following:

Finally if you are using the X Window System with either KDE or GNOME, you can use the file managers to mount and unmount your floppy by right clicking on the floppy icon.

Once the floppy is mounted, you can use the cp command to copy data to the disk, like so:

        cp filename /mnt/floppy
        

7.6 Using your CD-ROM

Question:

How do I mount my CD-ROM drive?

Answer:

If your system was installed properly, typing:

        mount /mnt/cdrom
        
should work. If it does not, you must edit your /etc/fstab file and add a line that refers to your CD-ROM device.

Here's an example:

           /dev/hdc          /mnt/cdrom   iso9660 noauto,ro 0 0

        (CD-ROM device)      (directory) (filesystem type and options)
        
To find out what the CD-ROM device is, type
        dmesg | more
        
and scan it for information regarding your CD-ROM.

If you wish to mount the CD-ROM without adding this to your /etc/fstab, just type:

        mount -t iso9660 /dev/hdc /mnt/cdrom
        

7.7 How to use two Ethernet cards at once

Question:

I have 2 Ethernet cards. How can I get both of them recognized?

Answer:

First, make certain that both cards are supported. Check out:

http://www.redhat.com/support/hardware/index.html

This further depends on whether the cards use the same driver or if they use different drivers. If they use different drivers, you simply need to set up the second network interface and edit your /etc/conf.modules file to point to the specific driver for the second card. If they use the same driver, you may need to recompile your kernel, but several modules now allow for multiple cards. It may be that you just need to use a boot time arguments such as:

        boot: linux ether=11,0x300,eth0 ether=5,0x340,eth1
        
This option can be made permanent so you don't have to re-enter it. See the LILO configuration option 'append' in the 'lilo.conf' man page. The Ethernet HOWTO is an excellent source of info:

http://www.linuxdoc.org/HOWTO/Ethernet-HOWTO.html

7.8 How to get an Ethernet card detected

Question:

How can I tell if my Ethernet card is being recognized?

Answer:

There are two commands you can run to verify that your network interface is running properly:

        ifconfig
        netstat
        
You can also go through some of your files in the /proc directory, such as /proc/interrupts, /proc/pci, etc, to see if you can find info about your card there.

7.9 WinModems (TM) and Linux

Question:

How can I get my WinModem(TM) to work with Linux?

Answer:

Unfortunately, WinModems(TM) are completely incompatible with Red Hat Linux version 6.0 and earlier. There is no work-around for this issue at this time. The problem is that WinModems(TM) and similar type modems use the CPU to emulate various hardware that is removed to save on costs. These hardware parts that are removed would have to be "emulated" by the Linux kernel and would require the hardware maker of the modem to write such drivers.

There are a few (very few) winmodem chipsets that are compatible with the 6.x versions of Red Hat Linux. The best place to go for more information on these versions is the www.linmodems.org and the Winmodems are not modems page. Both have links to information and drivers for various WinModems(TM).

For Red Hat 7, there is, unfortunately, even less support. This is because many of the drivers available (such as the popular ltmodem driver) are compiled for versions of the Linux kernel that are old by today's standard. Red Hat 7 ships with the 2.2.16-22 kernel which has shown some trouble with some of the drivers. The ltmodem driver, which was compiled for kernel 2.2.12-20 seems to become unstable at 2.2.14-12 (the errata release kernel for Red Hat 6.2) though it seems to be usable.

We have no direct knowlege of other modem drivers, however, and welcome more information (see the address at the top of this document).

7.10 Printers and Red Hat Linux

Question:

How do I get my printer to work with Red Hat Linux?

Answer:

First make certain that your printer is a supported device. Check:

http://www.redhat.com/support/hardware/index.html

for that information. If it is supported, log into the GUI mode (X Window System) as the root user, open your Control Panel and start Printtool to set up the proper ghostscript settings.

Additional information is available at the following sites:

www.redhat.com/support/resources/howto/lpd/lpd_remote.html

http://www.redhat.com/mirrors/LDP/HOWTO/Printing-HOWTO.html

In Red Hat Linux 6.1, there are a few extra steps needed to get a parallel port printer to work. This step is no longer necessary under Red Hat Linux 6.2:

Edit your /etc/conf.modules and add:

        alias parport_lowlevel parport_pc
        
Then log in as root and run:

modprobe lp

Some people have had problems if they daisy chain a Zip drive off of a chain with a printer on it. Currently, we recommend that you use either the printer or the Zip drive.

7.11 System freezes when trying to shutdown or reboot

Question:

Whenever I try to shut down my machine or reboot it with the commands (reboot, halt, shutdown -r now, or shutdown -h now), the shutdown process executes correctly, but then the display blanks and the system hangs. Only way to recover is to use a hard reset.

Answer:

At the point the system hangs the control has been handed back from Linux to the firmware, and it is up to the firmware to reboot the system correctly. There are some possible workaround helpers as Linux lets you pick multiple reboot methods to try and deal with broken bioses/hardware

At the LILO boot prompt, you can specify

        reboot=X,Y 
        

where X is either

hard - reboot by reset line

bios - reboot by bios vector

and Y is either

warm - warm boot, (ctrl-alt-del like)

cold - cold boot (power on like)

So if you boot with

        LILO: linux reboot=bios,warm
        

Linux will reboot by the bios vector with a warm reboot.

You can hopefully find a boot sequence that does not trip the bugs in the system BIOS. The append="reboot=..." option in /etc/lilo.conf will let you set it by default by adding

        append="reboot=bios,warm"
        
into lilo.conf for the Linux image

Then rerun /sbin/lilo to write the change to your boot device.

7.12


Next Previous Contents