Depending on the operating system running on the machine to use as the network installation source for openSUSE, there are several options for the server configuration. The easiest way to set up an installation server is to use YaST on openSUSE 11.1 and higher.
![]() | |
You can even use a Microsoft Windows machine as the installation server for your Linux deployment. See Section 1.2.5, “Managing an SMB Repository” for details. | |
YaST offers a graphical tool for creating network repositories. It supports HTTP, FTP, and NFS network installation servers.
Log in as root to the machine that should act as installation
server.
Install the yast2-instserver
package.
Start ++.
Select the server type (HTTP, FTP, or NFS). The selected server service is started automatically every time the system starts. If a service of the selected type is already running on your system and you want to configure it manually for the server, deactivate the automatic configuration of the server service with . In both cases, define the directory in which the installation data should be made available on the server.
Configure the required server type. This step relates to the automatic configuration of server services. It is skipped when automatic configuration is deactivated.
Define an alias for the root directory of the FTP or HTTP server on
which the installation data should be found. The installation source
will later be located under
ftp://
(FTP) or under
Server-IP/Alias/Namehttp://
(HTTP). Server-IP/Alias/NameName stands for the name of the
repository, which is defined in the following step. If you selected
NFS in the previous step, define wild cards and export options. The
NFS server will be accessible under
nfs://.
Details of NFS and exports can be found in Chapter 26, Sharing File Systems with NFS.
Server-IP/Name
![]() | Firewall Settings |
|---|---|
Make sure that the firewall settings of your server system allow traffic on the ports for HTTP, NFS, and FTP. If they currently do not, enable or check first. | |
Configure the repository. Before the installation media are copied to their destination, define the name of the repository (ideally, an easily remembered abbreviation of the product and version). YaST allows providing ISO images of the media instead of copies of the installation CDs. If you want this, activate the relevant check box and specify the directory path under which the ISO files can be found locally. Depending on the product to distribute using this installation server, it might be that more add-on CDs or service pack CDs are required and should be added as extra repositories. To announce your installation server in the network via OpenSLP, activate the appropriate option.
![]() | |
Consider announcing your repository via OpenSLP if your network setup supports this option. This saves you from entering the network installation path on every target machine. The target systems are just booted using the SLP boot option and find the network repository without any further configuration. For details on this option, refer to Section 1.4, “Booting the Target System for Installation”. | |
Upload the installation data. The most lengthy step in configuring an installation server is copying the actual installation CDs. Insert the media in the sequence requested by YaST and wait for the copying procedure to end. When the sources have been fully copied, return to the overview of existing repositories and close the configuration by selecting .
Your installation server is now fully configured and ready for service. It is automatically started every time the system is started. No further intervention is required. You only need to configure and start this service correctly by hand if you have deactivated the automatic configuration of the selected network service with YaST as an initial step.
To deactivate a repository, select the repository to remove then select . The installation data are removed from the system. To deactivate the network service, use the respective YaST module.
If your installation server needs to provide the installation data for more than one product of product version, start the YaST installation server module and select in the overview of existing repositories to configure the new repository.
Setting up an NFS source for installation is basically done in two steps. In the first step, create the directory structure holding the installation data and copy the installation media over to this structure. Second, export the directory holding the installation data to the network.
To create a directory to hold the installation data, proceed as follows:
Log in as root.
Create a directory that will later hold all installation data and change into this directory. For example:
mkdir install/product/productversion
cd install/product/productversion
Replace product with an abbreviation of the
product name and productversion with a
string that contains the product name and version.
For each CD or DVD contained in the media kit execute the following commands:
Copy the entire content of the installation CD or DVD into the installation server directory:
cp -a /media/path_to_your_CD-ROM_drive .
Replace path_to_your_CD-ROM_drive with
the actual path under which your CD or DVD drive is addressed.
Depending on the type of drive used in your system, this can be
cdrom, cdrecorder,
dvd, or dvdrecorder.
Rename the directory to the CD number:
mvpath_to_your_CD-ROM_driveCDx
Replace x with the actual number of your
CD.
On openSUSE, you can export the repository with NFS using YaST. Proceed as follows:
Log in as root.
Start ++.
Select and and click .
Select and browse for the directory
containing the installation sources, in this case,
.
productversion
Select and enter the hostnames of the
machines to which to export the installation data. Instead of
specifying hostnames here, you could also use wild cards, ranges of
network addresses, or just the domain name of your network. Enter the
appropriate export options or leave the default, which works fine in
most setups. For more information about the syntax used in exporting
NFS shares, read the exports man page.
Click . The NFS server holding the openSUSE repository is automatically started and integrated into the boot process.
If you prefer manually exporting the repository via NFS instead of using the YaST NFS Server module, proceed as follows:
Log in as root.
Open the file /etc/exports and enter the
following line:
/productversion *(ro,root_squash,sync)
This exports the directory
/ to any
host that is part of this network or to any host that can connect to
this server. To limit the access to this server, use netmasks or
domain names instead of the general wild card productversion*.
Refer to the export man page for details.
Save and exit this configuration file.
To add the NFS service to the list of servers started during system boot, execute the following commands:
insserv /etc/init.d/nfsserver insserv /etc/init.d/portmap
Start the NFS server with rcnfsserver start. If you need to change the configuration of your NFS server later, modify the configuration file and restart the NFS daemon with rcnfsserver restart.
Announcing the NFS server via OpenSLP makes its address known to all clients in your network.
Log in as root.
Enter the directory /etc/slp.reg.d/.
Create a configuration file called
install.suse.nfs.reg containing the following
lines:
# Register the NFS Installation Server
service:install.suse:nfs://$HOSTNAME/path_to_repository/CD1,en,65535
description=NFS Repository
Replace path_to_repository with the actual
path to the installation source on your server.
Save this configuration file and start the OpenSLP daemon with rcslpd start.
For more information about OpenSLP, refer to the package documentation
located under /usr/share/doc/packages/openslp/ or
refer to Chapter 22, SLP Services in the Network. More Information about NFS is found
in Chapter 26, Sharing File Systems with NFS.
Creating an FTP repository is very similar to creating an NFS repository. An FTP repository can be announced over the network using OpenSLP as well.
Create a directory holding the installation sources as described in Section 1.2.2, “Setting Up an NFS Repository Manually”.
Configure the FTP server to distribute the contents of your installation directory:
Log in as root and install the package
vsftpd using the YaST package manager.
Enter the FTP server root directory:
cd /srv/ftpCreate a subdirectory holding the installation sources in the FTP root directory:
mkdir repository
Replace replaceable with the product
name.
Mount the contents of the installation repository into the change root environment of the FTP server:
mount --bindpath_to_repository/srv/ftp/instsource
Replace path_to_repository and
repository with values matching your
setup. If you need to make this permanent, add it to
/etc/fstab.
Start vsftpd with vsftpd.
Announce the repository via OpenSLP, if this is supported by your network setup:
Create a configuration file called
install.suse.ftp.reg under
/etc/slp.reg.d/ that contains the following
lines:
# Register the FTP Installation Server
service:install.suse:ftp://$HOSTNAME/repository/CD1,en,65535
description=FTP Repository
Replace repository with the actual name
to the repository directory on your server. The
service: line should be entered as one continuous
line.
Save this configuration file and start the OpenSLP daemon with rcslpd start.
![]() | Configuring an FTP Server with YaST |
|---|---|
If you prefer using YaST over manually configuring the FTP installation server, refer to Chapter 29, Setting up an FTP server with YaST for more information on how to use the YaST FTP server module. | |
Creating an HTTP repository is very similar to creating an NFS repository. An HTTP repository can be announced over the network using OpenSLP as well.
Create a directory holding the installation sources as described in Section 1.2.2, “Setting Up an NFS Repository Manually”.
Configure the HTTP server to distribute the contents of your installation directory:
Install the Web server Apache as described in Section 28.1.2, “Installation”.
Enter the root directory of the HTTP server
(/srv/www/htdocs) and create the subdirectory
that will hold the installation sources:
mkdir repository
Replace repository with the product name.
Create a symbolic link from the location of the installation sources
to the root directory of the Web server
(/srv/www/htdocs):
ln -s/path_to_repository/srv/www/htdocs/repository
Modify the configuration file of the HTTP server
(/etc/apache2/default-server.conf) to make it
follow symbolic links. Replace the following line:
Options None
with
Options Indexes FollowSymLinks
Reload the HTTP server configuration using rcapache2 reload.
Announce the repository via OpenSLP, if this is supported by your network setup:
Create a configuration file called
install.suse.http.reg under
/etc/slp.reg.d/ that contains the following
lines:
# Register the HTTP Installation Server
service:install.suse:http://$HOSTNAME/repository/CD1/,en,65535
description=HTTP Repository
Replace repository with the actual path
to the repository on your server. The service:
line should be entered as one continuous line.
Save this configuration file and start the OpenSLP daemon using rcslpd restart.
Using SMB, you can import the installation sources from a Microsoft Windows server and start your Linux deployment even with no Linux machine around.
To set up an exported Windows Share holding your openSUSE repository, proceed as follows:
Log in to your Windows machine.
Start Explorer and create a new folder that will hold the entire
installation tree and name it INSTALL, for
example.
Export this share according the procedure outlined in your Windows documentation.
Enter this share and create a subfolder, called
. Replace
productproduct with the actual product name.
Enter the
INSTALL/ folder
and copy each CD or DVD to a separate folder, such as
productCD1 and CD2.
To use a SMB mounted share as a repository, proceed as follows:
Instead of copying physical media into your server directory manually, you can also mount the ISO images of the installation media into your installation server and use them as a repository. To set up an HTTP, NFS or FTP server that uses ISO images instead of media copies, proceed as follows:
Download the ISO images and save them to the machine to use as the installation server.
Log in as root.
Choose and create an appropriate location for the installation data, as described in Section 1.2.2, “Setting Up an NFS Repository Manually”, Section 1.2.3, “Setting Up an FTP Repository Manually”, or Section 1.2.4, “Setting Up an HTTP Repository Manually”.
Create subdirectories for each CD or DVD.
To mount and unpack each ISO image to the final location, issue the following command:
mount -o looppath_to_isopath_to_repository/product/mediumx
Replace path_to_iso with the path to your
local copy of the ISO image,
path_to_repository with the source
directory of your server, product with the
product name, and mediumx with the type (CD
or DVD) and number of media you are using.
Repeat the previous step to mount all ISO images needed for your product.
Start your installation server as usual, as described in Section 1.2.2, “Setting Up an NFS Repository Manually”, Section 1.2.3, “Setting Up an FTP Repository Manually”, or Section 1.2.4, “Setting Up an HTTP Repository Manually”.
To automatically mount the ISO images at boot time, add the respective
mount entries to /etc/fstab. An entry according to
the previous example would look like the following:
path_to_isopath_to_repository/productmediumauto loop