Network-Install-HOWTO
Network-Install-HOWTO
Network−Install−HOWTO
Table of Contents
Network Install HOWTO...................................................................................................................................1
Graham White, [email protected] IBM Hursley, UK........................................................................1
1. Introduction..........................................................................................................................................1
2. Document Structure.............................................................................................................................1
3. Quick Guide.........................................................................................................................................1
4. SuSE Server Setup...............................................................................................................................1
5. SuSE Client Install...............................................................................................................................2
6. Redhat Server Setup.............................................................................................................................2
7. Redhat Client Install............................................................................................................................2
8. Debian Server Setup............................................................................................................................2
9. Debian Client Install............................................................................................................................2
10. Appendix A: Further Information......................................................................................................2
1. Introduction..........................................................................................................................................2
1.1 Copyright...........................................................................................................................................3
1.2 Disclaimer..........................................................................................................................................3
1.3 Credits................................................................................................................................................3
1.4 Translations........................................................................................................................................3
1.5 Change Log........................................................................................................................................3
2. Document Structure.............................................................................................................................4
2.1 Server Setup Structure......................................................................................................................4
2.2 Client Install Structure......................................................................................................................5
2.3 Reading plan......................................................................................................................................5
3. Quick Guide........................................................................................................................................5
3.1 Advantages & Disadvantages............................................................................................................6
Advantages........................................................................................................................................6
Disadvantages....................................................................................................................................6
3.2 Automatic vs Manual Installation......................................................................................................6
Automatic Installation.......................................................................................................................6
Manual Installation............................................................................................................................7
3.3 Hardware............................................................................................................................................7
3.4 Software/Services..............................................................................................................................8
3.5 Generic Server Setup Guide...............................................................................................................8
Begin Setup.......................................................................................................................................8
Setting Up Filespace..........................................................................................................................9
How much space will you need?.......................................................................................................9
How much space do you have?.........................................................................................................9
Copy Installation Media....................................................................................................................9
Enable Remote Access......................................................................................................................9
NFS..................................................................................................................................................10
FTP..................................................................................................................................................10
HTTP...............................................................................................................................................10
Basic Setup Complete.....................................................................................................................10
3.6 Generic Client Install Guide............................................................................................................10
Create Config Files..........................................................................................................................11
Configuration Program Installation.................................................................................................11
Create A Basic Config File............................................................................................................11
Advanced Config File Setup...........................................................................................................11
Boot the Machine............................................................................................................................11
i
Network−Install−HOWTO
Table of Contents
Network Install HOWTO
4. SuSE Server Setup.............................................................................................................................12
4.1 Setting Up Filespace........................................................................................................................12
How much space will you need?.....................................................................................................12
How much space do you have?.......................................................................................................13
4.2 Copy Installation Media...................................................................................................................13
4.3 Enable Remote Access.....................................................................................................................13
NFS..................................................................................................................................................14
4.4 Package Customisation...................................................................................................................14
5. SuSE Client Install.............................................................................................................................14
5.1 Create AutoYaST Config Files........................................................................................................15
YaST 2 Module Installation............................................................................................................15
Create A Basic Config File............................................................................................................15
Advanced Config File Setup...........................................................................................................16
5.2 Boot the Machine.............................................................................................................................17
Manual Installation..........................................................................................................................17
Automatic Installation.....................................................................................................................17
Further Boot Options.......................................................................................................................18
6. Redhat Server Setup...........................................................................................................................19
6.1 Setting Up Filespace........................................................................................................................19
How much space will you need?.....................................................................................................19
How much space do you have?.......................................................................................................19
6.2 Copy Installation Media...................................................................................................................20
6.3 Enable Remote Access.....................................................................................................................20
NFS..................................................................................................................................................20
FTP..................................................................................................................................................21
HTTP...............................................................................................................................................21
6.4 Package Customisation...................................................................................................................21
Further Customisation.....................................................................................................................22
7. Redhat Client Install..........................................................................................................................22
7.1 Create Kickstart Config Files...........................................................................................................23
Kickstart Configurator Installation..................................................................................................23
Create A Basic Config File............................................................................................................23
Advanced Config File Setup...........................................................................................................24
7.2 Boot the Machine.............................................................................................................................24
Further Boot Options.......................................................................................................................25
8. Debian Server Setup..........................................................................................................................26
8.1 Setting Up Filespace........................................................................................................................26
How much space will you need?.....................................................................................................26
How much space do you have?.......................................................................................................26
8.2 Mirror the Debian Archive...............................................................................................................27
Where to Mirror From?...................................................................................................................27
How to Mirror?................................................................................................................................27
8.3 Enable Remote Access.....................................................................................................................28
NFS..................................................................................................................................................28
FTP..................................................................................................................................................28
HTTP...............................................................................................................................................28
9. Debian Client Install..........................................................................................................................29
ii
Network−Install−HOWTO
Table of Contents
Network Install HOWTO
9.1 Boot the Machine.............................................................................................................................29
10. Appendix A: Further Information...................................................................................................30
10.1 HOWTO.........................................................................................................................................30
Generic............................................................................................................................................30
Redhat..............................................................................................................................................30
10.2 Mini−HOWTO...............................................................................................................................30
Generic............................................................................................................................................30
Debian.............................................................................................................................................30
10.3 Web Pages......................................................................................................................................30
Generic............................................................................................................................................30
SuSE................................................................................................................................................30
Redhat..............................................................................................................................................31
Debian.............................................................................................................................................31
10.4 Mailing Lists..................................................................................................................................31
SuSE................................................................................................................................................31
Redhat..............................................................................................................................................31
Debian.............................................................................................................................................31
iii
Network Install HOWTO
Graham White, [email protected]
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.
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.2 Automatic vs Manual Installation
• 3.3 Hardware
• 3.4 Software/Services
• 3.5 Generic Server Setup Guide
• 3.6 Generic Client Install Guide
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 ® 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
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.
Other company, produce, and service names may be trademarks or service marks of others.
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 ® distribution that is not included yet.
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.
DATE CHANGE
1.1 Copyright 3
Network−Install−HOWTO
V.
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. Document Structure 4
Network−Install−HOWTO
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.
Advantages
♦ Fastest installation (on a good network)
♦ Automatic configuration available (unattended installation)
♦ Very quick installation of many systems
♦ No need for physical installation media
♦ Customisable installation with packages not available from the standard distribution
♦ Once the install system is setup and working installations are very simple
♦ Multiple system configurations available for automatic installation with different config files
♦ Simultaneous installation from a single source
♦ No need for an install media library, space−saving
♦ Very easy to update
♦ No problems with reading install media
Disadvantages
♦ Slow installation (on a bad network)
♦ Added complexity of installation
♦ Time needed initially to set up an install server
♦ Relies on network and connectivity
♦ Uses network bandwidth
♦ A server machine is required (expensive)
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
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.
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.
Manual Installation 7
Network−Install−HOWTO
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.
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.4 Software/Services 8
Network−Install−HOWTO
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.
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!
Setting Up Filespace 9
Network−Install−HOWTO
NFS
To install over NFS you need to meet certain conditions on the server:
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.
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.
NFS 10
Network−Install−HOWTO
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.
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.
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):
◊ Locate the floppy image that you need to use.
◊ 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):
◊ 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:
◊ If you are doing an automated install then start the automated process
◊ 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.
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.
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.
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!
/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
e.g. mount /mnt/cdrom
2. Copy the data from CD
e.g. cp −av /mnt/cdrom /install
3. Unmount the CD
e.g. umount /mnt/cdrom
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:
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:
/install *(ro)
When you have saved your exports file you must then get your NFS daemon to read its configuration
file again in order to export the directory 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
subnet, etc then see your man page for the exports file at exports (5).
You have now completed the basic setup of your install server.
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
NFS 14
Network−Install−HOWTO
♦ yast2−trans−autoinst
♦ yast2−config−autoinst
♦ yast2−module−autoinst
Check to see if you already have them installed with the command:
If these packages are not installed then install 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
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:
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.
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.
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:
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.
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.
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
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
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.
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.
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!
/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
e.g. mount /mnt/cdrom
2. Copy the data from CD
e.g. cp −av /mnt/cdrom /install
3. Unmount the CD
e.g. umount /mnt/cdrom
4. Now swap CDs and repeat from step 1 for each of your CDs you have.
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:
/install *(ro)
When you have saved your exports file you must then get your NFS daemon to read its configuration
file again in order to export the directory 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
subnet, etc then see your man page for the exports file at exports (5).
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.
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.
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
If the name 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
FTP 21
Network−Install−HOWTO
/install/Redhat/RPMS
This is the directory that should already contain all the Redhat standard 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
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.
Further Customisation 22
Network−Install−HOWTO
If these packages are not installed then install with the command:
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 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.
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.
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):
◊ Locate the floppy image that you need to use. This is on the first Redhat CD and is at
images/bootnet.img
◊ 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):
◊ Mount your floppy disk
mount /mnt/floppy
◊ Copy your config file to the root directory of the floppy with the name ks.cfg
cp /path/to/file /mnt/floppy
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:
◊ If you are doing an automated install:
linux ks=floppy
◊ If you're not using config files then press ENTER for the default installation
5. Finish the installation:
◊ 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.
◊ 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.
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.
◊ So for automated intall we type:
linux dd ks=floppy
◊ 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.
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.
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.
The latest information about the size of the Debian archive is available from their website at
http://www.debian.org/mirror/size.
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!
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.
A list of sites that you can choose to mirror from can be found at
http://www.debian.org/misc/README.mirrors
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.
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.
NFS
To install over NFS you need to meet certain conditions on the server:
/install *(ro)
When you have saved your exports file you must then get your NFS daemon to read its configuration
file again in order to export the directory 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
subnet, etc then see your man page for the exports file at exports (5).
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.
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.
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:
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.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.
Generic
♦ Net−HOWTO
♦ Installation−HOWTO
Redhat
♦ Kickstart−HOWTO
10.2 Mini−HOWTO
These are the smaller free text relatives to the HOWTOs above.
Generic
♦ Pre−Installation−Checklist
♦ Post−Installation−Checklist
Debian
♦ Debian−Jigdo
Generic
♦ Linux Documentation Project − the Linux documentation reference site.
SuSE
♦ Main SuSE Website
♦ Autoinstall Website
Redhat
♦ Main Redhat Website
♦ Documentation Page
♦ Support/Resources Page
Debian
♦ Main Debian Website
♦ Installation Manual
♦ Setting up your own Debian mirror
♦ List of mirrors
♦ Debian Fully Automatic Installation
Redhat
♦ redhat−install−[email protected] 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
♦ Other Redhat Lists are also available on−line
Information page is at http://www.redhat.com/support/forums
Debian
♦ Debian mailing lists can be found at http://www.debian.org/MailingLists
♦ List archives can be found at
Redhat 31