Návody, tipy a triky » Ubuntu 9.10 - instalace ze sítě

Co budeme potřebovat

Router (krabička pro přístup k internetu :-) ): ip adresa: 192.168.1.1 / maska: 255.255.255.0
Server (naše stolní PC např.): 192.168.1.10 (nastavena pevná ip adresa, DHCP server v routeru musí být vypnutý)
Klient (na který budeme instalovat OS ): MAC adresa síťové karty 00:22:09:CF:D1:D2, dostane adresu 192.168.1.100

Příprava klienta:

Stačí si pouze zjistit MAC adresu rozhraní, přes které se bude bootovat, v tomto případě 00:22:09:CF:D1:D2.

Příprava serveru:

Můžeme použít libovolný Ubuntu počítač nebo instalovat Ubuntu do oddílu Windows.

V Ubuntu nainstalujeme bootp server:

 sudo apt-get install bootp openbsd-inetd tftdp-hpa dhcp3-server

V souboru /etc/bootptab přidáme:

client:\
ha="00:00:39:2B:54:B5":\
ip=192.168.1.42:\
gw=192.168.1.1:\
sm=255.255.255.0:\
td=/: hd=/: bf=pxelinux.0
  • ha = mac adresa stroje, na který budeme instalovat OS
  • ip = ip adresa stroje, na který budeme instalovat OS
  • gw = ip adresa routeru
  • sm = maska sítě
  • td = adresář tfptboot serveru, kde jsou umístěnz pxe soubory, relativní k tftpboot rootu
  • hd = cesta k PXE souboru nebo odkaz na něj (v pořádku, tak jak je)
  • bf = bootovací pxe soubor (v pořádku, tak jak je)

Ovládací skript bootp serveru, soubor uložíme jako bootp.run a nastavíme práva pro spuštění:

vDaemon=bootpd
vCd=/var/lib/tftpboot

Start () {
    echo -n "Starting $vDaemon: default current directory is at $vCd ... :"
    /usr/sbin/$vDaemon -d 4 -c $vCd >/tmp/$vDaemon.log 2>/tmp/$vDaemon.err &
    sleep 1
    Status
}

Stop () {
        echo "Stopping $vDaemon ..."
    kill `pidof $vDaemon`
}

Reload () {
    if [ "`pidof $vDaemon`" ] ; then
        echo "Reloading config file for $vDaemon ..."
        kill -HUP "`pidof $vDaemon`"
    fi
    Status
}

Status () {
    vPid="`pidof $vDaemon`"
    if [ "$vPid" ] ; then
        echo "$vDaemon running, pid=$vPid"
    else
        echo "$vDaemon not running"
    fi
}

case "$1" in
    start)      Start ;;
    stop)       Stop ;;
    reload) Reload ;;
    restart) Stop ; sleep 2; Start ;;
    status) Status ;;
    ""|*) echo `basename $0` parameter: start stop status reload or restart ;;
esac

Použití:

 bootp.run start 
bootp.run stop
bootp.run status

Nastavíme tftp server:

V souboru /etc/default/tftpd-hp:

 RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot

Stáhněte instalační image (zde Ubuntu 9.10 i386):

 wget http://archive.ubuntu.com/ubuntu/dists/karmic/main/installer-i386/current/images/netboot/netboot.tar.gz
sudo tar xzvf netboot.tar.gz -C /var/lib/tftpboot/
sudo chown -R nobody:nogroup /var/lib/tftpboot/

Do souboru /etc/dhcp3/dhcpd.conf:

 option domain-name "local.net";
default-lease-time 600;
max-lease-time 7200;

allow booting;
allow bootp;
# The next paragraph needs to be modified to fit your case
subnet 192.168.1.0 netmask 255.255.255.0 {
  range 192.168.1.90 192.168.1.110;
  option broadcast-address 192.168.1.255;
# the gateway address which can be different
# (access to the internet for instance)
  option routers 192.168.1.1;
# indicate the dns you want to use
  option domain-name-servers 192.168.1.1;
}

group {
  next-server 192.168.1.10;
  host tftpclient {
# tftp client hardware address
  hardware ethernet 00:22:09:CF:D1:D2;
  fixed-address 192.168.1.100;
  filename "pxelinux.0";
 }
}

 

V souboru /etc/inetd.conf musí být:

 bootps	dgram   udp	wait	root	/usr/sbin/bootpd	bootpd -i -t 120
tftp dgram   udp   wait    root  /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot

Žádný z těchto řádků nesmí zakomentovaný, ani nesmí chybět.

Restartujeme inted a dhcp:

 sudo /etc/init.d/openbsd-inetd restart
sudo /etc/init.d/dhcp3-server restart

Po restartu by měl klient, po zvolení bootování ze sítě, načíst úvodní instalační obrazovku Ubuntu linuxu 9.10.

Po dokončení instalace můžete instalované balíky v klidu odebrat.

Komentáře

Nebyly nalezeny žádné příspěvky