[ back ] [ Abstract ] [ Copyright Notice ] [ Contents ] [ next ]

Installing Debian GNU/Linux For Intel x86 - Chapter 2
System Requirements


This section contains information about what hardware you need to get started with Debian. You will also find links to further information about hardware supported by GNU and Linux.


2.1 Supported Hardware

Debian does not impose hardware requirements beyond the requirements of the Linux kernel and the GNU tool-sets. Therefore, any architecture or platform to which the Linux kernel, libc, gcc, etc. have been ported, and for which a Debian port exists, can run Debian.

There are, however, some limitations in our boot floppy set with respect to supported hardware. Some Linux-supported platforms might not be directly supported by our boot floppies. If this is the case, you may have to create a custom rescue disk, or investigate network installations.

Rather than attempting to describe all the different hardware configurations which are supported for Intel x86, this section contains general information and pointers to where additional information can be found.


2.1.1 Supported Architectures

Debian supports four architectures: Intel x86-based architectures; Motorola 680x0 machines such as Atari, Amiga, and Macintoshes; DEC Alpha machines; and Sun SPARC machines. These are referred to as i386, m68k, alpha, and sparc, respectively.

This document covers installation for the i386 architecture. Separate versions of this document exist for other architectures.


2.1.2 CPU, Mainboards, and Video Support

Complete information concerning supported peripherals can be found at Linux Hardware Compatability HOWTO. This section merely outlines the basics.

Nearly all x86-based processors are supported. However, Linux will not run on the 286 or lower processors.

The system bus is the part of the motherboard which allows the CPU to communicate with peripherals such as storage devices. Your computer must use the ISA, EISA, PCI, the Microchannel Architecture (MCA, used in IBM's PS/2 line), or VESA Local Bus (VLB, sometimes called the VL bus).

Laptops are also supported. Laptops are often specialized or contain proprietary hardware. To see if your particular laptop works well with GNU/Linux, see the Linux Laptop pages.

You should be using a VGA-compatible display interface for the console terminal. Nearly every modern display card is compatible with VGA. Ancient standards such CGA, MDA, or HGA should also work, assuming you do not require X11 support. Note that X11 is not used during the installation process described in this document.

Debian's support for graphical interfaces is determined by the underlying support found in XFree86's X11 system. The newer AGP video slots are actually a modification on the PCI specification, and most AGP video cards work under XFree86. Details on supported graphics busses, cards, monitors, and pointing devices can be found at http://www.xfree86.org/. Debian ships with X11 revision 3.3.2.3a.


2.1.3 Multiple Processors

Multi-processor support -- also called ``symmetric multi-processing'' or SMP -- is supported for this architecture. However, the standard Debian kernel image does not support SMP. This should not prevent installation, since the standard, non-SMP kernel should boot on SMP systems; the kernel will simply use the first CPU.

In order to take advantage of multiple processors, you'll have to replace the standard Debian kernel. You can find a discussion of how to do this in Compiling a New Kernel, section 8.4. At this time (kernel version ) the way you enable SMP is to edit the top-level Makefile for the kernel and uncomment the line that says SMP = 1. If you compile software on a multiprocessor system, look for the -j flag in the documentation on make(1).


2.2 Installation Media

There are four different media which can be used to install Debian: floppies, CD-ROMs, local disk partitions, or the network. Different parts of the same Debian installation can mix and match these options; we'll go into that in Methods for Installing Debian, chapter 5.

Floppy disk installation is a common option, although generally, the least desirable. In many cases, you'll have to do your first boot from floppies, using the Rescue Floppy. Generally, all you will need is a high-density (1440 kilobytes) 3.5 inch floppy drive. Double-density, 5.25 inch installation floppies (1200 k) are also provided.

CD-ROM based installation is also supported for some architectures. On machines which support bootable CD-ROMs, you should be able to do a completely floppy-less installation. Even if your system doesn't support booting from a CD-ROM, you can use the CD-ROM in conjunction with the other techniques to install your system, once you've booted up by other means; see Installing from a CD-ROM, section 5.4.

Both SCSI and IDE/ATAPI CD-ROMs are supported. In addition, all non-standard CD interfaces supported by Linux are supported by the boot disks (such as Mitsumi and Matsushita drives). However, these models might require special boot parameters or other massaging to get them to work, and booting off these non-standard interfaces is unlikely. The Linux CD-ROM HOWTO contains in-depth information on using CD-ROMs with Linux.

Installation from local disk is another option. If you have free space on partitions other than the partitions you're installing to, this is definitely a good option. Some platforms even have local installers, i.e., for booting from AmigaOS, TOS, or MacOS.

The last option is network installation. You can install your system via NFS. After your base system is installed, you can install the rest of your system via any sort of network connection (including PPP), via FTP, HTTP, or NFS.

More complete descriptions of these methods, and helpful hints for picking which method is best for you, can be found at Methods for Installing Debian, chapter 5. Please be sure to continue reading to make sure the device you intend to boot and install from are supported by the Debian installation system.


2.2.1 Supported Storage Systems

The Debian boot disks contain a kernel which is built to maximize the number of systems it runs on. Unfortunately, this makes for a larger kernel, with a lot of drivers which will never be used (see Compiling a New Kernel, section 8.4 to learn how to build your own). However, support for the widest possible range of devices is desirable in order to ensure that Debian can be installed on the widest array of hardware.

Generally, the Debian installation system includes support for floppies, IDE drives, IDE floppies, parallel port IDE devices, SCSI controllers and drives. The file systems supported include MINIX, FAT, Win-32 FAT extensions, among others (note that NTFS is not supported by the installation system; you can add it later, as described in Compiling a New Kernel, section 8.4).

Rather than attempting to describe the supported hardware, it is much easier to describe the Linux supported hardware which is not supported by the Debian boot system.

The disk interfaces that emulate the ``AT'' hard disk interface which are often called MFM, RLL, IDE, or ATA are supported. Very old 8 bit hard disk controllers used in the IBM XT computer are supported only as a module. SCSI disk controllers from many different manufacturers are supported. See the Linux Hardware Compatibility HOWTO for more details.

Not supported are IDE SCSI drives and some SCSI controllers, including


2.3 Memory and Disk Space Requirements

You must have at least 4MB of memory and 35MB of hard disk. If you want to install a reasonable amount of software, including the X window system, and some development programs and libraries, you'll need at least 300MB. For a more or less complete installation, you'll need around 800MB. To install everything available in Debian, you'll probably need around 2 GB. Actually, installing everything doesn't even make sense, since some packages conflict with others.


2.4 Peripherals and Other Hardware

Linux supports a large variety of hardware devices such as mice, printers, scanners, modems, network cards, PCMCIA devices, etc. However, none of these devices are required while installing the system. This section contains information about peripherals specifically not supported by the installation system, even though they may be supported by Linux. Again, see the Linux Hardware Compatibility HOWTO to determine whether your specific hardware is supported by Linux.

Some network interface cards (NICs) are not supported by the Debian installation disks (although a custom Linux kernel can use them), such as AX.25 cards and protocols; 3Com EtherLink Plus (3c505) and EtherLink16 (3c507); NI5210 cards; generic NE2100 cards; NI6510 and NI16510 EtherBlaster cards; SEEQ 8005 cards; Schneider & Koch G16 cards; Ansel Communications EISA 3200; and the Zenith Z-Note built-in network card. Microchannel (MCA) network cards are not supported by the standard installation system, but see Linux on MCA disk images for unofficial images, and the Linux MCA discusssion archives. FDDI networks are also not supported by the installation disks, both cards and protocols.

As for ISDN, the D-channel protocol for German 1TR6 is not supported; Spellcaster BRI ISDN boards are also not supported by the boot-floppies.

Sound devices are not also not supported by default.


2.5 Purchasing Hardware Specifically for GNU/Linux

There are several vendors, now, who ship systems with Debian or other distributions of GNU/Linux pre-installed. You might pay more for the privilege, but it does buy a level of piece of mind, since you can be sure that the hardware is well-supported by GNU/Linux. If you do have to buy a machine with Windows bundled, carefully read the software license that comes with Windows; you may be able to reject the license and obtain a rebate from your vendor. See http://www.linuxmall.com/refund/ for complete details.

Whether or not you are purchasing a system with Linux bundled, or even a used system, it is still important to check that your hardware is supported by the Linux kernel. Check if your hardware is listed in the references found above. Let your salesperson (if any) know that you're shopping for a Linux system. Support Linux-friendly hardware vendors.


2.5.1 Avoid Proprietary or Closed Hardware

Some hardware manufacturers simply won't tell us how to write drivers for their hardware. Others won't allow us access to the documentation without a non-disclosure agreement that would prevent us from releasing the Linux source code. One example is the IBM laptop DSP sound system used in recent ThinkPad systems -- some of these systems also couple the sound system to the modem. Another example is the proprietary hardware in the older Macintosh line.

Since we haven't been granted access to the documentation on these devices, they simply won't work under Linux. You can help by asking the manufacturers of such hardware to release the documentation. If enough people ask, they will realize that free software community is an important market.


2.5.2 Windows-specific Hardware

A disturbing trend is the proliferation of Windows-specific modems and printers. In some cases these are specially designed to be operated by the Microsoft Windows operating system and bear the legend ``WinModem'' or ``Made especially for Windows-based computers''. This is generally done by removing the embedded processors of the hardware and shifting the work they do over to a Windows driver that is run by your computer's main CPU. This strategy makes the hardware less expensive, but the savings are often not passed on to the user and this hardware may even be more expensive than equivalent devices that retain their embedded intelligence.

You should avoid Windows-specific hardware for two reasons. The first is that the manufacturers do not generally make the resources available to write a Linux driver. Generally, the hardware and software interface to the device is proprietary, and documentation is not available without a non-disclosure agreement, if it is available at all. This precludes its being used for free software, since free software writers disclose the source code of their programs. The second reason is that when devices like these have had their embedded processors removed, the operating system must perform the work of the embedded processors, often at real-time priority, and thus the CPU is not available to run your programs while it is driving these devices. Since the typical Windows user does not multi-process as intensively as a Linux user, the manufacturers hope that the Windows user simply won't notice the burden this hardware places on their CPU. However, any multi-processing operating system, even Windows 95 or NT is degraded when peripheral manufacturers skimp on the embedded processing power of their hardware.

You can help this situation by encouraging these manufacturers to release the documentation and other resources necessary for us to program their hardware, but the best strategy is simply to avoid this sort of hardware until it is listed as working in the Linux Hardware Compatibility HOWTO.


2.5.3 Fake or ``Virtual'' Parity RAM

If you ask for Parity RAM in a computer store, you'll probably get virtual parity memory modules instead of true parity ones. Virtual parity SIMMs can often (but not always) be distinguished because they only have one more chip than an equivalent non-parity SIMM, and that one extra chip is smaller than all the others. Virtual-parity SIMMs work exactly like non-parity memory. They can't tell you when you have a single-bit RAM error the way true-parity SIMMs do in a motherboard that implements parity. Don't ever pay more for a virtual-parity SIMM than a non-parity one. Do expect to pay a little more for true-parity SIMMs, because you are actually buying one extra bit of memory for every 8 bits.

If you want complete information on Intel x86 RAM issues, and what is the best RAM to buy, see the PC Hardware FAQ.


[ back ] [ Abstract ] [ Copyright Notice ] [ Contents ] [ next ]
Installing Debian GNU/Linux For Intel x86
version 2.1.9, 03 March, 1999
Bruce Perens
Sven Rudolph
Igor Grobman
James Treacy
Adam Di Carlo