28 BAB III ANALISIS DAN PERANCANGAN 3.1 Analisis Masalah Pada bab III ini, akan dianalisa masalah yang timbul dari penelitian pembuatan paket imp. Dan juga akan dianalisa pemecahan masalah yang dapat dilakukan dalam penelitian ini. 3.1.1 Analisis Paket Instalasi Teknologi yang terus berkembang dengan pesat dan tidak dapat di hentikan oleh apapun, membuat penulis berfikir untuk mencari metode untuk memutakhirkan Imedia Linux, atau menambah paket yang diperlukan didalam Imedia Linux. Imedia Linux memberikan performa yang lebih baik dari distribusi standar Imedia Linux menggunakan kernel 2.4.23. Paket instalasi yang ada di setiap distro sebenarnya untuk mempermudah penginstalasian paket yang akan diinstal didistro tersebut. Pengguna perlu untuk menyalin berkas-berkas hasil kompilasi, yang merupkan berkas yang dapat dieksekusi, ke dalam direktori-direktori tempat berkas eksekusi di Imedia Linux disimpan. Paket instalasi ini dengan sendirinya akan menyimpan berkas-berkas yang dapat dieksekusi tersebut ke dalam direktori yang telah diatur dalam pembuatan paket instalasi. Paket instalasi yang ada sekarang menyerupai paket yang dikompresi menggunakan aplikasi kompresi yang ada sekarang, seperti zip, rar, dan tar. Akan 28 29 tetapi berkas paket instalasi dapat dieksekusi untuk melakukan instalasi ke dalam distro Linux. Paket instalasi yang ada di distro-distro Linux saat ini terdiri dari dua buah paket instalasi, yaitu: 1. paket instalasi yang menyimpan source code dari suatu aplikasi dan melakukan kompilasi source code terlebih dahulu sebelum menyimpan berkas eksekusi ke dalam direktori yang telah ditentukan. 2. paket instalasi yang hanya menyimpan berkas hasil kompilasi dan hanya menyimpan paket hasil kompilasi ke dalam direktori yang ditentukan. Untuk paket instalasi yang akan dibuat adalah paket instalasi dalam bentuk yang kedua, yang hanya dapat melakukan instalasi dan menyimpan berkas yang dapat dieksekusi ke dalam direktori yang ditentukan. 3.1.2 Analisis Paket imp Imedia Linux menyediakan paket-paket dengan ekstensi imp. Akan tetapi hanya terbatas pada beberapa paket saja. Paket tersebut biasanya sudah ada di dalam distro yang dapat diunduh dalam bentuk iso. Dari paket imp yang telah disediakan oleh Imedia Linux, dapat dianalisa bentuk dari paket tersebut. Sama seperti paket ipk, paket imp hanya untuk menginstal aplikasi atau berkas biner yang telah dikompilasi di komputer lain, atau biasa disebut kompilasi silang. Berkas biner yang dapat diekseskusi hasil dari kompilasi silang tersebut dibungkus dalam bentuk baru yang diberi nama paket imp yang telah ditempel dengan berkas yang dapat dieksekusi, berkas yang dapat dieksekusi ditempel dibagian bawah setelah header dari paket imp. 30 Struktur dari paket imp yang berasal dari Imedia Linux menyerupai sebuah kode bahasa pemrograman shell. Bahasa pemrograman shell, yang biasanya berekstensi sh, yang telah ditempel dengan berkas yang dapat dieksekusi. Berkas yang dapat dieksekusi yang ditempel di dalam paket imp dirubah menjadi bahasa mesin, atau seperti berkas biner jika dilihat menggunakan editor teks. Header yang digunakan di dalam paket imp juga tidak jauh berbeda dengan paket ipk. Mungkin hanya susunan saja yang sedikit berbeda. Jika paket ipk, harus membuat sebuah berkas teks dengan nama CONTROL, sedangkan untuk paket imp sudah tertulis di dalam paket imp. 3.1.2.1 Struktur Paket sebelum Menjadi Paket imp Struktur paket sebelum menjadi paket imp adalah berkas biner yang akan dirubah menjadi paket imp adalah berkas – berkas biner. Berkas – berkas biner tersebut adalah berkas hasil dari kompilasi silang, yaitu berkas dari suatu sumber kode dari sebuah program yang telah dikompilasi dikomputer host ( komputer besar ) sehingga hasil kompilasi yang berupa berkas biner dapat dijalankan dikomputer guest ( komputer kecil ) sebuah paket imp dapat juga berisi berkas library ( berekstensi O dan .SO ). 3.1.3.2 Struktur Paket setelah Menjadi Paket imp Struktur paket imp yang berasal dari Imedia Linux menyerupai sebuah kode bahasa pemerograman Shell. Biasanya bahasa pemerograman Shell mempunyai paket berekstensi sh, yang telah ditempel dengan berkas yang dapat dieksekusi, berkas yang dapat dieksekusi ditempel dibagian bawah setelah header dari paket imp. 31 Header dari sebuah paket imp adalah sebagai berikut : Name : Nama dari sebuah paket Version : Versi dari sebuah paket Arch : Arsitektur dari mesin yang akan diinstal Vendor : Membuat paket Categories : katagori paket yang akan diinstal Target system : Sistem yang akan menjadi target Description : Diskripsi dari paket yang diinstal Details : Detail dari paket 3.2 Pemecahan Masalah Dari beberapa kesimpulan di atas, maka dapat diambil beberapa pemecahan masalah untuk penelitian ini. 3.2.1 Memodifikasi aplikasi ipkg-build.sh Dari hasil analisis antara paket ipk dan paket imp, terdapat sedikit persamaan. Kedua paket ini sama-sama digunakan untuk Linux kecil ( Linux yang diinstal di mesin-mesin kecil, seperti ARM, Zaurus, dan Minibox ). Dan keduanya memiliki kesamaan lingkungan pengembangan, yaitu dikembangkan dengan bahasa pemrograman Shell. Dari hasil analisis tersebut, maka dapat dikembangkan aplikasi pembentuk paket imp dari aplikasi pembentuk paket ipk yang bernama ipkg-build.sh. 32 Pemodifikasian dilakukan dengan merubah beberapa baris kode di dalam ipkgbuild.sh menjadi kode yang sesuai dengan paket imp yang akan dibentuk. 3.2.2 Pemodelan Use Case untuk aplikasi pembentuk paket imp Untuk mempermudah pemahaman tentang aplikasi pembentuk paket imp, maka akan ditampilkan diagram use case dari aplikasi pembentuk paket imp. Gambar 3.1 Use Case aplikasi pembentuk paket imp Use Case di atas menunjukkan bahwa aplikasi ini membolehkan seorang pengguna untuk membuat paket imp saja. Berikut deskripsi dari penjelasan use case pembentuk aplikasi imp. 1. Nama : Membuat paket imp Aktor : Pengguna Deskripsi : Pengguna dapat membuat paket imp Skenario : 33 Pengguna menggunakan aplikasi ini hanya dalam untuk membuat paket dengan ekstensi imp, dengan cara menuliskan sintaks di dalam console atau terminal. Kondisi awal : 1. Pengguna sudah memiliki berkas executable yang akan dijalankan di Imedia Linux. 2. Pengguna sudah memiliki berkas deskripsi bernama CONTROL yang dimasukkan ke dalam satu direktori dengan berkas executable yang akan dibentuk menjadi sebuah paket imp. 3. Pengguna sudah mengetahui sintaks untuk pembentukan paket imp. Kondisi akhir : 1. Penguna memiliki paket dengan ekstensi imp. 3.2.3 Pemodelan Activity Diagram Pemodelan Activity diagram untuk aplikasi pembentukan paket imp yang dapat digambarkan dari aplikasi pembentuk imp hanya untuk activity diagram membentuk paket imp. Karena aplikasi ini hanya untuk membentuk paket imp. Berikut adalah activity diagram untuk aplikasi pembentuk paket imp. 34 Gambar 3.2 Activity Diagram aplikasi pembentuk paket imp Activity diagram aplikasi pembentukan paket imp di atas menggambarkan keseluruhan aktivitas dari aplikasi pembentuk paket imp. Karena aplikasi tersebut hanya melakukan pembentukan paket imp, maka aplikasi activity diagram yang ditampilkan hanya satu diagram saja. 35 3.3 Perancangan test bed Untuk perancangan test bed yang akan dilakukan pada penelitian ini akan dibahas pada subbab berikut. 3.3.1 Perancangan Instalasi Imedia Linux Imedia Linux adalah sebuah distro Linux yang khusus disediakan untuk sistem tertanam (embedded system) yang mempunyai ditribusi yang penuh fitur. Imedia Linux ini dapat dijalankan pada prosesor-prosesor dengan mesin yang kecil, seperti ARM dan Zaurus. Karena susahnya mendapatkan prosesor yang bermesin kecil, maka untuk melakukan test pada penelitian ini digunakan emulator untuk menjalankan Imedia Linux. Emulator yang digunakan adalah Qemu. Adapun tahap yang harus dilakukan untuk menjalankan Imedia Linux menggunakan emulator Qemu adalah sebagai berikut: 1. Mengunduh berkas iso dari Imedia Linux, dapat dilakukan dari http://downloads.imedialinux.com/releases/6.0.4/ 2. Menginstalasi Qemu di komputer host ( Ubuntu 9.10 ), sebelumnya perbarui repository terdahulu : $ sudo apt-get update Kemudia instal qemu dengan perintah : $ sudo apt-get install qemu 36 3. Membuat partisi virtual untuk Qemu yang ditujukan untuk instalasi berkas iso dari Imedia Linux, dengan perintah : $ qemu –img create gambar.img 500M 4. Menginstal Imedia Linux di dalam Qemu dengan perintah : $ qemu –boot d –cdrom /home/badi/imedia-6.0.0-mms.iso –m 192 –hda gambar.img Gambar 3.3 Imedia Linux Keterangan : perintah diatas menunjukan option –boot d –cdrom /home/badi/imedia-6.0.0-mms.iso menunjukan kalau qemu melakukan boot dari file iso gambar yang ada di /home/badi/imedia-6.0.0-mms.iso. 37 selanjutnya –m 192 menunjukan kalau memori yang digunakan adalah 192MB, dan image harddisk yang digunakan adalah gambar.img. 5. Menjalankan Imedia Linux di dalam Qemu dengan perintah. $ qemu –boot c –hda gambar.img –m 192 Gambar 3.4 Qemu 38 3.4 Samba Samba merupkan paket aplikasi dalam system operasi Linux yang biasa digunakan untuk kebutuhan sharing berbagai printer dan file. Samba mengembangkan protocol SMB (Server Messege Block) yang dapat digunakan untuk berkomunikasi dengan sistem operasi Microsoft Windows http://muaniack.wordpress.com/perintah-dasar-samba-linux/ adapun cara install samba dan konfigurasi sebagai berikut : 1. Install Samba : $ sudo apt-get install samba 2. Cek direktori /etc/samba dengan perintah seperti dibawah ini : $ ls /etc/samba/ Gdbcommands smb.conf 3. Sharing file dengan izin akses hanya dapat dibaca (read only). Sudo vi /etc/samba/smb.conf Direktori yang akan disharing adalah direktori /home/badi/sharing. Kemudian edit file /etc/samba/smb.conf muncul seperti brikut di gedit: [Global] Workgroup = WORKGROUP Netbios name = Ubuntu Sever string = UbuntuSambaSever Security = share Hosts allow = 192.168.0.2/24 127.0.0.1 39 [sharing_data] Patch = /home/badi/sharing Comment = File Public = yes Readonly = yes Browseable = yes Sharing Keterangan: Workgroup : nama workgroup yang ada pada jaringan untuk berhubungan dengan Microsoft Windows Netbios game : nama samba server yang akan terlihat pada network neighborhood Security share : akses keamanan yang kita tentukan untuk file sharing. Path : letak atau posisi file yang akan di – sharing Public : file sharing dapat diakses oleh siapa saja dalam range jaringan Read only : akses file sharing hanya dapat dibaca dan tidak dapat diedit Browseable : file sharing dapat dilihat isinya 4. Kkonfigurasi Samba. $ fle /etc/samba/smb.conf 40 [Global] Workgroup = WORKGROUP Netbios name = Ubuntu Sever string = UbuntuSambaSever Security = share Host allow = 192.168.0.2/24 127.0.0.1 Path = /home/badi/sharing Comment = File Public = no Readonly = no Browseable = yes Validusers = heart Forceuser = heart Force group = heart [heart_sahre] Sharing 5. Restart kembali service Samba untuk mengaktifkan perubahan $ sudo /etc/ini.d/samba restart