compile kernel

Biasanya hal pertama yg dilakukan setelah install FreeBSD adalah recompile kernel,
tujuannya adalah untuk memperoleh kernel yang ramping dan menambahkan support untuk fitur-fitur yg
dibutuhkan server tsb, spt firewall, dummynet dll.

Konfigurasi kernel FreeBSD disimpan di folder /usr/src/sys/i386/conf,
disini bisa ditemukan file bernama GENERIC, inilah konfigurasi kernel default FreeBSD.
Untuk mudahnya copy file GENERIC tsb ke nama lain, misalnya MYKERNEL,
kemudian edit MYKERNEL untuk mengurangi atau menambah fitur2 di kernel.

machine i386
cpu I486_CPU
cpu I586_CPU
cpu I686_CPU

Baris-baris diatas bisa dikurangi dengan menghapus support untuk processor
yg tidak sesuai dengan processor komputer, misalnya jika komputer berprocessor xeon maka
hapus baris cpu I486_CPU dan cpu I586_CPU.

Banyak juga baris di bagian SCSI & RAID controllers yang bisa disingkirkan,
sebagai pedoman: semua device yg tidak muncul saat system melakukan probing device pada saat boot
bisa dihapus dengan aman.

Periksa dengan perintah dmesg untuk melihat boot message.

Sebagai catatan: di bagian Ethernet NIC juga banyak yg bisa dihapus,
tapi sebaiknya biarkan mereka tetap ada di kernel karena jika sewaktu-waktu network card rusak
dan perlu diganti kita tidak perlu recompile kernel atau load modulenya lagi.

Berikut ini adalah opsi yang (hampir) selalu ada di semua kernel di server UKDW,
terlepas dari fungsi server tsb:

# firewall, NAT, dummynet
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=100
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPDIVERT
options DUMMYNET
options BRIDGE
options IPFILTER
options IPFILTER_LOG
options HZ=1000
options IPFIREWALL_FORWARD
options IPFIREWALL_FORWARD_EXTENDED
device snp
options SMP

Setelah selesai mengedit file konfigurasi kernel, kita bisa mulai mencompile..
pindah ke direktori /usr/src kemudian:

# make buildkernel KERNCONF=MYKERNEL

Setelah selesai compile kernel lakukan instalasi kernel:

# make installkernel KERNCONF=MYKERNEL

Untuk menguji apakah kernel hasil modifikasi tersebut berfungsi baik, cobalah me-reboot komputer.
Tidak perlu panik seandainya kernel baru tsb gagal boot, karena FreeBSD telah menyediakan
mekanisme untuk menggunakan kernel lain sebagai berikut:

Pada saat system melakukan count down di "boot menu" tekanlah sembarang tombol (kecuali Enter)
kemudian ketik

unload

ketik lagi..

boot /boot/kernel.old

..atau lokasi lain yg menyimpan kernel lama atau generic.

home