Tuesday, June 11, 2013

Install Ports FreeBSD

          Ports adalah salah satu metode instalasi third party software di FreeBSD. Sebelum dapat menginstalasi Program menggunakan ports, system harus memperoleh informasi ports-collection yang digunakan untuk memperoleh tentang makefiles, patches, dan deskripsi dari sebuah program. Ports-collection disimpan di /usr/ports.
Ports-collection boleh disebut juga sebagai sumber informasi untuk mengetahui segala informasi program yang di install. Jika kita masuk pada direktori /usr/ports, disana terdapat subdirektori yang merupakan sebuah kategori dari sebuah program. Misalnya program Squid versi 3.1, terletak di /usr/ports/www/squid31. www merupakan kategori untuk program yang berhubungan dengan web service.
Ketika menginstall system FreeBSD, Sysinstall menanyakan apakah kamu akan menginstall ports-collection, jika saat instalasi kamu tidak menginstallnya, kamu harus menginstalnya. Ada 3 cara menginstall ports-collection: CVSup, portsnap, dan sysinstall. Sebagi catatan untuk instalasi dan update ports-collection dibutuhkan koneksi internet.

Metode CVSup

CVSup adalah cara yang paling sederhana untuk mendapatkan ports-collection yang up-date. Implementasi protocol CVSup di FreeBSD dikenal dengan csup.
Pastikan direktori /usr/ports kosong saat pertama kali mengeksekusi csup. Jika pada direktori tersebut ada ports-collections dari sumber lain csup tidak akan akan menghapus patchnya. Cukup satu perintah untuk mendapatkan ports-collection dengan csup
  1. Run csup
    # csup -L 2 -h cvsup.FreeBSD.org /usr/share/examples/cvsup/ports-supfile
Perintah diatas akan mengambil ports-collection dari cvsup.FreeBSD.org dan file configurasi csup berada di /usr/share/examples/cvsup/ports-supfile, kamu bisa ganti cvsup.FreeBSD.org pada mirror terdekat lihat list mirror cvsup di sini
Note : untuk menggunakan ports-supfile sendiri ikuti intruksi dibawah ini
  1. Copy /usr/share/examples/cvsup/ports-supfile ke /root/supfiles (misalnya di copy ke /root)
  2. Edit ports-supfiles
  3. Ganti CHANGE_THIS.FreeBSD.org dengan CVSup mirror terdekat
  4. Run csup
    # csup -L 2 /root/ports-supfile

Metode Portsnap

Portsnap adalah metode alternative untuk mendapatkan ports-collection. Jika CVSup mengunakan CVSup Server sebagai sumbernya, portsnap menggunakan instilah snapshot. Snapshot biasanya terdapat di server ftp dari freebsd . coba saja cek di ftp.freebsd.org/pub/FreeBSD/
  1. Download snapshot ports-collection ke /var/db/portsnap.
    # portsnap fetch
  2. Setelah proses download selesai extract ke /usr/ports
    # portsnap extract
  3. Jika port-collection sudah tersedia kamu bisa update portscollection
    #portsnap update

Metode Sysinstall

Metode ini mengambil sysinstall dari media instalasi seperti cd-rom. Ports-collection pada release yang lama akan terinstall. Jika terdapat koneksi internet sebaiknya lakukan metode lain
  1. Sebagai root jalankan sysinstall (/stand/sysinstall pada frebsd 5.2 release atau release sebelumnya)
    # sysinstall
  2. Pilih Configure, tekan Enter
  3. Pilih Distribution, tekan Enter
  4. Scroll Down lalu tkamui ports
  5. Pilih Exit
  6. Tentukan media instalasi seperti : CD-ROM, ftp dll
  7. Pilih Exit, Tekan Enter
  8. Tekan X untuk keluar dari sysinstall

Install program dengan ports

Satu hal yang harus dijelaskan ketika berada pada sebuah ports-collection adalah apakah yang dimaksud “skeleton”. Pada sebuah nutshell, port skeleton adalah satu set file yang memberikan informasi pada FreeBSD system bagaimana untuk mengcompile dan menginstall program setiap port skeleton terdapat:
  • Makefiles, file Makefiles Berisikan statement yang spesifik bagaimana mekanisme instalasi agar program dapat di install
  • Distinfo, berisi informasi tentang requirement dari suatu program
  • Direktori files
  • pkg-descr, berisi tentang deskripsi suatu program secara detail
  • pkg-plist, file ini berisi informasi tetang daftar file yang akan terinstall dan di remove
untuk memulai instalasi dengan ports, pastikan kamu login sebagai root. Saat hendak instalasi ports collection mengasumsikan sitem terkoneksi ke internet, jika tidak ada koneksi internet, anda harus memasukan commpresed source code melalui distfile sumber ports collection(ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles) ke /usr/ports/distfiles secara manual.
  1. Untuk memulai instalasi kamu harus berada pada port yang akan diinstall, port yang dimaksud adalah directori program pada ports collection misalny program lsof, portnya berada di /usr/ports/sysutils/lsof
    # cd /usr/ports/sysutils/lsof
  2. Jika kamu tidak tahu letak portnya, kamu dapat melakukan pencarian dengan menggunakan perintah whereis
    # whereis lsof
    lsof : //usr/ports/sysutils/lsof
  3. Di dalam direktori lsof, kamu akan melihat port skeleton. Selanjutnya lakukan proses build, caranya simple dengan mengetik make, setelah itu kamu akan melihat output seperti ini
    # make
    >> lsof_4.57D.freebsd.tar.gz doesn’t seem to exist in /usr/ports/distfiles/.
    >> Attempting to fetch from ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/.
    ===> Extracting for lsof-4.57

    [extraction output snipped]

    >> Checksum OK for lsof_4.57D.freebsd.tar.gz.
    ===> Patching for lsof-4.57
    ===> Applying FreeBSD patches for lsof-4.57
    ===> Configuring for lsof-4.57

    [configure output snipped]

    ===> Building for lsof-4.57

    [compilation output snipped]
  4. Lanjutkan dengan instalasi, ketikan saja para meter install pada perintah make
    # make install
    ===> Installing for lsof-4.57

    [installation output snipped]

    ===> Generating temporary packing list
    ===> Compressing manual pages for lsof-4.57
    ===> Registering installation for lsof-4.57
    ===> SECURITY NOTE:

    This port has installed the following binaries which execute with
    increased privileges.
  5. Setelah instalasi selesai anda akan melihat pesan security warning, hal ini patut diperhatikan. Sebaiknya hapus working subdirectory yang berisikan temporary file saat proses compile. Tidak hanya memakan kapasitas hardisk tapi juga mempersulit proses upgrade. Untuk itu lakukan penghapusan dengan memberikan parameter clean pada perintah make
    # make clean
    ===> Cleaning for lsof-4.57
Instalasi program selesai, tapi ada satu hal lagi saat melakukan instalasi ports melalui internet, ports mengacu pada satu sumber yang dituju, sumber tersebut dapat diganti dengan sumber yang lebih dekat. Adapun file konfigurasinya terdapat di /etc/make.conf
make MASTER_SITE_OVERRIDE= \
ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ fetch

kamu bisa ganti bagian ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ menjsdi ftp://…./distfil sebagai contoh ftp://ftp.itb.ac.id/pub/FreeBSD/ports/distfile, kalo ga salah ke situ bisa..
Ok… Semoga Bermanfaat


No comments:

Post a Comment