twitter
    Ask Answer'm Get It :)

Compail Kernel Open BSD

Updating Ports Tree

FreeBSD menggunakan direktori /usr/ports/ untuk sistem repositori instalasi softwarenya, freebsd juga bisa menggunakan sysintall atau pkg_add untuk menambahkan/install softwarenya, dalam tulisan ini akan dijelaskan cara instal software via ports direktori.
Langkah yang dilakukan adalah
1.Install ports manajemen software, menggunakan cvsup, sebelum menggunakannya cvsup sebelumnya harus terinstall dahulu, dengan perintah
Code: Select all
# cd /usr/ports/net/cvsup-without-gui; make install clean

2.Selanjutnya install fastest_cvsup, untuk mencari cvs server yang tercepat dan terdekat
Code: Select all
# cd /usr/ports/sysutils/fastest_cvsup; make install clean
# fastest_cvsup -c sg,tw,jp

Setelah diperoleh server yang tercepat, masukkan ke dalam file ports-supfile
3.Kemudian copykan file ports-supfile dengan perintah
Code: Select all
# cp /usr/share/examples/cvsup/ports-supfile /root/

4.Edit file ports-supfile, dan ganti host servernya dengan server hasil dari yang didapat dari fastest_cvsup
5.Selanjutnya adalah menjalankan program cvsup untuk upgrade tree ports dengan perintah
Code: Select all
# cvsup /root/ports-supfile

contoh file ports-supfile
*default host=cvsup10.tw.freebsd.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=.
*default delete use-rel-suffix
*default compress
ports-all

6.Selesai

Selain menggunakan metoda cvsup, dapat juga dilakukan metoda lain yang lebih sederhana yaitu menggunakan portsnap, by default portsnap telah terinstall saat menginstall freebsd, perintahnya adalah (dalam tulisan ini diasumsikan portsnap baru pertama kali digunakan).
Code: Select all
# portsnap fetch

(download ports.tar.gz yang terbaru dari server porstsnap)
Code: Select all
# portsnap extract

(mengekstrak file ports.tar.gz)
Selanjutnya jika diperlukan untuk updating ports tree menggunakan portsnap digunakan perintah
Code: Select all
# portsnap fetch update


Security Issue
FreeBSD juga menyediakan program untuk mengecek apakah paket yang terinstal vurnerable atau tidak, yaitu dengan menggunakan portaudit, langkahnya adalah
1.Install portaudit
Code: Select all
# cd /usr/ports/ports-mgmt/portaudit; make install clean

2.Mengecek vurnerable paket dengan cara
Code: Select all
# portaudit -Fad

3.Apabila ditemukan ada paket yang vurnarable maka segera dilakukan uninstall paket dan instalasi paket terbarunya.
Contoh apabila ditemukan paket “png-1.2.22” yang vurnerable maka proses uninstall dan installnya adalah sebagai berikut (upgrade ports tree jika diperlukan sebelum instalasi)
Code: Select all
# cd /us/ports/graphic/png; make deinstall install clean


Binary Upgrade
Untuk optimalisasi FreeBSD juga menyediakan upgrade versi untuk kernelnya, langkah-langkahnya adalah sebagai berikut (binary upgrade dari FreeBSD-6.3 RELEASE ke FreeBSD-7.0 RELEASE)
1.Upgrade paket
Code: Select all
# portsnap fetch update
# portupgrade -faP

2.Download updated freebsd-update-upgrade tool
Code: Select all
# fetch http://people.freebsd.org/~cperciva/freebsd-update-upgrade.tgz
# fetch http://people.freebsd.org/~cperciva/freebsd-update-pgrade.tgz.asc
# fetch http://www.freebsd.org/doc/pgpkeyring.txt
# gpg -–import pgpkeyring.txt
# gpg --verify freebsd-update-upgrade.tgz.asc freebsd-update-upgrade.tgz
# tar -xvzf freebsd-update-upgrade.tgz

3.Start upgrade prosedur
Code: Select all
# sh freebsd-update.sh -f freebsd-update.conf -r 7.0-RELEASE upgrade
# sh freebsd-update.sh -f freebsd-update.conf install
# reboot

4.Install updated userland tools
Code: Select all
# sh freebsd-update.sh -f freebsd-update.conf install
# portsnap -I update
# portupgrade -f ruby
# rm /var/db/pkg/pkgdb.db
# portupgrade -f ruby18-bdb
# rm /var/db/pkg/pkgdb.db /usr/ports/INDEX-*.db
# portupgrade -af

5.Remove all old libraries
Code: Select all
# sh freebsd-update.sh -f freebsd-update.conf install
# reboot

6.Verify FreeBSD 7.0
Code: Select all
# uname -a
# tail -f /var/log/messages
# tail -f /path/to/other/log/files
# egrep -i 'error|warning' /path/to/log/files
# sockstat -4 -l


Compile Kernel
Kompilasi ulang kernel diperlukan agar kernel dalam pengenalan hardware lebih optimal, selain itu juga untuk beberapa software seperti Packet Filter bisa menggunakan opsi ALTQ maka kernel juga perlu dikompile ulang, langkahnya aadalah sebagai berikut:
1.Lakukan update direktori /usr/src dengan cara sebagai berikut (langkahnya sama seperti update ports tree menggunakan cvsup hanya untuk file konfigurasinya menggunakan file stable-supfile).
Code: Select all
# cp /usr/share/examples/cvsup/stable-supfile /root/

Edit file stable-supfile, dan ganti host servernya dengan server hasil dari yang didapat dari fastest_cvsup.
Selanjutnya adalah menjalankan program cvsup untuk upgrade /usr/src dengan perintah
Code: Select all
# cvsup /root/stable-supfile

contoh file stable-supfile
*default host=cvsup10.tw.freebsd.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_7
*default delete use-rel-suffix
*default compress
src-all

2.Copy GENERIC kernel config ke config kustom (tergantung mesin yang dipakai).
Code: Select all
# cp /usr/src/sys/amd64/conf/GENERIC /usr/src/sys/amd64/conf/KERNEL-CUSTOM

Edit file konfigurasi yang baru.
Code: Select all
# mcedit /usr/src/sys/amd64/conf/KERNEL-CUSTOM

3.Untuk support pf (packet filter), squid, yang perlu ditambahkan dalam file konfigurasi kernel sebelum di kompilasi adalah sebagai berikut :
(Untuk support PF)
device pf
device pflog
device pfsync
(Untuk support altq cbq atau bandwidth shaping)
options ALTQ
options ALTQ_CBQ
options ALTQ_RED
options ALTQ_RIO
options ALTQ_HFSC
options ALTQ_PRIQ
options ALTQ_NOPCC

(untuk optimasi squid untuk dukungan diskd)
options SYSVMSG
options MSGMNB=32768
options MSGMNI=164
options MSGSEG=8196
options MSGSSZ=512
options MSGTQL=2048

(PAE -- Physical Address Extensions, untuk support memory di atas 4GB/i386)
options PAE

4.Setelah selesai mengedit file konfigurasi kernel langkah selanjutnya adalah melakukan kompilasi kernel dengan cara
--------------cara pertama-------------------------
Code: Select all
# config KERNEL-CUSTOM
# cd ../compile/KERNEL-CUSTOM
# make cleandepend;make depend;make;make install

---------------------------------------------------
atau
--------------cara kedua---------------------------
Code: Select all
# cd /usr/src
# make buildkernel KERNCONF=KERNEL-CUSTOM
# make installkernel KERNCONF=KERNEL-CUSTOM

---------------------------------------------------
5.Setelah itu melakukan reboot mesin FreeBSD
Code: Select all
# reboot


Update System
Untuk update system sebaiknya baca dulu /usr/src/UPDATING, untuk proses sebelum buildworld dilakukan sesuai dengan jenis mesin, selanjutnya adalah melakukan langkah-langkah sebagai berikut :
Code: Select all
# cd /usr/src
# make buildworld
# make buildkernel
# make installkernel
# reboot

Setelah booting kemudian masuk ke single user mode, saat booting dan muncul menu tekan spasi di keybord dan pilih nomor 4 (single user mode) kemudian lakukan proses ini, atau bisa juga melalui command # boot -s
Code: Select all
# mount -a
# mergemaster -p
# make installworld
# mergemaster
# reboot


semua cara di atas di dasarkan pada kondisi dari hardware saya, tapi secara umum adalah sama untuk hardware lain, jika ada perbedaan mari kita diskusikan di forum ini dan koreksi, jika saya ada kesalahan, terima kasih
Last edited by iwellbc on Thu Sep 11, 2008 11:14 pm, edited 6 times in total.





0 komentar:

Posting Komentar