Chapter 2. Preparing to Install Fedora

IN THIS CHAPTER

Installing a new operating system is always a major event, especially if you have never had to install an OS before. This is especially true if you are used to running Microsoft Windows XP that was pre-installed for you on your computer. In many cases ‘recovery’ discs are supplied that contain a mirror image of how your system was the day it rolled off the production line, so in reality you are not actually installing Windows, just copying some files. With Fedora you get a lot of options that you can choose from, making it easy to tailor make your installation to suit your end goals. This chapter is all about helping you prepare for installing Fedora, taking you through some of the considerations that you perhaps do not realize are important to think about.

Until relatively recently Linux has been pretty difficult to install. You had to know every conceivable fact and specification about all the components of your computer to ensure that the installation went smoothly. Now, however, Fedora does most of the hard work for you, having much improved hardware detection and auto-configuration. This is definitely a good thing, and vastly reduces the time needed to install Fedora.

This chapter will help guide you toward an installation of Fedora that closely matches your requirements. We start off with a look at some of the things you should take in to account when considering moving to Linux, including what your aims and objectives are for using Fedora. We also take a look at the hardware requirements of Fedora, along with information on how to check whether your hardware is compatible with Fedora. Finally, you will get a general overview of what installing Fedora looks like as well as how to avoid pitfalls with partitioning your hard drive. By the end of this chapter you should recognize just how flexible Fedora really is, both in the software it provides and also by the many ways in which you can install it.

Planning Your Fedora Deployment

The first thing you need to decide is why you are installing Fedora. By working out the “end use scenario” for the proposed installation, you then can begin to make choices and decisions about hardware specifications as well as software options. Before planning the specific steps of an installation, you need to make decisions about the type of deployment you want to undertake. For example, if you were going to use Fedora for 3D graphics work, then you would need to factor in the amount of space needed to store the sometimes intricate 3D models and graphics, as well as the graphics card needed for rendering, not to mention the amount of system memory and processor speed. On the flip side, if all you are doing is providing an elderly relative with a quick and easy way to access the Internet, then RAM, hard drive storage, and processor speed are less likely to be important rather than a decent monitor, keyboard, and mouse. You learn more about these issues in the sections that follow. These sections also include a table you can use as a pre-deployment planning checklist and some final advice for planning the installation.

Business Considerations

Making a choice of operating system for business can often be a thorny issue. Certainly there is a monopoly already in place from Microsoft, and there are a lot of users that have only ever used Microsoft products. This alone is a powerful argument to go down the Microsoft path, but there are other ways to implement Fedora in business. Your company may have been the target of a virus attack, or perhaps you have had to deal with one too many spyware and adware outbreaks on users desktops. Making the switch to Linux can eradicate many of these problems, increasing the uptime of users and reducing the security risk. The important thing is to work closely with the business to ensure that whatever is delivered is in line with the business requirements. If you consider that Linux is still in a minority, you need to think about how other companies will be able to work with you. Staff training and overall cost of change needs to be closely monitored at all times to ensure a smooth delivery. However, don’t expect it to be perfect; anyone who has worked on a project knows that unexpected problems can and will occur, and you need to be as prepared as possible to deal with them.

Bear in mind that what works for your company may not work for another, so when swapping stories over a beer with other long-suffering sysadmins, think about how their successes can be adapted to your enterprise, but also pay close attention to things that went wrong. It’s surprising how much good a relationship with other companies can do for your own IT infrastucture.

Note

As an example of inter-company relationships, most of the large law firms in London have their own soccer teams that regularly meet to do battle on the soccer pitch. They also meet to discuss IT issues and swap ideas among themselves which benefits all of them. Why not set up a local corporate Linux User Group in your area? You don’t have to make it a sports-related meeting, just make it clear that you want to share ideas and best practice.

Note

Browse to Red Hat’s Migration Center at http://www.redhat.com/business/utol/success/ to read success stories, market analyses, and technical reports on using Red Hat’s Enterprise Linux products for business.

One of the great things about Linux is that it allows you to try it before committing yourself. What other operating system do you know that can be booted up from a single CD and allow you to have a fully operational system, complete with applications? Although it sounds like black magic, this kind of thing actually exists in the form of Live CDs and there are plenty to choose from, including one that is in development that will be based on Fedora. Boot your system with one of these CDs to give yourself an idea of how well your hardware will cope with Linux.

Of course if you are happy with the move to Linux, then you can ease the change by downloading versions of OpenOffice.org, Firefox, and Thunderbird for your existing platform so users can test them before the migration.

Sometimes it is not always the visible changes that make the most difference. You should give careful thought to the potential deployment of Linux into such areas as web servers, file and print servers. You can extend the life of existing hardware long beyond its useful “Windows” life by deploying them as print or web servers. Thankfully, Linux and open source software is pervasive enough to provide plenty of flexibility should you decide to test the water before diving in. Nowadays, popular open source applications such as OpenOffice.org are available for both Windows and Mac platforms, allowing you to try the software before deciding to switch. Also consider the ability to change back-end systems across to Linux-based alternatives. There are many Linux equivalents to Microsoft Exchange, for example, that can handle email and calendaring. Other popular servers ripe for moving across to Linux include file and print servers, web servers, and firewalls.

Of course, if you use Fedora, you largely go it alone in terms of support having to rely mainly on community forums and message boards (although if you go down the Red Hat Enterprise Linux route, doing so opens up commercial support channels from Red Hat).

Do not think that you have to switch everything over in one go. Moving servers across to new operating systems should be done on a server-by-server basis. Luckily Linux can easily co-exist in a multi-operating system environment, being compatible with Mac OS X, Windows, and Unix.

We have collated some of the questions that need to be asked when considering a move to Fedora in Table 2.1, titled “Deploying Fedora.” As mentioned earlier you need to identify the need that is going to be satisfied by moving to Fedora. Any project needs to meet a specific objective to be considered a success, so having this clear right at the start is essential. Another area of consideration is the impact to the existing computing environment. How will users cope with moving onto Linux; are they dyed in the wool Windows users that will resist any move to a different platform? Do you have the full support of management, something that is critical for projects of all sizes. By making successful changes behind the scenes, management can quickly be won over by the flexibility and choice of Open Source.

Table 2.1. Deploying Fedora

Consideration

Description

Applicability

How is Fedora going to be used?

Boot Management

Will remote booting be required?

Connectivity

Will the system be an intranet? Bandwidth requirements? Wireless? Mobile?

Context

How does this install fit in with academic, business, or corporate needs?

Consensus

Are managers and potential users on board with the project?

Comparison

Is this install part of platform comparison or benchmarking?

Development Platform

Will development tools be used?

Embedded Device

Is it an embedded device project?

Hardware

Are there any special hardware or device interfacing requirements?

Finance

How much is in the budget? Will cost comparison be required?

Marketing

Will a product or service be offered as a result?

Networking

What type of networking will be required?

Objective

Is there a specific objective of the install?

Pilot Project

Is this a pilot or test install?

Power Management

Any special power or energy requirements?

Public Relations

Does the public need to know?

Quality of Service

Is high availability or data integrity an issue?

Roadmap

What other steps might precede or follow the install?

Reporting

Are follow-up reports required?

Security

What level or type of security will be required?

Server

Is this a server installation?

Site Considerations

Does the location provide needed temperature and security, or does it even matter?

Software

Are any special device drivers needed for success?

Storage

Are there size or integrity needs? Has a backup plan been devised?

Timeline

Are there time constraints or deadlines to the install?

Training

Will special training be required for users or administrators?

Users

How many and what type of users are expected?

Workstation

Is this a workstation or personal desktop install? Is the workstation portable?

One of the key buzzwords to have come out of the dot com era is Total Cost of Ownership, and it is one that is fiercely debated when people talk about Linux. Those against Linux argue that although the software is free, the real cost comes in the amount of retraining and support necessary to move users to a new operating system. This can be circumvented by implementing Linux in situations where the end users are not directly affected, such as that web server that you have been planning to retire or the file and print server that needs more drive space. What is also often unseen is the increased availability that Linux-based systems offer companies. Quite simply they very rarely go down, unlike their Windows counterparts. Stability counts for a lot in this modern world of e-commerce where even a few minutes can cost thousands of dollars in lost orders and new customers. Talking about stability, one of the great things about Linux is that it does not necessarily need the latest hardware to function effectively—I have a router at home that is based on an old 486 machine that I bought sometime in 1994 coupled with a minimalist Linux distro! Think how many computers are needlessly disposed of that could be used as print servers or Internet gateways. The savings generated by sensibly recycling existing hardware are very tempting, and easily obtainable if you choose the Linux route.

In all of this, you need to be very clear what the objectives are. Specify exactly what you want to achieve from the project, what the Linux implementation will deliver, and how it will be used to replace any existing machines. What is the Linux machine replacing and what resources will be needed to maintain and support it? If you are rolling out to end users, what specific applications will they be using that you will have to provide support for?

Research is definitely a must before you embark on any project. It is also sensible to set up a test environment so that you can examine the performance of the new machine under set conditions to ensure that it functions in the way that you require. It is crucial that you spend a decent amount of time on testing because doing so will pay off in the long run with fewer bugs to fix and more positive user feedback and end user experience.

System Considerations

Fedora is flexible enough to cope with a wide range of computing needs, but with any switch of operating system you need to be aware of some of the issues that switching might cause. Some of them are listed in Table 2.1. For example, how you choose to use Fedora could affect your choice of computer hardware, might affect your network configuration, and could dictate software policy issues (such as access, security, and allowable protocols).

Linux-based operating systems can be used to provide many different services. For example, one server might be boot management for a thin-client network in which workstations boot to a desktop by drawing a kernel and remotely mounted file systems over a network. This mechanism is not supported out of the box, so some effort can be expended if such a system is required. Other services more easily implemented (literally in an hour or less) could be centralized server environments for file serving, web hosting for a company intranet, or bridging of networks and routing services.

Linux supports nearly every network protocol, which enables it to be used to good effect even in mixed operating system environments. The security features of the Linux kernel and companion security software also make Linux a good choice when security is a top priority. Although no operating system or software package is perfect, the benefit of open source of the kernel and other software for Linux allows peer review of pertinent code and rapid implementation of any necessary fixes. Even with the secure features of Linux, some effort will have to be made in designing and implementing gateways, firewalls, or secure network routers.

Fedora can serve as a development platform for applications, e-commerce sites, new operating systems, foreign hardware systems, or design of new network devices using Linux as an embedded operating system. Setting up workstations, required servers, source code control systems, and industrial security will require additional effort.

Hardware compatibility can be an issue to consider when setting up a Linux server or building a Linux-based network. Fortunately, most of the larger server manufacturers such as IBM, HP, and even Dell realize that Linux-based operating systems (like other open source operating systems such as BSD) are increasingly popular, support open standards, and offer technologies that can help rapid introduction of products into the market (through third-party developer communities).

Fedora can help ease system administration issues during migration. The latest suite of Fedora’s configuration utilities provides intuitive and easy to use graphical interfaces for system administration of many common services, such as networking, printing, and Windows-based file sharing. Fedora can also be used to support a legacy application environment, such as DOS, if required.

User Considerations

Humans are creatures of habit. It can be hard to transition a workforce, customer base, or other community to a new environment. The Fedora desktop, however, provides a friendly and familiar interface with menus and icons that new users can readily learn and put to work.

Part of the migration process can involve addressing user concerns, especially if Linux will take over the desktop. Fedora can be deployed in stages to make the migration process a bit easier, but the issue of user training must be addressed early on. This is especially true if users will be required to develop new skills or be aware of any caveats when using Linux (such as deleting all files in one’s home directory). Although Fedora can be configured to provide a “turn-key” desktop in which only several graphical applications (such as a web browser, organizer, or word processor) can be used, some users will want and need to learn more about Linux.

You can turn to formal Linux training from commercial vendors. System administrators can get training directly from Red Hat (go to http://www.redhat.com/training). For other issues concerning Linux in larger computing environments, browse to Linas Vepstas’s Linux Enterprise Computing pages at http://linas.org/linux/.

A Predeployment Planning Checklist

Table 2.1 provides a minimal checklist you can use to help plan a deployment.

Do not forget to address follow-up issues on your migration roadmap. You should pay attention to how satisfied or how well new users, especially those new to Linux, are adapting if a new desktop is used. However, if Fedora is deployed in a mixed environment, many users might not even know (or need to know) that Linux is being used!

Planning the Installation

There are many factors in favor of using Fedora as a computing solution. Fedora can fill many different roles on various tiers and hardware platforms because of the huge variety of software offered.

Addressing software concerns beforehand can help quell any worries or fears felt by new users. Some key factors for a successful installation include

  • Preparation—. Thoroughly discuss the migration or deployment, along with benefits, such as greater stability and availability of service.

  • Preconfiguration—. If possible, give users a voice in software choices or categories and poll for comments regarding concerns.

  • Correct installation—. Ensure that the installed systems are working properly, including access permissions, password systems, or other user-related issues and interaction with the deployment.

  • The right hardware to do the job—. Make sure that users have the hardware they need for their work, and that computers match the tasks required. For example, developers will have workstation requirements vastly different from administrative personnel.

Hardware Requirements

Fedora can be installed on and will run on a wide variety of Intel-based hardware. This does not include pre-Pentium legacy platforms, but many older PCs, workstations, rack-mounted systems, and multiprocessor servers are supported. Small-, medium-, and even large-scale deployments of specially tuned Linux distributions are available through a number of companies such as IBM, which offers hardware, software, and service solutions (with more than 200 software solutions for clustering applications alone).

Tip

It is always a good idea to explore your hardware options extensively before jumping on board with a specific vendor. You can buy computer hardware with a Linux distribution preinstalled. At the time of this writing, Dell Computer offered systems complete with Red Hat Enterprise Linux (such as desktop PCs and workstations) through http://www.dell.com/redhat/. IBM also offers Linux on its product line, and more information can be found through http://www.ibm.com/linux/. To find HP and preinstalled Linux systems, browse to http://www.hp.com/linux/. You can also buy low-cost desktop PCs with Linux through Wal-Mart’s online store at http://www.walmart.com (click to select the electronics department).

In the first section of this chapter, you learned to consider how Linux can be used in your environment and how you can prepare for its installation and deployment. These considerations also play a role in determining the types of hardware you need in your installation. But the type of deployment you choose also determines the hardware required for a successful deployment of Linux—and post-deployment satisfaction. The range of Linux hardware requirements and compatible hardware types is quite wide, especially when you consider that Linux can be used with mainframe computers as well as embedded devices.

Meeting the Minimum Fedora Hardware Requirements

The Fedora Project publishes general minimum hardware requirements for installing and using its base distribution in a file named RELEASE NOTES on the first CD-ROM or DVD, or available at http://fedora.redhat.com/docs/release-notes/. For the current release, your PC should at least have a 200MHz Pentium CPU, 620MB hard drive space, and 64MB RAM for using (and installing) Fedora without a graphical interface. For obvious reasons, a faster CPU, larger capacity hard drive, and more RAM are desired. Servers and development workstations require more storage and RAM.

Using Legacy Hardware

If you have an older PC based on an Intel 486 CPU with only 32MB RAM and a 500MB hard drive (which can be hard to find nowadays), you can install other Linux distributions such as Debian from The Debian Project at http://www.debian.org/.

Caution

One caveat is that if you prepare a hard drive with Linux in a PC with one CPU, such as a Pentium, and then install the drive in a PC with a 486 CPU, you should either make sure that a 486-based Linux kernel is installed, or perform a post-install of an appropriate kernel after moving the hard drive.

Installing Fedora on legacy hardware will be easier if you choose to use more recent Pentium-class PCs, but even older Pentium PCs can be used and purchased at a fraction of their original cost. Such PCs can easily handle many mundane but useful tasks. Some of the tasks suitable for older hardware include

  • Acting as a firewall, router, or gateway

  • Audio jukebox and music file storage server

  • Handling electronic mail

  • Hosting a remote printer and providing remote printing services

  • Network font server

  • Providing FTP server access

  • Remote logging capture

  • Secondary network-attached backup server

  • Serving as an Intranet (internal LAN) web server

  • Unattended dial-up gateway, voice mailbox, or fax machine

  • Use as a thin-client workstation for basic desktop tasks

Older PCs can handle any task that does not require a CPU with a lot of horsepower. To get the most out of your hardware, do not install any more software than required (a good idea in any case, especially if you are building a server). To get a little performance boost, add as much RAM as economically and practically feasible. If you cannot do this, cut down on memory usage by turning off unwanted or unneeded services. You can also recompile a custom Linux kernel to save a bit more memory and increase performance (see Chapter 39, “Kernel and Module Management”).

Note

Fedora does not include XFree86 3.3.6. This version might be important because older, legacy video cards are no longer supported in the newer X11R7 distribution. You can download version 3.3.6 from The XFree86 Project, Inc. through http://ftp.xfree86.org/pub/XFree86/3.3.6/binaries/. Make sure to choose the appropriate version for your operating system!

Planning for Hard Drive Storage for Your Fedora Installation

Making room for Fedora requires you to decide on how to use existing hard drive space. You might decide to replace existing hard drives entirely, for example, or you might decide to use only one operating system on your computer, making partitioning unnecessary. A full install from this book’s DVD will require at least 7GB hard drive space just for the software, so if you plan to install everything, a 10GB hard drive could be ideal for a workstation. Note that depending on how you plan to use Linux, a smaller capacity disk can be used, or a disk capacity many times the size of your system will be required.

Note

The following recommended installations and minimal storage requirements are based on a full install of the freely available version of Fedora distributed on the Internet. The copy of Fedora included with this book is the same, but you might find many additional software packages available from third-party Fedora contributors. Installing additional software will affect your storage requirements.

The Fedora installer no longer provides different installation classes. Instead it allows you a lot of control over the software that you wish to install. However, you are able to specify whether you want to install tools for productivity and development, as well as selecting specific packages according to your exact requirements. Fedora will compute the storage space required when you are selecting packages, so you can always be sure that you have sufficient hard drive space before it starts to install.

Of course, if you are after a minimalist installation then here are some software packages you might want to consider passing up in the installation process for as small a system as possible:

  • X Window System

  • GNOME desktop environment

  • KDE desktop environment

  • Graphical Internet

  • Office/productivity

  • Documentation

  • Sound and video

  • Graphics

  • All development software or libraries

Checking Hardware Compatibility

Fedora software for Intel-based PCs is compiled for the minimum x86 platform supported by the Linux kernel.

Note

The compatibility information in this chapter relates to Fedora. Other distributions might have different storage and CPU requirements. Also bear in mind that Fedora is available for x86-64 and PPC architectures as well. Consult the release notes to get a detailed specification for these versions.

Specific issues regarding Linux hardware compatibility can be researched online at a number of sites. Red Hat offers a hardware compatibility database at http://hardware.redhat.com/hcl/. You can select hardware class, manufacturer, version of Red Hat Enterprise Linux, platform, and status of support.

Other sites, such as the Linux-USB device overview at http://www.qbik.ch/usb/devices/, offer an interactive browsing of supported devices, and printer compatibility can be researched at LinuxPrinting.org at http://linuxprinting.org/. Some hardware categories to consider in your research include

  • Controller cards—. Such as SCSI, IDE, SATA, FireWire

  • CPUs—. Intel, AMD, Power, 64-bit, and Dual Core

  • Input devices—. Keyboards

  • Modems—. External, PCMCIA, PCI, and controllerless workarounds

  • Network cards—. ISA, PCI, USB, and others

  • Pointing devices—. Mice, tablets, and possibly touchscreens

  • Printers—. Various printer models

  • RAM—. Issues regarding types of system memory

  • Sound cards—. Issues regarding support

  • Specific motherboard models—. Compatibility or other issues

  • Specific PCs, servers, and laptop models—. Compatibility reports, vendor certification

  • Storage devices—. Removables, fixed, and others

  • Video cards—. Console issues (X compatibility depends on the version of X or vendor-based X distribution used)

If you have a particular laptop or PC model, you should also check with its manufacturer for Linux support issues. Some manufacturers such as HP now offer a Linux operating system preinstalled, or have an in-house Linux hardware certification program. Laptop users will definitely want to browse to Linux on Laptops at http://linux-laptop.net/.

Tip

There is a company called EmperorLinux in the U.S. that supplies laptops from prominent manufacturers with Linux pre-installed complete with support. They have been in business for a few years now, and ensure 100% compatibility with the laptops that they sell. Check out their range at www.emperorlinux.com.

If you cannot find compatibility answers in various online databases, continue your research by reading the Linux Hardware HOWTO at http://www.tldp.org/HOWTO/Hardware-HOWTO/. At that address, you will find loads of general information and links to additional sources of information.

Keep in mind that when PC hardware is unsupported under Linux, it is generally because the manufacturer cannot or will not release technical specifications or because no one has taken the time and effort to develop a driver. If you hit a roadblock with a particular piece of hardware, check the hardware manufacturer’s support web pages, or Google’s Linux pages at http://www.google.com/linux. You can then type in a specific search request and hopefully find answers to how to make the hardware work with Linux. This is also a good way to research answers to questions about software issues.

Preparing for Potential Hardware Problems

Fedora will work out-of-the-box with nearly every Intel- or PowerPC-based desktop, server, and laptop; drivers for thousands of different types of hardware peripherals are included. But you can sometimes run into problems if Linux does not recognize a hardware item, if Fedora does not correctly initialize the hardware, or if an initialized item is incorrectly configured. For these reasons, some hardware items are prone to creating problems during an install. In the sections that follow, you learn some important pointers for avoiding these problems or resolving those that do occur.

Controllerless Modems

As you read earlier, most Linux hardware-related installation problems stem from a lack of technical specifications from the manufacturer, thwarting efforts of open source developers to create a driver. In the recent past, one hardware item that triggered both types of difficulties was the controllerless modem, also colloquially known as a WinModem. The good news is that modem chipset manufacturers have been more forthcoming with driver details. Some original equipment manufacturers, such as IBM, have made a concerted effort to provide Linux support. Support for the ACP Mwave modem, used in ThinkPad 600/Es and 770s, is included in the Linux kernel. Drivers have been developed for many of the controllerless modem chipsets that formally did not work with Linux.

If a driver is not available for your controllerless modem, you have a few options. You can download the driver’s source code and build the driver yourself. Alternatively, you can download a binary-only software package and install the driver.

Some controllerless modems might also need to be initialized and configured using a separate utility program. The modem, if supported, should work normally after installing and configuring the driver.

You can research Linux support for controllerless modems by browsing to http://www.linmodems.org/.

Universal Serial Bus Devices

Fedora supports hundreds of different Universal Serial Bus (USB) devices. USB is a design specification and a protocol used to enable a host computer to talk to attached peripherals. Because of lack of manufacturer and device ID information or lack of technical specifications regarding certain chipsets, some devices might not work with Fedora. USB 1.1 devices are designed to support data transfer speeds between 1.5 and 12Mbps.

Common USB devices include cameras, keyboards, mice, modems, network interfaces, printers, scanners, storage devices, video (such as webcams), and hubs (to chain additional devices). Some problematic USB devices (at the time of this writing) include

  • Scanners—. Many Canon, Visioneer, and Hewlett-Packard USB scanners

  • Webcams—. Selected Logitech and Creative Labs webcams

Although some enlightened manufacturers are aware of opportunities in the Linux marketplace, most still do not support Linux. It pays to determine Linux support before you buy any USB device; again, research Linux USB support and its current state of development by browsing to http://www.qbik.ch/usb/devices/.

The newer USB 2.0 specification enables devices (such as hard and CD drives) to use speeds up to 480Mbps. Fedora supports USB 2.0 with the ehci-hcd kernel module. This driver, in development since early 2001, enables the use of many forms of newer USB 2.0 devices as long as you have a supported USB controller. Check out the current state of Linux USB 2.0 support by browsing to http://www.linux-usb.org/usb2.html.

Motherboard-Based Hardware

Small form factor PCs, thin clients, notebooks, and embedded devices are part of a growing trend in the PC industry. Manufacturers are cramming more functionality into fewer chips to simplify design and lower power requirements. Today, many computers come with built-in video graphics, audio chipsets, and network interfaces, along with a host of peripheral support.

Common modern (1996-onward) PC motherboard form factors are designed according to industry-assigned specifications (usually from Intel), and are ATX (12–9.6 inches); MicroATX (9.6–9.6 inches); and FlexATX (9–7.5 inches). One of the newest and even smaller motherboard forms is from VIA Technologies, Inc.—the mini-ITX (approximately 6.5–6.5 inches), which has an embedded CPU. CPUs commonly used in all these motherboards will vary, and have different socketing requirements based on chipset pins: Socket 478 for K7-type CPUs (from AMD); Socket 939 for some Athlon and Sempron processors, Socket AM2 for newer Athlon 64 and AMD FX processors, Socket 370 for Pentium IIIs and Celerons from Intel, or C3s from VIA; Socket 478 for Intel’s Pentium 4s (early versions of which used a 423-pin socket) and socket LGA 775 for newer Core 2 and Pentium D processors. Older socket types are Socket A, Socket 7 (and Super 7), Slot 1, and Slot 2.

Fortunately, nearly all controllers, bridges, and other chipsets are supported by Linux. Although flaky or unsupported built-in hardware can (usually) be sidestepped by installing a comparable PCI card component, cutting-edge notebook users are at the most risk for compatibility problems because internal components are not user-replaceable. Potential pitfalls can be avoided through careful research (vote with your money for Linux-compatible hardware), or by choosing PC motherboards with a minimum of built-in features, and then using PCI (Peripheral Component Interconnect) or AGP (Accelerated Graphics Port) cards known to work.

CPU, Symmetric Multiprocessing, and Memory Problems

Fedora supports all Pentium class x86 compatible CPUs. Code is included in the Linux kernel to recognize the CPU type when booting, and to then implement any required fixes to overcome architecture bugs (such as the now-infamous divide-by-zero error). After you install Fedora, you can also rebuild the Linux kernel to specifically support and take advantage of the host PC’s CPU. You might not realize extreme improvements in computational speed, but you’ll be assured that Linux is crafted for your CPU’s architecture, which can help stability and reliability. Details about rebuilding the Linux kernel are in Chapter 39. Some of the x86-based CPUs with specific supporting code for Linux include those from Advanced Micro Devices, Transmeta, and VIA Technologies.

Fedora’s Linux kernel also should automatically recognize and use the amount of installed RAM. The Linux kernel should also recognize and map out any memory holes in system memory (perhaps used for video graphics).

If you are installing Fedora on a working, stable PC, you should not have any problems related to the system’s memory. If you are putting together a new system, you need to avoid combining or configuring the system in ways that will interfere with its capability to process data. Some issues to be aware of are

  • Do not expect similar CPU performance across product lines from different manufacturers, such as AMD or VIA. Some CPU models offer better floating point or integer math operations, which are important for a number of CPU-intensive tasks (such as graphics, audio, and video rendering or conversion). If you need better performance, try to find a faster CPU compatible with your motherboard, or switch to a CPU with better Floating Point Unit (FPU) performance.

  • Overclocking can cause problems with overheating, memory access, and other hardware performance, and it is not a good idea for any Linux system. Overclocking is a popular geek pastime and a great way to get a bit of performance boost out of slower CPUs by altering voltage settings and/or clock timings via the BIOS. You can try to push your CPU to higher speeds, but this approach is not recommended if your aim is system stability. The Linux kernel will report the recognized CPU speed on booting (which you can view using the dmesg command).

  • Along the same lines, CPU and motherboard overheating will cause problems. Proper attachment of the CPU’s heatsink using a quality thermal paste (never use thermal tape), along with one or more fans providing adequate airflow lessens the chance of hardware damage and system failure.

  • You can run into problems if you switch the type of CPU installed in your computer, and especially if your PC’s BIOS does not automatically recognize or configure for newly installed mainboard hardware and components. In some instances, a system reinstall is warranted, but BIOS issues should be resolved first.

  • Not all CPUs support symmetric multiprocessing, or SMP. Fedora readily supports use of two or more CPUs and, during installation, automatically installs an appropriate Linux kernel. You can avoid problems by reading the Linux SMP HOWTO (available through http://www.tldp.org/). Note that some CPUs, such as the current crop of VIA C3s, might not be used for SMP. Also, SMP motherboards require that all CPUs be identical. This means that you need two identical CPUs to take advantage of SMP.

  • Faulty or bad memory causes Linux kernel panics or Signal 11 errors (segmentation faults), causing a system crash or a program to abort execution. Linux is quite sensitive to faulty hardware, but runs with great stability in a correctly configured system with good hardware. Problems can arise from incorrect BIOS settings, especially if video memory must occupy and use a portion of system RAM. Always install quality (and appropriate) memory in your PC to avoid problems.

Preparing and Using a Hardware Inventory

Buying a turn-key Linux solution is one way to avoid hardware problems, and many vendors are standing by, ready to prescribe solutions. However, managing deployments aimed at using existing hardware requires some information collection.

If you are a small business or individual user, you are well advised to prepare detailed checklists of existing hardware before attempting a migration to Linux. Not only do you benefit from the collected information, but you might also be able to sidestep or anticipate problems before, during, or after installation. Problems are most likely to occur with newer hardware, cutting-edge hardware such as new motherboard chipsets and video cards, or extraneous hardware such as operating system–specific scanners, printers, or wireless devices.

Table 2.2 provides a comprehensive checklist you can use to take inventory of target hardware, such as the computer and any peripherals. Veteran Linux users can take the collected information to build custom systems by adding known hardware or substituting cheaper but equivalent hardware.

Table 2.2. System and Peripheral Inventory Checklist

Item

Errata

Audio Devices

Microphone:

 

Line out:

 

Line in:

BIOS

Type:

 

Revision:

 

ACPI:

 

APM:

CD-ROM Drive

Brand:

 

Type:

CD-RW Drive

Brand:

 

Type:

 

CD-R write speed:

 

CD Re-write speed:

 

CD-ROM read speed:

DVD Drive

Brand:

 

Type:

DVD+/-RW Drive

Brand:

 

Type:

Digital Camera

Brand:

 

Model:

 

Interface:

CPU

Brand:

 

Socket type:

 

Speed:

FireWire (IEEE 1394)

Chipset:

 

Device(s):

IrDA Port

Device number:

 

Port IRQ:

Keyboard

Brand:

 

Type:

Laptop

Brand:

 

Model:

 

Hibernation partition:

Legacy Ports

Parallel type:

 

Parallel IRQ:

 

RS-232 number(s):

 

RS-232 IRQ(s):

Mice

Brand:

 

Type:

Modem

Brand:

 

Type:

Motherboard

Brand:

 

Type:

 

Chipset:

Monitor(s)

Brand:

 

Model:

 

Horizontal freq:

 

Vertical freq:

 

Max. resolution:

Network Card

Wireless:

 

Brand:

 

Type:

 

Speed:

PCI Bus

Version:

 

Model:

 

Type:

PCMCIA

Controller:

 

Cardbus:

 

Brand:

 

Type:

Printer(s)

Brand:

 

Model:

System RAM

Amount:

 

Type:

 

Speed:

S-Video Port

Xsupport:

Scanner

Brand:

 

Model:

 

Interface type:

Sound Card

Chipset:

 

Type:

 

I/O addr:

 

IRQ:

 

DMA:

 

MPU addr:

Storage Device(s)

Removable:

 

Size:

 

Brand:

 

Model:

 

Controller(s):

 

Rotational speed:

Storage Device Controller

Type:

Tablet

Brand:

 

Model:

 

Interface:

Universal Serial Bus

Controller:

 

BIOS MPS setting:

 

BIOS Plug-n-Play setting:

 

Device(s):

Video Device(s)

Brand:

 

Model:

 

Xinerama:

 

Chipset:

 

VRAM:

Use the checklist in Table 2.2 as a general guideline for recording your computer’s hardware and other capabilities. You can get quite a bit of information through hardware manuals or other documentation included with your PC, video, sound, or network interface card. Don’t worry if you cannot fill out the entire checklist; Fedora will most likely recognize and automatically configure your PC’s hardware during installation. Much of this information can be displayed by the dmesg command after booting. However, some of these details, such as your video card’s graphics chipset and installed video RAM, can come in handy if you need to perform troubleshooting. You can also use the list as a post-installation check-off sheet to see how well Fedora works with your system.

Preparing for the Install Process

The basic steps in installing Fedora are to plan, install, and configure. You have to decide how to boot to an install and how much room to devote to Linux. Then perform the install (a sample step-by-step installation is discussed in Chapter 3, “Installing Fedora”) and afterward, configure your system to host new users and specific software services. Much of the initial work is done during the install process because the installer, Anaconda, walks you through partitioning, configuring the desktop, and configuration of any recognized network adapter.

There are many different ways to install Fedora, and selecting an installation method might depend on the equipment on hand, existing bandwidth, or equipment limitations. Here are some of the most commonly used installation methods:

  • CD-ROM/DVD—. Using a compatible CD-ROM or DVD drive attached to the computer (laptop users with an external CD-ROM drive will need PCMCIA support from a driver disk image included under the first CD-ROM’s images directory).

  • Network File System (NFS)—. You can install Fedora from a remotely mounted hard drive containing the Fedora software. To perform this installation, you must have an installed and supported network interface card, along with a boot floppy with network support. (You learn how to make boot floppies later in this section of the chapter.)

  • File Transfer Protocol (FTP)—. As with an NFS install, installation via FTP requires that the Fedora software be available on a public FTP server. You also need an installed and supported network interface card, along with a boot floppy with network support.

  • Hypertext Transport Protocol (HTTP)—. As with the FTP and NFS installs, installation via HTTP requires that the Fedora software be available on an accessible website. You also need an installed and supported network interface card, along with a boot floppy with network support.

  • Installation via the Internet—. If you have the bandwidth, it might be possible to install Fedora via the Internet; however, this method might not be as reliable as using a Local Area Network (LAN) because of availability and current use of The Fedora Project or other servers on mirror sites.

  • A hard drive partition—. By copying the .iso images to a hard drive partition, you can then boot to an install.

  • Preinstalled media—. It is also possible to install Linux on another hard drive and then transfer the hard drive to your computer. This is handy, especially if your site uses removable hard drives or other media.

Note

More esoteric installations might be possible. Some Linux distributions support booting to an install via an Iomega Zip drive, via the Parallel Port Internet Protocol (PLIP), and even a null-modem cable supporting the Serial Line Internet Protocol (SLIP) or Point-to-Point Protocol (PPP). Browse to http://www.tldp.org/ and read Gilles Lamiral’s PLIP Install HOWTO to see how to install Red Hat 7.0 using your PC’s parallel port. After it is installed, you can then try to upgrade to Fedora. However, you need to be prepared for an uphill struggle!

After booting and choosing to use either a graphical or text-based install interface, the installation procedure is nearly the same for each type of install. Chapter 3 walks you through a typical CD- or DVD-based installation.

Preparing to Install from a CD-ROM

Installing Fedora can be as simple as inserting the first CD/DVD into your computer’s CD drive and rebooting the computer. But if you choose this method, you should first make sure that your system’s BIOS is set to boot from CD-ROM.

Entering the BIOS to make this change is usually accomplished by depressing a particular key, such as Del or F2, immediately after turning on the computer. After entering the BIOS, navigate to the BIOS Boot menu, perhaps such as that shown in Figure 2.1.

To boot to an install using your Fedora CD-ROM or DVD, set your BIOS to have your computer boot using its CD drive.

Figure 2.1. To boot to an install using your Fedora CD-ROM or DVD, set your BIOS to have your computer boot using its CD drive.

Partitioning Before and During Installation

Partitioning your hard drive for Linux can be done before or during installation.

If you plan to prepare your partitions before installing Linux, you will need to use commercial partitioning software. Some of the popular commercial software utilities you can use to create Linux partitions are Symantec’s PartitionMagic or VCOM Products’ Partition Commander. Alternatively, it might be possible to prepare partitions before installing Fedora by using the free FIPS.EXE command.

If you want to partition a hard drive using an existing Linux system, you can attach the hard drive to a spare IDE channel, and then use the Linux fdisk or GNU parted partitioning utilities. Both utilities offer a way to interactively partition and prepare storage media. Linux recognizes IDE hard drives using a device name such as /dev/hda (for the master device on IDE channel 0), /dev/hdb (for the slave device on IDE channel 0), /dev/hdc (for the master device on IDE channel 1), and /dev/hdd (for the slave device on IDE channel 1).

If a new hard drive is properly attached to your PC and you then boot Linux, you can see whether the kernel recognizes the device by viewing the output of the dmesg command. You can then use fdisk with the device name to begin partitioning like so:

# fdisk /dev/hdb

Note that you will need root permission, and in this example, the new drive is attached as a slave on IDE channel 0. Do not change partitioning on your root device, or you will bork your system! The fdisk command is interactive, and you can press M to get help when using the utility. You can use parted in much the same way if you specify the i, or interactive option on the command line like so:

# parted -i /dev/hdb

To get help when using parted interactively, press ? or type help followed by a command keyword. The parted command has other helpful features, such as the capability to copy a file system directly from one partition to another.

Finally, you can prepare partitions ahead of installation by booting your system using a live Linux distribution (such as the LNX Bootable Business Card, available at http://www.lnx-bbc.org/) and then using a native Linux utility such as fdisk to partition your drive. For details on using the fdisk partitioning utility and alternative software tools to partition your hard drive, see the section “How to Access and Manipulate the Partition Table” in Chapter 39, “Managing the File System.”

Tip

You can use the first Fedora CD or the DVD to perform other tasks aside from installing Linux. The CD-ROM/DVD features a rescue mode and can also be used to partition and prepare a hard drive for Linux. See Chapter 3.

Note

It is possible to create a dual-boot configuration, which allows the choice of booting Fedora and another operating system, such as Windows XP. To configure your system for dual-booting, you must first install Windows and then install Linux. Note that many Windows system-restore CD-ROMs wipe out all data on your hard drive, including Linux. During installation of Fedora, you install the GRUB Linux bootloader in the primary drive’s Master Boot Record, or MBR. When properly configured, GRUB allows your system to reboot to Windows or Linux. See Chapter 17, “Backing Up, Restoring, and Recovery,” for information on using GRUB, or browse to http://www.gnu.org/software/grub/manual/ to read the GRUB manual.

Caution

Before you begin partitioning your drive, get your safety nets in order. First, back up all critical data! Any changes to your system’s hard drive or operating system put your existing data at risk. To prevent the loss of time and resources that inevitably follow data loss, do full backups before you make any changes to your system. Create a bootdisk during the install (you will be asked before the install finishes) so that you will be able to at least boot Linux if something goes wrong. See Chapter 17 for information on backups with Linux.

Choosing a Partitioning Scheme

As with deployment and installation of Linux, partitioning your hard drive to accept Fedora requires some forethought, especially if the target computer is going to be used other than as a home PC on which to learn Linux. If Linux is to be the only resident operating system, you can have the installer automatically create and use a partition scheme according to the type of installation you select during the install. If you plan to have a dual-boot system in which you can boot Linux or another operating system, you have to manually partition your hard drive before and possibly during the install.

The simplest and most basic partitioning scheme for a Linux system requires a Linux native root partition and a swap partition. On a single-drive system with 12GB storage and 512MB RAM, the scheme might look like this:

Hard Drive Partition   Mount Point   Size
/dev/hda1              /             10.74GB
/dev/hda2              swap          1GB

On a system running Windows, the scheme might look like this:

Hard Drive Partition   Mount Point   Size
/dev/hda1              /mnt/dos      4GB
/dev/hda2              /             7.74GB
/dev/hda3              swap          1GB

Caution

Notebook users should be careful when partitioning. Some notebooks use a special partition equal to the size of install RAM in order to perform suspend-to-disk or other hibernation operations. Always examine your computer’s initial partitioning scheme if configuring a dual-boot system, and leave the special partition alone! One way around this problem is to use a software suspend approach as outlined at www.suspend2.net/.

Hosting Parts of the Linux File System on Separate Partitions

Your choice of specific partitioning scheme will depend on how Fedora will be used. On a system being designed for expansion, greater capacity, or the capability to host additional software or users, you can use separate partitions to host various parts of the Linux file system. Some candidates for these separate partitions include

  • /home—. Users will store hundreds and hundreds of megabytes of data under their directories. This is important data, perhaps even more so than the system itself. Using a separate partition (on a different volume) to store this user data helps make the data easier to find and it segregates user and system data. You must decide ahead of time how much storage to allocate to users. For a single workstation, you should reserve several gigabytes of storage.

  • /opt—. As the home directory for additional software packages, this directory can have its own partition or remote file system. Fedora does not populate this directory, but it might be used by other software packages you install later. One gigabyte of storage should be adequate, depending on applications to be installed.

  • /tmp—. This directory can be used as temporary storage by users, especially if disk quotas are enforced; as such, it could be placed on its own partition. This directory can be as small as 100MB.

  • /usr—. This directory holds nearly all the software on a Fedora system and can become quite large if additional software is added, especially on a workstation configuration. Using a separate partition can make sense. A full install requires at least 6GB for this directory or more if additional software is added.

  • /var—. Placing this directory (or perhaps some of its subdirectories) on a separate partition can be a good idea, especially because security logs, mail, and print spooling take place under this tree. You should reserve at least one gigabyte of storage for /var, especially if using Fedora as a print server (as spooled documents will reside under /var/spool).

Tip

As a general rule, it is a good idea to segregate user and system data. Although a Linux system can be quickly restored, user data has a much greater value and can be much more difficult to replace. Segregating data can make the job of backing up and restoring much easier. If you ever have a problem accessing your partition, we recommend that you get the excellent Knoppix distribution that boots and runs entirely from CD. This will enable you to access your partitions and make any necessary repairs.

Using Fedora’s kickstart Installation Method

Automating the installation process can save system administrators a lot of time and effort during an initial deployment, upgrade, or maintenance cycle by managing multiple computers at one time. Fedora offers a highly automated installation technique called kickstart, developed by Red Hat, which can be used for unattended installation of Linux.

Fedora’s kickstart installation uses a single configuration file with a special, extensive syntax on a server, boot floppy, or other medium to install Fedora via CD/DVD, a hard drive partition, or a network connection. Using kickstart is easy and involves passing a kernel argument to the Fedora Linux boot kernel. The various arguments tell the boot kernel to look for a configuration file on floppy, a designated server, via a network, specific file, or CD/DVD.

You can use kickstart to install Fedora on one or more computers at the same time. First, set up a web or FTP server with Fedora’s installation files. For directions, see the “Installing Using a Network” section in Chapter 3. Next, create a network boot floppy using the techniques described in the next section. Follow the directions given here (choosing an FTP install) and then copy the custom kickstart file to the network boot floppy. You can then use this floppy (and copies) to boot one or more PCs to a network install using your FTP server.

Tip

Fedora does not automatically install system-config-kickstart, the utility used to create and customize system-config-kickstart files. Be sure that you install it using either yum or the Add/Remove Programs tool.

To begin the automated installation process, you create the configuration file that will be used by kickstart as an installation profile. You can configure the complex configuration file with Fedora’s Kickstart Configurator. To start the configuration, click the Kickstart item from System Administration menu, or enter the system-config-kickstart command, like so:

# system-config-kickstart

After you press Enter, you see the Kickstart Configurator dialog box, as shown in Figure 2.2.

Fedora’s kickstart configuration tool, system-config-kickstart, can be used to quickly and easily create installation profiles for use in automated installations.

Figure 2.2. Fedora’s kickstart configuration tool, system-config-kickstart, can be used to quickly and easily create installation profiles for use in automated installations.

Click to select various options, and then enter the specifics desired for the target system. Start by selecting the default system language, type of keyboard, mouse, and so on. Of course, automated installations work best when installing to similar equipment. When finished, press Ctrl+S, or use the Save file item from the File menu. The configuration will be saved with the name ks.cfg. When you use the kickstart installation method, the kickstart file will be read by computers booting to the install. The kickstart language covers nearly every aspect of an install with the exception of sound card, printer, or modem setup.

For example, a portion of a kickstart file generated for an install might look like

#Generated by Kickstart Configurator

#System language
lang en_US

#Language modules to install
langsupport en_US

#System keyboard
keyboard us
#System mouse
mouse genericps/2

#System timezone
timezone --utc America/New_York

#Root password
rootpw --iscrypted $1$/n3yjyDV$AWoBZgRQq/lAxyRhX1JSM1
...

Note that not all the output of a sample ks.cfg is shown. However, you can see that this file will feed kickstart directions for an install, including an encrypted root password to be installed on the target system.

The next step is to copy your new ks.cfg to a boot disk created using one of the boot floppy images (found at www.thisiscool.com/fcfloppy.htm). You can do this with Linux by using the mount and cp commands. For example, insert your boot disk into your PC, and then use the mount command (as root) like so:

# mount /mnt floppy

If Fedora has mounted your floppy automatically, you’ll receive an error message such as /dev/fd0 already mounted. You can then simply copy the ks.cfg file to your floppy like so:

# cp ks.cfg /mnt/floppy

You can verify the contents of the floppy using the ls command like this:

# ls /mnt/floppy
boot.msg       general.msg   initrd.img        ks.cfg         ldlinux.sys
options.msg   param.msg    rescue.msg   snake.msg  splash.lss
syslinux.cfg    syslinux.png   vmlinuz

Then unmount the floppy using the umount command like so:

# umount /mnt/floppy

Remove the disk. It is now ready for use. When you use the disk to boot a PC, after booting, tell the install boot image that you’d like to perform a kickstart install like this:

linux ks=floppy

The installer will then use the specifications you outlined in the Kickstart Configurator and saved in ks.cfg to install Fedora.

Reference

The following is a list of references you can use to learn a bit more about partitioning, installation tools, and installing Fedora and Linux variants on a variety of hardware. You’ll also find information about installation on hardware employed for embedded and mainframe solutions.

https://www.redhat.com/en_us/USA/rhel/migrate/—Red Hat’s helpful Migration Center, with news, views, white papers, and other tips and research on migrating to a Linux solution.

http://www.yale.edu/pclt/BOOT/DEFAULT.HTM—A basic primer to partitioning that is operating system nonspecific.

http://www-1.ibm.com/linux/—Home page for Linux at IBM, with links to products, services, and downloads.

http://www-124.ibm.com/developerworks/opensource/linux390/—Home page for IBM S/390 Linux solutions.

http://www.dell.com/linux/—Dell Computer’s Linux information pages.

http://hardware.redhat.com/hcl/—Entry point to Red Hat’s hardware compatibility database.

http://www.linux1394.org/—Home page for the Linux FireWire project, with information regarding the status of drivers and devices for this port.

http://www.linux-usb.org/—Home page for the Linux USB project, with lists of supported devices and links to drivers.

http://elks.sourceforge.net/—Home page for Linux for x286 and below CPUs, ELKS Linux.

http://www.lnx-bbc.org/—Home page for the Bootable Business Card, a 50MB compressed Linux distribution that offers hundreds of networking clients, a live X session, web browsing, PDA backup, wireless networking, rescue sessions, and file recovery.

http://www.coyotelinux.com/—Home page for several compact Linux distributions offering firewalling and VPN services. The floppy-based distribution works quite well on older PCs and does not require a hard drive.

http://www.freesco.org/—Home page for a floppy-based Linux router solution that works on 386 PCs, requires only 6MB RAM, and provides bridging, firewalling, IP masquerading, DNS, DHCP, web, telnet, print, time, and remote access functions.

http://www.bitwizard.nl/sig11/—A detailed overview of some root causes of Linux Signal 11 errors.

http://www.gnu.org/software/parted/parted.html#introduction—Home page for the GNU parted utility.

http://www.linux.org/vendors/systems.html—One place to check for a vendor near you selling Linux preinstalled on a PC, laptop, server, or hard drive.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.118.205.235