Current setting:
Terminal/NFS/DNS/DHCP server IP: 192.168.1.2
Router IP: 192.168.1.1
Kernel: 2.6.31-21-generic
Instructions:
A. Server side:
Blue item: Replace with your setting
Red item: Follow
# sudo apt-get install dhcp3-server tftpd-hpa syslinux nfs-kernel-server initramfs-tools
# sudo vi /etc/dhcp3/dhcpd.conf
allow booting;
allow bootp;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.2.15;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.2;
filename "/pxelinux.0";
}
# sudo /etc/init.d/dhcpd3 start
# sudo vi /etc/default/tftpd-hpa
9.10:
RUN_DAEMON="yes"
OPTIONS="-l -s /tftpboot"
10.04:
TFTP_DIRECTORY="/tftpboot"
TFTP_OPTIONS="--listen --secure"
# sudo mkdir -p /tftpboot/pxelinux.cfg
# sudo cp /usr/lib/syslinux/pxelinux.0 /tftpboot
# sudo vi /tftpboot/pxelinux.cfg/default
LABEL linux
KERNEL vmlinuz-2.6.31-21-generic
APPEND root=/dev/nfs initrd=initrd.img-2.6.31-21-generic nfsroot=192.168.1.2:/nfsroot ip=dhcp rw
# sudo chmod -R 777 /tftpboot
# sudo /etc/init.d/tftpd-hpa start
# sudo mkdir /nfsroot
# sudo vi /etc/exports
/nfsroot 192.168.1.*(rw,no_root_squash,async)
# sudo exportfs -rv
# sudo cp /boot/vmlinuz-`uname -r` ~
# sudo vi /etc/initramfs-tools/initramfs.conf
BOOT=nfs
MODULES=netboot
NFSROOT=192.168.1.2:/nfsroot
# sudo mkinitramfs -o ~/initrd.img-`uname -r`
# sudo cp -axv /. /nfsroot/.
# for x in usr var home lib dev opt selinux mnt srv; do sudo mkdir /nfsroot/$x ; sudo cp -axv /$x/. /nfsroot/$x/. ; done
# sudo cp /nfsroot/home/`whoami`/*-`uname -r` /tftpboot/
# sudo vi /nfsroot/etc/network/interfaces
#auto eth0
iface eth0 inet manual
#sudo vi /nfsroot/etc/fstab
proc /proc proc defaults 0 0
/dev/nfs / nfs defaults 1 1
none /tmp tmpfs defaults 0 0
none /var/run tmpfs defaults 0 0
none /var/lock tmpfs defaults 0 0
none /var/tmp tmpfs defaults 0 0
# sudo vi /nfsroot/etc/dhcp3/dhcpd.conf
delete these lines:
allow booting;
allow bootp;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.2.15;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.2;
filename "/pxelinux.0";
}
# sudo vi /nfsroot/etc/exports
delete these line:
/nfsroot 192.168.1.*(rw,no_root_squash,async)
B. Client side:
1. Boot from LAN (PXE Boot)
2. To add swap later on:
# sudo apt-get install dphys-swapfile
# sudo losetup /dev/loop0 /var/swap
# sudo swapon /dev/loop0
Terminal/NFS/DNS/DHCP server IP: 192.168.1.2
Router IP: 192.168.1.1
Kernel: 2.6.31-21-generic
Instructions:
A. Server side:
Blue item: Replace with your setting
Red item: Follow
# sudo apt-get install dhcp3-server tftpd-hpa syslinux nfs-kernel-server initramfs-tools
# sudo vi /etc/dhcp3/dhcpd.conf
allow booting;
allow bootp;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.2.15;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.2;
filename "/pxelinux.0";
}
# sudo /etc/init.d/dhcpd3 start
# sudo vi /etc/default/tftpd-hpa
9.10:
RUN_DAEMON="yes"
OPTIONS="-l -s /tftpboot"
10.04:
TFTP_DIRECTORY="/tftpboot"
TFTP_OPTIONS="--listen --secure"
# sudo mkdir -p /tftpboot/pxelinux.cfg
# sudo cp /usr/lib/syslinux/pxelinux.0 /tftpboot
# sudo vi /tftpboot/pxelinux.cfg/default
LABEL linux
KERNEL vmlinuz-2.6.31-21-generic
APPEND root=/dev/nfs initrd=initrd.img-2.6.31-21-generic nfsroot=192.168.1.2:/nfsroot ip=dhcp rw
# sudo chmod -R 777 /tftpboot
# sudo /etc/init.d/tftpd-hpa start
# sudo mkdir /nfsroot
# sudo vi /etc/exports
/nfsroot 192.168.1.*(rw,no_root_squash,async)
# sudo exportfs -rv
# sudo cp /boot/vmlinuz-`uname -r` ~
# sudo vi /etc/initramfs-tools/initramfs.conf
BOOT=nfs
MODULES=netboot
NFSROOT=192.168.1.2:/nfsroot
# sudo mkinitramfs -o ~/initrd.img-`uname -r`
# sudo cp -axv /. /nfsroot/.
# for x in usr var home lib dev opt selinux mnt srv; do sudo mkdir /nfsroot/$x ; sudo cp -axv /$x/. /nfsroot/$x/. ; done
# sudo cp /nfsroot/home/`whoami`/*-`uname -r` /tftpboot/
# sudo vi /nfsroot/etc/network/interfaces
#auto eth0
iface eth0 inet manual
#sudo vi /nfsroot/etc/fstab
proc /proc proc defaults 0 0
/dev/nfs / nfs defaults 1 1
none /tmp tmpfs defaults 0 0
none /var/run tmpfs defaults 0 0
none /var/lock tmpfs defaults 0 0
none /var/tmp tmpfs defaults 0 0
# sudo vi /nfsroot/etc/dhcp3/dhcpd.conf
delete these lines:
allow booting;
allow bootp;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.2.15;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.2;
filename "/pxelinux.0";
}
# sudo vi /nfsroot/etc/exports
delete these line:
/nfsroot 192.168.1.*(rw,no_root_squash,async)
B. Client side:
1. Boot from LAN (PXE Boot)
2. To add swap later on:
# sudo apt-get install dphys-swapfile
# sudo losetup /dev/loop0 /var/swap
# sudo swapon /dev/loop0
Note on swap:
1. Swap will be auto 2x of your memory
2. Swap set is not permanent (cleared during re-boot, to set again --> re-run 2 items on the bottom)
1. Swap will be auto 2x of your memory
2. Swap set is not permanent (cleared during re-boot, to set again --> re-run 2 items on the bottom)