2260 lines
80 KiB
Plaintext
2260 lines
80 KiB
Plaintext
|
Network Install HOWTO
|
|||
|
Graham White, gwhite@uk.ibm.com
|
|||
|
IBM Hursley, UK
|
|||
|
v1.0, 12th September 2002
|
|||
|
|
|||
|
This HOWTO describes how to install Linux over a Local Area Network
|
|||
|
(LAN). It covers setting up and administrating the install server
|
|||
|
machine as well as installing client machines from your server. Since
|
|||
|
Network Installation is distribution dependent it covers SuSE, Redhat
|
|||
|
and Debian installs but also includes a generic Linux network install
|
|||
|
guide.
|
|||
|
______________________________________________________________________
|
|||
|
|
|||
|
Table of Contents
|
|||
|
|
|||
|
|
|||
|
|
|||
|
1. Introduction
|
|||
|
|
|||
|
1.1 Copyright
|
|||
|
1.2 Disclaimer
|
|||
|
1.3 Credits
|
|||
|
1.4 Translations
|
|||
|
1.5 Change Log
|
|||
|
|
|||
|
2. Document Structure
|
|||
|
|
|||
|
2.1 Server Setup Structure
|
|||
|
2.2 Client Install Structure
|
|||
|
2.3 Reading plan
|
|||
|
|
|||
|
3. Quick Guide
|
|||
|
|
|||
|
3.1 Advantages & Disadvantages
|
|||
|
3.1.1 Advantages
|
|||
|
3.1.2 Disadvantages
|
|||
|
3.2 Automatic vs Manual Installation
|
|||
|
3.2.1 Automatic Installation
|
|||
|
3.2.2 Manual Installation
|
|||
|
3.3 Hardware
|
|||
|
3.4 Software/Services
|
|||
|
3.5 Generic Server Setup Guide
|
|||
|
3.5.1 Begin Setup
|
|||
|
3.5.2 Setting Up Filespace
|
|||
|
3.5.2.1 How much space will you need?
|
|||
|
3.5.2.2 How much space do you have?
|
|||
|
3.5.3 Copy Installation Media
|
|||
|
3.5.4 Enable Remote Access
|
|||
|
3.5.4.1 NFS
|
|||
|
3.5.4.2 FTP
|
|||
|
3.5.4.3 HTTP
|
|||
|
3.5.5 Basic Setup Complete
|
|||
|
3.6 Generic Client Install Guide
|
|||
|
3.6.1 Create Config Files
|
|||
|
3.6.1.1 Configuration Program Installation
|
|||
|
3.6.1.2 Create A Basic Config File
|
|||
|
3.6.1.3 Advanced Config File Setup
|
|||
|
3.6.2 Boot the Machine
|
|||
|
|
|||
|
4. SuSE Server Setup
|
|||
|
|
|||
|
4.1 Setting Up Filespace
|
|||
|
4.1.1 How much space will you need?
|
|||
|
4.1.2 How much space do you have?
|
|||
|
4.2 Copy Installation Media
|
|||
|
4.3 Enable Remote Access
|
|||
|
4.3.1 NFS
|
|||
|
4.4 Package Customisation
|
|||
|
|
|||
|
5. SuSE Client Install
|
|||
|
|
|||
|
5.1 Create AutoYaST Config Files
|
|||
|
5.1.1 YaST 2 Module Installation
|
|||
|
5.1.2 Create A Basic Config File
|
|||
|
5.1.3 Advanced Config File Setup
|
|||
|
5.2 Boot the Machine
|
|||
|
5.2.1 Manual Installation
|
|||
|
5.2.2 Automatic Installation
|
|||
|
5.2.2.1 Further Boot Options
|
|||
|
|
|||
|
6. Redhat Server Setup
|
|||
|
|
|||
|
6.1 Setting Up Filespace
|
|||
|
6.1.1 How much space will you need?
|
|||
|
6.1.2 How much space do you have?
|
|||
|
6.2 Copy Installation Media
|
|||
|
6.3 Enable Remote Access
|
|||
|
6.3.1 NFS
|
|||
|
6.3.2 FTP
|
|||
|
6.3.3 HTTP
|
|||
|
6.4 Package Customisation
|
|||
|
6.4.1 Further Customisation
|
|||
|
|
|||
|
7. Redhat Client Install
|
|||
|
|
|||
|
7.1 Create Kickstart Config Files
|
|||
|
7.1.1 Kickstart Configurator Installation
|
|||
|
7.1.2 Create A Basic Config File
|
|||
|
7.1.3 Advanced Config File Setup
|
|||
|
7.2 Boot the Machine
|
|||
|
7.2.1 Further Boot Options
|
|||
|
|
|||
|
8. Debian Server Setup
|
|||
|
|
|||
|
8.1 Setting Up Filespace
|
|||
|
8.1.1 How much space will you need?
|
|||
|
8.1.2 How much space do you have?
|
|||
|
8.2 Mirror the Debian Archive
|
|||
|
8.2.1 Where to Mirror From?
|
|||
|
8.2.2 How to Mirror?
|
|||
|
8.3 Enable Remote Access
|
|||
|
8.3.1 NFS
|
|||
|
8.3.2 FTP
|
|||
|
8.3.3 HTTP
|
|||
|
|
|||
|
9. Debian Client Install
|
|||
|
|
|||
|
9.1 Boot the Machine
|
|||
|
|
|||
|
10. Appendix A: Further Information
|
|||
|
|
|||
|
10.1 HOWTO
|
|||
|
10.1.1 Generic
|
|||
|
10.1.2 Redhat
|
|||
|
10.2 Mini-HOWTO
|
|||
|
10.2.1 Generic
|
|||
|
10.2.2 Debian
|
|||
|
10.3 Web Pages
|
|||
|
10.3.1 Generic
|
|||
|
10.3.2 SuSE
|
|||
|
10.3.3 Redhat
|
|||
|
10.3.4 Debian
|
|||
|
10.4 Mailing Lists
|
|||
|
10.4.1 SuSE
|
|||
|
10.4.2 Redhat
|
|||
|
10.4.3 Debian
|
|||
|
|
|||
|
|
|||
|
______________________________________________________________________
|
|||
|
|
|||
|
1. Introduction
|
|||
|
|
|||
|
I was first prompted to write this document after reading a request
|
|||
|
for such a document on the LDP suggestions page. I realised that this
|
|||
|
was within my area of expertise and approached the LDP about creating
|
|||
|
a new HOWTO document for the project. I took the LDP standard
|
|||
|
template and have modified that in order to come up with the structure
|
|||
|
of this document. Using both the template and a few SGML references,
|
|||
|
I have written the SGML source, that I have since found to be a
|
|||
|
particularly convenient type for converting into many different
|
|||
|
document formats.
|
|||
|
|
|||
|
About the author - I started working with Linux 2 years ago (at the
|
|||
|
time of writing) when I joined IBM <20> in a Linux support role. I
|
|||
|
started IBM with no previous administration experience and learned my
|
|||
|
skills on the job. A year after I joined I was certified as a Redhat
|
|||
|
Expert (RHCE). During my second year I implemented a Linux network
|
|||
|
install server that I am still managing and from which I hope to draw
|
|||
|
my knowledge to write this document.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
1.1. Copyright
|
|||
|
|
|||
|
(C) Copyright IBM Corp. 2002.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
1.2. Disclaimer
|
|||
|
|
|||
|
This document is provided "AS IS," with no express or implied
|
|||
|
warranties. Use the information in this document at your own risk.
|
|||
|
|
|||
|
The following terms are registered trademarks of International
|
|||
|
Business Machines corporation in the United States and/or other
|
|||
|
countries: IBM. A full list of U.S. trademarks owned by IBM may be
|
|||
|
found at http://www.ibm.com/legal/copytrade.shtml.
|
|||
|
|
|||
|
Linux is a trademark of Linus Torvalds
|
|||
|
|
|||
|
Other company, produce, and service names may be trademarks or service
|
|||
|
marks of others.
|
|||
|
|
|||
|
Naming of particular products or brands should not be seen as
|
|||
|
endorsements.
|
|||
|
|
|||
|
This document may be reproduced or distributed in any form without
|
|||
|
prior permission provided the copyright notice is retained on all
|
|||
|
copies. Modified versions of this document may be freely distributed
|
|||
|
provided that they are cloearly identified as such, and this copyright
|
|||
|
is included intact.
|
|||
|
|
|||
|
You are strongly recommended to take a backup of your system before
|
|||
|
major installation, and backups at regular intervals.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
1.3. Credits
|
|||
|
|
|||
|
I am always open to putting more names in this section so if you want
|
|||
|
to get in here then please send me feedback or write your own section
|
|||
|
for a different Linux <20> distribution that is not included yet.
|
|||
|
|
|||
|
Thanks to my proof readers of version 0.9:
|
|||
|
- Adrian Fewings
|
|||
|
- Beth Carey
|
|||
|
- Paul Milner
|
|||
|
|
|||
|
|
|||
|
|
|||
|
1.4. Translations
|
|||
|
|
|||
|
Currently this document is only available in English. If you would
|
|||
|
like to be a translator for it then please mail me.
|
|||
|
|
|||
|
1.5. Change Log
|
|||
|
|
|||
|
You can always find the latest copy of this document at the Linux
|
|||
|
Documentation Project <http://www.tldp.org/> homepage.
|
|||
|
|
|||
|
|
|||
|
V. DATE CHANGE
|
|||
|
______________________________________________________________________
|
|||
|
0.1 27th July 2002 Started writing the first draft
|
|||
|
Wrote the Introduction Section.
|
|||
|
0.2 2nd August 2002 Finalised the document structure.
|
|||
|
Written the SuSE Server Setup.
|
|||
|
0.3 20th August 2002 Tidied up source to work better with PDF docs
|
|||
|
Written SuSE Client Install
|
|||
|
0.4 21st August 2002 Written Redhat Server Setup
|
|||
|
0.5 22nd August 2002 Written Redhat Client Install
|
|||
|
0.6 23rd August 2002 Written Debian Server Setup
|
|||
|
0.7 30th August 2002 Written Debian Client Install
|
|||
|
0.8 1st September 2002 Written Quick Install Section
|
|||
|
0.9 2nd September 2002 Written Structure Section & Tidied up loose ends
|
|||
|
1.0 12th September 2002 Proof read and made refinements
|
|||
|
Submit to the LDP
|
|||
|
|
|||
|
|
|||
|
|
|||
|
2. Document Structure
|
|||
|
|
|||
|
This document is split up into various sections that are designed to
|
|||
|
make it easy to read and learn from. There are major sections that
|
|||
|
allow the reader to skip to parts of the HOWTO that will be relevant
|
|||
|
for them. The entire document is not designed to be relevant to every
|
|||
|
reader and you may wish to skip out entire major sections of it. Each
|
|||
|
major section will consist of a set of subsections, so if you think a
|
|||
|
major section is relevant to what you are reading this HOWTO for then
|
|||
|
please read ALL the subsections.
|
|||
|
|
|||
|
This HOWTO covers different distributions of Linux and I try to be
|
|||
|
generic across different versions of a particular distribution. It
|
|||
|
contains two basic high-level structures to it for each distribution
|
|||
|
that it contains, these are (a) sections on setting up Linux install
|
|||
|
``server'' server machines, and (b) sections on setting up ``clients''
|
|||
|
using an install server. In addition to these two types of main
|
|||
|
section there are also a few other sections that are designed for
|
|||
|
reference purposes to other documents, and how to use this document.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
2.1. Server Setup Structure
|
|||
|
|
|||
|
This is a rough list of points that you will need to follow in order
|
|||
|
to setup a Linux machine as a network install server. The HOWTO
|
|||
|
sections on setting up servers roughly adhere to this list:
|
|||
|
|
|||
|
1. Install a machine with Linux to be a server machine
|
|||
|
|
|||
|
2. Check you have enough disk space free to serve Linux installs
|
|||
|
|
|||
|
3. Set up the filespace you want to use to serve the Linux installs
|
|||
|
|
|||
|
4. Copy the install media to your filespace
|
|||
|
|
|||
|
5. Enable one or more remote access methods to your filespace
|
|||
|
|
|||
|
6. Customise your server images
|
|||
|
|
|||
|
|
|||
|
|
|||
|
2.2. Client Install Structure
|
|||
|
|
|||
|
This is a rough list of points that you will need to follow in order
|
|||
|
to install a Linux distribution from a network install server. The
|
|||
|
HOWTO sections on installing client machines roughly adhere to this
|
|||
|
list:
|
|||
|
|
|||
|
1. Install config program on a machine
|
|||
|
|
|||
|
2. Use config program to create config files
|
|||
|
|
|||
|
3. Edit the config file to include customisable options
|
|||
|
|
|||
|
4. Create a bootable media
|
|||
|
|
|||
|
5. Provide access to the config file
|
|||
|
|
|||
|
6. Boot your machine and read the config file
|
|||
|
|
|||
|
7. Client contacts server machine
|
|||
|
|
|||
|
8. Manually supply any requested arguments
|
|||
|
|
|||
|
9. Client installs and reboots to new operating system
|
|||
|
|
|||
|
|
|||
|
|
|||
|
2.3. Reading plan
|
|||
|
|
|||
|
Although this is not the biggest reference guide in the world you can
|
|||
|
still help yourself for quicker reading by following the guidelines
|
|||
|
below. I have tried to write the HOWTO in such a way that it will be
|
|||
|
useful to all skill levels in Linux.
|
|||
|
|
|||
|
|
|||
|
Expert
|
|||
|
(aka the elite). If you are familiar with Linux as well as
|
|||
|
installation over networks then you will probably be able to do
|
|||
|
most of your setup using the quick guide section, you will also
|
|||
|
find some useful references in the appendices for further
|
|||
|
reading purposes. For distribution specific details of a
|
|||
|
network install then you should be able to reference the
|
|||
|
appropriate subsection.
|
|||
|
|
|||
|
|
|||
|
Experienced
|
|||
|
(aka competent). If you are familiar with Linux but new to
|
|||
|
network installations then you should be able to make good use
|
|||
|
of the various distribution independent sections. Read
|
|||
|
carefully through the sections that you think are relevant for
|
|||
|
your purposes but you should be able to skip through the
|
|||
|
commands quite easily. You will also find good references in
|
|||
|
the appendices for further reading.
|
|||
|
|
|||
|
|
|||
|
Newbie
|
|||
|
(mostly harmless). You will find some excellent installation
|
|||
|
references listed in the appendices that I would thoroughly
|
|||
|
recommend reading before attempting network installations. Make
|
|||
|
sure you are completely happy with a basic non-network Linux
|
|||
|
installation before you attempt networked installs. Once you
|
|||
|
think you are ready then read very thoroughly through the
|
|||
|
sections for the distribution you are interested in and make
|
|||
|
sure you read the non-distribution specific sections carefully
|
|||
|
too. You should find the command references in this HOWTO very
|
|||
|
helpful.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3. Quick Guide
|
|||
|
|
|||
|
This chapter gives some overview information about installing Linux
|
|||
|
over a network. All examples and information here can be considered
|
|||
|
generic between different Linux distributions. If you want more
|
|||
|
specific information for a particular distribution then please read
|
|||
|
one of the following relevant chapters.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.1. Advantages & Disadvantages
|
|||
|
|
|||
|
The following is a list of advantages and disadvantages of installing
|
|||
|
Linux over a network and the automatic installation features available
|
|||
|
with many distributions of Linux. The list is in no specific order:
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.1.1. Advantages
|
|||
|
|
|||
|
|
|||
|
<20> Fastest installation (on a good network)
|
|||
|
|
|||
|
<20> Automatic configuration available (unattended installation)
|
|||
|
|
|||
|
<20> Very quick installation of many systems
|
|||
|
|
|||
|
<20> No need for physical installation media
|
|||
|
|
|||
|
<20> Customisable installation with packages not available from the
|
|||
|
standard distribution
|
|||
|
|
|||
|
<20> Once the install system is setup and working installations are very
|
|||
|
simple
|
|||
|
|
|||
|
<20> Multiple system configurations available for automatic installation
|
|||
|
with different config files
|
|||
|
|
|||
|
<20> Simultaneous installation from a single source
|
|||
|
|
|||
|
<20> No need for an install media library, space-saving
|
|||
|
|
|||
|
<20> Very easy to update
|
|||
|
|
|||
|
<20> No problems with reading install media
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.1.2. Disadvantages
|
|||
|
|
|||
|
|
|||
|
<20> Slow installation (on a bad network)
|
|||
|
|
|||
|
<20> Added complexity of installation
|
|||
|
|
|||
|
<20> Time needed initially to set up an install server
|
|||
|
|
|||
|
<20> Relies on network and connectivity
|
|||
|
|
|||
|
<20> Uses network bandwidth
|
|||
|
|
|||
|
<20> A server machine is required (expensive)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.2. Automatic vs Manual Installation
|
|||
|
|
|||
|
This section briefly compares the differences between automatic (or
|
|||
|
unattended) installations with the more common manual installations
|
|||
|
available. This should give you a good idea of which system is right
|
|||
|
for your usage.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.2.1. Automatic Installation
|
|||
|
|
|||
|
Automated or unattended installation is probably less used and less
|
|||
|
well known for installing systems than manual installation. This
|
|||
|
instantly gives rise to the challenges of trying to educate people
|
|||
|
about what it is and how to use it. Once you understand the basics of
|
|||
|
networked installation then automatic installation is a natural next
|
|||
|
step to take when installing and configuring your systems.
|
|||
|
|
|||
|
Automatic installation has the major drawback of a longer setup period
|
|||
|
required at the start of your process. This is to set up the install
|
|||
|
server (which you need to do for any network install environment) but
|
|||
|
you must also make up one or more configuration files for your install
|
|||
|
client to read. It is this setup time and slight added complexity
|
|||
|
that you must weigh up before deciding whether to do manual or
|
|||
|
automatic installations. Basically, as a rule of thumb, the more
|
|||
|
machines you have to install, the more time will be saved by using
|
|||
|
automatic installation techniques.
|
|||
|
|
|||
|
Automated installations are very easy to perform once you have the
|
|||
|
initial setup completed. You boot your client system in any way shape
|
|||
|
or form you like (usually by floppy disk) but you also provide access
|
|||
|
to your configuration file to the client at install time (usually
|
|||
|
either on the floppy disk or over the network connection). The
|
|||
|
configuration file contains all the required information that your
|
|||
|
client will need for installation, from what mouse/keyboard to use
|
|||
|
right through to the packages that you want installed on your system.
|
|||
|
|
|||
|
Another large bonus point of using the automated installation
|
|||
|
techniques is that most Linux distributions also provide means to add
|
|||
|
customised packages to the system at install time. This means that
|
|||
|
you can install packages that are not provided by the particular Linux
|
|||
|
distribution you are installing. There are normally also further
|
|||
|
configuration steps available such as the ability to write scripts for
|
|||
|
your installation that will get performed before, during, or after the
|
|||
|
install is complete. This all adds up to providing much faster
|
|||
|
installation of a complete system that is already setup in a
|
|||
|
customised way for your particular environment.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.2.2. Manual Installation
|
|||
|
|
|||
|
This is the method of Operating System (OS) installation that most
|
|||
|
people are used to. Commonly we install our base OS using CDROM disks
|
|||
|
and boot from CDROM or floppy disk before proceeding through a program
|
|||
|
of menus that allow us to customise certain options. This is probably
|
|||
|
the greatest benefit of Manual Installation i.e. most people are
|
|||
|
familiar with the process. However, it can bring other benefits too
|
|||
|
such as a quick/easy/simple installation and this method of
|
|||
|
installation is used more (therefore tested more) than other methods
|
|||
|
of installation so it might just be more reliable too.
|
|||
|
|
|||
|
The problems with manual installation come when you update your system
|
|||
|
very regularly, you are installing a large number of systems, or you
|
|||
|
want to have a particularly customised setup. Manual installation
|
|||
|
will not allow you to add extra programs to your OS at install time,
|
|||
|
you will have to install the OS then boot it before configuring the
|
|||
|
programs you want in the way that you would like. Also, this method
|
|||
|
can be quite time consuming if you are installing lots of systems,
|
|||
|
particularly if you only have a few sets of CDs.
|
|||
|
|
|||
|
Manual installation can still be done using a networked install
|
|||
|
environment. You can do this on any compatible OS that allows you to
|
|||
|
boot your client machine ready for installation before loading your
|
|||
|
network drivers and contacting your install server. All the data that
|
|||
|
would otherwise have been copied from CD images is now sent over the
|
|||
|
network instead.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.3. Hardware
|
|||
|
|
|||
|
You do not require any special hardware in order to install Linux over
|
|||
|
a network in either manual or automated mode. The basic requirements
|
|||
|
are:
|
|||
|
|
|||
|
1. That you have a server machine available to you that has enough
|
|||
|
storage space on it to hold the install image that you want to
|
|||
|
transfer over the network.
|
|||
|
|
|||
|
2. Ensure that this server is powerful enough to cope with the load
|
|||
|
that is going to be placed upon it.
|
|||
|
|
|||
|
3. A network connection between your server and the client you want to
|
|||
|
install.
|
|||
|
|
|||
|
4. A client machine with the appropriate hardware for the installation
|
|||
|
that you are intending to do.
|
|||
|
|
|||
|
Some examples where you might require specific hardware may be if you
|
|||
|
have a specialised network or if you need to attach more storage to
|
|||
|
your server, for example. In the example of attaching storage to your
|
|||
|
server, it does not matter in any way to the installation process
|
|||
|
where the install image is held, it can be on a local hard disk, in a
|
|||
|
RAID array, on a distributed filesystem or anywhere that the server
|
|||
|
machine can access reliably and quickly.
|
|||
|
|
|||
|
It goes without saying that if you don't have a network or your
|
|||
|
network is unreliable or slow then do not attempt network
|
|||
|
installations as they may fail or take a very long time to complete.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.4. Software/Services
|
|||
|
|
|||
|
You will require a basic understanding of some of the services that
|
|||
|
run on a Linux based machine in order to setup your install server.
|
|||
|
These are services that make your install image available over your
|
|||
|
local network to the client machines that you want to install. In
|
|||
|
addition you will also need basic Linux administration skills in order
|
|||
|
to set up and maintain your server well.
|
|||
|
|
|||
|
Most Linux distributions have a network installation method that makes
|
|||
|
use of between one and three methods of transferring data cross a
|
|||
|
network. These services may or may not have an impact on the
|
|||
|
installation you are going to perform at the client end. The
|
|||
|
differences between the services will depend on the Linux distribution
|
|||
|
you are installing and any distinctions that this distribution makes
|
|||
|
between these services.
|
|||
|
|
|||
|
The three data transfer services are NFS (Network Filesystem), HTTP
|
|||
|
(Hypertext Transfer Protocol) and FTP (File Transfer Protocol). Each
|
|||
|
of these services is slightly different in the way that it operates,
|
|||
|
the function that it is designed for, and the way that you
|
|||
|
administrate it. Basic guidance is provided throughout this HOWTO
|
|||
|
about what these differences are but you are recommended to
|
|||
|
familiarise yourself with each of them so that you can manage your
|
|||
|
system responsibly and make informed choices about the services that
|
|||
|
you run.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5. Generic Server Setup Guide
|
|||
|
|
|||
|
This section gives a brief run down of setting up an install server
|
|||
|
for a Linux distributions as they can be and are designed specifically
|
|||
|
to give you a very quick overview of what network installations
|
|||
|
involve. If you want to perform network installations on your own
|
|||
|
machines then you are advised to read the relevant sections of this
|
|||
|
HOWTO in full. If the HOWTO does not contain a section for the
|
|||
|
distribution that you want to install then you can either change the
|
|||
|
distribution you are installing over the network to match the HOWTO or
|
|||
|
use the following as a very rough guide on how to do it.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5.1. Begin Setup
|
|||
|
|
|||
|
This section explains how to set up your server machine to be an
|
|||
|
install server for a generic Linux distribution. For most
|
|||
|
distributions you can use any other distribution as the install
|
|||
|
server. For example, you can install Redhat over your network using a
|
|||
|
server installed with SuSE.
|
|||
|
|
|||
|
This guide starts from the point where you have a machine installed
|
|||
|
with Linux which is already up and running and connected to your
|
|||
|
network. If you require help with installing Linux on your server
|
|||
|
then please consult the Further Information section of this HOWTO in
|
|||
|
``Appendix A''.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5.2. Setting Up Filespace
|
|||
|
|
|||
|
In order to set up an install server you will need to put on all the
|
|||
|
required data that will be needed to perform a full installation of
|
|||
|
the Linux distribution you are going to serve. For example, if you
|
|||
|
are used to installing Linux using CDs then you will need space on
|
|||
|
your server to copy ALL the contents of each CD onto your server.
|
|||
|
|
|||
|
So, before you even think about setting up your machine as an install
|
|||
|
server, you must check that you have the required space available.
|
|||
|
This sounds like a trivial thing to check but it is very important and
|
|||
|
easily forgotten when you're setting up.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5.2.1. How much space will you need?
|
|||
|
|
|||
|
A guide for the amount of space that you will require will be the
|
|||
|
amount of space on your install media that you are intending to copy
|
|||
|
from later. This might be one of the following approximate examples:
|
|||
|
|
|||
|
<20> Number of CDs x 650Mb
|
|||
|
|
|||
|
<20> Number of ISO images x 650Mb
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5.2.2. How much space do you have?
|
|||
|
|
|||
|
You will need the appropriate amount of space available to your system
|
|||
|
on some local filesystem. It does not matter what form this takes,
|
|||
|
whether it's a RAID device, local disk (either SCSI or IDE), etc.
|
|||
|
Ensure that the space you intend to use is formatted with your chosen
|
|||
|
filesystem and is mounted.
|
|||
|
|
|||
|
You can check this space with the command:
|
|||
|
|
|||
|
df -h
|
|||
|
|
|||
|
|
|||
|
|
|||
|
If this output shows you have enough space to copy your install media
|
|||
|
then great, you can continue installation. If not then it's time to
|
|||
|
think about an upgrade to your intended server machine!
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5.3. Copy Installation Media
|
|||
|
|
|||
|
Once you know you have enough space available it's time to start
|
|||
|
copying your install media to your chosen filesystem and directory.
|
|||
|
This might involve copying the entire contents of all your CDs to one
|
|||
|
install directory on your server or copying the data over the network
|
|||
|
by some method, etc.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5.4. Enable Remote Access
|
|||
|
|
|||
|
Time to make your install data available to other machines on the
|
|||
|
network. Most distributions allow installation over the network using
|
|||
|
NFS, HTTP and FTP protocols. You can select which of these will be
|
|||
|
used at install time on the client. If one of the services is not
|
|||
|
setup on the machine then it will still be available for selection by
|
|||
|
the client but the install will not work. Therefore, it is either
|
|||
|
best to enable all three services on your server (so they all work on
|
|||
|
each client machine) or if you don't enable all three then advertise
|
|||
|
the fact very well and say which service should be used for your
|
|||
|
particular install server.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5.4.1. NFS
|
|||
|
|
|||
|
To install over NFS you need to meet certain conditions on the server:
|
|||
|
|
|||
|
<20> Your install directory is exported
|
|||
|
|
|||
|
<20> NFS is installed and running
|
|||
|
|
|||
|
|
|||
|
<20> Portmap is running
|
|||
|
|
|||
|
To export your install directory edit the /etc/exports file and add an
|
|||
|
entry for your installation target directory to it. If you are not
|
|||
|
sure about exporting filesystems then see your man page for the
|
|||
|
exports file at exports (5).
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5.4.2. FTP
|
|||
|
|
|||
|
To install over FTP you need to allow FTP access to the directory that
|
|||
|
you have setup on the server as the installation directory. This can
|
|||
|
be either anonymous FTP access or access through a named account with
|
|||
|
a password. Anonymous access is probably best unless you have a
|
|||
|
reason to protect your install server via a password.
|
|||
|
|
|||
|
If you want anonymous FTP to point to a different directory then you
|
|||
|
can use sym links to point to the directory that you have set up as
|
|||
|
the install directory on the server. This will allow FTP into a
|
|||
|
chrooted environment but still give you access to the install images
|
|||
|
in a different location.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5.4.3. HTTP
|
|||
|
|
|||
|
If you have a web server running and want to enable HTTP access to
|
|||
|
your install server then add sym links from your document root to the
|
|||
|
install server directory and this will grant access. If you are not
|
|||
|
familiar with web servers or are not comfortable with this approach
|
|||
|
then leave out HTTP access from your install server as it provides no
|
|||
|
benefits over NFS or FTP installs which may be simpler to set up.
|
|||
|
|
|||
|
If you do choose to use HTTP then basically all you have to do is make
|
|||
|
the install directory visible to your web server by making it appear
|
|||
|
under the document root by some means.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.5.5. Basic Setup Complete
|
|||
|
|
|||
|
You have now completed the basic setup of your install server.
|
|||
|
Different distributions will grant you different options for further
|
|||
|
customisation techniques of the installation process. The most
|
|||
|
commonly found customisation is the option to install packages that do
|
|||
|
not come as standard with the distribution you are installing.
|
|||
|
However, there may be further customisations you want to do on your
|
|||
|
particular server or that are available for your particular Linux
|
|||
|
distribution.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.6. Generic Client Install Guide
|
|||
|
|
|||
|
This section gives a brief run down of setting up a client machine
|
|||
|
using your install server. The terms and theory here are as general to
|
|||
|
all Linux distributions as I can be and are designed specifically to
|
|||
|
give you a very quick overview of what network installations involve.
|
|||
|
If you want to perform network installations on your own machines then
|
|||
|
you are advised to read the relevant sections of this HOWTO in full.
|
|||
|
If the HOWTO does not contain a section for the distribution that you
|
|||
|
want to install then you can either change the distribution you are
|
|||
|
installing over the network to match the HOWTO or use the following as
|
|||
|
a very rough guide on how to do it.
|
|||
|
|
|||
|
3.6.1. Create Config Files
|
|||
|
|
|||
|
You only need to read/follow this section if you are intending to use
|
|||
|
an automated install process, if you intend to do a manual
|
|||
|
installation over your network then skip this section. Here we go
|
|||
|
through the process of creating configuration files that the installer
|
|||
|
will read in order to create the configuration of our client machines
|
|||
|
we are installing during an unattended network installation.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.6.1.1. Configuration Program Installation
|
|||
|
|
|||
|
In order to start creating your config files you will need to install
|
|||
|
the relevant config file editor. Each distribution that is capable of
|
|||
|
installing in unattended mode over the network will provide some means
|
|||
|
of editing config files. Make sure you have these installed on some
|
|||
|
Linux machine that will allow you to create and save all the different
|
|||
|
configurations you might want to install on your network.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.6.1.2. Create A Basic Config File
|
|||
|
|
|||
|
Once you have confirmed that you have the configuration program
|
|||
|
package installed, you can start to create configuration files. For
|
|||
|
most situations the basic configuration described here will be
|
|||
|
sufficient to perform your installations.
|
|||
|
|
|||
|
Start the configuration program that you have on your system. In most
|
|||
|
cases, you will now be presented with a window that allows you to
|
|||
|
configure most of your installation options as if you were installing
|
|||
|
a new machine or performing an upgrade. You can proceed through each
|
|||
|
menu, configuring your options for a particular system or set of
|
|||
|
similar systems that you wish to automatically install.
|
|||
|
|
|||
|
Once you have progressed through each configuration screen, you are
|
|||
|
ready to save out your configuration file to disk. Click the save
|
|||
|
button and choose a location on your system to store configuration
|
|||
|
files. If you are creating lots of different configurations then it
|
|||
|
might be worthwhile creating your own configuration repository - don't
|
|||
|
forget to name the files sensibly so you know which is which.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.6.1.3. Advanced Config File Setup
|
|||
|
|
|||
|
Before attempting advanced configuration please make sure that you
|
|||
|
have first created a valid basic configuration file as described
|
|||
|
``above''. It is perfectly possible to create your own configuration
|
|||
|
files from scratch but it is far easier to use the tools provided to
|
|||
|
do the job for you!
|
|||
|
|
|||
|
Once you have your configuration file saved, you can open it in your
|
|||
|
favourite text editor. You can use or modify any of the existing tags
|
|||
|
in your file, just so long as the tags, options, and syntax you use
|
|||
|
are legal. Once you have edited the file manually then save it back
|
|||
|
out in text format again. The best use of editing the configuration
|
|||
|
file manually is probably for adding your own customised packages to
|
|||
|
the installation.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3.6.2. Boot the Machine
|
|||
|
|
|||
|
The most common method of booting a client ready for installation over
|
|||
|
a network is to use a floppy disk.
|
|||
|
|
|||
|
1. If you have not already created a boot floppy then do it now (you
|
|||
|
only need to do this step once, when you have a boot floppy you can
|
|||
|
install as many machines as you like with a single floppy):
|
|||
|
|
|||
|
<20> Locate the floppy image that you need to use.
|
|||
|
|
|||
|
<20> Copy the image to your floppy disk (make sure you have one inserted
|
|||
|
in the drive, but not mounted) using the following command:
|
|||
|
|
|||
|
dd if=your-file.img of=/dev/fd0
|
|||
|
|
|||
|
|
|||
|
|
|||
|
2. If you are doing an automated install (with the config file) then
|
|||
|
you should follow this step (otherwise skip to next step):
|
|||
|
|
|||
|
<20> Copy your config file to the root directory of the floppy
|
|||
|
|
|||
|
3. Insert your floppy disk into the client machine that you want to
|
|||
|
install. Make sure that the floppy disk is in the boot list of
|
|||
|
your BIOS and turn on your machine to boot from the floppy.
|
|||
|
|
|||
|
4. At the boot prompt:
|
|||
|
|
|||
|
<20> If you are doing an automated install then start the automated
|
|||
|
process
|
|||
|
|
|||
|
<20> If you're not using config files then press ENTER for the default
|
|||
|
installation
|
|||
|
|
|||
|
5. Finish the installation.
|
|||
|
|
|||
|
Don't forget that some distributions will allow you to boot from other
|
|||
|
media as well as floppy images to perform network installations.
|
|||
|
Also, each distribution normally has a set of extra boot options that
|
|||
|
you can use if the above method does not work on your hardware. These
|
|||
|
extra configuration options are normally for less common hardware but
|
|||
|
are provided to make sure you can perform network installs.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
4. SuSE Server Setup
|
|||
|
|
|||
|
This section explains how to set up your server machine to be an
|
|||
|
install server for SuSE Linux. You can set up any Linux distribution
|
|||
|
to be a SuSE Linux install server, this machine does not necessarily
|
|||
|
have to be running SuSE Linux itself.
|
|||
|
|
|||
|
This guide starts from the point where you have a machine installed
|
|||
|
with Linux which is already up and running and connected to your
|
|||
|
network. If you require help with installing Linux on your server
|
|||
|
then please consult the Further Information section of this HOWTO in
|
|||
|
``Appendix A''.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
4.1. Setting Up Filespace
|
|||
|
|
|||
|
In order for your server to act as a SuSE Network Install server you
|
|||
|
will need to put on all the required data that will be needed to
|
|||
|
perform a full installation of the SuSE version you are serving. For
|
|||
|
example, if you are used to installing SuSE using CDs then you will
|
|||
|
need space on your server to copy ALL the contents of each CD onto
|
|||
|
your server.
|
|||
|
|
|||
|
So, before you even think about setting up your machine as an install
|
|||
|
server, you must check that you have the required space available.
|
|||
|
This sounds like a trivial thing to check but it is very important and
|
|||
|
easily forgotten when you're setting up.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
4.1.1. How much space will you need?
|
|||
|
|
|||
|
A guide for the amount of space that you will require will be the
|
|||
|
amount or space of install media that you are intending to copy from
|
|||
|
later. This might be one of the following examples:
|
|||
|
|
|||
|
|
|||
|
<20> Number of CDs x 650Mb
|
|||
|
|
|||
|
<20> Number of ISO images x 650Mb
|
|||
|
|
|||
|
<20> One DVD which might be roughly 5Gb
|
|||
|
|
|||
|
|
|||
|
|
|||
|
4.1.2. How much space do you have?
|
|||
|
|
|||
|
You will need the appropriate amount of space available to your system
|
|||
|
on some local filesystem. It does not matter what form this takes,
|
|||
|
whether it's a RAID device, local disk (either SCSI or IDE), etc.
|
|||
|
Ensure that the space you intend to use is formatted with your chosen
|
|||
|
filesystem and is mounted.
|
|||
|
|
|||
|
You can check this space with the command:
|
|||
|
|
|||
|
df -h
|
|||
|
|
|||
|
|
|||
|
|
|||
|
If this output shows you have enough space to copy your install media
|
|||
|
then great, you can continue installation. If not then it's time to
|
|||
|
think about an upgrade to your intended server machine!
|
|||
|
|
|||
|
|
|||
|
|
|||
|
4.2. Copy Installation Media
|
|||
|
|
|||
|
Once you know you have enough space available it's time to start
|
|||
|
copying your install media to your chosen filesystem and directory.
|
|||
|
For the purposes of this HOWTO we will use the following example to
|
|||
|
represent the directory from which our install server will be setup
|
|||
|
and running:
|
|||
|
|
|||
|
/install
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Copy your install media to /install. The following example shows you
|
|||
|
how to do this for copying your SuSE CD images to /install:
|
|||
|
|
|||
|
1. Mount your CD
|
|||
|
|
|||
|
2. Copy the data from CD
|
|||
|
|
|||
|
3. Unmount the CD
|
|||
|
|
|||
|
4. Now swap CDs and repeat from step 1 for each of your CDs you have.
|
|||
|
|
|||
|
5. Ensure that you have the dot files from the root directory of each
|
|||
|
CD copied over to /install
|
|||
|
|
|||
|
Now you should have all you need in /install but if you have copied
|
|||
|
from CD then as far as SuSE is concerned the /install directory still
|
|||
|
represents a set of CD images that you have copied. You need to
|
|||
|
change this such that the set of CD images appears as a single
|
|||
|
installation medium. Use the following Perl command to do this:
|
|||
|
|
|||
|
perl -pi -e 's/InstPath:\t\d+/InstPath:\t01/' /install/suse/setup/descr/common.pkd
|
|||
|
|
|||
|
|
|||
|
|
|||
|
4.3. Enable Remote Access
|
|||
|
|
|||
|
Time to make your install data available to other machines on the
|
|||
|
network.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
4.3.1. NFS
|
|||
|
|
|||
|
SuSE is best installed over the network using NFS since support for
|
|||
|
the HTTP and FTP protocols is not necessarily supported during
|
|||
|
installation, even though later system updates may be applied over
|
|||
|
HTTP or FTP.
|
|||
|
|
|||
|
To install over NFS you need to meet certain conditions on the server:
|
|||
|
|
|||
|
<20> Your install directory is exported
|
|||
|
|
|||
|
<20> NFS is installed and running
|
|||
|
|
|||
|
<20> Portmap is running
|
|||
|
|
|||
|
To export your install directory edit the /etc/exports file and add an
|
|||
|
entry for /install to it. In our example, we would use the folowing
|
|||
|
line:
|
|||
|
|
|||
|
/install *(ro)
|
|||
|
|
|||
|
|
|||
|
When you have saved your exports file you must then get your NFS dae<61>
|
|||
|
mon to read its configuration file again in order to export the direc<65>
|
|||
|
tory you just added. Do this by running the command:
|
|||
|
|
|||
|
exportfs -r
|
|||
|
|
|||
|
|
|||
|
This gives us the most simple read-only export to all hosts on our
|
|||
|
network. If you want to include more advanced options in your export
|
|||
|
e.g. only exporting to certain hosts on the network or a certain sub<75>
|
|||
|
net, etc then see your man page for the exports file at exports (5).
|
|||
|
|
|||
|
You have now completed the basic setup of your install server.
|
|||
|
|
|||
|
4.4. Package Customisation
|
|||
|
|
|||
|
You can, if you wish, add your own packages to the SuSE distribution
|
|||
|
so that they are installed along with SuSE over the network when you
|
|||
|
install your clients. The advantage of this is that you don't have to
|
|||
|
spend time configuring each machine for packages that you may want
|
|||
|
installed that are not included with SuSE. Examples of this might be
|
|||
|
your own RPM packages that you have created or some specialised
|
|||
|
package.
|
|||
|
|
|||
|
Simply copy your RPM package files into the following directory
|
|||
|
|
|||
|
/install/suse/custom
|
|||
|
|
|||
|
|
|||
|
NOTE: you may need to create this directory if it does not exist
|
|||
|
|
|||
|
Your custom RPM packages should now be available to the clients.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
5. SuSE Client Install
|
|||
|
|
|||
|
You should have already decided by now using the ``Quick Guide''
|
|||
|
section of this HOWTO whether you are going to install your machine
|
|||
|
using the automated process or a manual process. The automated
|
|||
|
process under SuSE is known as AutoYaST and in short provides you with
|
|||
|
a configuration file for the machine that you are going to install so
|
|||
|
that you can perform unattended installs of client machines.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
5.1. Create AutoYaST Config Files
|
|||
|
|
|||
|
You only need to read/follow this section if you are intending to use
|
|||
|
an automated install process, if you intend to do a manual
|
|||
|
installation over your network then skip this section. Here we go
|
|||
|
through the process of creating configuration files that the installer
|
|||
|
will read in order to create the configuration of our client machine
|
|||
|
we are installing during an unattended network installation.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
5.1.1. YaST 2 Module Installation
|
|||
|
|
|||
|
In order to start creating your config files you will need to install
|
|||
|
the AutoYaST module for YaST2 on your SuSE machine. You will need
|
|||
|
three RPMs for this, all of which are on your SuSE source media e.g.
|
|||
|
CDs. The three RPMs are:
|
|||
|
|
|||
|
<20> yast2-trans-autoinst
|
|||
|
|
|||
|
<20> yast2-config-autoinst
|
|||
|
|
|||
|
<20> yast2-module-autoinst
|
|||
|
|
|||
|
Check to see if you already have them installed with the command:
|
|||
|
|
|||
|
rpm -q {rpm package name}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
If these packages are not installed then install with the command:
|
|||
|
|
|||
|
rpm -Uvh {rpm package name}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
5.1.2. Create A Basic Config File
|
|||
|
|
|||
|
Once you have confirmed that you have the AutoYaST packages installed
|
|||
|
on your system, you can now start to create configuration files. For
|
|||
|
most situations the basic configuration described here will be
|
|||
|
sufficient to perform your installations.
|
|||
|
|
|||
|
Start the YaST2 Autoinstall configuration GUI with the command:
|
|||
|
|
|||
|
yast2 autoyast
|
|||
|
|
|||
|
|
|||
|
|
|||
|
You will now be presented with a window that allows you to configure
|
|||
|
most of your installation options as if you were installing a new
|
|||
|
machine or performing an upgrade. You can proceed through the menu
|
|||
|
system configuring your options for a particular system or set of
|
|||
|
similar systems that you wish to automatically install. Alternatively,
|
|||
|
you can create class definitions which allows you to save different
|
|||
|
parts of the configuration setup and then use different classes for
|
|||
|
different sets of machines.
|
|||
|
|
|||
|
The use of classes is particularly good when you have a set of systems
|
|||
|
that are similar but that you would like installed in slightly
|
|||
|
different ways. For example, you could create a class definition for
|
|||
|
the hardware setup of all your client machines and create a separate
|
|||
|
class for the packages you want installed on them, whether they are
|
|||
|
server machines, test machines, workstations, etc. You can then
|
|||
|
choose which classes are used by which machines when they are
|
|||
|
installed. In our example here, all the machines would use the same
|
|||
|
hardware setup, but the workstation machines could install our
|
|||
|
workstation class of packages, test machines the test class, etc.
|
|||
|
|
|||
|
Once you have progressed through each configuration screen in the
|
|||
|
config setup GUI from YaST2 you are ready to save out your
|
|||
|
configuration file to disk. NOTE: it is outside the boundaries of
|
|||
|
this document to take you through each configuration option for
|
|||
|
installation, we are just concerned with the principles of network
|
|||
|
installs here. Please consult your SuSE documentation or the SuSE
|
|||
|
Website <http://www.suse.com> for this information.
|
|||
|
|
|||
|
When you save your configuration files they will be stored locally in
|
|||
|
two different locations depending on what file you have created as
|
|||
|
follows:
|
|||
|
|
|||
|
<20> Machine configuration files are stored in
|
|||
|
/var/lib/autoinstall/repository
|
|||
|
|
|||
|
<20> Class definition files are stored in /var/lib/autoinstall/classes
|
|||
|
|
|||
|
|
|||
|
|
|||
|
5.1.3. Advanced Config File Setup
|
|||
|
|
|||
|
Before attempting advanced configuration please make sure that you
|
|||
|
have first created a valid basic configuration file as described
|
|||
|
``above''. It is perfectly possible to create your own configuration
|
|||
|
files from scratch but it is far easier to use the tools provided to
|
|||
|
do the job for you!
|
|||
|
|
|||
|
Once you have your configuration file saved, you can open it in your
|
|||
|
favourite text editor. The file is in XML format so it is
|
|||
|
particularly easy to follow and edit manually. You can use or modify
|
|||
|
any of the existing tags in your file, just so long as the tags,
|
|||
|
options, and syntax you use are legal. A full guide to the tags and
|
|||
|
their usage can be found in the AutoYaST manual, please see ``Appendix
|
|||
|
A'' of this guide for a reference.
|
|||
|
|
|||
|
The best use of editing the configuration file manually is probably
|
|||
|
for adding your own customised packages to the installation. Back in
|
|||
|
the ``SuSE Server Setup'' section we describe how to add your own
|
|||
|
customised packages to your install server. Here, we describe how to
|
|||
|
access those packages using the configuration file so they can be
|
|||
|
automatically installed with the rest of the system.
|
|||
|
|
|||
|
You should be able to locate a <software> section in your basic
|
|||
|
configuration file in your editor. You can use a sub-tag inside the
|
|||
|
software section called the <extra_packages> tag which can be used as
|
|||
|
in the following example:
|
|||
|
|
|||
|
<software>
|
|||
|
<extra_packages>
|
|||
|
<package_location>
|
|||
|
custom
|
|||
|
</package_location>
|
|||
|
<packages config:type="list">
|
|||
|
<package>{Your package name}</package>
|
|||
|
<package>{Another Package}</package>
|
|||
|
</packages>
|
|||
|
<extra_packages>
|
|||
|
<base>Default<base>
|
|||
|
<software>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
The package location is written as custom which describes the
|
|||
|
directory under the suse directory of you install server where you
|
|||
|
have put your custom packages, in our example this would be
|
|||
|
/install/suse/custom, but you only need to write custom here.
|
|||
|
|
|||
|
You can include as many package tags under the packages section as you
|
|||
|
wish. Use one package tag for each custom package you want to include
|
|||
|
in your config file and install on the client machine.
|
|||
|
|
|||
|
The base tag at the bottom should be left as you configured it during
|
|||
|
the basic configuration.
|
|||
|
|
|||
|
Save your modified configuration file from your text editor and it
|
|||
|
will then be ready to use in your installations as described below.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
5.2. Boot the Machine
|
|||
|
|
|||
|
There are different situations during a network installation boot of
|
|||
|
one of your client systems that might mean that you wish to boot in
|
|||
|
one of the ways below. NOTE: you only need use one of the methods
|
|||
|
described for the particular usage for which it has been described.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
5.2.1. Manual Installation
|
|||
|
|
|||
|
If you skipped over the section above about creating AutoYaST config
|
|||
|
files then this is the way in which you should boot your client
|
|||
|
machines.
|
|||
|
1. Turn on your machine, ensure the CD drive is in the boot list of
|
|||
|
your BIOS, insert the CD. You should be faced with the normal boot
|
|||
|
menu of the SuSE installation program. As an alternative to
|
|||
|
booting from CD, you can boot from floppy images, from the network,
|
|||
|
or using whichever method you would normally use to boot the
|
|||
|
installation program.
|
|||
|
|
|||
|
2. Select the "Manual Installation" option from the boot menu
|
|||
|
|
|||
|
3. Your client should now boot the installation program and present
|
|||
|
you with a new menu system for the installer
|
|||
|
|
|||
|
4. Load any network modules you will need in order to connect to your
|
|||
|
network
|
|||
|
|
|||
|
5. Load any other modules you might need for installation e.g. SCSI
|
|||
|
modules if you are installing onto a SCSI type machine.
|
|||
|
|
|||
|
6. Select "Start Installation" from the menu
|
|||
|
|
|||
|
7. Choose the NFS option and fill in the IP addresses when prompted
|
|||
|
for. These should all be familiar to you i.e. the IP address of
|
|||
|
your server, and perhaps your client and nameserver as well if you
|
|||
|
have not selected to use DHCP.
|
|||
|
|
|||
|
8. The installation will now proceed to the configuration screens
|
|||
|
where you can select the installation options you require for your
|
|||
|
client in the normal way
|
|||
|
|
|||
|
9. Once you have configured all the installation options and selected
|
|||
|
to start the installation process, instead of reading from the
|
|||
|
normal CD (or other) media, the installation program will read all
|
|||
|
the information it needs from the network.
|
|||
|
|
|||
|
10.
|
|||
|
Don't forget to remove the CD (or other media) from the drive
|
|||
|
otherwise you could end up with a recursive installation process.
|
|||
|
|
|||
|
11.
|
|||
|
Go grab a cup of something while you wait for your shiny new
|
|||
|
installation to finish, no changing of installation media needed.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
5.2.2. Automatic Installation
|
|||
|
|
|||
|
If you followed the section above about creating AutoYaST config files
|
|||
|
then this is the way in which you should boot your client machines.
|
|||
|
|
|||
|
1. Copy your config file that you have already created as above from
|
|||
|
your repository directory on your hard disk to your floppy disk as
|
|||
|
a file called autoinst.xml. You can do this as follows:
|
|||
|
|
|||
|
Insert and mount a floppy disk
|
|||
|
cp /var/lib/autoinstall/repository/Your-File /dev/fd0/autoinst.xml
|
|||
|
Unmount the floppy disk
|
|||
|
|
|||
|
|
|||
|
|
|||
|
2. Put your floppy disk with the config file in your client machine
|
|||
|
|
|||
|
3. Turn on your machine, ensure the CD drive is in the boot list of
|
|||
|
your BIOS, insert the CD. You should be faced with the normal boot
|
|||
|
menu of the SuSE installation program. As an alternative to
|
|||
|
booting from CD, you can boot from floppy images, from the network,
|
|||
|
or using whichever method you would normally use to boot the
|
|||
|
installation program.
|
|||
|
|
|||
|
4. At the boot menu leave the default line as Linux to do the standard
|
|||
|
boot, but add the following parameters in order to read your
|
|||
|
configuration file from the floppy disk:
|
|||
|
|
|||
|
linux autoyast=floppy
|
|||
|
|
|||
|
|
|||
|
|
|||
|
5. Your client should now boot the installation program and it will
|
|||
|
try to load appropriate modules and install the system with the
|
|||
|
information that you have provided in the config file.
|
|||
|
|
|||
|
6. If you are prompted to input any information for any reason then do
|
|||
|
so e.g. if the installer cannot connect to your network.
|
|||
|
|
|||
|
7. Once the installation is running then you can remove the CD and the
|
|||
|
floppy disk and grab a cup of something while you wait for your
|
|||
|
shiny new installation to finish, no changing of installation media
|
|||
|
needed.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
5.2.2.1. Further Boot Options
|
|||
|
|
|||
|
This is an extension to the technique used to boot client machines for
|
|||
|
Automatic Installations as described above. You should try this
|
|||
|
method if you have tried and failed with the method above. This
|
|||
|
section should help you if you have had network connection problems
|
|||
|
during boot, for example, if you do not have a DHCP server on your
|
|||
|
network.
|
|||
|
|
|||
|
You can create what we call an "info" file to hold information about
|
|||
|
your clients network details. This can then be used more explicitly
|
|||
|
by the install process to contact your network. This is a plain text
|
|||
|
file in which you put certain keyword and value combinations that are
|
|||
|
recognised by the installer.
|
|||
|
|
|||
|
The list of keywords you can use is as follows:
|
|||
|
|
|||
|
<20> autoyast - the location of your configuration file
|
|||
|
|
|||
|
<20> gateway - the gateway your client should use (if any)
|
|||
|
|
|||
|
<20> insmod - any special kernel modules you need to be loaded
|
|||
|
|
|||
|
<20> install - a full path to your server installation directory
|
|||
|
|
|||
|
<20> ip - the address of your client machine. If this is blank then the
|
|||
|
installer will try BOOTP/DHCP
|
|||
|
|
|||
|
<20> nameserver - the nameserver address on your network
|
|||
|
|
|||
|
<20> netdevice - the network adaptor you want to be used
|
|||
|
|
|||
|
<20> netmask - your client's netmask
|
|||
|
|
|||
|
<20> server - the hostname or IP address of the server you have set up
|
|||
|
i.e. the machine you have your NFS exports from
|
|||
|
|
|||
|
<20> serverdir - the directory on your server the installation should be
|
|||
|
taken from
|
|||
|
|
|||
|
Using the above keywords in an example info file, you might end up
|
|||
|
with something looking a little bit like this:
|
|||
|
install: nfs://10.0.0.100/install/SuSE8.0
|
|||
|
netdevice: eth0
|
|||
|
server: 10.0.0.100
|
|||
|
serverdir: /install/SuSE8.0
|
|||
|
ip: 10.0.0.200
|
|||
|
netmask: 255.0.0.0
|
|||
|
gateway: 10.0.0.1
|
|||
|
nameserver: 10.0.0.2
|
|||
|
autoyast: floppy
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Substitute the IP addresses above for relevant ones for your
|
|||
|
particular network and save this file with filename info in the root
|
|||
|
directory of your floppy disk that contains your configuration file
|
|||
|
autoinst.xml
|
|||
|
|
|||
|
|
|||
|
|
|||
|
6. Redhat Server Setup
|
|||
|
|
|||
|
This section explains how to set up your server machine to be an
|
|||
|
install server for Redhat Linux. You can set up any Linux
|
|||
|
distribution to be a Redhat install server, this machine does not
|
|||
|
necessarily have to be running Redhat.
|
|||
|
|
|||
|
This guide starts from the point where you have a machine installed
|
|||
|
with Linux which is already up and running and connected to your
|
|||
|
network. If you require help with installing Linux on your server
|
|||
|
then please consult the Further Information section of this HOWTO in
|
|||
|
``Appendix A''.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
6.1. Setting Up Filespace
|
|||
|
|
|||
|
In order for your server to act as a Redhat network install server you
|
|||
|
will need to put on all the required data that will be needed to
|
|||
|
perform a full installation of the Redhat version you are serving.
|
|||
|
For example, if you are used to installing Redhat using CDs then you
|
|||
|
will need space on your server to copy ALL the contents of each CD
|
|||
|
onto your server.
|
|||
|
|
|||
|
So, before you even think about setting up your machine as an install
|
|||
|
server, you must check that you have the required space available.
|
|||
|
This sounds like a trivial thing to check but it is very important and
|
|||
|
easily forgotten when you're setting up.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
6.1.1. How much space will you need?
|
|||
|
|
|||
|
A guide for the amount of space that you will require will be the
|
|||
|
amount or space of install media that you are intending to copy from
|
|||
|
later. This might be one of the following examples:
|
|||
|
|
|||
|
<20> Number of CDs x 650Mb
|
|||
|
|
|||
|
<20> Number of ISO images x 650Mb
|
|||
|
|
|||
|
|
|||
|
|
|||
|
6.1.2. How much space do you have?
|
|||
|
|
|||
|
You will need the appropriate amount of space available to your system
|
|||
|
on some local filesystem. It does not matter what form this takes,
|
|||
|
whether it's a RAID device, local disk (either SCSI or IDE), etc.
|
|||
|
Ensure that the space you intend to use is formatted with your chosen
|
|||
|
filesystem and is mounted.
|
|||
|
|
|||
|
You can check this space with the command:
|
|||
|
|
|||
|
df -h
|
|||
|
|
|||
|
|
|||
|
|
|||
|
If this output shows you have enough space to copy your install media
|
|||
|
then great, you can continue installation. If not then it's time to
|
|||
|
think about an upgrade to your intended server machine!
|
|||
|
|
|||
|
|
|||
|
|
|||
|
6.2. Copy Installation Media
|
|||
|
|
|||
|
Once you know you have enough space available it's time to start
|
|||
|
copying your install media to your chosen filesystem and directory.
|
|||
|
For the purposes of this HOWTO we will use the following example to
|
|||
|
represent the directory from which our install server will be setup
|
|||
|
and running:
|
|||
|
|
|||
|
/install
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Copy your install media to /install. The following example shows you
|
|||
|
how to do this for copying your Redhat CD images to /install:
|
|||
|
|
|||
|
1. Mount your CD
|
|||
|
|
|||
|
2. Copy the data from CD
|
|||
|
|
|||
|
3. Unmount the CD
|
|||
|
|
|||
|
4. Now swap CDs and repeat from step 1 for each of your CDs you have.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
6.3. Enable Remote Access
|
|||
|
|
|||
|
Time to make your install data available to other machines on the
|
|||
|
network. Redhat can be installed over the network using NFS, HTTP and
|
|||
|
FTP protocols. You can select which of these will be used at install
|
|||
|
time on the client. If one of the services is not setup on the
|
|||
|
machine then it will still be available for selection by the client
|
|||
|
but the install will not work. Therefore, it is either best to enable
|
|||
|
all three services on your server (so they all work on each client
|
|||
|
machine) or if you don't enable all three then advertise the fact very
|
|||
|
well and say which service should be used for your particular install
|
|||
|
server.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
6.3.1. NFS
|
|||
|
|
|||
|
The NFS protocol is the only one which will work with the graphical
|
|||
|
install method of Redhat when installing your client machine.
|
|||
|
Therefore, if you want to do graphical (as opposed to text based)
|
|||
|
installations then you must enable this service on your server.
|
|||
|
To install over NFS you need to meet certain conditions on the server:
|
|||
|
|
|||
|
<20> Your install directory is exported
|
|||
|
|
|||
|
<20> NFS is installed and running
|
|||
|
|
|||
|
<20> Portmap is running
|
|||
|
|
|||
|
To export your install directory edit the /etc/exports file and add an
|
|||
|
entry for /install to it. In our example, we would use the folowing
|
|||
|
line:
|
|||
|
|
|||
|
/install *(ro)
|
|||
|
|
|||
|
|
|||
|
When you have saved your exports file you must then get your NFS dae<61>
|
|||
|
mon to read its configuration file again in order to export the direc<65>
|
|||
|
tory you just added. Do this by running the command:
|
|||
|
|
|||
|
exportfs -r
|
|||
|
|
|||
|
|
|||
|
This gives us the most simple read-only export to all hosts on our
|
|||
|
network. If you want to include more advanced options in your export
|
|||
|
e.g. only exporting to certain hosts on the network or a certain sub<75>
|
|||
|
net, etc then see your man page for the exports file at exports (5).
|
|||
|
|
|||
|
|
|||
|
|
|||
|
6.3.2. FTP
|
|||
|
|
|||
|
The FTP protocol will only allow text installs to be performed by your
|
|||
|
clients. This may or may not be ideal for your situation but bear it
|
|||
|
in mind.
|
|||
|
|
|||
|
To install over FTP you need to allow FTP access to the directory that
|
|||
|
you have setup on the server as the installation directory. This can
|
|||
|
be either anonymous FTP access or access through a named account with
|
|||
|
a password. Anonymous access is probably best unless you have a
|
|||
|
reason to protect your install server via a password.
|
|||
|
|
|||
|
If you want anonymous FTP to point to a different directory then you
|
|||
|
can use sym links to point to the directory that you have set up as
|
|||
|
the install directory on the server. This will allow FTP into a
|
|||
|
chrooted environment but still give you access to the install images
|
|||
|
in a different location.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
6.3.3. HTTP
|
|||
|
|
|||
|
Similarly to the FTP protocol, HTTP will only allow text installs on
|
|||
|
the client side. If you have a web server running and want to enable
|
|||
|
HTTP access to your install server then add sym links from your
|
|||
|
document root to the install server directory and this will grant
|
|||
|
access. If you are not familiar with web servers or are not
|
|||
|
comfortable with this approach then leave out HTTP access from your
|
|||
|
install server as it provides no benefits over NFS or FTP installs
|
|||
|
which may be simpler to set up.
|
|||
|
|
|||
|
If you do choose to use HTTP then basically all you have to do is make
|
|||
|
the install directory visible to your web server by making it appear
|
|||
|
under the document root by some means.
|
|||
|
|
|||
|
You have now completed the basic setup of your install server.
|
|||
|
|
|||
|
6.4. Package Customisation
|
|||
|
|
|||
|
You can, if you wish, add your own packages to the Redhat distribution
|
|||
|
so that they are installed along with Redhat over the network when you
|
|||
|
install your clients. The advantage of this is that you don't have to
|
|||
|
spend time configuring each machine for packages that you may want
|
|||
|
installed that are not included with Redhat. Examples of this might
|
|||
|
be your own RPM packages that you have created or some specialised
|
|||
|
package.
|
|||
|
|
|||
|
Make sure you have the anaconda-runtime package installed on your
|
|||
|
server. This is normally installed if you're running Redhat but if
|
|||
|
you have another distribution on the server then you should be able to
|
|||
|
install the Redhat RPM without too much trouble. To check if you have
|
|||
|
the correct package enter the command
|
|||
|
|
|||
|
rpm -q anaconda-runtime
|
|||
|
|
|||
|
of the package is returned then you have it installed, if nothing is
|
|||
|
returned the install the RPM as required.
|
|||
|
|
|||
|
Now simply copy your RPM package files into the following directory
|
|||
|
|
|||
|
/install/Redhat/RPMS
|
|||
|
|
|||
|
|
|||
|
This is the directory that should already contain all the Redhat stan<61>
|
|||
|
dard RPMS for the Redhat version you have setup on your install
|
|||
|
server.
|
|||
|
|
|||
|
Once you have copied your custom RPMS you need to regenerate Redhat's
|
|||
|
list of packages that it can install. Do this using the following
|
|||
|
command:
|
|||
|
|
|||
|
/usr/lib/anaconda-runtime/genhdlist /install
|
|||
|
|
|||
|
|
|||
|
The directory used here of /install is the example directory we have
|
|||
|
been using so far. Replace this with the directory where you copied
|
|||
|
the Redhat CD images to. The directory should be the base directory
|
|||
|
of the Redhat CD set i.e. the one that contains a subdirectory called
|
|||
|
Redhat before the directory called RPMS
|
|||
|
|
|||
|
Your custom RPM packages should now be available to the clients.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
6.4.1. Further Customisation
|
|||
|
|
|||
|
In addition to adding your own RPMS to Redhat you can also create RPM
|
|||
|
groups for the installation process. These will be similar to the
|
|||
|
standard groups offered by the Redhat install already such as the
|
|||
|
"Software Development" group which will install all packages for this
|
|||
|
purpose onto your system.
|
|||
|
|
|||
|
This allows quick installation of many RPMS for a specific purpose on
|
|||
|
your systems and the groups will become available like the normal
|
|||
|
Redhat groups (and are used in the same way) upon installation of the
|
|||
|
client.
|
|||
|
|
|||
|
To create your own groups you must edit a text file called the comps
|
|||
|
file. In our example, this is located at:
|
|||
|
|
|||
|
/install/Redhat/base/comps
|
|||
|
|
|||
|
|
|||
|
Copy the syntax for the groups that are already in the file and you
|
|||
|
can create your own groupings. These can include both packages from
|
|||
|
the standard Redhat install or any custom packages that you might have
|
|||
|
already added i.e. you can include any package in the RPMS directory.
|
|||
|
|
|||
|
Once you have edited the file then save it back out over the original
|
|||
|
(it might be an idea to take a backup of the original but it will
|
|||
|
always be on your CD images anyway if you need it). You must now run
|
|||
|
the genhdlist command again as explained above.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
7. Redhat Client Install
|
|||
|
|
|||
|
You should have already decided by now using the ``Quick Guide''
|
|||
|
section of this HOWTO whether you are going to install your machine
|
|||
|
using the automated process or a manual process. The automated
|
|||
|
process under Redhat is known as Kickstart and in short provides you
|
|||
|
with a configuration file for the machine that you are going to
|
|||
|
install so that you can perform unattended installs of client
|
|||
|
machines.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
7.1. Create Kickstart Config Files
|
|||
|
|
|||
|
You only need to read/follow this section if you are intending to use
|
|||
|
an automated install process, if you intend to do a manual
|
|||
|
installation over your network then skip this section. Here we go
|
|||
|
through the process of creating configuration files that the installer
|
|||
|
will read in order to create the configuration of our client machine
|
|||
|
we are installing during an unattended network installation.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
7.1.1. Kickstart Configurator Installation
|
|||
|
|
|||
|
In order to start creating your config files you will need to install
|
|||
|
the Kickstart Configurator on your Linux machine. You will need one
|
|||
|
of two RPMS for this depending on the version of Redhat you are using.
|
|||
|
These RPMS are available on your Redhat install CDs as follows:
|
|||
|
|
|||
|
<20> redhat-config-kickstart - for versions 8.x and above
|
|||
|
|
|||
|
<20> ksconfig - for earlier versions
|
|||
|
|
|||
|
Check to see if you already have them installed with the command:
|
|||
|
|
|||
|
rpm -q {rpm package name}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
If these packages are not installed then install with the command:
|
|||
|
|
|||
|
rpm -Uvh {rpm package name}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
7.1.2. Create A Basic Config File
|
|||
|
|
|||
|
Once you have confirmed that you have the configurator packages
|
|||
|
installed, you can now start to create configuration files. For most
|
|||
|
situations the basic configuration described here will be sufficient
|
|||
|
to perform your installations.
|
|||
|
|
|||
|
Start the Kickstart configuration program that you have on your
|
|||
|
system. This will be done with the command redhad-config-kickstart
|
|||
|
for Redhat 8.x systems and above (or if you have the redhat-config-
|
|||
|
kickstart RPM installed), or the command ksconfig for other Redhat
|
|||
|
systems (or if you have the ksconfig RPM installed).
|
|||
|
|
|||
|
You will now be presented with a window that allows you to configure
|
|||
|
most of your installation options as if you were installing a new
|
|||
|
machine or performing an upgrade. You can proceed through each menu,
|
|||
|
configuring your options for a particular system or set of similar
|
|||
|
systems that you wish to automatically install.
|
|||
|
|
|||
|
Once you have progressed through each configuration screen, you are
|
|||
|
ready to save out your configuration file to disk. NOTE: it is
|
|||
|
outside the boundaries of this document to take you through each
|
|||
|
configuration option for installation, we are just concerned with the
|
|||
|
principles of network installs here. Please consult your Redhat
|
|||
|
documentation or the Redhat Website <http://www.redhat.com> for this
|
|||
|
information. Click the "save" button and choose a location on your
|
|||
|
system to store configuration files. If you are creating lots of
|
|||
|
different configurations then it might be worthwhile creating your own
|
|||
|
configuration repository - don't forget to name the files sensibly so
|
|||
|
you know which is which.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
7.1.3. Advanced Config File Setup
|
|||
|
|
|||
|
Before attempting advanced configuration please make sure that you
|
|||
|
have first created a valid basic configuration file as described
|
|||
|
``above''. It is perfectly possible to create your own configuration
|
|||
|
files from scratch but it is far easier to use the tools provided to
|
|||
|
do the job for you!
|
|||
|
|
|||
|
Once you have your configuration file saved, you can open it in your
|
|||
|
favourite text editor. You can use or modify any of the existing tags
|
|||
|
in your file, just so long as the tags, options, and syntax you use
|
|||
|
are legal. Once you have edited the file manually then save it back
|
|||
|
out in text format again.
|
|||
|
|
|||
|
The best use of editing the configuration file manually is probably
|
|||
|
for adding your own customised packages to the installation. Back in
|
|||
|
the ``Redhat Server Setup'' section we describe how to add your own
|
|||
|
customised packages to your install server. Here, we describe how to
|
|||
|
access those packages using the configuration file so they can be
|
|||
|
automatically installed with the rest of the system.
|
|||
|
|
|||
|
You should be able to locate a packages section in your basic
|
|||
|
configuration file in your editor. You can add extra packages by name
|
|||
|
as you require to the end of this list of packages. Follow the format
|
|||
|
of the other packages that you have listed in the file already from
|
|||
|
the basic configuration. Packages that start with @ are package group
|
|||
|
names. You can use any of the default Redhat package groups or you
|
|||
|
can use any custom groups you may have created.
|
|||
|
|
|||
|
You can add as many packages and groups under the packages section as
|
|||
|
you wish. Just put one package on each line and follow the format
|
|||
|
already provided.
|
|||
|
|
|||
|
Save your modified configuration file from your text editor and it
|
|||
|
will then be ready to use in your installations as described below.
|
|||
|
|
|||
|
|
|||
|
7.2. Boot the Machine
|
|||
|
|
|||
|
It is simplest to use a floppy disk to boot your clients ready for
|
|||
|
installation. Everything you need is provided for you on the Redhat
|
|||
|
CDs as follows:
|
|||
|
|
|||
|
1. If you have not already created a boot floppy then do it now (you
|
|||
|
only need to do this step once, when you have a boot floppy you can
|
|||
|
install as many machines as you like with a single floppy):
|
|||
|
|
|||
|
<20> Locate the floppy image that you need to use. This is on the first
|
|||
|
Redhat CD and is at images/bootnet.img
|
|||
|
|
|||
|
<20> From the images directory on the CD copy the image to your floppy
|
|||
|
disk (make sure you have one inserted in the drive, but not
|
|||
|
mounted) using the following command:
|
|||
|
|
|||
|
dd if=bootnet.img of=/dev/fd0
|
|||
|
|
|||
|
|
|||
|
|
|||
|
2. If you are doing an automated install (with the config file) then
|
|||
|
you should follow this step (otherwise skip to next step):
|
|||
|
|
|||
|
<20> Mount your floppy disk
|
|||
|
|
|||
|
mount /mnt/floppy
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<20> Copy your config file to the root directory of the floppy with the
|
|||
|
name ks.cfg
|
|||
|
|
|||
|
cp /path/to/file /mnt/floppy
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<20> Umount your floppy disk
|
|||
|
|
|||
|
umount /mnt/floppy
|
|||
|
|
|||
|
|
|||
|
|
|||
|
3. Insert your floppy disk into the client machine that you want to
|
|||
|
install Redhat on. Make sure that the floppy disk is in the boot
|
|||
|
list of your BIOS and turn on your machine to boot from the floppy.
|
|||
|
|
|||
|
4. At the boot prompt:
|
|||
|
|
|||
|
<20> If you are doing an automated install:
|
|||
|
|
|||
|
linux ks=floppy
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<20> If you're not using config files then press ENTER for the default
|
|||
|
installation
|
|||
|
|
|||
|
5. Finish the installation:
|
|||
|
|
|||
|
<20> If you are doing an automated install then you must complete any
|
|||
|
parts of the configuration process that you have missed in the
|
|||
|
config file. If you have a complete config file then you're done
|
|||
|
so go get yourself a cup of something nice and wait for your
|
|||
|
install to finish.
|
|||
|
|
|||
|
<20> If you are doing a manual install then you must complete the
|
|||
|
installation in the normal way, going through each menu of the
|
|||
|
Redhat install program and selecting the options you require for
|
|||
|
your machine. When you finish then it's time for a cup of
|
|||
|
something nice, no need to swap install media here.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
7.2.1. Further Boot Options
|
|||
|
|
|||
|
This is an extension to the technique used to boot client machines for
|
|||
|
automatic installations as described above. You should try this
|
|||
|
method if you have tried and failed with the method above. This
|
|||
|
section should help you if you have had network connection problems
|
|||
|
during boot, for example, if you do not have a network card supported
|
|||
|
by the floppy boot disk.
|
|||
|
|
|||
|
You can create a second floppy disk to use in the boot process which
|
|||
|
contains extra drivers for network cards. This can then be read on
|
|||
|
boot and the drivers loaded for your card from there instead. This is
|
|||
|
done as follows:
|
|||
|
|
|||
|
1. In the images directory on your CD you should find a file called
|
|||
|
drvnet.img.
|
|||
|
|
|||
|
2. From the images directory on your CD, copy the file to a different
|
|||
|
floppy disk with the command:
|
|||
|
|
|||
|
dd if=drvnet.img of=/dev/fd0
|
|||
|
|
|||
|
|
|||
|
Again, make sure your floppy disk is not mounted when you run this
|
|||
|
command.
|
|||
|
|
|||
|
3. Now you have a network driver floppy disk. You should return to
|
|||
|
your installation as described above but now add the keyword dd to
|
|||
|
your command line.
|
|||
|
|
|||
|
<20> So for automated intall we type:
|
|||
|
|
|||
|
linux dd ks=floppy
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<20> For manual install we type:
|
|||
|
|
|||
|
linux dd
|
|||
|
|
|||
|
|
|||
|
|
|||
|
4. When prompted if you have a driver disk, select YES. Then swap the
|
|||
|
boot disk for your driver disk and the extra drivers will load and
|
|||
|
detect your network card.
|
|||
|
|
|||
|
5. You should now continue with the installation as described above.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
8. Debian Server Setup
|
|||
|
|
|||
|
This section explains how to set up your server machine to be an
|
|||
|
install server for Debian. You can set up any Linux distribution to
|
|||
|
be a Debian install server, this machine does not necessarily have to
|
|||
|
be running Debian. Don't forget that there are already plenty of
|
|||
|
Debian mirrors out there that provide free access to the Debian
|
|||
|
archive so unless you really need your own archive it might be best
|
|||
|
just to use one that already exists.
|
|||
|
|
|||
|
This guide starts from the point where you have a machine installed
|
|||
|
with Linux which is already up and running and connected to your
|
|||
|
network. If you require help with installing Linux on your server
|
|||
|
then please consult the Further Information section of this HOWTO in
|
|||
|
``Appendix A''.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
8.1. Setting Up Filespace
|
|||
|
|
|||
|
In order for your server to act as a Debian network install server you
|
|||
|
will need to set up your machine to be a mirror of the Debian
|
|||
|
archives. Unlike most Linux distributions, Debian is commonly
|
|||
|
installed over the network, so you are not likely to have obtained a
|
|||
|
set of CD images containing Debian. A mirror system is provided that
|
|||
|
enables you to copy all the required data to your own server machine,
|
|||
|
for free.
|
|||
|
|
|||
|
Before you even think about setting up your machine as an install
|
|||
|
server, you must check that you have the required space available.
|
|||
|
This sounds like a trivial thing to check but it is very important and
|
|||
|
easily forgotten when you're setting up.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
8.1.1. How much space will you need?
|
|||
|
|
|||
|
The entire Debian archives are roughly around 40Gb at the time of
|
|||
|
writing but if you are going to set up a full mirror then bear in mind
|
|||
|
that this will grow. It is possible for you to mirror only parts of
|
|||
|
the Debian archive and you can obviously mirror just the parts that
|
|||
|
you think you will require. For example, if you do not use a certain
|
|||
|
machine architecture then there may be little point in your mirroring
|
|||
|
this part of the archive.
|
|||
|
|
|||
|
The latest information about the size of the Debian archive is
|
|||
|
available from their website at <http://www.debian.org/mirror/size>.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
8.1.2. How much space do you have?
|
|||
|
|
|||
|
You will need the appropriate amount of space available to your system
|
|||
|
on some local filesystem. It does not matter what form this takes,
|
|||
|
whether it's a RAID device, local disk (either SCSI or IDE), etc.
|
|||
|
Ensure that the space you intend to use is formatted with your chosen
|
|||
|
filesystem and is mounted.
|
|||
|
|
|||
|
You can check this space with the command:
|
|||
|
|
|||
|
df -h
|
|||
|
|
|||
|
|
|||
|
|
|||
|
If this output shows you have enough space then great, you can
|
|||
|
continue. If not then it's time to think about an upgrade to your
|
|||
|
intended server machine!
|
|||
|
|
|||
|
|
|||
|
|
|||
|
8.2. Mirror the Debian Archive
|
|||
|
|
|||
|
When you are confident that you have enough space for the data you
|
|||
|
want to mirror then you can move on to this step. If you are not sure
|
|||
|
you have enough space to mirror all the parts of the Debian archive
|
|||
|
that you want then you can always try this method, then if you run out
|
|||
|
of space, remove some parts of the archive from the mirror and try
|
|||
|
again.
|
|||
|
|
|||
|
Debian maintain their own guide on how to set up your own Debian
|
|||
|
mirror. You are welcome to view this at
|
|||
|
<http://www.debian.org/mirror/ftpmirror>. The list of steps below is
|
|||
|
based on the Debian instructions but is my own interpretation of them,
|
|||
|
designed to be easy to use and understand.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
8.2.1. Where to Mirror From?
|
|||
|
|
|||
|
There are an awful lot of Debian sites out there that you could mirror
|
|||
|
from. It is best for you to choose one that is near your location or
|
|||
|
one that you know will have a good bandwidth to your location. Please
|
|||
|
remember, that if everybody uses the same sites for their own mirrors
|
|||
|
then things will get rather slow, so choose carefully.
|
|||
|
|
|||
|
A list of sites that you can choose to mirror from can be found at
|
|||
|
<http://www.debian.org/misc/README.mirrors>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
8.2.2. How to Mirror?
|
|||
|
|
|||
|
I would recommend using a program called rsync to copy the data from
|
|||
|
your chosen server to your own server. This is a program that is
|
|||
|
ideally suited to mirroring data from one system to another. If you
|
|||
|
want to find out more information about rsync itself then see the
|
|||
|
webpages or the man pages for it.
|
|||
|
|
|||
|
Debian provide a well commented script at
|
|||
|
<http://www.debian.org/mirror/anonftpsync> that will perform the
|
|||
|
mirroring for you. Go to this site and download the script to your
|
|||
|
server machine, we will then need to set up the script to mirror the
|
|||
|
archive as you want it.
|
|||
|
|
|||
|
Now go through the entire script (it's not very long) and look at each
|
|||
|
line. Decide whether you want the line to be active in your script or
|
|||
|
not. If you don't know what a line does then it is probably best to
|
|||
|
leave it at it's default setting. However, you must set up the script
|
|||
|
with some minimal settings in order for it to work at all. These will
|
|||
|
include your chosen server, the location to put the archive on your
|
|||
|
machine, etc.
|
|||
|
|
|||
|
Once you have set up the script with all the required information
|
|||
|
requested in it then you are ready to run it and it will start copying
|
|||
|
data from the server you have chosen to your own server machine.
|
|||
|
Don't forget to change the permissions of the script so that it is
|
|||
|
executable and then run it from the command line.
|
|||
|
|
|||
|
The Debian archive is regularly updated and in order to maintain your
|
|||
|
own archive and make sure it is up to date, you will need to
|
|||
|
periodically run the script again to copy any changes made. NOTE: the
|
|||
|
script uses rsync which is a one-way transaction, you can never copy
|
|||
|
from your machine to your chosen server (as you don't have permission
|
|||
|
to do so!). It is probably best to run the script daily, so you can
|
|||
|
edit your crontab to do this or put the script in
|
|||
|
/etc/cron.d/cron.daily if your Linux distribution has this set up.
|
|||
|
8.3. Enable Remote Access
|
|||
|
|
|||
|
Time to make your install data available to other machines on the
|
|||
|
network. Debian can be installed using NFS, HTTP and FTP protocols.
|
|||
|
You can select which of these will be used at install time on the
|
|||
|
client. If one of the services is not setup on the machine then it
|
|||
|
will still be available for selection by the client but the install
|
|||
|
will not work. Therefore, it is either best to enable all three
|
|||
|
services on your server (so they all work on each client machine) or
|
|||
|
if you don't enable all three then advertise the fact very well and
|
|||
|
say which service should be used for your particular install server.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
8.3.1. NFS
|
|||
|
|
|||
|
To install over NFS you need to meet certain conditions on the server:
|
|||
|
|
|||
|
<20> Your install directory is exported
|
|||
|
|
|||
|
<20> NFS is installed and running
|
|||
|
|
|||
|
<20> Portmap is running
|
|||
|
|
|||
|
To export your install directory edit the /etc/exports file and add an
|
|||
|
entry for directory you have copied your Debian archive to. In our
|
|||
|
examples throughout this HOWTO, we would use the folowing line:
|
|||
|
|
|||
|
/install *(ro)
|
|||
|
|
|||
|
|
|||
|
When you have saved your exports file you must then get your NFS dae<61>
|
|||
|
mon to read its configuration file again in order to export the direc<65>
|
|||
|
tory you just added. Do this by running the command:
|
|||
|
|
|||
|
exportfs -r
|
|||
|
|
|||
|
|
|||
|
This gives us the most simple read-only export to all hosts on our
|
|||
|
network. If you want to include more advanced options in your export
|
|||
|
e.g. only exporting to certain hosts on the network or a certain sub<75>
|
|||
|
net, etc then see your man page for the exports file at exports (5).
|
|||
|
|
|||
|
|
|||
|
|
|||
|
8.3.2. FTP
|
|||
|
|
|||
|
To install over FTP you need to allow FTP access to the directory that
|
|||
|
you have setup on the server as the installation directory. This can
|
|||
|
be either anonymous FTP access or access through a named account with
|
|||
|
a password. Anonymous access is probably best unless you have a
|
|||
|
reason to protect your install server via a password.
|
|||
|
|
|||
|
If you want anonymous FTP to point to a different directory then you
|
|||
|
can use sym links to point to the directory that you have set up as
|
|||
|
the install directory on the server. This will allow FTP into a
|
|||
|
chrooted environment but still give you access to the install images
|
|||
|
in a different location.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
8.3.3. HTTP
|
|||
|
|
|||
|
If you have a web server running and want to enable HTTP access to
|
|||
|
your install server then add sym links from your document root to the
|
|||
|
install server directory and this will grant access. If you are not
|
|||
|
familiar with web servers or are not comfortable with this approach
|
|||
|
then leave out HTTP access from your install server as it provides no
|
|||
|
benefits over NFS or FTP installs which may be simpler to set up.
|
|||
|
|
|||
|
If you do choose to use HTTP then basically all you have to do is make
|
|||
|
the install directory visible to your web server by making it appear
|
|||
|
under the document root by some means. If you are using the Apache
|
|||
|
webserver then Debian recommend adding the following to your http.conf
|
|||
|
file
|
|||
|
|
|||
|
<directory /org/ftp.debian.org/ftp>
|
|||
|
IndexOptions NameWidth=* +SuppressDescription
|
|||
|
DirectoryIndex .
|
|||
|
</directory>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
You have now completed the basic setup of your install server.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
9. Debian Client Install
|
|||
|
|
|||
|
This version of the Network Install HOWTO does not include information
|
|||
|
about automatic installation of a Debian system, if this is what you
|
|||
|
need then please refer to the link in the Further Information section
|
|||
|
located in ``Appendix A''. A later version of this HOWTO is likely to
|
|||
|
include details for this system.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
9.1. Boot the Machine
|
|||
|
|
|||
|
There are many ways to boot your machine in order to install Debian,
|
|||
|
you can if you wish use a Debian CD 1 which contains all the floppy
|
|||
|
boot disks on one easy to use media to boot your system. However, it
|
|||
|
is more common to boot an install of Debian using floppy disks, these
|
|||
|
are provided by Debian on their mirror system.
|
|||
|
|
|||
|
Obtain the floppy boot images from your chosen mirror server from the
|
|||
|
directory /debian/dists/stable/main/disks-hardware/current/images-1.44
|
|||
|
where disks-hardware is the hardware type that you are going to
|
|||
|
install Debian onto. Note that there are several different sets of
|
|||
|
floppy disk boot images in this directory and you should be careful to
|
|||
|
choose one that is suitable for your use. If you are not sure which to
|
|||
|
use then just use the ones in the directory specified rather than any
|
|||
|
of it's subdirectories.
|
|||
|
|
|||
|
Copy each floppy disk image that you have downloaded from the server
|
|||
|
to a different floppy disk following the example below:
|
|||
|
|
|||
|
<20> Insert a floppy disk
|
|||
|
|
|||
|
<20> dd if=/path/to/image of=/dev/fd0
|
|||
|
|
|||
|
<20> Remove floppy disk.
|
|||
|
|
|||
|
Do not mount the floppy disks when using this procedure to create
|
|||
|
floppy boot disks. Also, don't forget to check that the floppy disks
|
|||
|
you are going to use are (a) good floppy disks i.e. not broken, and
|
|||
|
(b) do not contain any data that you need as the entire disk will be
|
|||
|
overwritten with all data lost.
|
|||
|
|
|||
|
Once you have a set of boot disks you can boot your client system from
|
|||
|
them by inserting the first disk and turning on your system. You will
|
|||
|
be presented with a welcome screen with some instructions on which you
|
|||
|
should be able to press [ENTER] to continue the installation. A
|
|||
|
normal Debian installation can now take place, see the ``Further
|
|||
|
Information'' section for references to instructions on how to install
|
|||
|
Debian.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10. Appendix A: Further Information
|
|||
|
|
|||
|
This page is an informal list of references in no particular order
|
|||
|
that I have found useful or that others have pointed out to me. If
|
|||
|
you have a suggested reference that is not listed here then please
|
|||
|
mail it to me and I will add it to the list.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.1. HOWTO
|
|||
|
|
|||
|
These are intended as the primary starting points to get the
|
|||
|
background information as well as show you how to solve a specific
|
|||
|
problem.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.1.1. Generic
|
|||
|
|
|||
|
|
|||
|
<20> Net-HOWTO <http://www.tldp.org/HOWTO/Net-HOWTO/index.html>
|
|||
|
|
|||
|
<20> Installation-HOWTO <http://www.tldp.org/HOWTO/Installation-
|
|||
|
HOWTO/index.html>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.1.2. Redhat
|
|||
|
|
|||
|
|
|||
|
<20> Kickstart-HOWTO <http://www.tldp.org/HOWTO/KickStart-HOWTO.html>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.2. Mini-HOWTO
|
|||
|
|
|||
|
These are the smaller free text relatives to the HOWTOs above.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.2.1. Generic
|
|||
|
|
|||
|
|
|||
|
<20> Pre-Installation-Checklist <http://www.tldp.org/HOWTO/mini/Pre-
|
|||
|
Installation-Checklist/index.html>
|
|||
|
|
|||
|
<20> Post-Installation-Checklist <http://www.tldp.org/HOWTO/mini/Post-
|
|||
|
Installation-Checklist/index.html>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.2.2. Debian
|
|||
|
|
|||
|
|
|||
|
<20> Debian-Jigdo <http://www.tldp.org/HOWTO/mini/Debian-
|
|||
|
Jigdo/index.html>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.3. Web Pages
|
|||
|
|
|||
|
There is a huge number of informative web pages out there and by their
|
|||
|
very nature they change quickly. I will attempt to keep the links
|
|||
|
below as valid as possible but they may become outdated.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.3.1. Generic
|
|||
|
|
|||
|
|
|||
|
<20> Linux Documentation Project <http://www.tldp.org> - the Linux
|
|||
|
documentation reference site.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.3.2. SuSE
|
|||
|
|
|||
|
|
|||
|
<20> Main SuSE Website <http://www.suse.com>
|
|||
|
|
|||
|
<20> Autoinstall Website <http://www.suse.de/~nashif/autoinstall>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.3.3. Redhat
|
|||
|
|
|||
|
|
|||
|
<20> Main Redhat Website <http://www.redhat.com>
|
|||
|
|
|||
|
<20> Documentation Page <http://www.redhat.com/docs>
|
|||
|
|
|||
|
<20> Support/Resources Page
|
|||
|
<http://www.redhat.com/apps/support/resources>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.3.4. Debian
|
|||
|
|
|||
|
|
|||
|
<20> Main Debian Website <http://www.debian.org>
|
|||
|
|
|||
|
<20> Installation Manual
|
|||
|
<http://www.debian.org/releases/stable/installmanual>
|
|||
|
|
|||
|
<20> Setting up your own Debian mirror
|
|||
|
<http://www.debian.org/mirrors/ftpmirror>
|
|||
|
|
|||
|
<20> List of mirrors <http://www.debian.org/misc/README.mirrors>
|
|||
|
|
|||
|
<20> Debian Fully Automatic Installation <http://www.informatik.uni-
|
|||
|
koeln.de/fai>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.4. Mailing Lists
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.4.1. SuSE
|
|||
|
|
|||
|
|
|||
|
<20> suse-autoinstall@suse.com is a mailing list specific to AutoYaST.
|
|||
|
List archives are at http://lists.suse.com/archive/suse-autoinstall
|
|||
|
<http://lists.suse.com/archive/suse-autoinstall>
|
|||
|
Subscribe address is suse-autoinstall-subscribe@suse.com
|
|||
|
<mailto:suse-autoinstall-subscribe@suse.com>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.4.2. Redhat
|
|||
|
|
|||
|
|
|||
|
<20> redhat-install-list@redhat.com is a mailing list for Redhat
|
|||
|
installation.
|
|||
|
List archives are only available to list members
|
|||
|
List information page is at
|
|||
|
https://listman.redhat.com/mailman/listinfo/redhat-install-list
|
|||
|
<https://listman.redhat.com/mailman/listinfo/redhat-install-list>
|
|||
|
|
|||
|
<20> Other Redhat Lists are also available on-line
|
|||
|
Information page is at http://www.redhat.com/support/forums
|
|||
|
<http://www.redhat.com/support/forums>
|
|||
|
|
|||
|
|
|||
|
|
|||
|
10.4.3. Debian
|
|||
|
|
|||
|
|
|||
|
<20> Debian mailing lists can be found at
|
|||
|
http://www.debian.org/MailingLists
|
|||
|
<http://www.debian.org/MailingLists>
|
|||
|
|
|||
|
<20> List archives can be found at http://lists.debian.org
|
|||
|
<http://lists.debian.org>
|
|||
|
|
|||
|
|
|||
|
|