5
Boot from Network via PXE –IDE– 1. Menggunakan root_fs for i386 dari bahasan sebelumnya agar dapat di boot dari network. 2. root_fs dapat diboot dari network dengan memilih fasilitas Boot From Network pada BIOS. 3. Teknologi yang digunakan adalah PXE (Pre-Execution Environment). –MEMAHAMI PXE– PXE atau biasa dibaca dengan PiXiE adalah ……… bisa didapat di http://en.wikipedia.org/wiki/Preboot_Execution_Environment Pada beberapa BIOS sudah didukung dengan teknologi PXE, namun ada beberapa versi BIOS yang tidak didukung dengan fasilitas Boot from Network. Pada kasus versi BIOS tanpa fasilitas Boot from Network kita memerlukan boot device standard (seperti USB FD, CF, HARD DISK dll) yang sudah di configurasikan untuk dapat Boot dari Network dan Aplikasi yang digunakan adalah gPXE. Untuk boot dari PXE kita memerlukan beberapa aplikasi pendukung, seperti : 1. DHCP 2. TFTP 3. SYSLINUX 4. gPXE –How does it work ?– 1. Dengan fasilitas Boot From Network pada BIOS, system akan mem-broadcast paket lewat protocol DHCP. DHCP server akan memberikan IP Address dan konfigurasi PXE pada system. Pada tahap ini system sudah mempunyai IP Address dan siap untuk proses selanjutnya. 2. System men-download file2 yang diperlukan untuk keperluan booting. File2 tersebut di download via tftp. Pada tahap ini konfigurasi, root_fs dan kernel sudah didownload dari server. 3. System siap untuk boot dengan menggunakan root_fs dan kernel yang sudah didownload. System siap untuk digunakan. Setting BIOS to boot from network.

Boot From Network via PXE

Embed Size (px)

Citation preview

Page 1: Boot From Network via PXE

Boot from Network via PXE

–IDE–

1. Menggunakan root_fs for i386 dari bahasan sebelumnya agar dapat di boot dari network.

2. root_fs dapat diboot dari network dengan memilih fasilitas Boot From Network pada BIOS.

3. Teknologi yang digunakan adalah PXE (Pre-Execution Environment).

–MEMAHAMI PXE–

PXE atau biasa dibaca dengan PiXiE adalah ……… bisa didapat

di http://en.wikipedia.org/wiki/Preboot_Execution_Environment

Pada beberapa BIOS sudah didukung dengan teknologi PXE, namun ada beberapa versi BIOS yang tidak

didukung dengan fasilitas Boot from Network. Pada kasus versi BIOS tanpa fasilitas Boot from Network

kita memerlukan boot device standard (seperti USB FD, CF, HARD DISK dll) yang sudah di configurasikan

untuk dapat Boot dari Network dan Aplikasi yang digunakan adalah gPXE.

Untuk boot dari PXE kita memerlukan beberapa aplikasi pendukung, seperti :

1. DHCP

2. TFTP

3. SYSLINUX

4. gPXE

–How does it work ?–

1. Dengan fasilitas Boot From Network pada BIOS, system akan mem-broadcast paket lewat

protocol DHCP. DHCP server akan memberikan IP Address dan konfigurasi PXE pada system.

Pada tahap ini system sudah mempunyai IP Address dan siap untuk proses selanjutnya.

2. System men-download file2 yang diperlukan untuk keperluan booting. File2 tersebut di

download via tftp. Pada tahap ini konfigurasi, root_fs dan kernel sudah didownload dari server.

3. System siap untuk boot dengan menggunakan root_fs dan kernel yang sudah didownload.

System siap untuk digunakan.

Setting BIOS to boot from network.

Page 2: Boot From Network via PXE

Set BIOS

Selanjutnya system yang di-Boot dengan menggunakan teknologi PXE akan kita sebut PXEClient.

–CONFIGURE gPXE–

Seperti yang sudah dibahas diatas, pada versi BIOS tanpa fasilitas Boot From Network kita

membutuhkan boot device untuk dapat Boot menggunakan PXE. Berikut ini kita akan membahas

bagaimana menggunakan gPXE.

1. Install gPXE, source gPXE bisa didapat di http://etherboot.org/wiki/index.php

2. Pada kasus ini kita akan menggunakan USB FD sebagai boot device. Maka yang perlu kita

lakukan adalah meng-copykan isi gpxe.usb pada direktori “./bin” di folder gpxe.

o dd if=bin/gpxe.usb of=/dev/sda1

3. USB FD anda siap digunakan sebagai boot device PXE.

–CONFIGURE DHCP–

Kita memerlukan DHCP Server untuk memberikan IP Address dan mengirimkan configurasi file awal.

Konfigurasi DHCP Server dapat kita sesuaikan dengan meng-edit file /etc/dhcpd.conf

Konfigurasi dhcpd.conf:

Asumsikan:

1. IP Address PXEClient : 192.168.0.254/24

2. MACAddress : 00:0D:48:36:0C:E4

3. DHCP Server : 192.168.0.1/24

4. TFTP Server : 192.168.0.1/24

5. Konfigurasi file : pxelinux.0

File dhcpd.conf:

allow booting; allow bootp;

# Standard configuration directives... subnet 192.168.0.0 netmask 255.255.255.0 {

Page 3: Boot From Network via PXE

option domain-name "mydomain"; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option domain-name-servers 192.168.0.1; option routers 192.168.0.1;

# Group the PXE bootable hosts together group { # PXE-specific configuration directives... option dhcp-class-identifier "PXEClient"; next-server 192.168.0.1; filename "/pxelinux.0";

# You need an entry like this for every host # unless you're using dynamic addresses host hostname { hardware ethernet 00:0D:48:36:0C:E4; fixed-address 192.168.0.254; } }

–CONFIGURE TFTP–

TFTP digunakan sebagai protocol transfer file untuk mendownload file2 yang diperlukan untuk

melakukan Booting.

1. Install tftp, paling mudah via apt-get atau synaptic.

2. cek direktori default file2 yang bisa didownload via tftp (biasanya /var/lib/tftpboot)

3. Aktifkan tftp via inetd

–CONFIGURE SYSLINUX–

Syslinux adalah boot loader pada Operating system Linux yang berjalan pada MS-DOS/Windows FAT

filesystem. Tujuannya adalah mempermudah proses instalasi linux untuk pertama kali atau untuk

tujuan2 lainnya.

Untuk boot menggunakan PXE kita memerlukan PXELINUX yang juga adalah turunan dari SYSLINUX dan

memang ditujukan untuk boot Linux dari jaringan berdasarkan spesifikasi dari PXE.

File yang diperlukan untuk boot pxe adalah :

pxelinux.0

yang bisa kita dapatkan di direktori

/usr/lib/syslinux/pxelinux.0

tentu saja setelah kita install syslinux.

–STEP BY STEP–

—Preparing The Files—

Page 4: Boot From Network via PXE

Siapkan file2 yang akan digunakan pada direktori default tftp (biasanya pada /var/lib/tftpboot).

File2 tersebut adalah

1. /var/lib/tftpboot/pxelinux.0

2. /var/lib/tftpboot/bzImage

3. /var/lib/tftpboot/root_fs_i386.gz

4. /var/lib/tftpboot/pxelinux.cfg/01-00-0d-48-36-0c-e4

5. /var/lib/tftpboot/pxelinux.cfg/C0A800FE

6. /var/lib/tftpboot/pxelinux.cfg/C0A800F

7. /var/lib/tftpboot/pxelinux.cfg/C0A800

8. /var/lib/tftpboot/pxelinux.cfg/C0A80

9. /var/lib/tftpboot/pxelinux.cfg/C0A8

10. /var/lib/tftpboot/pxelinux.cfg/C0A

11. /var/lib/tftpboot/pxelinux.cfg/C0

12. /var/lib/tftpboot/pxelinux.cfg/C

13. /var/lib/tftpboot/pxelinux.cfg/default

Untuk poin 4 s/d 13 adalah kebutuhan dari syslinux untuk mengenali systemnya, dapat dilihat

padahttp://syslinux.zytor.com/wiki/index.php/PXELINUX. Kita dapat membedakan configurasi boot loader

nya berdasarkan IP Address, Mac, atau di boot secara difault. Runutan PXE mencari konfigurasi boot

loader :

1. Konfigurasi yang dicari oleh PXE pertama kali adalah berdasarkan MAC Address. Contoh apabila

MACAddress kita adalah 00:0D:48:36:0C:E4, maka konfigurasi boot loader dapat kita simpan

pada file 01-00-0d-48-36-0c-e4. Apabila tidak ditemukan konfigurasi dengan MAC Address

tertentu, PXE akan mencari konfigurasi berdasarkan IP Address.

2. Berdasarkan IP Address dengan format HEXADECIMAL, apabila IP Address yang kita berikan

adalah 192.168.0.254 format HEXADECIMAL nya akan menjadi C0A800FE, jadi PXE akan mencari

file C0A800FE, apabila tidak ditemukan PXE men-shift C0A800FE ke kiri sebanyak 4 bit

(C0A800F) dan begitu seterusnya. Artinya runutan pencarian PXE akan menjadi :

o C0A800FE -(jika tidak ada)- C0A800F -(jika tidak ada)- C0A800 dst.

3.  Jika file2 diatas tidak ditemukan, PXE akan membaca file default sebagai konfigurasi bootloader

nya.

contoh konfigurasi file yang saya gunakan di file 01-00-0d-48-36-0c-e4 :

prompt 1

default linux

Page 5: Boot From Network via PXE

timeout 1

label linux

kernel bzImage

append initrd=root_fs_i386.gz root=/dev/ram0 ramdisk_size=30000 noapic acpi=off

Contoh File2 yang saya gunakan adalah :

File :

1. /var/lib/tftpboot/pxelinux.0

2. /var/lib/tftpboot/bzImage

3. /var/lib/tftpboot/root_fs_i386.gz

4. /var/lib/tftpboot/pxelinux.cfg/01-00-0d-48-36-0c-e4

—Menjalankan DHCP Server—

Jalankan dhcp server dengan command :

dhcpd

atau jika ingin berjalan pada mode foreground :

dhcpd -d

—Menjalankan tftp server—

Jalankan tftp server dengan command (Sesuaikan dengan PC dan settingan anda):

inetd

System anda siap untuk boot dari network.