Table des matières

NDLR

  1. c'est une doc TRES oriente Debian et dans ce cadre Ubuntu, pour de la net install, elle est en train d'evoluer au file de l'eau (plouf)
  2. C'est une doc sur un procede de boot qui marchait en statique et qu'en meme temps que je la redige, le procede de boot bascule en dynamique (desolé)

Donc oui, cette doc DEVRA etre remaniée.

Objectif

A savoir sur les sequences de boot

La 1er partie du boot s'effectue en DHCP

Extrait de ma conf dhcp

# option definitions common to all supported networks...
option domain-name "in.adlp.org";
###option domain-name-servers dns1.in.adlp.org, dns2.in.adlp.org;
option domain-name-servers 10.0.12.23, 10.1.12.253;
#################################################################
subnet 10.0.11.0 netmask 255.255.255.0 {
  range dynamic-bootp 10.0.11.101 10.0.11.154;
  option routers 10.0.11.254;
  next-server 10.0.11.4;
  if exists user-class {
    if option user-class = "iPXE" {
        filename = concat("http://${next-server}/boot-lan/bootstrap.ipxe?FILENAME=",binary-to-ascii(16, 8, ":", substring (hardware, 1, 6)));
        execute("script");
        }
    if option user-class = "StdiPXE" {
        filename = concat("http://${next-server}/boot-lan/bootstrap.ipxe?FILENAME=",binary-to-ascii(16, 8, ":", substring (hardware, 1, 6)));
        execute("script");
        }
    }
  else {
    filename "undionly.kpxe";
    }
###  if exists user-class and option user-class = "iPXE" { 
###    #filename "http://boot.ipxe.org/demo/boot.php";
###    filename "http://10.0.11.4/boot-lan/bootstrap.ipxe";
###    }
###  else { 
###    next-server 10.0.11.4;
###    filename "undionly.kpxe";
###    }
  }
  1. oui il y a une conditionnelle useless ;) c'est ma conf qui m'a servit a faire des test, et qui curieusement… fonctionne encore ;)
  2. Je surcharge volontairement la couche PXE de l'equipement pour gagner en options (en tentant de ne pas re-surcharger mon iPXE)
  3. oui FILENAME est super mal choisi.. plus tard je retoquerais cela…

Surcharge vers iPXE

Cette couche PXEne connait pas encore le http ⇒ a la racine du serveur tftp de la machine precise dans l'option net-server on pose le fichier undionly.kpxe

Et c'est parti !!!

un apt-proxy

C'est moins lourd part la suite, je considere cela comme etant fait : apt-get install apt-cacher-ng

Apache, On defini 2 arboresences

Le services des kernels

Le service du php

10.0.11.119 - - [04/Nov/2013:17:01:52 +0100] "GET /boot-lan/bootstrap.ipxe?FILENAME=0%3Af%3A6f%3Ae5%3A5%3A1F HTTP/1.1" 200 1115 "-" "iPXE/1.0.0+ (71727)"
10.0.11.119 - - [04/Nov/2013:17:01:52 +0100] "GET /boot-lan/menu.ipxe HTTP/1.1" 200 15000 "-" "iPXE/1.0.0+ (71727)"
10.0.11.119 - - [04/Nov/2013:17:02:16 +0100] "GET /boot-lan/ubuntu-installer/i386/initrd.gz HTTP/1.1" 200 16322567 "-" "iPXE/1.0.0+ (71727)"
10.0.11.119 - - [04/Nov/2013:17:02:18 +0100] "GET /boot-lan/ubuntu-installer/i386/linux HTTP/1.1" 200 5028246 "-" "iPXE/1.0.0+ (71727)"
10.0.11.119 - - [04/Nov/2013:17:02:46 +0100] "GET /boot-lan/preseed/std-lnx-precise.cfg HTTP/1.1" 200 15277 "-" "Wget"

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !index.php
RewriteRule .* index.php?url=$0 [QSA,L]

root@igor:~# git clone git:git.ipxe.org/ipxe.git Cloning into 'ipxe'… remote: Counting objects: 39914, done. remote: Compressing objects: 100% (11118/11118), done. remote: Total 39914 (delta 29782), reused 36824 (delta 27223) Receiving objects: 100% (39914/39914), 9.66 MiB | 151 KiB/s, done. Resolving deltas: 100% (29782/29782), done. root@igor:~# cd ipxe/src root@igor:~/ipxe/src# make bin/undionly.kpxe root@igor:~/ipxe/src/bin# cp undionly.kpxe /opt/boot-lan/tftp/undionly.kpxe