[pxeboot] fin du déplaçage, ajout d'un script pour remonter les iso pour les livecd
Ignore-this: 69f5cdde1f97fcd8419f1668f2b52496 darcs-hash:20130107201936-3a55a-0c8cd96190c61399c77c362a533076ee4b28513b.gz
This commit is contained in:
parent
9c0bd6214c
commit
a9b4bac51c
3 changed files with 887 additions and 0 deletions
76
gestion/gen_confs/pxeboot/config
Executable file
76
gestion/gen_confs/pxeboot/config
Executable file
|
@ -0,0 +1,76 @@
|
|||
#!/bin/bash -e
|
||||
#
|
||||
# pxeboot.sh: création d'un répertoire TFTP de boot par PXE
|
||||
# Copyright (C) 2008, Nicolas Dandrimont <Nicolas.Dandrimont@crans.org>
|
||||
#
|
||||
# Utilisation : pxeboot.sh IP_SRV_TFTP
|
||||
|
||||
# Définitions communes
|
||||
TFTPROOT="/var/lib/tftpboot"
|
||||
KSROOT="/var/www/pxe"
|
||||
SKELETON="$TFTPROOT-base"
|
||||
TMPDIR="/var/tmp/build-netboot"
|
||||
ISODIR="/var/lib/tftpboot-g"
|
||||
[[ $1 == "" ]] && echo "Il faut spécifier l'IP" && exit 1
|
||||
OWN_IP="$1"
|
||||
/etc/init.d/nfs-kernel-server stop
|
||||
umount /var/lib/tftpboot/livecd/ubuntu/* || true;
|
||||
|
||||
# Définitions spécifiques au Sys Rescue CD
|
||||
SYSRCCD_ARCHS=""
|
||||
SYSRCCD_FTP="http://ftp.crans.org/pub/distributions/linux/systemrescuecd"
|
||||
|
||||
# Définitions spécifiques à Debian
|
||||
DEBIAN_DISTS="squeeze wheezy"
|
||||
DEBIAN_ARCHS="i386 amd64"
|
||||
DEBIAN_FTP="ftp://ftp.crans.org/debian/dists"
|
||||
|
||||
#Image debian custom avec plus de drivers : http://kmuto.jp/debian/d-i/
|
||||
DEBIAN_BACKPORT_DISTS="squeeze"
|
||||
DEBIAN_BACKPORT_ARCHS="i386 amd64"
|
||||
DEBIAN_BACKPORT_FTP="ftp://cdimage.debian.org/cdimage/unofficial/backports/"
|
||||
|
||||
# Définitions spécifiques à Ubuntu
|
||||
UBUNTU_DISTS="natty oneiric precise quantal"
|
||||
UBUNTU_ARCHS="i386 amd64"
|
||||
UBUNTU_FTP="ftp://ftp.crans.org/ubuntu/dists"
|
||||
|
||||
UBUNTU_LIVE="11.10 12.04 12.10"
|
||||
# il faut modifier le nfs et mettre les images dans $ISODIR/ubuntu/
|
||||
# puis les monter et partager dans $TFTPROOT/livecd/ubuntu/$dist-$arch
|
||||
UBUNTU_LIVE_TYPE="ubuntu xubuntu kubuntu"
|
||||
UBUNTU_LIVE_ARCHS="i386 amd64"
|
||||
|
||||
# Définitions spécifiques à Mandriva
|
||||
MANDRIVA_DISTS=""
|
||||
MANDRIVA_ARCHS="i586 x86_64"
|
||||
MANDRIVA_FTP="ftp://ftp.free.fr/mirrors/ftp.mandriva.com/MandrivaLinux/official"
|
||||
|
||||
# Définitions spécifiques à CentOS
|
||||
CENTOS_DISTS="6.3"
|
||||
CENTOS_ARCHS="i386 x86_64"
|
||||
CENTOS_FTP="ftp://mirror.in2p3.fr/pub/linux/CentOS"
|
||||
|
||||
# Définitions spécifiques à Fedora
|
||||
FEDORA_DISTS="15 16 17"
|
||||
FEDORA_ARCHS="i386 x86_64"
|
||||
FEDORA_FTP="ftp://ftp.free.fr/mirrors/fedora.redhat.com/fedora/linux/"
|
||||
|
||||
OPENSUSE_DISTS="11.4 12.1 12.2"
|
||||
OPENSUSE_ARCHS="i386 x86_64"
|
||||
OPENSUSE_FTP="ftp://ftp.free.fr/mirrors/ftp.opensuse.org/opensuse/distribution/"
|
||||
|
||||
# Définitions spécifiques à FreeBSD
|
||||
FREEBSD_DISTS=""
|
||||
FREEBSD_ARCHS="i386 amd64"
|
||||
FREEBSD_FTP="ftp://ftp.fr.freebsd.org/pub/FreeBSD/"
|
||||
|
||||
# Définition spécifiques à NetBSD
|
||||
#~ NETBSD_DIST="5.1 6.0"
|
||||
#~ NETBSD_ARCHS="i386 amd64"
|
||||
#~ NETBSD_FTP="ftp://iso.fr.netbsd.org/pub/NetBSD"
|
||||
|
||||
# Définitions spécifiques à OpenBSD
|
||||
OPENBSD_DIST=""
|
||||
OPENBSD_ARCHS="i386 amd64"
|
||||
OPENBSD_FTP="ftp://ftp.crans.org/pub/OpenBSD"
|
15
gestion/gen_confs/pxeboot/mount_ubuntu_live
Executable file
15
gestion/gen_confs/pxeboot/mount_ubuntu_live
Executable file
|
@ -0,0 +1,15 @@
|
|||
#!/bin/bash
|
||||
. config
|
||||
|
||||
for type in $UBUNTU_LIVE_TYPE; do
|
||||
for dist in $UBUNTU_LIVE; do
|
||||
for arch in $UBUNTU_LIVE_ARCHS; do
|
||||
if test -e $ISODIR/ubuntu/$type-$dist-desktop-$arch.iso; then
|
||||
mkdir -p $TFTPROOT/livecd/ubuntu/$type-$dist-$arch
|
||||
mount -o loop $ISODIR/ubuntu/$type-$dist-desktop-$arch.iso $TFTPROOT/livecd/ubuntu/$type-$dist-$arch
|
||||
fi
|
||||
done
|
||||
done
|
||||
done
|
||||
/etc/init.d/nfs-kernel-server start
|
||||
|
796
gestion/gen_confs/pxeboot/pxeboot
Executable file
796
gestion/gen_confs/pxeboot/pxeboot
Executable file
|
@ -0,0 +1,796 @@
|
|||
#!/bin/bash -e
|
||||
#
|
||||
# pxeboot.sh: création d'un répertoire TFTP de boot par PXE
|
||||
# Copyright (C) 2008, Nicolas Dandrimont <Nicolas.Dandrimont@crans.org>
|
||||
#
|
||||
# Utilisation : pxeboot.sh IP_SRV_TFTP
|
||||
|
||||
# Définitions communes
|
||||
|
||||
. config
|
||||
|
||||
rm -rf $TFTPROOT || exit 1
|
||||
|
||||
####################################
|
||||
# Vérifications
|
||||
####################################
|
||||
for type in $UBUNTU_LIVE_TYPE; do
|
||||
for dist in $UBUNTU_LIVE; do
|
||||
for arch in $UBUNTU_LIVE_ARCHS; do
|
||||
if ! test -e $ISODIR/ubuntu/$type-$dist-desktop-$arch.iso
|
||||
then echo "$ISODIR/ubuntu/$type-$dist-desktop-$arch.iso n'existe pas" && sleep 3;
|
||||
fi
|
||||
done
|
||||
done
|
||||
done
|
||||
|
||||
mkdir -vp $TMPDIR
|
||||
#mkdir -vp $TFTPROOT
|
||||
#mkdir -vp $TFTPROOT/boot-screens
|
||||
#mkdir -vp $TFTPROOT/pxelinux.cfg
|
||||
#
|
||||
##############################################
|
||||
#cp $SKELETON/pxelinux.0 $TFTPROOT/
|
||||
cp -ra $SKELETON $TFTPROOT
|
||||
#On redémarre de tftp
|
||||
/etc/init.d/tftpd-hpa restart
|
||||
##############################################
|
||||
|
||||
|
||||
cat > $TFTPROOT/pxelinux.cfg/default << EOF
|
||||
include /boot-screens/menu.cfg
|
||||
default /boot-screens/vesamenu.c32
|
||||
prompt 0
|
||||
timeout 0
|
||||
EOF
|
||||
|
||||
cat > $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu hshift 20
|
||||
menu width 49
|
||||
|
||||
menu title Install-Party Cr@ns
|
||||
menu background boot-screens/splash.png
|
||||
menu vshift 18
|
||||
menu rows 5
|
||||
menu tabmsgrow 16
|
||||
menu timeoutrow 17
|
||||
menu tabmsg Press ENTER to boot or TAB to edit a menu entry
|
||||
menu autoboot Starting Local System in # seconds
|
||||
|
||||
prompt 0
|
||||
|
||||
|
||||
label bootlocal
|
||||
menu label ^Boot from local disk
|
||||
menu default
|
||||
localboot 0
|
||||
timeout 200 #timeout which is displayed, Wait 10 seconds unless the user types somethin
|
||||
totaltimeout 1200 #timeout which executes the default definitely, always boot after 2 minutes
|
||||
|
||||
EOF
|
||||
|
||||
###########################
|
||||
# sysrescuecd #
|
||||
###########################
|
||||
for arch in $SYSRCCD_ARCHS; do
|
||||
mkdir -p $TFTPROOT/sysrescuecd/$arch/
|
||||
wget -c $SYSRCCD_FTP/image/isolinux/initram.igz -O $TFTPROOT/sysrescuecd/$arch/initram.igz
|
||||
wget -c $SYSRCCD_FTP/image/isolinux/rescue`echo $arch | sed -n 's/amd64/64/p'` -O $TFTPROOT/sysrescuecd/$arch/rescue
|
||||
done
|
||||
|
||||
if [[ $SYSRCCD_ARCHS != "" ]]; then
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin sysrescuecd
|
||||
menu title Sysrescue Cd
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
|
||||
for arch in $SYSRCCD_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
label Sysrescuecd $arch
|
||||
kernel sysrescuecd/$arch/rescue
|
||||
append initrd=sysrescuecd/$arch/initram.igz dodhcp setkmap=fr boothttp=$SYSRCCD_HTTP/image/sysrcd.dat --
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
fi
|
||||
###########################
|
||||
# Fin sysrescuecd #
|
||||
###########################
|
||||
|
||||
|
||||
###########################
|
||||
# DEBIAN #
|
||||
###########################
|
||||
|
||||
for dist in $DEBIAN_DISTS; do
|
||||
for arch in $DEBIAN_ARCHS; do
|
||||
wget -c $DEBIAN_FTP/$dist/main/installer-$arch/current/images/netboot/netboot.tar.gz -O $TMPDIR/netboot-debian-$dist-$arch.tar.gz
|
||||
mkdir -p $TMPDIR/netboot-debian-$dist-$arch/
|
||||
tar zxf $TMPDIR/netboot-debian-$dist-$arch.tar.gz -C $TMPDIR/netboot-debian-$dist-$arch/
|
||||
mkdir -p $TFTPROOT/debian-$dist/$arch
|
||||
cp $TMPDIR/netboot-debian-$dist-$arch/debian-installer/$arch/initrd.gz $TFTPROOT/debian-$dist/$arch
|
||||
cp $TMPDIR/netboot-debian-$dist-$arch/debian-installer/$arch/linux $TFTPROOT/debian-$dist/$arch
|
||||
#~ wget -c $DEBIAN_FTP/$dist/main/installer-$arch/current/images/netboot/gtk/netboot.tar.gz -O $TMPDIR/netboot-debian-gtk-$dist-$arch.tar.gz
|
||||
#~ mkdir -p $TMPDIR/netboot-debian-gtk-$dist-$arch/
|
||||
#~ tar zxf $TMPDIR/netboot-debian-gtk-$dist-$arch.tar.gz -C $TMPDIR/netboot-debian-gtk-$dist-$arch/
|
||||
#~ mkdir -p $TFTPROOT/debian-gtk-$dist/$arch
|
||||
#~ cp $TMPDIR/netboot-debian-gtk-$dist-$arch/debian-installer/$arch/initrd.gz $TFTPROOT/debian-gtk-$dist/$arch
|
||||
#~ cp $TMPDIR/netboot-debian-gtk-$dist-$arch/debian-installer/$arch/linux $TFTPROOT/debian-gtk-$dist/$arch
|
||||
wget -c $DEBIAN_FTP/$dist/main/installer-kfreebsd-$arch/current/images/netboot/netboot.tar.gz -O $TMPDIR/netboot-debian-kfreebsd-$dist-$arch.tar.gz
|
||||
mkdir -p $TMPDIR/netboot-debian-$dist-kfreebsd-$arch/
|
||||
tar zxf $TMPDIR/netboot-debian-kfreebsd-$dist-$arch.tar.gz -C $TMPDIR/netboot-debian-$dist-kfreebsd-$arch/
|
||||
mkdir -p $TFTPROOT/debian-$dist/kfreebsd-$arch/
|
||||
cp -r $TMPDIR/netboot-debian-$dist-kfreebsd-$arch/* $TFTPROOT/debian-$dist/kfreebsd-$arch/
|
||||
done
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin debian
|
||||
menu title Debian
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
|
||||
for dist in $DEBIAN_DISTS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin debian-$dist
|
||||
menu title Debian $dist
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
for arch in $DEBIAN_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin debian-$dist-$arch
|
||||
menu title Debian $dist $arch
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
DEFAULT install
|
||||
LABEL install
|
||||
kernel debian-$dist/$arch/linux
|
||||
append vga=normal initrd=debian-$dist/$arch/initrd.gz --
|
||||
LABEL expert
|
||||
kernel debian-$dist/$arch/linux
|
||||
append priority=low vga=normal initrd=debian-$dist/$arch/initrd.gz --
|
||||
LABEL rescue
|
||||
kernel debian-$dist/$arch/linux
|
||||
append vga=normal initrd=debian-$dist/$arch/initrd.gz rescue/enable=true --
|
||||
LABEL auto
|
||||
kernel debian-$dist/$arch/linux
|
||||
append auto=true priority=critical vga=normal initrd=debian-$dist/$arch/initrd.gz --
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
for arch in $DEBIAN_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg <<EOF
|
||||
LABEL Debian $dist kfreebsd-$arch
|
||||
kernel debian-$dist/kfreebsd-$arch/grub2pxe
|
||||
EOF
|
||||
done
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
|
||||
EOF
|
||||
#~ cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
#~ menu begin debian-gtk-$dist
|
||||
#~ menu title Debian GTK $dist
|
||||
#~ label mainmenu
|
||||
#~ menu label ^Back..
|
||||
#~ menu exit
|
||||
#~ EOF
|
||||
#~ for arch in $DEBIAN_ARCHS; do
|
||||
#~ cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
#~ menu begin debian-gtk-$dist-$arch
|
||||
#~ menu title Debian GTK $dist $arch
|
||||
#~ label mainmenu
|
||||
#~ menu label ^Back..
|
||||
#~ menu exit
|
||||
#~ DEFAULT install
|
||||
#~ LABEL install
|
||||
#~ kernel debian-gtk-$dist/$arch/linux
|
||||
#~ append vga=normal initrd=debian-gtk-$dist/$arch/initrd.gz --
|
||||
#~ LABEL expert
|
||||
#~ kernel debian-gtk-$dist/$arch/linux
|
||||
#~ append priority=low vga=normal initrd=debian-gtk-$dist/$arch/initrd.gz --
|
||||
#~ LABEL rescue
|
||||
#~ kernel debian-gtk-$dist/$arch/linux
|
||||
#~ append vga=normal initrd=debian-gtk-$dist/$arch/initrd.gz rescue/enable=true --
|
||||
#~ LABEL auto
|
||||
#~ kernel debian-gtk-$dist/$arch/linux
|
||||
#~ append auto=true priority=critical vga=normal initrd=debian-gtk-$dist/$arch/initrd.gz --
|
||||
#~ menu end
|
||||
#~ EOF
|
||||
#~ done
|
||||
#~ cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
#~ menu end
|
||||
|
||||
#~ EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
###########################
|
||||
# fin DEBIAN #
|
||||
###########################
|
||||
|
||||
|
||||
###########################
|
||||
# DEBIAN BACKPORT #
|
||||
###########################
|
||||
|
||||
#rm -r $TMPDIR/netboot-debian-backport-* || true;
|
||||
for dist in $DEBIAN_BACKPORT_DISTS; do
|
||||
for arch in $DEBIAN_BACKPORT_ARCHS; do
|
||||
url=`wget $DEBIAN_BACKPORT_FTP/$dist/ -O- | grep netboot | grep $arch | sort | tail -n 1 | sed 's/">/ /g;s/href="//;s@</a>@@' | awk '{print $6}'`
|
||||
wget -c $url -O $TMPDIR/netboot-debian-backport-$dist-$arch.tar.gz
|
||||
mkdir -p $TMPDIR/netboot-debian-backport-$dist-$arch/
|
||||
tar zxf $TMPDIR/netboot-debian-backport-$dist-$arch.tar.gz -C $TMPDIR/netboot-debian-backport-$dist-$arch/
|
||||
mkdir -p $TFTPROOT/debian-backport-$dist/$arch
|
||||
cp $TMPDIR/netboot-debian-backport-$dist-$arch/debian-installer/$arch/initrd.gz $TFTPROOT/debian-backport-$dist/$arch
|
||||
cp $TMPDIR/netboot-debian-backport-$dist-$arch/debian-installer/$arch/linux $TFTPROOT/debian-backport-$dist/$arch
|
||||
done
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin debian-backport
|
||||
menu title Debian Backport
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
|
||||
for dist in $DEBIAN_BACKPORT_DISTS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin debian-backport-$dist
|
||||
menu title Debian Backport $dist
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
for arch in $DEBIAN_BACKPORT_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin debian-backport-$dist-$arch
|
||||
menu $arch
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
DEFAULT install
|
||||
LABEL install
|
||||
kernel debian-backport-$dist/$arch/linux
|
||||
append vga=normal initrd=debian-backport-$dist/$arch/initrd.gz --
|
||||
LABEL expert
|
||||
kernel debian-backport-$dist/$arch/linux
|
||||
append priority=low vga=normal initrd=debian-backport-$dist/$arch/initrd.gz --
|
||||
LABEL rescue
|
||||
kernel debian-backport-$dist/$arch/linux
|
||||
append vga=normal initrd=debian-backport-$dist/$arch/initrd.gz rescue/enable=true --
|
||||
LABEL auto
|
||||
kernel debian-backport-$dist/$arch/linux
|
||||
append auto=true priority=critical vga=normal initrd=debian-backport-$dist/$arch/initrd.gz --
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
|
||||
EOF
|
||||
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
###########################
|
||||
# fin DEBIAN BACKPORT #
|
||||
###########################
|
||||
|
||||
###########################
|
||||
# UBUNTU #
|
||||
###########################
|
||||
|
||||
for dist in $UBUNTU_DISTS; do
|
||||
for arch in $UBUNTU_ARCHS; do
|
||||
wget -c $UBUNTU_FTP/$dist/main/installer-$arch/current/images/netboot/netboot.tar.gz -O $TMPDIR/netboot-ubuntu-$dist-$arch.tar.gz
|
||||
mkdir -p $TMPDIR/netboot-ubuntu-$dist-$arch/
|
||||
tar zxf $TMPDIR/netboot-ubuntu-$dist-$arch.tar.gz -C $TMPDIR/netboot-ubuntu-$dist-$arch/
|
||||
mkdir -p $TFTPROOT/ubuntu-$dist/$arch
|
||||
cp $TMPDIR/netboot-ubuntu-$dist-$arch/ubuntu-installer/$arch/initrd.gz $TFTPROOT/ubuntu-$dist/$arch
|
||||
cp $TMPDIR/netboot-ubuntu-$dist-$arch/ubuntu-installer/$arch/linux $TFTPROOT/ubuntu-$dist/$arch
|
||||
done
|
||||
done
|
||||
|
||||
for type in $UBUNTU_LIVE_TYPE; do
|
||||
for dist in $UBUNTU_LIVE; do
|
||||
for arch in $UBUNTU_LIVE_ARCHS; do
|
||||
if test -e $ISODIR/ubuntu/$type-$dist-desktop-$arch.iso; then
|
||||
mkdir -p $TFTPROOT/livecd/ubuntu/$type-$dist-$arch
|
||||
mount -o loop $ISODIR/ubuntu/$type-$dist-desktop-$arch.iso $TFTPROOT/livecd/ubuntu/$type-$dist-$arch
|
||||
fi
|
||||
done
|
||||
done
|
||||
done
|
||||
/etc/init.d/nfs-kernel-server start
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin ubuntu-livecd
|
||||
menu title Ubuntu LiveCd
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
for type in $UBUNTU_LIVE_TYPE; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin ubuntu-livecd-$type
|
||||
menu title $type
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
for dist in $UBUNTU_LIVE; do
|
||||
for arch in $UBUNTU_LIVE_ARCHS; do
|
||||
if test -e $ISODIR/ubuntu/$type-$dist-desktop-$arch.iso; then
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
LABEL $type Livecd $dist $arch
|
||||
KERNEL /livecd/ubuntu/$type-$dist-$arch/casper/vmlinuz
|
||||
APPEND root=/dev/nfs boot=casper netboot=nfs nfsroot=$OWN_IP:$TFTPROOT/livecd/ubuntu/$type-$dist-$arch initrd=livecd/ubuntu/$type-$dist-$arch/casper/initrd.lz --
|
||||
|
||||
EOF
|
||||
fi
|
||||
done
|
||||
done
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin ubuntu
|
||||
menu title Ubuntu
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
|
||||
for dist in $UBUNTU_DISTS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin ubuntu-$dist
|
||||
menu title Ubuntu $dist
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
for arch in $UBUNTU_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin ubuntu-$dist-$arch
|
||||
menu title Ubuntu $dist $arch
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
DEFAULT install
|
||||
LABEL install
|
||||
kernel ubuntu-$dist/$arch/linux
|
||||
append vga=normal initrd=ubuntu-$dist/$arch/initrd.gz --
|
||||
LABEL expert
|
||||
kernel ubuntu-$dist/$arch/linux
|
||||
append priority=low vga=normal initrd=ubuntu-$dist/$arch/initrd.gz --
|
||||
LABEL rescue
|
||||
kernel ubuntu-$dist/$arch/linux
|
||||
append vga=normal initrd=ubuntu-$dist/$arch/initrd.gz rescue/enable=true --
|
||||
LABEL auto
|
||||
kernel ubuntu-$dist/$arch/linux
|
||||
append auto=true priority=critical vga=normal initrd=ubuntu-$dist/$arch/initrd.gz --
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
###########################
|
||||
# fin UBUNTU #
|
||||
###########################
|
||||
|
||||
###########################
|
||||
# Mandriva #
|
||||
###########################
|
||||
|
||||
if [[ $MANDRIVA_DISTS != "" ]]; then
|
||||
for dist in $MANDRIVA_DISTS; do
|
||||
for arch in $MANDRIVA_ARCHS; do
|
||||
mkdir -p $TFTPROOT/mandriva-$dist/$arch/
|
||||
wget -c $MANDRIVA_FTP/$dist/$arch/isolinux/alt0/all.rdz -O $TFTPROOT/mandriva-$dist/$arch/initrd.img
|
||||
wget -c $MANDRIVA_FTP/$dist/$arch/isolinux/alt0/vmlinuz -O $TFTPROOT/mandriva-$dist/$arch/vmlinuz
|
||||
done
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin mandriva
|
||||
menu title Mandriva
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
|
||||
for dist in $MANDRIVA_DISTS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin mandriva-$dist
|
||||
menu title Mandriva $dist
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
|
||||
EOF
|
||||
|
||||
for arch in $MANDRIVA_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin mandriva-$dist-$arch
|
||||
menu title Mandriva $dist $arch
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
label install
|
||||
menu label ^Install
|
||||
kernel mandriva-$dist/$arch/vmlinuz
|
||||
append initrd=mandriva-$dist/$arch/initrd.img ks=http://$OWN_IP/pxe/ks.mandriva-$dist-$arch.cfg ramdisk_size=8192
|
||||
menu end
|
||||
EOF
|
||||
cat > $KSROOT/ks.mandriva-$dist-$arch.cfg << EOF
|
||||
install
|
||||
url --url $MANDRIVA_FTP/$dist/$arch/
|
||||
keyboard fr-latin1
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
|
||||
fi
|
||||
###########################
|
||||
# fin Mandriva #
|
||||
###########################
|
||||
|
||||
###########################
|
||||
# CentOS #
|
||||
###########################
|
||||
|
||||
for dist in $CENTOS_DISTS; do
|
||||
for arch in $CENTOS_ARCHS; do
|
||||
mkdir -p $TMPDIR/centos-$dist/$arch/
|
||||
wget -c $CENTOS_FTP/$dist/os/$arch/images/pxeboot/initrd.img -O $TMPDIR/centos-$dist/$arch/initrd.img
|
||||
wget -c $CENTOS_FTP/$dist/os/$arch/images/pxeboot/vmlinuz -O $TMPDIR/centos-$dist/$arch/vmlinuz
|
||||
done
|
||||
done
|
||||
cp -r $TMPDIR/centos-* $TFTPROOT/
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin centos
|
||||
menu title CentOS
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
|
||||
for dist in $CENTOS_DISTS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin centos-$dist
|
||||
menu title CentOS $dist
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
|
||||
EOF
|
||||
|
||||
for arch in $CENTOS_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin centos-$dist-$arch
|
||||
menu title CentOS $dist $arch
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
label install
|
||||
menu label ^Install
|
||||
kernel centos-$dist/$arch/vmlinuz
|
||||
append ksdevice=eth0 console=tty0 initrd=centos-$dist/$arch/initrd.img ks=http://$OWN_IP/pxe/ks.centos-$dist-$arch.cfg ramdisk_size=8192
|
||||
menu end
|
||||
EOF
|
||||
cat > $KSROOT/ks.centos-$dist-$arch.cfg << EOF
|
||||
install
|
||||
url --url $CENTOS_FTP/$dist/os/$arch/
|
||||
lang en_US.UTF-8
|
||||
langsupport --default en_US.UTF-8 en_US.UTF-8 fr_FR.UTF-8
|
||||
keyboard fr-latin1
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
###########################
|
||||
# fin CentOS #
|
||||
###########################
|
||||
|
||||
###########################
|
||||
# Fedora #
|
||||
###########################
|
||||
|
||||
for dist in $FEDORA_DISTS; do
|
||||
for arch in $FEDORA_ARCHS; do
|
||||
mkdir -p $TMPDIR/fedora-$dist/$arch/
|
||||
wget -c $FEDORA_FTP/releases/$dist/Fedora/$arch/os/images/pxeboot/initrd.img -O $TMPDIR/fedora-$dist/$arch/initrd.img ||\
|
||||
wget -c $FEDORA_FTP/development/$dist/$arch/os/images/pxeboot/initrd.img -O $TMPDIR/fedora-$dist/$arch/initrd.img
|
||||
wget -c $FEDORA_FTP/releases/$dist/Fedora/$arch/os/images/pxeboot/vmlinuz -O $TMPDIR/fedora-$dist/$arch/vmlinuz ||\
|
||||
wget -c $FEDORA_FTP/development/$dist/$arch/os/images/pxeboot/vmlinuz -O $TMPDIR/fedora-$dist/$arch/vmlinuz
|
||||
done
|
||||
done
|
||||
cp -r $TMPDIR/fedora-* $TFTPROOT/
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin fedora
|
||||
menu title Fedora
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
|
||||
for dist in $FEDORA_DISTS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin fedora-$dist
|
||||
menu title Fedora $dist
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
|
||||
EOF
|
||||
|
||||
for arch in $FEDORA_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin fedora-$dist-$arch
|
||||
menu title Fedora $dist $arch
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
label install
|
||||
menu label ^Install
|
||||
kernel fedora-$dist/$arch/vmlinuz
|
||||
append initrd=fedora-$dist/$arch/initrd.img repo=$FEDORA_FTP/releases/$dist/Fedora/$arch/os/
|
||||
menu end
|
||||
EOF
|
||||
#~ cat > $KSROOT/ks.fedora-$dist-$arch.cfg << EOF
|
||||
#~ install
|
||||
#~ url --url $FEDORA_FTP/releases/$dist/Fedora/$arch/os/
|
||||
#~ EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
###########################
|
||||
# Fin Fedora #
|
||||
###########################
|
||||
|
||||
###########################
|
||||
# openSUSE #
|
||||
###########################
|
||||
for dist in $OPENSUSE_DISTS; do
|
||||
mkdir -p $TMPDIR/opensuse-$dist/$arch/
|
||||
wget $OPENSUSE_FTP/$dist/repo/oss/boot/$arch/loader/linux -O $TMPDIR/opensuse-$dist/$arch/linux
|
||||
wget $OPENSUSE_FTP/$dist/repo/oss/boot/$arch/loader/initrd -O $TMPDIR/opensuse-$dist/$arch/initrd
|
||||
done
|
||||
cp -r $TMPDIR/opensuse-* $TFTPROOT/
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin opensuse
|
||||
menu title Opensuse
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
|
||||
for dist in $OPENSUSE_DISTS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin opensuse-$dist
|
||||
menu title openSUSE $dist
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
for arch in $OPENSUSE_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin opensuse-$dist-$arch
|
||||
menu title Opensuse $dist $arch
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
label install
|
||||
menu label ^Install
|
||||
kernel opensuse-$dist/$arch/linux
|
||||
append initrd=opensuse-$dist/$arch/initrd splash=silent vga=0x314 showopts install=http://download.opensuse.org/factory/repo/oss/ --
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
|
||||
EOF
|
||||
|
||||
###########################
|
||||
# Fin openSUSE #
|
||||
###########################
|
||||
|
||||
###########################
|
||||
# FreeBSD #
|
||||
###########################
|
||||
if [[ $FREEBSD_DISTS != "" ]]; then
|
||||
for dist in $FREEBSD_DISTS; do
|
||||
for arch in $FREEBSD_ARCHS; do
|
||||
mkdir -p $TMPDIR/freebsd-$dist/$arch/
|
||||
wget -c $FREEBSD_FTP/releases/$arch/ISO-IMAGES/$dist/FreeBSD-$dist-RELEASE-$arch-bootonly.iso -O $TMPDIR/freebsd-$dist/$arch/bootonly.iso
|
||||
done
|
||||
done
|
||||
cp -r $TMPDIR/freebsd-* $TFTPROOT/
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin freebsd
|
||||
menu title FreeBSD
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
|
||||
for dist in $FREEBSD_DISTS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin freebsd-$dist
|
||||
menu title FreeBSD $dist
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
|
||||
EOF
|
||||
|
||||
for arch in $FREEBSD_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin freebsd-$dist-$arch
|
||||
menu title FreeBSD $dist $arch
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
label install
|
||||
menu label ^Install
|
||||
linux memdisk
|
||||
initrd freebsd-$dist/$arch/bootonly.iso
|
||||
append iso
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
fi
|
||||
###########################
|
||||
# Fin FreeBSD #
|
||||
###########################
|
||||
|
||||
###########################
|
||||
# NetBSD #
|
||||
###########################
|
||||
# Le fichier de boot est le même pour les deux architectures
|
||||
# On prend toujours le plus récent
|
||||
#~ mkdir -p $TFTPROOT/netbsd/
|
||||
#~ dist=4.0.1
|
||||
#~ wget -c $NETBSD_FTP/NetBSD-$dist/amd64/installation/misc/pxeboot_ia32.bin -O $TFTPROOT/netbsd/pxeboot_ia32.bin
|
||||
|
||||
# Hack moche : la version 5.0.1 ne supporte pas le netboot (le kernel freeze)
|
||||
#for dist in $NETBSD_DISTS; do
|
||||
#~ for arch in $NETBSD_ARCHS; do
|
||||
#~ wget -c $NETBSD_FTP/NetBSD-$dist/$arch/binary/kernel/netbsd-INSTALL.gz -O $TFTPROOT/netbsd/netbsd-$dist-$arch.gz
|
||||
#~ done
|
||||
#done
|
||||
|
||||
#~ cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
#~ label NetBSD
|
||||
#~ kernel netbsd/pxeboot_ia32.bin
|
||||
|
||||
#~ EOF
|
||||
###########################
|
||||
# Fin NetBSD #
|
||||
###########################
|
||||
|
||||
###########################
|
||||
# OpenBSD #
|
||||
###########################
|
||||
if [[ $OPENBSD_DIST != "" ]]; then
|
||||
mkdir -p $TMPDIR/openbsd
|
||||
for dist in $OPENBSD_DIST; do
|
||||
for arch in $OPENBSD_ARCHS; do
|
||||
# On ne garde que le dernier fichier de boot
|
||||
wget -c $OPENBSD_FTP/$dist/$arch/pxeboot -O $TMPDIR/openbsd/openbsd.$arch.0
|
||||
wget -c $OPENBSD_FTP/$dist/$arch/bsd.rd -O $TMPDIR/openbsd/bsd.rd-$dist.$arch
|
||||
done
|
||||
done
|
||||
cp -r $TMPDIR/openbsd/ $TFTPROOT/
|
||||
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu begin openbsd
|
||||
menu title OpenBSD
|
||||
label mainmenu
|
||||
menu label ^Back..
|
||||
menu exit
|
||||
EOF
|
||||
for arch in $OPENBSD_ARCHS; do
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
label OpenBSD $arch
|
||||
kernel openbsd/pxeboot.$arch.0
|
||||
EOF
|
||||
cat >> $TFTPROOT/boot-screens/menu.cfg << EOF
|
||||
menu end
|
||||
EOF
|
||||
done
|
||||
fi
|
||||
###########################
|
||||
# Fin OpenBSD #
|
||||
###########################
|
||||
|
||||
|
||||
|
||||
echo "Fini"
|
Loading…
Add table
Add a link
Reference in a new issue