Differences between revisions 16 and 17
Revision 16 as of 2007-12-30 09:57:14
Size: 2442
Comment:
Revision 17 as of 2007-12-30 11:50:46
Size: 3007
Comment:
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
I have a mirror http://apt.bzzware.org/debian-edu/ which is used for the purposes
Some of you may wonder why I needed to build another mirror. Therefor I've documented this on DebianEdu/HowTo/NetbootInstall/WhyAnotherMirror
== Separate mirror ==
To use netboot/netinstallation we need files from both Debian upstream and Debian Edu, so we need to prepare our own repository. If we for Lenny are able to complete (and get included) debian-edu-install, debian-edu-config and education-tasks before lenny is frozen, we might do with a normal Debian mirror, and only provide some preseeding.
Line 6: Line 6:
TODO: DebianEdu/HowTo/NetbootInstall/MirrorSetup The repository need to hold the needed udebs, the packages used for the very basic debian-installation, and a few others.
I have a repository set up at http://apt.bzzware.org/debian-edu/ which meets these requirements.
My repository holds normal packages availible from upstream debian, with one change. The debian-archive-keyring-package, which is used to check that the packages comes from a signed repository, is patched to also include key used on my mirror.
Line 8: Line 10:
Some of you may wonder why I needed to build another installer (initrd.gz). Therefor I've documented this on DebianEdu/HowTo/NetbootInstall/WhyAnotherInstaller. Later (for lenny) maybe we should be finished with these things before Debian releases, and maybe we dont need to build our own installer anymore... == Debian installer ==
Since the installer requires a signed repository, and I cant sign my repository with the debian archive key, I need to build my own installer. that is, I need to use the availible udebs, and build a new initrd.gz.. The only change from an upstream (Debian) installer is that I've included the key used to sign my repository into the installer.
The [http://apt.bzzware.org/debian-edu/netboot/debian-installer/i386/initrd.gz installer] and [http://apt.bzzware.org/debian-edu/netboot/debian-installer/i386/linux kernel] is availible from http://apt.bzzware.org/debian-edu/netboot/debian-installer/i386
Line 10: Line 14:
TODO: DebianEdu/HowTo/NetbootInstall/InstallerSetup == Doing the installation ==
The trick is to use a mirror that includes our udebs, and getting the questions of which installer components to fetch. We of course need to fetch our udebs, debian-edu-installation-udeb and debian-edu-profile-udeb.
This is done by either using a preseed file, or lower the debconf-priority, so that you get a question of which installer components to include.
To use a preseed file, you can add this option to the kernel when you boot the installer:
{{{
url=http://apt.bzzware.org/debian-edu/preseed/installer.dat
}}}
To lower the debconf-priority to get more questions, you add this option when you boot the installer
{{{
DEBCONF_PRIORITY=medium
}}}
Line 12: Line 26:
You might use the [http://apt.bzzware.org/debian-edu/netboot/debian-installer/i386/linux kernel] and [http://apt.bzzware.org/debian-edu/netboot/debian-installer/i386/initrd.gz initrd] that I built The important part is not to use the default mirror the installer wants you to use (choosen by the localization/language you selected), but to enter a custom installer mirror, like apt.bzzware.org, and using the correct url to the mirror.
When you get to "Choose a mirror of the Debian archive", you select "enter information manually", then enter apt.bzzware.org as "Debian archive mirror hostname" , and /debian-edu as "Debian archive mirror directory"
Line 14: Line 29:
To test the instaler, I use qemu: == Testing using qemu ==
I've mostly tested this stuff using qemu like this
Line 21: Line 37:

You need get the installer to fetch debian-edu-install-udeb (and debian-edu-profile-udeb). You can do that by adding "url=http://apt.bzzware.org/debian-edu/preseed/installer.dat" as boot-parameter, or you may run with DEBCONF_PRIORITY=low.
Select Language/country/keyboard as usual, and if your network already is running a dhcp-server, you can use that. When the installer asks which mirror to use, then select "enter manually", and use apt.bzzware.org as installation mirror, and /debian-edu as subfolder (or whatever it's called). Using my preseed file will add the two automaticly.
Then continue the installation, by selecting profile, reformatting disks and set password as usual.
I'm not sure if the /var partition is large enough if you use automatic partitioning, at least my installation failed when using a 8 GB qemu-img.

To warn you: the mirror is not on the fastest line (although slightlyfaster than the old), so please use a proxy if you want to do more than one installation.
Also, there is no auto-update on the mirror, so you wont get the newest and latest udebs and debs. The mirror was last updated on 2007-12-29.
I've only tested a main-server profile, please report any problems you find to debian-edu @ l.d.o

This is a description on how to do an installation of debian-edu using netboot.

Separate mirror

To use netboot/netinstallation we need files from both Debian upstream and Debian Edu, so we need to prepare our own repository. If we for Lenny are able to complete (and get included) debian-edu-install, debian-edu-config and education-tasks before lenny is frozen, we might do with a normal Debian mirror, and only provide some preseeding.

The repository need to hold the needed udebs, the packages used for the very basic debian-installation, and a few others. I have a repository set up at http://apt.bzzware.org/debian-edu/ which meets these requirements. My repository holds normal packages availible from upstream debian, with one change. The debian-archive-keyring-package, which is used to check that the packages comes from a signed repository, is patched to also include key used on my mirror.

Debian installer

Since the installer requires a signed repository, and I cant sign my repository with the debian archive key, I need to build my own installer. that is, I need to use the availible udebs, and build a new initrd.gz.. The only change from an upstream (Debian) installer is that I've included the key used to sign my repository into the installer. The [http://apt.bzzware.org/debian-edu/netboot/debian-installer/i386/initrd.gz installer] and [http://apt.bzzware.org/debian-edu/netboot/debian-installer/i386/linux kernel] is availible from http://apt.bzzware.org/debian-edu/netboot/debian-installer/i386

Doing the installation

The trick is to use a mirror that includes our udebs, and getting the questions of which installer components to fetch. We of course need to fetch our udebs, debian-edu-installation-udeb and debian-edu-profile-udeb. This is done by either using a preseed file, or lower the debconf-priority, so that you get a question of which installer components to include. To use a preseed file, you can add this option to the kernel when you boot the installer:

url=http://apt.bzzware.org/debian-edu/preseed/installer.dat

To lower the debconf-priority to get more questions, you add this option when you boot the installer

DEBCONF_PRIORITY=medium

The important part is not to use the default mirror the installer wants you to use (choosen by the localization/language you selected), but to enter a custom installer mirror, like apt.bzzware.org, and using the correct url to the mirror. When you get to "Choose a mirror of the Debian archive", you select "enter information manually", then enter apt.bzzware.org as "Debian archive mirror hostname" , and /debian-edu as "Debian archive mirror directory"

Testing using qemu

I've mostly tested this stuff using qemu like this

/usr/bin/qemu -kernel /tftpboot/deinst/linux \
             -initrd /tftpboot/deinst/initrd.gz \
             -append "url=http://apt.bzzware.org/debian-edu/preseed/installer.dat" \
             -m 256 qemu.img