Ağ kurulum kaynakları

Şuraya atla: kullan, ara

How to Create a Network Installation Source from ISOs

OK, so you've downloaded the ISOs to a Linux machine (which may or may not be a SuSE box), and you want to install to that nice spare machine to test out this SUSE thing, but don't want to burn and juggle CDs.

In all of these examples, I'll assume you're working with SUSE 10.0 Beta 1 ISOs downloaded to /srv/ftp/isos/suse10.0, and you want your installation source to be in /srv/ftp/suse10.0. For other distros, you may need to adjust the location (or edit the FTP client config) accordingly.

Quick creating a local ftp inst-source server with YaST

Yast can be used to setup an http, ftp or nfs inst-source. here we will see the ftp one.

This is quick, but it copies the contents of the ISOs to your hard disk, taking up twice the space. It's great if you will be deleting the ISOs, but if you're keeping them, the manual way may be better for you.

  • you must have an ftp server running, for example vsftp. This can be configured in Yast in the "xinetd" section
  • Install the yast2-instserver package;
  • Select YaST --> Miscellaneous --> Installation Server. If you just installed anything (like vsftp), you need to shut down the Yast control center and start it again;
  • choose a network install type of your choice (HTTP, FTP, or NFS), here ftp;
  • choose a base directory for all you inst-sources inst-source for example;
  • Choose to install using the ISOs and give a name specific to them. a new directory will be created under the preceding one;
  • You will now be prompted for the various ISOs until the server is done (Yast copies the cd content to the given directory)

This has been tested with SUSE Linux 10.0 stable as a client and 10.1 RC1 as version to install.

Manual Installation

Place the files with makeSUSEdvd

You can place the files from the ISOs with makeSUSEdvd. Just run the following:

# makeSUSEdvd -i -s /srv/ftp/suse10.0

This will put all the files in /srv/ftp/suse10.0. You then do not need to do the next two steps. If you can not run makeSUSEdvd for one reason or another, use the next two steps.

Mount the ISOs

The first thing you need to do is mount the ISOs themselves. Edit /etc/fstab and add these lines:

/srv/ftp/isos/suse10.0/SUSE-10.0-CD-i386-Beta1-CD1.iso /srv/ftp/suse10.0/cd1 auto loop,ro 0 0
/srv/ftp/isos/suse10.0/SUSE-10.0-CD-i386-Beta1-CD2.iso /srv/ftp/suse10.0/cd2 auto loop,ro 0 0
/srv/ftp/isos/suse10.0/SUSE-10.0-CD-i386-Beta1-CD3.iso /srv/ftp/suse10.0/cd3 auto loop,ro 0 0
/srv/ftp/isos/suse10.0/SUSE-10.0-CD-i386-Beta1-CD4.iso /srv/ftp/suse10.0/cd4 auto loop,ro 0 0
/srv/ftp/isos/suse10.0/SUSE-10.0-CD-i386-Beta1-CD5.iso /srv/ftp/suse10.0/cd5 auto loop,ro 0 0

Create the directories to mount them on and mount them:

cd /srv/ftp/suse10.0
mkdir cd{1,2,3,4,5}
mount -a

Set Up the Files YaST Needs

YaST needs some special files in the root of the network install point. Most of these are symlinked in from CD 1.

cd /srv/ftp/suse10.0
ln -s cd1/boot boot
ln -s cd1/content content
ln -s cd1/control.xml control.xml
ln -s cd1/media.1 media.1
ln -s cd1/suse suse
mkdir yast
echo cd1 cd1 > yast/instorder
echo cd1 cd1 > yast/order
ls > directory.yast

Announcing the Installation Source via SLP

This assumes that you have the openslp-server package installed on a host in your network and the server is running.

Create a file like /etc/slp.reg.d/suse100.reg (it has to end in .reg) on the openslp server with the following contents:

service:install.suse:ftp://your_ftp_server/your_directory
description=My Distribution

Then make openslp reload the configuration with rcslpd reload. "My Distribution" will appear in linuxrc (booting from CD/DVD or floppy) when you select SLP installation in the initial boot screen.

Using NFS

You also can use NFS for network installation. After you set up the NFS server and enable it in firewall, you can start installing SUSE using NFS. First, set up the NFS server. Use yast nfs-server to enable nfs and open the port in firewall. Here's what you should add in /etc/exports, assuming you mount all suse10.0.iso in /srv/ftp/suse10.0/.

/srv/ftp/suse10.0/cd1   *(ro,root_squash,sync)
/srv/ftp/suse10.0/cd2   *(ro,root_squash,sync)
/srv/ftp/suse10.0/cd3   *(ro,root_squash,sync)
/srv/ftp/suse10.0/cd4   *(ro,root_squash,sync)
/srv/ftp/suse10.0/cd5   *(ro,root_squash,sync)

Make a Network Boot CD

Next you will need a network boot CD. The FTP install CD for SuSE Linux 9.3 is about 50 MB in size and has lots of weird and wonderful modules on it. But, for most modern hardware, you don't need all that. And to be honest, I'm not sure where you would get all that from these CDs either. But it's dead easy to make a boot CD from the boot area of CD 1.

mkdir /tmp/bootcd
cd /tmp/bootcd
cp -a /srv/ftp/suse10.0/cd1/boot/loader/* .
mkisofs -o ../netinst.iso -b isolinux.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table .

Then use your favorite CD recording program to burn the resulting /tmp/netinst.iso.

Booting the Machine

It should be plain sailing from here on in. Boot from the CD. Once you have the install menu, you should be able to press F6 and select "ftp" as the installation source. Enter the name or IP address of your server and enter "suse10.0" as the installation directory. Of course, this assumes your FTP server is running, and its home is set to /srv/ftp.

If you use NFS, choose NFS, and add IP server and directory of cd1 in NFS server (shoud be /srv/ftp/suse10.0/cd1).

And you should be on the way.

Using Windows as a Server

I've not found a way to use the ISOs directly on windows, but you can certainly create a network install point only creating a boot CD.

  • Download and install Daemon Tools. This program allows you to mount the ISO as a drive letter on windows.
  • Mount the first CD, then copy all the files to, for example, d:\install\suse10.0
  • Repeat with all the other CDs. Say "yes to all" about overwriting files.
  • Share the d:\install directory as, for example, INSTALL.
  • If you have problems accessing the windows share, install a ftp-server on the windows system and install SUSE Linux via FTP
  • Make a boot cd of the Internet Installation Boot Image(boot.iso) and start with it the installation

Hopefully that will be it.