TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Oracle 9i
Instalasi Oracle 9i pada Red Hat 9 Bagian 1 dari 2 artikel Database Oracle banyak digunakan oleh perusahaan besar dunia, termasuk di Indonesia. Oracle juga telah tersedia untuk Linux sejak akhir 90-an. Bagaimana cara menginstalasinya di Linux? Ikuti langkah demi langkah tutorial ini.
T
utorial ini disusun berdasarkan proyek instalasi Oracle 9i pada distro Linux Red Hat 9. Instalasi Red Hat 9 tidak dibahas lengkap di sini. Anda dapat mempelajarinya dari buku dan CDCD Red Hat 9. Pembahasan bagian pertama ini untuk mempersiapkan Red Hat 9 agar dapat diinstalasi Oracle 9i dengan baik.
1. Konfigurasi distro Red Hat 9 Spesifikasi Hardware Ketika mengerjakan proyek ini, penulis menggunakan spesifikasi komputer: PIII-800 RAM 256 MB disk space 7 GB (Red Hat plus Oracle) swap space 512 MB
Paket-paket instalasi Paket yang digunakan dalam instalasi linux Red Hat 9 ini adalah paket standar (workstation). Sebagai tambahan, paket-paket berikut ini harus diinstalasi. compat-gcc-7.3-2.96.118.i386.rpm compat-libgcj-7.3-2.96.118.i386. rpm compat-libgcj-devel-7.3-2. 96.118.i386.rpm nss_db-compat-2.2-20.i386.rpm
Paket-paket tersebut ada pada CD pertama dan kedua dari Red Hat 9.
Kernel tuning Ada beberapa file yang perlu di-tuning pada level kernel. Ketikkan perintah berikut ini dengan login sebagai root. echo 250 32000 100 128 > /proc/ sys/kernel/sem echo 65536 > /proc/sys/fs/filemax ulimit -n 65536 echo 1024 65000 > /proc/sys/net/ ipv4/ip_local_port_range ulimit -u 16384
File-file di atas akan kembali ke nilainya semula jika komputer anda restart. Sebaiknya dibuat di sebuah file saja yang bisa dieksekusi pada saat boot, atau diletakkan pada file /etc/rc.local pada baris paling bawah file tersebut. Tujuannya, ketika komputer direstart maka kernel otomatis telah di-tuning agar siap menjalankan Oracle.
Mengonfigurasi sistem Masih sebagai root, edit /etc/sysctl.conf dan tambahkan baris berikut dengan menggunakan editor favorit anda.
kernel.shmmax = 2147483648 kernel.shmmni = 128 kernel.shmall = 2097152 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000
Edit juga file /etc/security/limits.conf oracle oracle oracle oracle
soft hard soft hard
nofile 65536 nofile 65536 nproc 16384 nproc 16384
Menyiapkan environment untuk Oracle 9i Sebagai root, jalankan perintah-perintah berikut ini untuk membuat account group dan user, serta direktori yang dibutuhkan dalam instalasi Oracle. # # # #
groupadd groupadd groupadd groupadd
oinstall dba oper apache
# useradd -g oinstall -G dba oracle # passwd oracle # useradd -g oinstall -G apache apache # passwd apache # mkdir -p /u01/app/oracle/ product/9.2.0.1.0 # chown -R oracle.oinstall /u01
Masuk ke mode grafis login sebagai user oracle. Buka konsol dan ganti ke superuser. Gambar 1. Layar Welcome Oracle Universal Installer.
50
INFOLINUX 02/2005
Gambar 2. Meletakkan file instalasi.
www.infolinux.web.id
$ su -
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Oracle 9i
Gambar 3. Memilih bahasa Indonesia.
password: # xhost +<machine-name> contoh: xhost +localhost
Logout dari root dengan Ctrl-D atau ketik exit. Tambahkan pada .bash_profile (milik user oracle). $ vi /home/oracle/.bash_ profile
(Perhatikan PATH pada baris-baris di bawah ini.) # Oracle 9i ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/ product/9.2.0.1.0; export ORACLE_HOME ORACLE_TERM=xterm; export ORACLE_TERM PATH=$ORACLE_HOME/bin:$PATH:/ usr/local/java131/bin:/usr/ local/jre/bin; export PATH ORACLE_OWNER=oracle; export ORACLE_OWNER ORACLE_SID=TSH1; export ORACLE_SID LD_LIBRARY_PATH=$ORACLE_HOME/
Gambar 4. Memilih tipe instalasi standard edition.
lib; export LD_LIBRARY_PATH CLASSPATH=$ORACLE_HOME/ JRE:$ORACLE_HOME/jlib:$ORACLE_ HOME/rdbms/jlib; export CLASSPATH
da sudah men-download dan menyimpannya dalam 1 direktori lakukan hal berikut:
LD_ASSUME_KERNEL=2.4.1; export LD_ASSUME_KERNEL THREADS_FLAG=native; export THREADS_FLAG TMP=/tmp; export TMP TMPDIR=$TMP; export TMPDIR
Perintah ini akan membuat 3 direktori Disk1, Disk2 dan Disk3.
Simpan dan pastikan environment user oracle dengan mengetikkan baris berikut: # set | more
Selanjutnya ketikkan: # DISPLAY=<machine-name>:0.0; export DISPLAY
2. Mendapatkan paket/CD Oracle 9i dan JRE Download software Oracle 9i Catatan: Anda harus punya akses Internet yang cepat untuk mendownload Oracle 9i. Anda dapat mendownloadnya dari website resmi Oracle (www.Oracle.com) dan carilah link DOWNLOAD, kemudian ikuti jalurnya sesuai yang kita inginkan, yakni Oracle versi 9.2.0.1.0 untuk linux Red Hat. Anda harus mendaftar sebagai member terlebih dulu untuk bisa men-download-nya. Ada tiga file yang masing-masing akan menjadi satu keping cd: lnx_920_disk1.cpio.gz lnx_920_disk2.cpio.gz lnx_920_disk3.cpio.gz
# gunzip lnx_920_disk1.cpio.gz # cpio -idmv < lnx_920_disk1. cpio
Membuat file ISO dan membakar ke cd Cara membuat ISO CD dari file yang telah anda download dan menuliskannya pada cd dapat anda baca secara lengkap pada CD-Writing-HOWTO. Pada tahap ini saya hanya menuliskan perintah utamanya saja. Langkah pertama adalah membuat cd images (ISO) dari ketiga file tersebut. # mkisofs -r -o ora9id1. iso Disk1/
Lakukan hal yang sama untuk Disk2 dan Disk3. Perintah di atas akan menghasilkan 3 iso image yang selanjutnya akan digunakan dalam proses instalasi. Anda mungkin menemukan banyak peringatan, biarkan saja! Image yang terbentuk tetap akan menghasilkan informasi directory tree yang benar. Langkah selanjutnya adalah mem-burn iso image tersebut ke dalam cd. # cdrecord -scanbus (Catat kode device, misal 0,1,0) # cdrecord -v dev=0,1,0 speed=4 ora9id1.iso
Jika anda kesulitan untuk melakukan tahap ini, silahkan hubungi nidza99@spymac. com untuk mendapatkan CD yang siap pakai.
Diperlukan sekitar 1,5GB disk space untuk menyimpan ketiga file tersebut. Jika an-
Download dan Instalasi JRE
Gambar 5. Memilih database configuration - general purpose.
Gambar 6. Database Identification.
www.infolinux.web.id
Download paket Java jre 1.1.8v3 dari http://
INFOLINUX 02/2005
51
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Oracle 9i
12. Instalasi dimulai. Proses ini cukup lama, tergantung spesifikasi komputer Anda. Perhatikan CD yang harus Anda ganti (gambar 8). Pada proses instalasi ini akan terjadi 2 buah error:
Gambar 7. Use the default character set.
www.blackdown.org. Pindahkan atau copykan file tersebut ke /usr/local, lalu ekstrak dan buat soft link menjadi jre. # cd /usr/local # tar -zxvf jre118_v3.tar.gz # ln -s jre118_v3 jre
Gambar 8. Menunggu proses instalasi.
installer sudah memberikan isian default (gambar 2), yakni: source path: /mnt/cdrom/ stage/products.jar destination name: OUIHome destination path: /u01/app/ oracle/product/9.2.0.1.0
3. Instalasi Oracle 9i Login sebagai user “oracle” dan masukkan cd pertama ke dalam cdrom anda. Cari file berikut dan jalankan: #./runInstaller
1. Pada tahap ini installer akan membaca Oracle user environment, dan memunculkan layar pertama Oracle Universal Installer versi 2.2. 2. Selanjutnya akan muncul Welcome Screen dari tahap instalasi (gambar 1). Klik Next. 3. UNIX Group Name Screen menanyakan Oracle Installation Group yang secara default adalah oinstall. Ikuti saja, karena buku ini menggunakan pilihan default tersebut. Akan muncul sebuah dialog yang memberitahu anda untuk menggunakan root terminal, dan ikuti petunjuk pada dialog tersebut, yakni eksekusi file /tmp/orainstRoot.sh Jika sukses akan muncul pada terminal tersebut seperti berikut: Creating Oracle Inventory pointer file (/etc/oraInst. loc) Changing groupname of /u01/ app/oracle/oraInventory to oinstall.
Selanjutnya klik Continue pada dialog yang muncul tadi. 4. Layar selanjutnya, anda akan dihadapkan pada entry File Location. Biasanya
52
INFOLINUX 02/2005
Klik Next. 5. Available Products akan memberikan pilihan sebagai berikut: Oracle 9i Database 9.2.0.1.0 Oracle 9i Client 9.2.0.1.0 Oracle 9i Management and Integration 9.2.0.1.0 Oracle 9i Cluster Manager 9.2.0.1.0 Untuk saat ini pilih yang pertama, Database. Jika Anda ingin menambah bahasa yang akan digunakan, klik Product Languages, pilih yang diinginkan, misalnya Indonesia (gambar 3). Klik Next. 6. Pada layar Installation Types, pilih Standard Edition (gambar 4). Klik Next. 7. Selanjutnya anda pilih General Purpose pada pilihan Database Configuration. (gambar 5). Klik Next. 8. Kemudian Anda dihadapkan pada layar Database Identification. Masukkan Global Database Name dan SID-nya. Misalnya ORTD.hostname dan TSH1 untuk SID defaultnya (gambar 6). Hostname adalah nama komputer anda. Klik Next. 9. Entry selanjutnya secara default /u01/ app/oracle/oradata pada Directory of Database Files. Klik Next. 10. Kemudian pilih Use the default character set (gambar 7). Klik Next. 11. Selesai. Anda akan diperlihatkan Summary dari pilihan-pilihan yang dipilih tadi, sebelum melanjutkan ke proses instalasi. Klik Next.
www.infolinux.web.id
* Problems with ins_ oemagent.mk. * “Error in invoking target install of makefile $Oracle_HOME/ctx/lib/ins_ctx. mk”.
Biarkan saja pada pesan error pertama, anda akan memperbaiki pada tahap pasca instalasi. Pilih Ignore pada error pertama. Pada pesan error kedua, bukalah konsol, login sebagai user “oracle” atau jika anda pada mode grafis, logout dan login kembali dengan user “oracle”. Ketikkan perintah berikut: $ cd $ORACLE_HOME/install $ tail make.log
Anda akan melihat baris yang seperti di bawah ini: gcc -o ctxhx -L/u01/app/ oracle/product/9.2.0.1.0/ ctx/lib/ -L/u01/app/oracle/ product/9.2.0.1.0/lib/ -L/u01/app/oracle/product/
Gambar 9. Mengeksekusi root.sh.
Gambar 10. Akhir instalasi.
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Oracle 9i
Gambar 11. Oracle Enterprise Manager.
9.2.0.1.0/lib/stubs/ /u01/ app/oracle/product/9.2.0.1.0/ ctx/lib/ctxhx.o -L/u01/app/oracle/product/ 9.2.0.1.0/ctx/lib/ -lm -lsc_ ca -lsc_fa -lsc_ex -lsc_da -lsc_ut -lsc_ch -lsc_fi -lctxhx -lc -Wl,-rpath,/u01/app/oracle/ product/9.2.0.1.0/ctx/lib lnls9 -lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lnls9
Jalankan gcc seperti di bawah ini “DALAM 1 LINE” pada direktori $ORACLE_HOME/bin. Caranya, pindah ke direktori $ORACLE_HOME/bin, lalu ketikkan sebuah baris perintah gcc yang panjang berikut ini (dalam 1 baris, bukan baris per baris): $ cd $ORACLE_HOME/bin $ gcc -o ctxhx -L/u01/app/ oracle/product/9.2.0.1.0/ ctx/lib/ -L/u01/app/oracle/ product/9.2.0.1.0/lib/ -L/u01/ app/oracle/product/9.2.0.1.0/ lib/stubs/ /u01/app/oracle/ product/9.2.0.1.0/ctx/lib/ ctxhx.o -L/u01/app/oracle/ product/9.2.0.1.0/ctx/lib/ -lm -lsc_ca -lsc_fa -lsc_ex lsc_da -lsc_ut -lsc_ch -lsc_fi -lctxhx -lc -Wl,-rpath,/u01/ app/oracle/product/9.2.0.1.0/ ctx/lib -lnls9 -lcore9 -lnls9 -lcore9 -lnls9 -lxml9 -lcore9 -lunls9 -lnls9 -ldl
Gambar 12. Connect as SYSDBA.
Setelah anda jalankan perintah di atas, dan selesai tanpa ada pesan error, tekan tombol “Ignore” pada error dialog dan lanjutkan proses instalasi. Sebuah dialog akan muncul memberitahu bahwa ada script yang harus anda jalankan sebelum proses instalasi dilanjutkan, yakni file root.sh yang terletak pada direktori $ORACLE_HOME. Eksekusilah file tersebut dengan user root (gambar 9). Jika benar, akan muncul perintah sebagai berikut: Adding entry to /etc/oratab file... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root.sh script. Now product-specific root actions will be performed.
13. Configuration Tools akan menjalankan beberapa proses dan melaporkan hasilnya. Jika failure, tidak mengapa. Coba lakukan hal berikut. Pada $ORACLE_ HOME ada direktori JRE. # rm -rf JRE # ln -s /usr/local/jre/ JRE
Kemudian klik tombol Retry. Kalaupun tidak berhasil juga, tidak apa-apa. Anda bisa melakukannya nanti. Karena ini merupakan proses opsional. Jika berhasil, anda akan diminta untuk memasukkan password user SYS dan SYSTEM. Catat baik-baik password ini
www.infolinux.web.id
untuk troubleshooting pada saat yang diperlukan. 14. Akhir instalasi akan memperlihatkan beberapa informasi. Diantaranya anda dapat mengakses database anda menggunakan web browser. Misalnya http://hostname:7777. Kini anda bisa keluar dari proses instalasi dengan menekan tombol Exit. Lihat gambar 10. Setelah anda keluar, akan muncul Oracle Enterprise Manager (OEM). Lihat gambar 11. Pada frame sebelah kiri anda bisa mengklik tanda [+] pada Network, kemudian akan muncul tanda [+] Databases. Ketika anda klik kembali pada Databases, anda akan lihat nama database yang telah anda buat. Terakhir, jika anda klik nama database tersebut, maka akan muncul window baru untuk login. Gunakan user “sys” dan passwordnya yang telah anda catat pada langkah ke-12 di atas. Pilih Connect as SYSDBA (kalaupun anda pilih NORMAL, OEM tetap akan memberitahu bahwa anda harus connect menggunakan SYSDBA). Cobalah untuk mendapatkan tampilan seperti gambar 12. Anda juga bisa mencoba Quick Tour. Tombolnya tersedia pada sudut kanan bawah pada OEM. Artikel berikutnya akan membahas langkah-langkah pasca instalasi, termasuk menguji hasil instalasi dengan perintahperintah SQL*Plus. Bagian terakhir juga akan menjelaskan cara menjalankan Oracle 9i, termasuk mengonfigurasi Red Hat 9 agar siap menjalankan Oracle 9i ketika mesin restart, misalnya diset berjalan pada run level 3 dan dimatikan pada run level 0. Andri Darmawan (
[email protected])
INFOLINUX 02/2005
53
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Zero Configuration Networking
Zero Configuration Networking Bagian 1 dari 2 artikel Zero configuration networking saat ini sedang menjadi trend di Indonesia, khususnya berkaitan dengan merebaknya hotspot di kota-kota besar. Server zero configuration dibangun agar klien dapat terhubung ke jaringan tanpa harus dikonfigurasi.
Z
ero configuration (zeroconf) networking adalah istilah baru untuk memanfaatkan aplikasi-aplikasi jaringan yang sudah umum, seperti NAT, DNS, dan DHCP. Beberapa kelebihan dari sistem zero configuration networking adalah sebagai berikut: Dapat mengalokasikan alamat secara otomatis. Bisa berfungsi sebagai Printer Server secara otomatis. Dapat merelokasikan nama dan alamat IP dari klien-klien yang terkoneksi secara otomatis. Dapat mengalokasikan beraneka alamat IP secara simultan, tanpa mengganggu kinerja sistem. Mendukung penggunaan wireless device terbaru, seperti wireless device 802-11 G dan bluetooth.
Secara garis besar, zero configuration networking bisa digambarkan sebagai berikut, serangkaian’ konfigurasi yang memungkinkan klien bisa mengakses Server dengan cara yang sederhana dan mudah. Untuk jelasnya, Anda bisa melihat pada contoh gambar 1. Agar lebih jelas, dalam melakukan penulisan ini, penulis melakukan beberapa kali percobaan. Dengan beberapa spesifikasi dari peralatan dan beberapa konfigurasi yang penulis gunakan. Adapun spesifikasi tersebut adalah sebagai berikut: Server Untuk Server, penulis menggunakan PC dengan spesifikasi sebagai berikut: Processor AMD Duron 1,5 GH RAM 256 MB HDD 40 GB
Penggunaan zero configuration, khususnya dikombinasikan dengan penggunaan wireless device, sudah sangat meluas. Beberapa manfaat dari pemanfaatan zero configuration networking dalam kehidupan seharihari di antaranya adalah sebagai berikut: Penyelenggaraan hotspot di beberapa wilayah, yang memungkinkan akses internet melalui perangkat mobile computer (laptop), PDA, dan handphone. Penggunaan di dunia industri memungkinkan proses produksi dilakukan secara wireless (nir kabel) sehingga proses produksi bisa berjalan dengan lebih efisien. Setting zero configuration networking banyak digunakan pada pelayanan public, seperti: bandara, mall, pusat hiburan, dan lain-lain.
54
INFOLINUX 02/2005
Gambar 1. Contoh penggunaan zeroconf networking.
www.infolinux.web.id
Penulis menggunakan Tawie Secure Linux 2.0 untuk Server, karena pertimbangan kemudahan dan keamanan serta kecepatan yang lebih baik dari distro lainnya. Klien Penulis menggunakan Laptop Asus dual o/s, dengan spesifikasi sebagai berikut: Processor Intel Pentium 4 - 2,2 GH RAM 256 MB HDD 40 GB Dengan sistem operasi yang terpasang adalah Windows XP, SuSE Linux 8.2 dan Slackware Linux. Access Point Access point yang digunakan adalah
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
TUTORIAL Zero Configuration Networking
[
[email protected]:~] # iptables -I POSTROUTING -t nat -s 0/0 -d 0/0 -j MASQUERADE
Rangkaian perintah tersebut di atas akan membuat PC klien bisa mengakses keluar jaringan lokal atau ke Internet. Gambar 2. Perangkat wireless senao.
Senao external indoor dan Orinoco PCMCIA untuk klien, seperti terlihat pada gambar 2. Sebelum memulai pekerjaan setting protokol zero configuration networking, ada beberapa hal yang dibutuhkan, antara lain sebagai berikut: NAT: NAT berfungsi sebagai jembatan bagi klien dalam mengakses jaringan yang berbeda baik kelas maupun alamat IP-nya. DNS: DNS berfungsi menterjemahkan nama domain kedalam nomor IP. DHCPD: DHCPD berguna bagi klien dalam mengakses jaringan secara mudah dan sederhana. Sekarang, mari kita mulai berkarya dengan zero configuration networking.
Setting NAT Fungsi dari NAT (Network Address Translation) adalah sebagai jembatan bagi komputer klien agar bisa mengakses IP pada jaringan yang berbeda, misalnya internet. Untuk mengaktifkan NAT, caranya adalah demikian: 1. Lakukan login sebagai root: Anda masuk ke konsol [Alt]+[F1] s/d [Alt]+[F6] (salah satu) root: root Password: password (ganti dengan password Anda)
2. Mengaktifkan IP Forward Aktifkan IP Forward, dengan mengetikkan sintaks perintah sebagai berikut: [
[email protected]:~] # echo 1 > /proc/sys/net/ipv4/ip_forward
3. Menjalankan Iptables Jalankan Iptables dengan mengetikan sintaks perintah berikut:
Setting DNS DNS merupakan singkatan dari Domain Name System atau sistem penamaan domain, berguna untuk menterjemahkan nama host menjadi nomor IP. Misalnya, Anda ingin menyambungkan ke salah satu alamat di Internet, contohnya 216.236.100.35, dengan bantuan DNS Anda bisa menggantinya dengan ai.co.id Komputer menggunakan alamat IP dalam proses hubungan antar komputer di Internet. Alamat IP merupakan dasar proses routing dalam komunikasi antar komputer di Internet. Tentunya akan sangat menyakitkan kepala, jika kita harus mengenali sebuah komputer dengan nomor IP-nya (seperti nomor telepon saja). Dengan adanya fasilitas DNS, pengguna Internet cukup mengingat nama host tanpa perlu mengetahui alamat IP dari host tersebut. Salah satu layanan fundamental pada jaringan Internet (TCP/IP) adalah name service. Cara yang paling mudah dan sederhana dalam malakukan setting DNS adalah dengan melakukan editing pada file /etc/resolv.conf dan file /etc/hosts. Adapun langkah-langkahnya adalah sebagai berikut: 1. Pada konsol, lakukan login sebagai root login: root Password: password (ganti dengan password Anda)
Anda juga bisa menjadi root, pada saat Anda login sebagai user biasa atau pada waktu menggunakan X Window, dengan mengetikkan sintaks perintah pada konsol sebagai berikut: [
[email protected]:~] $ su -l root Password: (isi dengan password root Anda)
2. Kemudian lakukan editing file /etc/hosts, dengan mengetikkan perintah berikut ini: [
[email protected]:~] # vi /etc/ hosts
www.infolinux.web.id
INFOLINUX 02/2005
55
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Zero Configuration Networking
3. Tambahkan kalimat sebagai berikut: 127.0.0.1 localhost. localdomain localhost 192.168.2.100 rumah.ai.co. id rumah
4. Simpan hasil pekerjaan Anda dengan mengetikkan perintah sebagai berikut: [Esc]:wq
5. Kemudian, lakukan editing pada file /etc/resolv.conf, dengan mengetikkan perintah berikut ini: [
[email protected]:~] # vi /etc/ resolv.conf
6. Isikan kalimat sebagai berikut: search . nameserver 192.168.2.100 domain rumah. ai.co.id
7. Simpan hasil pekerjaan Anda dengan mengetikkan perintah sebagai berikut: [Esc]:wq
8. Untuk memastikan file-file tersebut di atas teraktivasi, Anda bisa menjalankan ulang network, dengan mengaktifkan sintaks perintah berikut ini: [
[email protected]:~] # vi /etc/ init.d/network [Enter]
Pada saat PC klien mengakses alamat http://rumah.ai.co.id, server otomatis akan mengalokasikannya ke alamat 192.168.2.100. Penjelasan yang lebih rinci tentang DNS, akan disampaikan pada artikel berikutnya. Selanjutnya, kita akan menginjak pada pembahasan setting DHCPD.
Setting DHCP DHCP merupakan singkatan dari Dynamic Host Configuration Potocol, suatu perogram aplikasi server (daemon) yang memungkinkan pengaturan jaringan secara terpusat dari server, sehingga PC klien tidak perlu melakukan konfigurasi alamat IP, karena semuanya sudah ditangani oleh PC server. Keuntungan penggunaan DHCP dari sisi System Administrator, adalah kita tidak perlu melakukan pencatatan alamat IP pada masing-masing PC klien. Mungkin untuk kebutuhan sampai dengan 10 atau 20 PC
56
INFOLINUX 02/2005
klien masih bisa kita tangani, namun jika klien yang kita tangani sampai dengan 50 atau 100, bisa Anda bayangkan betapa rumit dan melelahkan pekerjaan yang harus kita tangani. Sekarang, marilah kita bersama-sama membahas tentang instalasi dan konfigurasi server DHCP (dhcpd, d artinya daemon, istilah lain dari server). Kita akan menggunakan klien Linux dan Microsoft Windows.
Download program server DHCP Jika dsitro Linux Anda belum menyertakan paket server DHCP (dhcp-server atau dhcpcd), Anda bisa melakukan download pada alamat berikut ini: ftp://ftp.phystech. com/pub/
Kompilasi dan instalasi server DHCP Pada saat Anda melakukan download program DHCPd, Anda bisa mengambil programnya dalam bentuk ekstensi .rpm maupun source code yang menggunakan ekstensi .tar.gz. Sekarang kita akan membahas kompilasi dari kedua macam jenis file tersebut: Instalasi menggunakan RPM Untuk melakukan instalasi dengan menggunakan file berekstensi .rpm, caranya jauh lebih mudah daripada kompilasi dengan menggunakan kode asal atau source code. 1. Pada konsol, lakukan login sebagai root login: root Password: password (ganti dengan pasword Anda)
Anda juga bisa menjadi root, pada saat Anda login sebagai user biasa atau pada waktu menggunakan X Window, dengan mengetikkan sintaks perintah pada konsol sebagai berikut: [
[email protected]:~] $ su -l root Password: (isi dengan password root Anda)
2. Pindah ke direktori, dimana Anda meletakkan file. Dalam contoh ini, kami meletakkan file pada direktori /tmp. Ketikkan perintah sebagai berikut:
[
[email protected]:~] # rpm -ivh dhcpcd-1.3.22pl1-7.i386.rpm dhcpd ####################### #########################
4. Selanjutnya, Anda bisa langsung masuk pada pembahasan konfigurasi DHCP Server Kompilasi menggunakan tar.gz Kompilasi dengan menggunakan source code ini, sedikit lebih rumit namun Anda tidak usah takut, karena langkah-langkah berikut ini akan mempermudah Anda dalam melakukan kompilasi. Sekarang mari kita coba bersama-sama. Pada konsol, lakukan login sebagai root login: root Password: password (ganti dengan pasword Anda)
Anda juga bisa menjadi root, pada saat Anda login sebagai user biasa atau pada waktu menggunakan X Window, dengan mengetikkan sintaks perintah pada konsol sebagai berikut: [
[email protected]:~] $ su -l root Password: (isi dengan password root Anda)
Pindah ke direktori, dimana Anda meletakkan file. Dalam contoh ini, kami meletakkan file pada direktori /usr/src, untuk mempermudah dalam pengelolaan sistem file. Ketikkan perintah sebagai berikut: [
[email protected]:~] # cd /usr/ src
Lakukan ekstraksi file, dengan mengetikkan perintah sebagai berikut: [
[email protected]:src] # tar zxvf dhcpcd-1.3.18pl1.tar.gz
Pindah ke direktori dhcpcd-1.3.18pl1, ketikkan perintah berikut ini: [
[email protected]:src] # cd dhcpcd-1.3.18pl1
[
[email protected]:~] # cd /tmp
Lakukan kompilasi dengan mengetikkan perintah sebagai berikut:
3. Lakukan kompilasi dengan mengetikkan perintah sebagai berikut:
[
[email protected]:src] # make [
[email protected]:src] # make install
www.infolinux.web.id
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Zero Configuration Networking
Konfigurasi server DHCP Untuk melakukan konfigurasi DHCP, Anda perlu melakukan editing pada file / etc/dhcpd.conf. Beberapa parameter harus diawali dengan kata “option”. Semua parameter termasuk option, yang dinyatakan sebelum penggunaan tanda {} disebut dengan global parameter. Adapun langkah-langkahnya adalah sebagai berikut: 1. Pada konsol, login sebagai root: Login: root Password: password
2. Lakukan editing pada file /etc/dhcpd. conf [
[email protected]:~] # vi /etc/ dhcpd.conf
3. Di bawah ini, diperlihatkan router menggunakan alamat IP 192.168.0.254 dan DNS 1 menggunakan alamat IP 192.168.0.254 # Skrip konfigurasi DHCPD # Copyright ##169; by R. Kresno Aji <masaji@ atlantisindonesia.com>
shutdown. Kita tambahkan juga dengan group sharing, subnet, host dan range alamat IP client yang kita ijinkan untuk mengakses server. shared-network namajaringan { option domain-name “rumah.ai.co.id”; option domain-nameservers 192.168.2.100, 10.0.0.2; option routers 192.168.2.100; # Contoh range jaringan subnet 10.0.0.0 netmask 255.255.255.0 { #parameters untuk subnet range 10.0.0.10 10.0.0.110; } }
Pada contoh skrip di atas, tampak bahwa Server akan memberikan 100 alamat IP
kepada setiap PC klien, dimulai dari alamat IP 10.0.0.10 sampai dengan nomor IP 10.0.0.110 5. Membuat Group Sharing Selanjutnya kita tambahkan group sharing, yang berisi user yang boleh mengakses Server kita. Anda terlebih dahulu harus mengetahui alamat (mac) atau nomor seri dari setiap kartu jaringan yang akan Anda daftarkan ke DHCPD. Hal ini memungkinkan Anda untuk mengawasi aktivitas setiap user yang mengakses server Anda. Masukkan nomor seri kartu jaringan tersebut ke dalam kalimat hardware ethernet. Seperti tampak pada contoh berikut ini. group { host masaji { option host-name “masaji.ai.co.id”; hardware ethernet 00: A0:78:8E:9E:AA; fixed-address 10.0.0.17; }
ddns-update-style ad-hoc; default-lease-time 600; max-lease-time 7200; option subnet-mask 255.255.255.0; option broadcast-address 192.168.2.255; option routers 192.168.2.100; option domain-name-servers 192.168.2.100, 10.0.0.2; option domain-name “rumah. ai.co.id”; DHCPDARGS=eth0;
Jika Anda ingin menambahkan alamat WINS Server pada klien Windows, Anda bisa menambahkan kalimat sebagai berikut: option netbios-name-servers 192.168.2.100;
4. Kemudian kita tambahkan network sharing untuk berbagi jaringan antar PC Desktop. Tambahkan juga ns1 dan ns2, fungsi dari ns2 adalah untuk melakukan backup jika ns1 mengalami crash atau
www.infolinux.web.id
INFOLINUX 02/2005
57
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Zero Configuration Networking
b. Masuk ke direktori /etc/init.d dengan mengetikkan perintah sebagai berikut: [
[email protected]:~] # cd /etc/ init.d
c. Mengaktifkan service yang akan dijalankan saat boot Untuk mengaktifkan service dhcpd, ketikkan sintaks perintah sebagai berikut: [
[email protected]:init.d] # chkconfig --level 345 dhcpd on
Selanjutnya DHCPD akan dijalankan secara otomatis oleh sistem pada saat Anda menghidupkan PC.
Gambar 5. Mengatur services dengan ntsysv.
host hartx { option host-name “hartx.ai.co.id”; hardware ethernet 00: A1:DD:74:C3:F2; fixed-address 10.0.0.11; } }
hardware ethernet 00: A0:78:8E:9E:AA; fixed-address 10.0.0.17; }
7. Baris berikut ini bermanfaat jika Anda menginginkan penggunaan DHCP hanya pada satu pintu, dalam arti hanya menggunakan satu kartu jaringan. DHCPDARGS=eth0
Jika Anda memutuskan untuk meniadakan pengawasan terhadap masing-masing nomor IP, Anda bisa mentiadakan alamat MAC dari kartu jaringan dengan menambahkan tanda pagar di depan kalimat dengan isi sama dengan di bawah ini: # hardware ethernet 00:A1: DD:74:C3:F2;
6. Jika Anda memutuskan untuk melakukan sharing IP secara statis, dan bisa mengetahui aktivitas user yang Anda kehendaki untuk sebuah IP klien, Anda bisa melakukan pencatatan nomor seri atau MAC address kartu jaringan yang terpasang pada PC klien yang terhubung ke server sebelum Anda daftarkan ke DHCPD. Selanjutnya Anda tambahkan seperti contoh di bawah ini. host masaji { option host-name “masaji. ai.co.id”;
58
INFOLINUX 02/2005
8. Simpan hasil pekerjaan Anda. Simpan hasil pekerjaan Anda dengan mengetikkan sintaks perintah berikut ini: : [Esc]wq
9. Jalankan DHCPD Server dengan mengetikkan perintah berikut ini: [
[email protected]:~] # /etc/ init.d/dhcpd start
10. Jika ingin diaktifkan oleh sistem secara otomatis pada saat PC dinyalakan, ada dua cara untuk menjalankan DHCPD secara otomatis. Antara lain adalah sebagai berikut: Menggunakan chkconfig a. Pada konsol, lakukan login sebagai root login: root Password: password (ganti dengan pasword Anda)
www.infolinux.web.id
Menggunakan program ntsysv (RedHat/ Fedora) atau drakxsrvices Jika Anda menggunakan distro RedHat, Anda bisa menggunakan program ntsysv untuk mengaktifkan dhcpd secara otomatis. Adapun caranya adalah sebagai berikut: a. Pada konsol, lakukan login sebagai root login: root Password: password (ganti dengan pasword Anda)
b. Menjalankan ntsysv Untuk menjalankan ntsysv, Anda tinggal mengetikkan sintaks perintah sebagai berikut: [
[email protected]: init.d] # ntsysv
c. Mengaktifkan service dhcpd Sekarang Anda bisa mengaktifkan service dhcpd, dengan cara mengarahkan pointer pada tulisan dhcpd, kemudian tekan tombol spasi, sehingga tampak tanda bintang pada bagian sebelah kiri service dhcpd, seperti tampak pada gambar 5. d. Kemudian tekan tombol [Ok] untuk keluar dari jendela service. e. Sekarang, DHCP Server akan langsung berjalan secara otomatis, pada saat Anda menyalakan PC. Konfigurasi server zero configuration networking selesai. Artikel sambungannya akan membahas cara setting klien Linux dan Windows untuk zeroconf networking ini. R. Kresno Aji (
[email protected])
IKLAN
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Proxy
Konfigurasi Transparent Proxy Transparent proxy merupakan salah satu cara untuk memudahkan pekerjaan administrator jaringan. Sebagai pengelola warnet misalnya, Anda tidak perlu mengatur satu per satu komputer klien agar pasti melewati server proxy.
S
alah satu fungsi proxy adalah untuk menyimpan cache. Apabila sebuah LAN menggunakan proxy untuk berhubungan dengan Internet, maka yang dilakukan oleh browser ketika user mengakses sebuah url web server adalah mengambil request tersebut di proxy server. Sedangkan jika data belum terdapat di proxy server maka proxy mengambilkan langsung dari web server. Kemudian request tersebut disimpan di cache proxy. Selanjutnya jika ada client yang melakukan request ke url yang sama, akan diambilkan dari cache tersebut. Ini akan membuat akses ke Internet lebih cepat. Proses di atas secara sederhana menunjukkan bahwa pemakaian proxy tergantung konfigurasi browser. Kenapa dari browser? Karena setting proxy itu dasarnya juga ada pada browser, selain di server. Dengan
melakukan konfigurasi di browser, maka pengguna komputer klien dapat dengan mudah mengubah ip address proxy. Jika di sebuah warnet semua komputer di-deepfreeze, maka dengan mudah orang bisa mengganti alamat ip proxy, karena hal tersebut dapat dilakukan tanpa restart komputer. Lihat Gambar 1. Lalu, dengan cara apa permasalahan berikut ini dapat diatasi? 1. Admin jaringan menghendaki semua komputer ketika terhubung ke internet mau atau tidak mau harus melewati proxy. 2. Sungguh tidak mengenakkan jika di satu komputer terdapat lebih dari satu macam browser dan kita harus setting ip proxy satu persatu. Salah satu cara untuk mengatasi hal terse-
but adalah transparent proxy atau proksi transparan. Dengan transparent proxy kita memaksa setiap request ke port http di-redirect ke port proxy.
Kebutuhan software 1. Linux dengan Iptables dan Squid yang sudah terinstalasi. Misalnya, port proxy squid diset 8080 (port default: 3128). 2. Program bernama transproxy (ftp://ftp. nlc.net.au/pub/unix/transproxy/). Sifat program ini optional (tidak harus ada). Jadi, terdapat dua metode dalam membuat transparent proxy, yaitu tanpa menggunakan program bantu (cukup dengan Squid dan Iptables), dan menggunakan program bantu seperti transproxy.
Tidak menggunakan transproxy Jika anda tidak menggunakan program bantu apapun, silakan edit file squid.conf (biasanya terdapat di direktori /etc/squid/). 1. Secara default, squid menggunakan port 3128. Uncomment dan ganti baris http_ port 3128 menjadi http_port 8080. Lihat Gambar 2. 2. Tambahkan baris berikut atau uncomment dari file tersebut (jika sudah ada baris-baris ini yang diawali tanda # atau ;). httpd_accel_host virtual httpd_accel_port 80 httpd_accel_with_proxy on httpd_accel_uses_host_ header on
3. Kemudian ketikkan perintah ini di shell atau prompt root, atau disimpan dalam file yang dijalankan saat boot, seperti /etc/rc.local atau yang lain: # echo 1 > /proc/sys/net/ ipv4/ip_forward
Gambar 1. Setup proxy di browser Mozilla Firefox.
60
INFOLINUX 02/2005
www.infolinux.web.id
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Proxy
# /sbin/iptables –t nat –A PREROUTING –i eth0 –p tcp ––dport 80 –j REDIRECT ––to– port 8080
Arti baris perintah terakhir di atas, request yang masuk ke port 80 akan di-redirect (diarahkan) ke port 8080. Contoh kasus ini berlaku untuk gateway dan proxy dalam satu mesin (satu komputer dengan satu alamat IP).
Menggunakan transproxy Instalasi transproxy Setelah Anda mendapatkan file transproxy (misalnya transproxy_1.4.orig.tar.gz), simpan pada suatu direktori lalu ekstrak, kompilasi, dan instalasi. # tar zxvf transproxy_1.4.orig. tar.gz transproxy-1.4/ transproxy-1.4/tproxy.c transproxy-1.4/README transproxy-1.4/Makefile transproxy-1.4/TODO transproxy-1.4/CHANGELOG transproxy-1.4/tproxy.8 transproxy-1.4/COPYRIGHT transproxy-1.4/acl.c transproxy-1.4/acl.h transproxy-1.4/tproxywatch transproxy-1.4/tproxyrun # cd transproxy-1.4/ # make # make install
Jika sudah terinstalasi, pastikan file inti dari transproxy yaitu tproxy, tproxyrun dan tproxywatch terletak di /usr/local/sbin.
Konfigurasi transproxy Buat file konfigurasi yang berisi empat baris perintah seperti di bawah ini. Anda dapat menyimpannya menjadi file berekstensi *.sh dan mengeksekusinya pada awal Linux booting (misalnya dipanggil dari /etc/init. d/network atau dari /etc/rc.local). Sebagai contoh, simpan file dengan nama tproxy.sh. #!/bin/sh
Gambar 2. Mengedit port squid dari 3128 menjadi 8080.
/usr/local/sbin/tproxy –s 81 –r nobody 192.168.0.1 8080 echo 1 > /proc/sys/net/ipv4/ ip_forward /sbin/iptables –t nat –A PREROUTING –i eth0 –p tcp ––dport 80 –j REDIRECT ––to–port 81
Baris kedua script di atas menyatakan bahwa transproxy bekerja pada port 81, dan akan meneruskan request yang masuk langsung ke proxy server dengan ip address 192.168.0.1 port 8080. Request yang masuk ke port 81 diperoleh dari baris perintah terakhir. Setiap request web (port 80) yang masuk ke gateway di-redirect (diarahkan) ke port 81. Simpan file tproxy.sh ke direktori /usr/ local/sbin/. Tambahkan juga chmod 700. Untuk dapat dieksekusi setiap sistem dibooting, buka file /etc/rc.local dan tambahkan di bagian bawah: /usr/local/sbin/tproxy.sh
Cek Konfigurasi Transproxy Dua perintah berikut ini untuk mengetahui bahwa port 81 yang digunakan transproxy sudah aktif, dan permintaan ke port 80 (http) telah diarahkan ke port 81. # netstat –an | grep 81 tcp 0 0 0.0.0.0:81 0.0.0.0:*
www.infolinux.web.id
LISTEN # /sbin/iptables –L –t nat Chain PREROUTING (policy ACCEPT) target prot opt source destination REDIRECT tcp –– anywhere anywhere tcp dpt:http redir ports 81
Nah, dengan begini Anda sebagai sysadmin tidak perlu lagi susah-susah untuk mengonfigurasi ip address proxy pada masing-masing browser, karena setiap request ke port 80 akan di-redirect ke port 81 atau langsung ke port proxy 8080. Dengan cara ini client tidak tahu bahwa sebenarnya – mau atau tidak mau – setiap request ke web selalu dilayani oleh proxy. Untuk mengujinya, jalankan server proxy untuk mengakses Internet, lalu coba menjalankan web browser di komputer klien tanpa disetup proxy-nya (no proxy atau direct). Jika berhasil, matikan squid di server untuk menguji apakah klien tidak bisa mengakses web. Sebaliknya, jika klien belum bisa mengakses web, pastikan komputer klien sudah diset menggunakan gateway dengan alamat IP yang dimiliki server transparent proxy ini. Masih belum bisa? Cek ulang semua konfigurasi server dan restart squid. M. Syafii (
[email protected])
INFOLINUX 02/2005
61
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
ATutor
ATutor, CMS untuk Online Learning Di dunia open source tersedia banyak pilihan aplikasi e-learning atau online learning. Kali ini Anda dapat mencoba salah satu paket yang berbasis LAMP (Linux, Apache, MySQL, dan PHP).
P
royek Open Source telah berlangsung cukup lama, namun sampai saat ini, masih belum cukup banyak organisasi yang mau mengakui pergerakan Open Source dalam menjalankan misinya, sehingga banyak orang masih belum mengenal apa itu Open Source dan Free Software. Untungnya, hal ini tidak lagi terjadi, karena PBB (Perserikatan Bangsa-Bangsa) telah mendirikan sebuah organisasi yang bertugas untuk mempromosikan Open Source dan juga Free Software. Nama organisasi ini adalah IOSN (International Open Source Network), yang berada di bawah pengelolaan organisasi lain, yaitu UNDP (United Nations Development Programme). Aktivitas utama dari IOSN terkait dengan teknologi dan aplikasi FOSS (Free/ Open Source Software) di kawasan Asia Pasifik. Tujuan utama dari dibentuknya IOSN adalah membuat supaya negara-negara di kawasan Asia Pasifik dapat menghasilkan perkembangan ekonomi dan sosial yang
Gambar 1. Website IOSN PBB.
62
INFOLINUX 02/2005
cepat dengan menggunakan solusi FOSS ICT yang efektif untuk menjembatani fenomena digital yang sekarang ini sudah melanda seluruh penjuru dunia. Bahkan organisasi ini menetapkan tanggal 28 Agustus menjadi hari kebebasan software (Gambar 1). Pendidikan menjadi salah satu fokus utama dalam mencapai tujuan yang diimpikan oleh PBB dalam promosi Open Source dan Free Software, mengingat masih banyak negara yang kurang memperhatikan masalah pendidikan dan lebih terfokus pada bidang-bidang yang lain. Pada kesempatan itu, IOSN juga mengeluarkan dua software pendukung pendidikan, yaitu ATutor dan SchoolTool. Pada kesempatan ini, kita akan melihat lebih lanjut mengenai ATutor. ATutor merupakan sebuah CMS (Content Management System) Open Source yang dapat dipergunakan untuk pembelajaran secara online, atau istilah umumnya Online Learning atau E-Learning. Dengan
Gambar 2. Website ATutor.
www.infolinux.web.id
memanfaatkan ATutor, kita bisa membangun semacam kampus virtual yang sederhana, namun efektif karena bisa menjangkau banyak kalangan (bersifat global karena melalui medium Internet), tidak tergantung ruang kelas, dan juga mudah untuk diupdate, sehingga materinya menjadi tidak membosankan. ATutor juga telah melengkapi dirinya dengan beberapa standar yang baku, seperti spesifikasi aksesibilitas W3C WCAG 1.0 pada level AA+, sehingga memungkinkan semua orang untuk dapat menggunakan sistem ini dengan baik dan spesifikasi W3C XHTML 1.0. Untuk bisa mendapatkan paket ATutor, silakan berkunjung ke situs http://www.atutor.ca/ (Gambar 2). Pada situs ini telah disediakan banyak informasi mengenai proyek ini, mulai dari dokumentasi, demo, proses pengembangan, translasi, dan sebagainya. Versi stabil dari ATutor saat penulisan artikel ini adalah 1.4.2. Ukuran dari paket stabil sekitar 1MB. Pada halaman download,
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
ATutor
Gambar 3. Awal instalasi.
Anda juga bisa menjumpai file dokumentasi, tambahan bahasa (language pack), dan modul untuk Post-Nuke. Penulis menggunakan sistem operasi Mandrake Linux dengan Apache 2.0.48, PHP 4.3.4, MySQL 4.0.18, dan ATutor versi 1.4.1 untuk penulisan artikel ini. Proses instalasi dari aplikasi ini sangatlah sederhana, karena hampir sama dengan aplikasi web-based lainnnya, yaitu Anda cukup mengisi form-form yang telah disediakan, dan script installer akan menyiapkan segala sesuatunya kepada Anda.
1. Download dan ekstraksi Pertama-tama, download ATutor dari http://www.atutor.ca/atutor/download.php dan pilih mirror yang sesuai dengan selera Anda. Setelah proses download selesai, pindahkan file ATutor ke direktori tertentu (penulis menggunakan direktori /usr/local/ src untuk contoh ini) dan lakukan ekstraksi paket. # mv ATutor.tar.gz /usr/local/ src # tar -xzvf ATutor.tar.gz
2. Simpan file ke direktori root apache Setelah paket diekstrak, pindahkan direktori ATutor di bawah direktori root pada web server Anda (pada Mandrake, direktori root default adalah /var/www/html). Anda bisa memberinya nama yang lebih mudah diingat, seperti tutorial. Setelah selesai, ubahlah owner dan group dari direktori tersebut menjadi user yang menjalankan apache (biasanya nobody atau apache).
Gambar 4. Setup database.
Hal ini untuk menghindari aplikasi ATutor dijalankan oleh user root yang jelas bukan merupakan tindakan yang baik ditinjau dari segi keamanan. # mv ATutor /var/www/html/ tutorial # chown -R apache:apache /var/ www/html/tutorial
3. Mengonfigurasi atutor Langkah selanjutnya adalah membuka halaman ATutor tersebut dengan menggunakan browser. Bukalah http://localhost/ tutorial atau ganti localhost dengan nama (hostname) komputer Anda. Ketika Anda membuka, akan terdapat pesan “ATutor does not appear to be installed. Continue on to the installation.” karena memang ATutor belum terinstalasi. Klik pada bagian “Continue on to the installation.” Pada halaman pertama (Gambar 3), Anda akan menjumpai halaman informasi sebelum instalasi, seperti kebutuhan server, database, dan PHP dengan beberapa parameter yang diperlukan. Meskipun pada informasi tersebut disebutkan ATutor tidak merekomendasikan penggunaan Apache 2.x, namun pada komputer penulis, ATutor dapat diinstall dengan baik tanpa ada masalah. Untuk PHP, parameter yang harus ada ketika Anda melakukan kompilasi dari source adalah --with-zlib dan –with-mysql. Sedangkan konfigurasi PHP pada php.ini yang harus diaktifkan adalah safe_mode dalam kondisi disabled (non aktif). Pada versi 1.4.1 ini, versi MySQL yang didukung masih versi 3.x, sedangkan versi 4.x belum
www.infolinux.web.id
didukung secara resmi, namun lagi-lagi penulis juga menggunakan versi 4.x dan aplikasi dapat berjalan dengan baik, sehingga Anda tidak perlu khawatir. Pada bagian bawah, akan ada pilihan untuk menginstall atau mengupgrade. Karena ini merupakan proses installasi pertama, maka kita pilih pilihan pertama, yaitu Install. Halaman berikutnya hanyalah halaman persetujuan sebelum Anda menginstall ATutor. Anda cukup memilih tombol “I Agree” untuk dapat melanjutkan proses instalasi.
4. Setup Database Proses berikutnya adalah setting database (Gambar 4). Di sini, Anda harus menentukan nama host, nomor port database, username beserta password dari user yang mempunyai wewenang untuk menciptakan database dan mengelolanya. Di sini, penulis telah membuat sebuah user baru dengan nama dan password yang sama, yaitu atutor. Selain itu, buatlah juga sebuah database baru dalam MySQL (proses ini harus dilakukan sebelum Anda menekan tombol Next). Penulis menggunakan nama database atutor. Anda juga bisa mengganti prefix yang akan ditambahkan pada awal dari setiap nama tabel jika Anda tidak suka dengan awalan AT_. $ Mysql -u <user> -p Enter password: <password_user> create database atutor; quit
5. Membuat tabel Setelah Anda menekan tombol Next, maka
INFOLINUX 02/2005
63
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
ATutor
Gambar 5. Membuat tabel.
proses akan dilanjutkan dengan menciptakan tabel-tabel yang diperlukan (Gambar 5). Pastikan bahwa semua tabel dapat dibuat dengan baik dengan pesan “created successfully”. Jika ada pesan error, maka lebih baik Anda menghapus database dan mengulangi proses dari awal, karena proses akan menolak jika tabel sudah ada. Gunakan perintah drop untuk menghapus database drop database atutor;
Gambar 6. Account administrator.
lain membuat account administrator, Anda juga menentukan konfigurasi dasar dari ATutor, seperti nama situs, lokasi logo dan gambar, notifikasi email, dan sebagainya. Batasi ukuran file yang boleh diupload dan ukuran kursus karena akan menghemat bandwidth dan juga ruang harddisk. Pada pilihan direktori cache, pastikan Anda memilih sebuah direktori yang mampu ditulis oleh user apache (atau user lain yang Anda tentukan pada saat mengubah user untuk ATutor).
6. Membuat account administator Langkah berikutnya adalah membuat sebuah account untuk administrator (Gambar 6). Administrator adalah orang yang mempunyai kekuasaan tertinggi dalam mengatur aplikasi ATutor, sehingga pastikan Anda memilih kombinasi username dan password yang susah untuk diterka. Se-
Gambar 7. Account reguler.
64
INFOLINUX 02/2005
dan students. Instructor mampu membuat kursus baru, sedangkan students hanya mengikuti kursus yang telah dibuat oleh instructor. Setelah selesai, klik Next dan ATutor akan menampilkan ringkasan proses instalasi. Klik Next sekali lagi dan proses installasi ATutor telah selesai. Untuk mengamankan aplikasi ATutor, pastikan Anda mengubah permission dari file include/config.inc.php menjadi read only saja dengan perintah chmod. # chmod 444 /var/www/html/ tutorial/include/config.inc.php
7. Membuat account reguler Setelah membuat account administrator, maka langkah berikutnya adalah membuat account reguler yang mampu membuat kursus baru (Gambar 7). User ini setingkat di bawah administator. Account reguler dibedakan menjadi dua, yaitu instructor
Gambar 8. Halaman login.
www.infolinux.web.id
8. Login ke ATutor Setelah itu, hapus direktori install untuk mencegah proses instalasi oleh pihak lain. Setelah selesai, lakukan login untuk mengkonfigurasikan ATutor untuk pertama kali (Gambar 8). Anda juga bisa login sebagai
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
TUTORIAL ATutor
guest, namun hanya memiliki kemampuan yang terbatas. # rm -rf /var/www/html/tutorial/ install
9. Editor txt dan html ATutor telah menggunakan interface yang mudah untuk digunakan dan juga teknologi yang mutakhir dalam menghadirkan sebuah editor yang user friendly yang mirip dengan toolbar pada OpenOffice.org sehingga Anda tidak perlu repot-repot mencari tag-tag HTML yang sesuai untuk memformat halaman, misalnya untuk membuat teks tebal dan miring, menyisipkan gambar, URL, dan sebagainya. (Gambar 9). Editor yang dipakai ada dua macam, yaitu text editor dan juga html editor. Anda bisa memilih sesuai dengan selera Anda. Selain menawarkan fasilitas untuk pembelajaran online, ATutor juga telah dilengkapi dengan berbagai fasilitas lain, seperti forum, chat room, private message, polling, sitemap, glossary, export content, dan masih banyak lagi. Dengan satu aplikasi ini, maka
Gambar 9. Halaman editor.
banyak sekali kemampuan yang dapat diperoleh. Tidak salah jika PBB telah memilih aplikasi ini sebagai salah satu aplikasi resmi yang digunakan dalam situs IOSN karena
www.infolinux.web.id
aplikasi ini memang sangatlah powerfull. Anda tertarik? Silakan mencoba dan rasakanlah kehebatannya. Willy Sudiarto Raharjo (
[email protected])
INFOLINUX 02/2005
65
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Bonnie++
Disk Benchmarking dan penggunaan Bonnie++ Amat penting bagi server (atau calon server) untuk diuji kekuatannya. Salah satu ujian yang penting adalah pada bagian storage. Seberapa storagenya memiliki performa yang seharusnya. Kita akan membahas pengujian disk dengan bonnie++.
H
ubungan antara teori dan kenyataan terkadang tidak selalu berjalan dengan baik. Ada kalanya teori berkata A, namun kenyataannya bergeser menjadi B atau C. Dalam kondisi ekstrim, bisa sangat jauh berbeda. Hal ini juga berlaku pada dunia komputasi. Ada kalanya, ketika kita membeli suatu perangkat keras, kita mendapatkan penjelasan bahwa suatu perangkat keras bisa bertahan dalam kondisi ekstrim tertentu, sambil tetap mempertahankan performa yang bisa diterima. Namun, ada kalanya, janji-janji tersebut terkadang hanya tinggal janji, tanpa bisa diwujudkan secara bertanggung jawab. Terkadang, untuk kasus tersebut, bukan selalu produsennya yang nakal dan memberikan janji yang tidak bisa diwujudkan. Namun, ada kalanya, karena disebabkan oleh faktor eksternal yang tidak diperkirakan sebelumnya. Oleh karena itu, melakukan suatu pengujian dan membandingkan hasil pengujian dengan nilai rata-rata yang bisa diterima adalah salah satu cara untuk mempertahankan seberapa suatu teori tidak bergeser terlalu jauh dari kenyataan. Kita ambil satu kasus yang lebih spesifik. Performa harddisk pada server. Sesuai dengan namanya, server bertugas untuk melayani kebutuhan client-clientnya. Namun, performa yang jelek pada harddisk atau media penyimpanan permanen lainnya dapat mengganggu server untuk tetap melayani client-clientnya dalam kondisi yang tetap prima. Solusinya adalah, disamping tindakan preventif atau tindakan lain untuk menjaga agar harddisk tetap sehat, kita perlu secara berkala mengukur performa harddisk tersebut. Apakah mengalami penurunan sejak
66
INFOLINUX 02/2005
pertama kali digunakan (di mana nilai kali pertama penggunaan juga telah sesuai dengan janji produsen dan kenyataan di lapangan). Penurunan kinerja adalah hal yang wajar, namun, harus dicermati seberapa cepat penurunan tersebut terjadi. Hal ini termasuk tindakan preventif yang perlu dilakukan oleh system administrator jaringan yang besar. Apabila tingkat dan besar penurunan kinerja sudah tidak dapat ditolerir, kita perlu mengambil tindakan tertentu, seperti mengganti harddisk tersebut, misalnya. Disk testing melibatkan prosedur yang cukup rumit agar hasilnya bisa diandalkan. Kita tidak perlu melakukannya sendiri secara manual. Sebagai gantinya, kita akan mempergunakan bonnie++, salah satu disk testing yang cukup sering digunakan.
Tidak pula dengan menggunakan script yang secara bolak balik membuat file, memotong file, membuat lagi, menghapus dan sebagainya. Semua itu, belumlah cukup. Kita perlu pula mengukur persentase penggunaan CPU agar lebih akurat. Tentunya, akan susah diukur tingkat akurasinya apabila kinerja secara umum baik namun menghabiskan waktu atau persentase penggunaan CPU yang terlalu besar. Bagi Anda yang senang mencoba, sebenarnya, walaupun tidak akurat, kita bisa saja membuat sebuah tester yang sederhana menggunakan shell script. Kita akan melihat bahwa cara ini bisa mewakili pengujian sederhana walaupun memiliki cukup banyak kekurangan. Buatlah sebuah shell script dengan nama a.sh, dengan isi sebagai berikut: #!/bin/sh
Apakah disk benchmarking itu? Secara sederhana, disk benchmarking, atau terkadang disebut sebagai disk testing adalah suatu aktivitas untuk menguji kinerja suatu disk. Hasil pengujian kemudian disajikan dalam angka-angka, dan dapat dibandingkan (benchmark) dengan sistem lain, atau dengan sistem itu sendiri pada saat yang berbeda. Ketika kita mengadakan disk benchmarking, yang pertama terbayang mungkin adalah kecepatan dalam menulis atau membaca isi disk tersebut. Hal ini secara langsung akan melibatkan access time yang bisa dibagi dalam berbagai sub komponen waktu lainnya. Pengujiaan disk secara umum adalah hal yang kompleks. Artinya, kita tidak bisa begitu saja membuat sebuah file besar dengan ukuran tertentu menggunakan program yes misalnya, sambil menyiapkan sebuah stopwatch dan mengukur waktu pengujian. Tidak sesederhana itu.
www.infolinux.web.id
FILE=X LIMIT=1000 rm -f $FILE while [ 1 ] do echo “A” >> $FILE SIZE=”`du -sb $FILE | tr ‘[:space:]’ ‘:’ | cut -d: -f1`” if [ $SIZE -gt $LIMIT ] then break fi done rm -f $FILE
Pada pengujian sederhana ini, kita membuat suatu file (yang diwakili oleh varia-
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Bonnie++
Menampilkan hasil pengujian di web.
bel $FILE) sampai limit ukuran tertentu (yang diwakili oleh variabel $LIMIT). Selama pembuatan file, kita memeriksa ukuran dari $FILE dan akan berhenti apabila ukuran telah mencapai $LIMIT. Sebelum dan setelah pengujian dilakukan, kita akan menghapus $FILE. Kemudian, kita menggunakan program time (1) untuk menguji resource yang digunakan dalam menjalankan a.sh tersebut. Berikut ini adalah contoh keluaran di sistem penulis: $ time ./a.sh real user sys
0m6.034s 0m1.956s 0m3.459s
Kita bisa melihat bahwa pengujian yang kita lakukan telah berhasil menguji berapa waktu user dan sistem yang diperlukan untuk menulis file berukuran 1000 byte. Apabila kita puas dengan cara seperti ini, Anda bisa membuat, katakanlah sebuah ukuran sendiri, misalnya ukuran INFOLINUX, dan kemudian membandingkan sistem lain dengan rata-rata pengujian. Program ini memiliki banyak kekurangan. Pertama, lambat sekali. Di Celeron 2.5 Ghz yang penulis miliki, untuk menulis 1000 byte saja membutuhkan waktu user 5 sampai 6 detik. Belum lagi ditambah dengan pengujian ukuran file yang melibatkan du, tr dan cut. Yang kedua adalah tidak mampu mewakili beraneka ragam pengujian. Kita hanya menulis A ke dalam sebuah file. Tidak ada pendekatan lain disamping melakukan dumping A ke file teks. Sebuah penguji yang bagus harus mampu melakukan pengujian yang representatif terhadap berbagai kondisi sistem atau kondisi penggunaan disk. Di artikel ini, kita akan membahas pengujian dengan program yang secara khusus digunakan untuk melakukan pengujian. Bonnie++ akan menampilkan informasi yang Anda inginkan.
Melakukan pengujian.
Bonnie++ Namanya sekilas terdengar lucu. Apalagi ditambah dengan embel-embel ++ dibelakang namanya. Bonnie++ adalah program yang dapat digunakan untuk menguji performa harddisk dan file sistem secara umum. Bonnie++ mampu melakukan pengujian pada beberapa kondisi, termasuk kondisi spesifik dari suatu file sistem. Setiap hasil pengujian akan menampilkan waktu yang diperlukan untuk melakukan tugas tertentu, dan dilengkapi dengan informasi penggunaan CPU. Program ini beroperasi pada dua tahapan. Yang pertama adalah mengukur kemampuan IO harddisk dengan mensimulasikan penggunaan data besar yang aktif. Yang kedua adalah dengan melibatkan pengujian pembuatan, pembacaan, dan penghapusan banyak file kecil. Kedua tahapan ini dianggap mewakili penggunaan disk sehari-hari. Pada aplikasi database besar misalnya, tahapan pertama dianggap mewakili. Sementara, untuk program yang melibatkan pembacaan file-file kecil seperti e-mail dan lain sebagainya, tahap kedua dianggap mewakili. Program ini akan memberikan output berupa file CSV (Comma Separated Values) yang dapat dengan mudah dibuka dengan OpenOffice.org atau program-program database yang menerima format CSV sebagai data dump. Paket Bonnie++ juga datang dengan tool bon_csv2html yang dapat digunakan untuk memformat ulang keluaran bonnie++ ke dalam dokumen HTML. Selain itu, bagi Anda yang senang dengan file teks, tool bon_csv2txt juga disertakan. Bonnie++ sangatlah mudah untuk digunakan. Dalam penggunaan yang sederhana, berikan saja perintah bonnie++ dan pengujian akan segera dilakukan. Ketika pengujian berlangsung, sistem akan sekilas terasa melambat atau bahkan tidak responsif dalam jangka waktu tertentu. Hal ini disebabkan karena akses intensif ke perangkat
www.infolinux.web.id
keras. Anda bisa membuka dua console dan menggunakan salah satunya untuk menjalankan program top. Anda akan melihat penggunaan CPU oleh program bonnie++. Berikut ini adalah beberapa contoh penggunaan bonnie++: Menjalankan bonnie++ secara sederhana. Perintah ini dapat dibatalkan dengan menekan kombinasi tombol CTRL+C, dan pembersihan akan dilakukan secara otomatis. Menarik. $ bonnie++
Menjalankan bonnie++ dengan menyebutkan direktori sementara secara eksplisit. Hal ini berguna untuk mengatur lokasi tempat bonnie++ meletakkan file-file selama pengujian. $ bonnie++ -d /tmp
Menjalankan sejumlah pengujian. Pengujian dapat dilakukan berkali-kali, dan hasil rata-rata dapat diasumsikan mewakili hasil pengujian yang benar. $ bonnie++ -x 100
Menyimpan hasil pengujian dalam file tertentu (contoh: file dengan nama RESULT). $ bonnie++
> RESULT
Menggunakan bon_csv2html menghasilkan HTML dari file RESULT $ cat RESULT | bon_csv2html > RESULT.html
Anda bisa menjalankan bonnie++ secara berkala untuk mendapatkan pengujian yang berkelanjutan pada disk Anda. Sebuah script selanjutnya dapat dibuat untuk memastikan tidak adanya penyimpangan yang terlalu besar pada hasil pengujian. Setiap penyimpanan dapat dilaporkan secara otomatis. Menarik bukan? Sampai di sini perkenalan kita tentang benchmarking disk menggunakan bonnie++. Selamat menguji! Noprianto (
[email protected])
INFOLINUX 02/2005
67
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Calc
Lebih lanjut dengan fungsi lookup Calc Beberapa edisi yang lalu, kita telah membahas penggunaan sederhana fungsi lookup di Calc. Di edisi ini, kita akan membahas fungsi lookup lebih lanjut untuk memudahkan pekerjaan kita
F
ungsi lookup adalah fungsi yang sangat berguna pada penggunaan spreadsheet. Dengan penggunaan fungsi lookup, kita seolah-olah memiliki sebuah database tabular sederhana yang dapat oleh berbagai tabel transaksi. Kita mengenal dua fungsi lookup yang populer, yaitu fungsi hlookup() dan vlookup(). Fungsi hlookup() digunakan pada pencarian menggunakan tabel master horizontal, dan vlookup() sebaliknya, digunakan pada pencarian menggunakan tabel master vertikal. Sebagai contoh, berikut ini adalah tabel master vertikal dan contoh penggunaan lookup sederhana.
Kode
Jenis
SA SU SN
Sabun Susu Snack
Untuk memberikan nama tabel (sebagai contoh ms_barang1), pilihlah tabel keseluruhan dan akseslah menu Insert | Names | Define atau dengan menekan kombinasi shortcut Ctrl+F3. Setelah tabel master terdefinisi, kita dapat menggunakan fungsi vlookup() dengan contoh berikut ini: =VLOOKUP(C1; ms_barang1; 2; 0)
Penggunaan fungsi vlookup() tersebut mengasumsikan data yang ingin dicari berada pada sel C1. Pencarian dilakukan ke dalam ms_barang1 dan hasil diambil dari kolom 2 di dalam ms_barang1 tersebut. Secara umum, contoh penggunaan fungsi lookup tersebut telah mencerminkan penggunaan fungi lookup di spreadsheet. Namun, cobalah perhatikan tabel master
68
INFOLINUX 02/2005
berikut ini. Kita berikan nama ms_barang2.
Kode SAA SAB SAC SUA SUB SUC SNA SNB SNC
Jenis Sabun Cream Sabun Bubuk Sabun Cair Susu bubuk Susu kental Susu cair Snack kentang Snack jagung Snack coklat
Sekilas, tidak ada yang salah dengan tabel master ms_barang2 kita tersebut. Pencarian data juga dapat dilakukan seperti contohcontoh sebelumnya seperti: =VLOOKUP(C8; ms_barang2; 2; 0)
Fungsi tersebut mengasumsikan data yang ingin dicari berada pada sel C8. Apabila diperhatikan lebih dalam, kita sebenarnya dapat menuliskan kembali tabel master tersebut dengan cara yang lebih baik. Kita melihat bahwa setiap item, baik SA, SU maupun SN selalu memiliki komponen A, B dan C masing-masing. Karena memiliki pola yang sama, kita dapat menuliskan ulang tabel master menjadi seperti berikut ini :
A B SA Sabun cream Sabun bubuk SU Susu bubuk Susu kental SN Snack kentang Snack jagung
C sabun cair susu cair Snack coklat
Namun, dengan mengubah struktur tabel menjadi seperti bentuk baru ini, kita tidak dapat mempergunakan fungsi vlookup seperti biasa. Kenapa? Karena parameter
www.infolinux.web.id
ketiga yang kita gunakan sebelumnya selalu bernilai 2, yang mana selalu mengasumsikan bahwa informasi disimpan selalu pada kolom ke-2 pada tabel master. Pada ms_barang1 dan ms_barang2, pencarian statis ke kolom 2 akan selalu berhasil karena tabel master hanya berisikan dua kolom, di mana kolom kedua selalu berisikan informasi dari kolom pertama. Namun, di struktur tabel kita yang baru, informasi bisa saja berada pada kolom 2, 3 atau 4, tergantung pada kode tambahan A, B atau C yang digunakan. Dengan kata lain, agar dapat menggunakan struktur tabel master baru ini, parameter ketiga pada fungsi vlookup() tersebut harus selalu dinamis. Kita namakan penggunaan fungsi lookup() demikian dengan fungsi lookup() dua dimensi.
Fungsi match() Agar dapat mendapatkan nilai kolom yang dinamis untuk digunakan pada fungsi vlookup(), kita akan mempergunakan bantuan fungsi match. Fungsi match akan mengembalikan posisi relatif dari suatu item dalam array ketika nilai tertentu dipenuhi. Berikut ini adalah prototipe fungsi match(): MATCH(search criterion;lookup_ array;type)
Parameter pertama adalah kriteria yang ingin disesuaikan. Parameter kedua adalah data array atau tabel master, sementara parameter terakhir, type akan menentukan tipe pencarian, termasuk penanda bahwa data disort ascending/descending atau pencarian akan dilakukan lebih lanjut dengan bantuan regular expression. Parameter ketiga ini opsional. Nilai yang
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
TUTORIAL Calc
Menggabungkan vlookup dan match.
Contoh penggunaan match.
mungkin adalah 1, 0 dan -1. Nilai 1 akan menandakan kolom pertama diurutkan ascending. Nilai -1 menandakan kolom pertama diurutkan descending. Apabila Anda mengisikan nilai 0, maka hanya nilai yang benar-benar sesuai dengan kriteria yang akan dikembalikan. Apabila terdapat lebih dari satu nilai sesuai kriteria, maka hanya nilai pertama yang dikembalikan. Untuk segera mencoba menggunakan fungsi match(), bloklah header pada tabel sebelumnya (struktur tabel kita yang baru) dan berilah nama ms_barang3. Harap diperhatikan bahwa hanya header yang diblok dan diberinama:
A
B
C
Sekarang, pindahlah ke sembarang sel sebagai contoh D1, dan isikan nilai A ke dalam D1 tersebut. Pindahlah ke E1 dan isikan penggunaan fungsi match() berikut ini: =MATCH(D1; ms_barang3; 1)
Nilai yang seharusnya dikembalikan adalah 2. Hal ini benar karena nilai A sendiri menempati posisi kolom kedua dalam tabel ms_barang3. Kolom pertama berikan nilai kosong. Sekarang, cobalah ganti isi sel D1 dengan B, dan seharusnya, E1 akan langsung berisikan nilai 3. Penggantian nilai D1 ke C akan menyebabkan E1 bernilai 4. Dengan demikian, fungsi Match () akan selalu mengembalikan posisi relatif A, B atau C di dalam tabel master ms_barang3. Fungsi match() tersebut akan kita guna-
kan bersama-sama dengan fungsi vlookup(). Kita telah memiliki tabel ms_barang3 sebagai tabel pembantu untuk match(). Untuk menggunakan bersama-sama dengan fungsi vlookup(), kita perlu membuat tabel master ms_barang4 yang isinya adalah sisa dari struktur tabel master kita yang baru tersebut (jangan masukkan header tabel karena telah digunakan sebagai ms_barang3): SA Sabun cream Sabun bubuk sabun cair SU Susu bubuk Susu kental susu cair SN Snack kentang Snack jagung Snack coklat Kini, kita memiliki ms_barang3 dan ms_ barang4 yang beroperasi pada tabel yang secara visual sama bagi kita. Untuk menguji lookup dua dimensi kita, cobalah isikan SAA di sel F1 misalnya. Dan, di sel G1, isikan penggunaan vlookup berikut ini: =VLOOKUP (LEFT(F1; 2); ms_ barang4; MATCH (RIGHT (F1; 1); ms_barang3; 1); 1)
Sel G1 seharusnya akan segera berisikan nilai Sabun cream. Gantilah dengan nilai lain seperti SUA atau SNC, dan nilai yang benar seharusnya akan dikembalikan. Berikut ini adalah penjelasannya: Pertama-tama, kita mengambil dua karakter pertama paling kiri dari sel F1 (yang berisikan SAA) sehingga akan berisikan nilai SA. Untuk mengambil dua karakter pertama dari kiri, kita menggunakan fungsi LEFT (Sel; jumlah_karakter). Nilai SA yang didapat tersebut selanjutnya akan dicari ke dalam tabel master
www.infolinux.web.id
ms_barang4. Apabila kita lihat ke dalam tabel ms_barang4, pencarian ditemukan pada baris pertama. Sayangnya, SA sendiri tidaklah memiliki nilai yang berarti. Pencarian lebih lanjut masih harus dilakukan. Fungsi match () kemudian digunakan. Fungsi Match() akan mencari satu karakter paling kanan dari sel F1 (yang berisikan SAA) sehingga nilai A yang dikembalikan. Untuk mengambil sejumlah karakter dari kanan, kita menggunakan fungsi RIGHT (sel; jumlah_karakter). Nilai A tersebut akan dicari ke ms_barang3 yang akan mengembalikan nilai 2 karena di dalam ms_barang3, A berada di kolom ke-2. Fungsi match () telah mengembalikan nilai 2. Nilai 2 ini kemudian dilewatkan kembali ke vlookup() dan dengan sendirinya akan mengembalikan nilai Sabun cream karena merupakan perpotongan dari SA (baris pertama) dan A (kolom kedua). Apabila struktur data Anda mirip dengan yang kita miliki (SAA, SAB, SAC, SUA, SUB, SUC, ...) yang memiliki pola sama dan seharusnya ditempatkan dalam pencarian dua dimensi, maka pendekatan lookup dua dimensi ini harus dilakukan. Sampai di sini dulu perkenalan kita dengan fungsi lookup(). Apabila diterapkan dengan baik, sebuah spreadsheet dapat menjadi senjata yang ampuh dalam menyelesaikan permasalahan sederhana sehari-hari, tanpa Anda harus menggunakan software khusus.Sampai ketemu lagi dengan tips penggunaan aplikasi Office. Selamat mencoba! Noprianto (
[email protected])
INFOLINUX 02/2005
69
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
/etc/sysconfig
Memahami /etc/sysconfig Di Linux, hampir semua konfigurasi system wide program di simpan di /etc. Di dalam /etc, terdapat pula sebuah direktori sysconfig yang menyimpan berbagai konfigurasi program dan sistem. Memahami /etc/sysconfig akan membantu kita memahami sistem Linux lebih dalam lagi.
K
ernel Linux sendiri adalah kernel yang sangat configurable. Hal ini terbukti secara mendasar dengan adanya konfigurasi dan kompilasi kernel sesuai kebutuhan penggunanya. Dan bahkan, setelah dikompilasipun, kita masih bisa mempengaruhi jalannya kernel dengan memberikan parameter kernel pada saat booting. Setelah sistem di boot dan berjalan pun, kita masih bisa mengubah beberapa parameter dengan mengutak-atik proc file sistem. Luar biasa bukan? Kalau dari sisi kernel saja sistem Linux begitu configurable, maka distro umum Linux pun seharusnya memberikan kemampuan yang sama. Dengan demikian, secara keseluruhan, distribusi Linux, mulai dari kernel sampai aplikasi, dapat dikonfigur oleh user sesuai kebutuhan. Dan, pada kenyataannya, hampir semua sistem operasi - termasuk sistem operasi Microsoft Windows – juga cukup configurable, walaupun cara yang digunakan berbeda-beda. Salah satu cara untuk menjaga agar sistem tetap dapat dikonfigurasi adalah dengan menyediakan file konfigurasi. Di Windows, sejak 95, hal ini diwujudkan dengan adanya sistem registry yang merupakan terobosan di dunia Windows saat itu. Sejak penggunaan registry, semua konfigurasi menjadi terpusat. Kernel sistem operasi bisa dikonfigur lewat registry, dan aplikasi-aplikasi yang terinstal juga dapat mendaftarkan diri di registry dan kemudian menyediakan cara terpusat bagi user untuk melakukan konfigurasi. Luar biasa. Di Linux, pendekatan konfigurasi sistem tidak menggunakan sistem registry dalam artian menggunakan satu atau dua file yang tidak terbaca oleh teks editor biasa. Di Linux, konfigurasi program umumnya disimpan dalam file teks terpisah, sesuai
70
INFOLINUX 02/2005
dengan aplikasinya. Ada aplikasi yang puas dengan satu file konfigurasi (yang didalamnya berisikan banyak variabel yang bisa mempengaruhi jalannya aplikasi), namun ada pula yang lebih senang dengan berbagai file konfigurasi yang disimpan dalam satu direktori. Dan, umumnya, semua konfigurasi aplikasi tersebut disimpan di dalam direktori /etc. Dengan demikian, kita akan menemukan /etc/vimrc atau /etc/gimp/* dan lain sebagainya. Semua konfigurasi tersebut berikan parameter-parameter yang akan mempengaruhi jalannya aplikasi secara umum. Bagaimana dengan pengaturan user untuk preferensi aplikasi-aplikasi tersebut? User tentu saja tidak memiliki hak akses pada /etc. Apakah lantas user tidak boleh memiliki preferensi yang berbeda dengan konfigurasi general? Tidak. Konfigurasi per user juga umumnya diijinkan oleh aplikasi tertentu. Dan, file konfigurasinya akan disimpan di dalam home directory user, umumnya dalam file atau direktori bertitik, seperti contoh .mc atau .kde dan lain sebagainya. Dengan demikian, umumnya aplikasi akan membaca konfigurasi general di /etc, lantas membaca pengaturan per user yang akan meng-override konfigurasi general, dan kemudian menjalankan aplikasi sesuai pengaturan. Sampai di sini, kita telah membahas konfigurasi aplikasi. Namun, perlu diingat bahwa semua konfigurasi tersebut adalah hanya konfigurasi native milik aplikasi. Artinya, semua konfigurasi tersebut hadir karena memang dihadirkan oleh aplikasi. Artinya, Vim memang mengharapkan adanya vimrc di /etc. Di dalam file konfigurasi ini, Vim akan mengatur beberapa resource. Atau, GIMP memang mengharapkan konfigurasi yang kemudian di simpan di /etc/gimp/*.
www.infolinux.web.id
Lantas, bagaimana dengan aplikasi-aplikasi yang ternyata mempengaruhi sistem? Sebagai contoh, misalnya apakah semua service jaringan seperti Apache dan service lain perlu memperhatikan penggunaan SSL? Atau, NFS versi berapakah yang akan digunakan karena pemilihan versi akan mempengaruhi service lain? Semua konfigurasi tersebut tidak dipikirkan oleh aplikasi masing-masing karena memang tidak perlu. Artinya, Apache sebagai contoh, tidak perlu memilikirkan hubungan dengan komponen lain di sistem. Karena, tugas apache adalah melayani koneksi HTTP dan konfigurasi yang dibutuhkan hanyalah bagaimana apache bekerja secara internal. Dan itupun sudah sangat kompleks. Konfigurasi-konfigurasi yang kita sebut memiliki pengaruh pada subsistem lain diperlukan untuk menjaga agar sistem tetap kompak. Artinya, kalau memang ingin menjalankan semua service secara secure, maka pengubahan semua service harus dilakukan dengan mudah. Cukup mengatur beberapa nilai dan, semua beres. Sebuah sistem yang kompak adalah syarat menjadi sebuah distribusi Linux yang hebat. Sebuah distribusi yang hebat tidak hanya memikirkan soal instalasi dan packaging, namun juga harus memikirkan bagaimana setiap komponen di dalam sistem (bisa berupa aplikasi, kernel atau komponen lain) bisa saling bekerja sama dan bisa dikonfigur dengan cara yang baik. Kita menyebut semua konfigurasi tersebut sebagai meta konfigurasi. Dalam artian lain, konfigurasi yang akan mempengaruhi bahkan konfigurasi aplikasi itu sendiri. Jadi, meta konfigurasi yang kita buat bisa menyebabkan konfigurasi suatu aplikasi berubah. Prinsip seperti ini adalah prinsip registry di Windows. Banyak aplikasi yang
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
TUTORIAL /etc/sysconfig
Isi direktori /etc/sysconfig.
mendaftarkan diri ke registry. Namun, ada yang tidak juga. Mereka hanya menyimpan konfigurasi di file .INI misalnya. Dan, yang mendaftarkan diri ke registry pun tidak semata-mata mengandalkan registry. Mereka juga memiliki konfigurasi file .INI misalnya. Yang didaftarkan di registry, harusnya, yang hanya memiliki ketergantungan atau pengaruh terhadap subsistem lain. Di Linux, kurang lebih sistem registry ini diwujudkan dalam kumpulan file di direktori /etc/sysconfig/. Untuk lebih singkat, kita menyebutnya sebagai sysconfig. Di sinilah sebenarnya ekivalensi registry Windows di Linux. File-file di sysconfig umumnya berisikan meta konfigurasi. Dan, tidak hanya subsistem berupakan aplikasi yang diurus di sini, namun juga kernel, proses boot dan lain sebagainya. Dan, hebatnya, terkadang sysconfig juga mengandung beberapa script. Memahami sysconfig tidak mudah. Apalagi, dengan hadirnya berbagai distro yang beberapa diantaranya memiliki pengaturan nama variabel, file, atau hal lain yang saling berbeda-beda. Namun, kita bisa menarik suatu kesimpulan bahkan untuk distro yang menuruti standar Linux, harusnya menyimpan semua meta konfigurasi untuk aplikasi dan sistem di sysconfig, sementara konfigurasi internal aplikasi disimpan di /etc/ atau di home directory user masing-masing. Tulisan ini akan membahas bagaimana memahami sysconfig, bagaimana mengutak-atik sysconfig dan pengubahan beberapa bagian yang akan mempengaruhi sistem secara keseluruhan. Pembahasan
Mengedit sysconfig secara manual.
dilakukan pada distro SUSE 9.1 walaupun sebagian besar diantaranya bisa diterapkan pada distro lain. Cara pembahasan akan melibatan pengubahan pada file langsung ataupun menggunakan YaST.
tur sysconfig Akseslah /etc/sysconfig. Di dalam direktori ini, Anda akan mendapatkan banyak file dan beberapa direktori. Cobalah membuka salah satu file, misalnya bootloader. File ini mengandung beberapa variabel yang akan mempengaruhi bootloader secara umum. Kita bisa melihat bahwa ini adalah meta konfigurasi untuk bootloader, apapun bootloader yang Anda gunakan. Di file ini, terdapat dua variabel yaitu LOADER_TYPE dan LOADER_LOCATION. Variabel pertama menentukan tipe bootloader yang akan digunakan. Nilai yang mungkin atas tertulis sebelum variabel tersebut, yaitu grub, lilo dan none. Sementara, variabel kedua menentukan lokasi instalasi bootloader, dengan nilai-nilai yang mungkin adalah floppy, mbr, root, boot, custom dan none. Variabel-variabel ini memiliki nilai default. SUSE adalah distribusi yang benar-benar well packaged and well designed. Maksud dari nilai yang mungkin untuk suatu variabel bukan semata-mata berfungsi informatif bagi user. Namun, tulisan Type: list(grub,lilo,none) ini akan digunakan oleh YaST. List () menandakan bahwa pada YaST, user akan diberikan kesempatan memilih nilai-nilai tersebut melalui sebuah drop down. Sementara, Default: grub akan
www.infolinux.web.id
menentukan pilihan default. Setelah melihat file bootloader, cobalah untuk membuka file boot. Di sini, beberapa pengaturan untuk proses boot dapat Anda amati. Sebagai contoh, fasilitas interactive debugging akan diperkenankan apabila Anda mengubah PROMPT_FOR_CONFIRM menjadi yes. Apabila mengedit langsung file ini, perhatikan tipe dan nilai defaultnya. Beberapa variabel juga memiliki deskripsi yang begitu jelas. Sekarang, bukalahfile kernel. di sini, Anda dapat mengatur berbagai hal yang sangat berguna, seperti INITRD_MODULES yang dapat Anda ubah untuk modifikasi modul-modul yang akan dimasukkan pada image initial RAM disk. Anda juga dapat menentukan modul-modul ekstra mana saja yang akan diload pada saat boot dengan mengubah variabel MODULES_LOADED_ ON_BOOT. Pengubahan-pengubahan di sini akan memiliki efek langsung pada kernel. Harap diperhatikan, beberapa pengaturan di sini melibatkan program eksternal. Sebagai contoh, pengubahan INITRD_ MODULES akan berfungsi dengan adanya program mk_initrd yang akan membuat image baru, yang mengandung modulmodul yang telah disebutkan sebelumnya. Keluarlah dari file kernel, dan bukalah file ssh. Di sini, Anda hanya akan menjumpai satu variabel. Namun, perhatikanlah flag ServiceRestart yang berisikan nilai sshd. Artinya, pengubahan entri pada file ini akan memicu restart service sshd. Sekarang, keluarlah dari ssh, dan masuklah ke direktori network. Di sini, kita
INFOLINUX 02/2005
71
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
/etc/sysconfig
Mengunakan YaST untuk mengedit sysconfig.
akan melihat beberapa file yang diasosiasikan dengan interface jaringan Anda. Bukalah salah satu file, misalnya, ifcfg-lo yang akan mengatur loopback. Di dalam file ini, mengandung banyak variabel yang akan mengontrol loopback itu sendiri. Di dalam direktori network ini, Anda akan menemukan banyak pengaturan yang berhubungan dengan penanganan interface jaringan. Beberapa pengaturan aplikasi bisa menjadi sangat berguna dan memiliki pengaruh langsung pada sistem. Cobalah buka file cron. Ini adalah meta konfigurasi untuk program cron, dan tidak ada hubungan sama sekali dengan entri crontab. Di sini, berbagai pengaturan akan dilakukan untuk mengatur bagaimana cron digunakan pada sistem. Sebagai contoh, Anda dapat mengatur berapa hari sekali /tmp akan dibersihkan. Atau, berapa hari sekali direktori-direktori tertentu perlu dibersihkan. Ubahlah isi variabel MAX_DAYS_IN_TMP dan TMP_DIRS_TO_CLEAR. Untuk pemahaman lebih lanjut, cobalah untuk melihat berbagai file lain. Isi dari sysconfig sangat dipengaruhi paket-paket yang Anda install. Dengan demikian, bisa saja pada suatu sistem Anda menemukan file A, namun di sistem lain, Anda tidak akan menemukannya.
SuSEconfig Satu pertanyaan penting. Program apakah yang akan mengaktifkan semua pengubahan di sysconfig? Jawabannya adalah SuSEconfig. Program ini bertindak sebagai backend untuk YaST dan akan mengubah sistem ber-
72
INFOLINUX 02/2005
Menjalankan SuSEconfig.
dasarkan pengaturan di sysconfig. Program ini tidak bekerja sendiri. Apabila pengubahan memerlukan banyak kerja keras, maka script-script tambahan akan dipergunakan untuk mengupdate sistem. Semua script tersebut akan disimpan pada /sbin/conf.d/SuSEconfig.*. Sysconfig umumnya akan dijalankan otomatis apabila Anda mengunakan YaST. Namun, Anda juga dapat menjalankan program ini apabila pengubahan dilakukan secara manual dengan mengedit file-file di sysconfig. Program SuSEconfig harus dijalankan oleh root. Apabila Anda melakukan instalasi program misalnya, Anda sebenarnya bisa melihat SuSEconfig dijalankan pada step akhir. SuSEconfig dijalankan untuk memastikan sistem up to date terhadap pengubahan di sysconfig.
Konfigurasi menggunakan YaST SUSE juga memiliki regedit sendiri. Dan, cukup canggih. Jalankan YaST sebagai root, dan akseslah System | /etc/sysconfig Editor. Sebuah dialog akan ditampilkan. Di panel kiri, Anda akan melihat kategorisasi pengaturan yang disajikan dalam bentuk tree. Terdapat beberapa kategori seperti Applications, Desktop, hardware, Network, System dan lain-lain. Anda bisa memilih setiap item di tree sampai mencapai variabel yang ingin di atur. Setelah Anda memilih variabel tersebut, di sebelah kanan akan muncul tempat untuk mengisikan nilai variabel tersebut. Akan ditampilkan pula nama file yang diedit,
www.infolinux.web.id
lengkap dengan nilai variabel yang mungkin, nilai default, service yang akan direstart, deskripsi dan lain sebagainya. YaST membaca semua variabel, deskripsi, nilai default dan kemungkinan nilai variabel langsung dari file di sysconfig. Begitu Anda melakukan perubahan, YaST akan langsung menyimpan ke file-file di sysconfig. Setelah semua pengaturan selesai, kliklah tombol Finish untuk mengaplikasikan perubahan. Dengan menggunakan YaST, modifikasi sysconfig akan menjadi kegiatan yang menyenangkan. Tidak harus mengedit satu per satu file, dan repot membaca komentar ataupun nilai default. Sysconfig adalah seperti halnya registry di Windows. Apabila salah melakukan pengaturan, sistemlah yang menjadi taruhannya. Oleh karena itu, pastikan Anda mengetahui benar apa yang Anda lakukan sebelum Anda klik pada tombol Finish di YaST ataupun menjalankan SuSEconfig. Bagi Anda yang mempergunakan distro lain, beberapa opsi sysconfig mungkin tidak tersedia, atau sangat mungkin ada beberapa opsi yang dimiliki oleh distro lain namun tidak dimiliki oleh SUSE. Setiap distro umumnya mencoba mengimplementasikan sistem sesuai gaya khas distro. Perlahan namun pasti, semua pengaturan di Linux akan diusahakan semudah mungkin dan hubungan antar komponen sistem akan dibuat sebaik mungkin. Distro-distro besar seperti SUSE dan Red Hat telah mengusahakan ini sejak bertahun-tahun lalu. Noprianto (
[email protected])
IKLAN
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Mplayer
Tips menggunakan Mplayer Mplayer adalah program yang kompleks luar biasa. Kita akan melihat beberapa tips penggunaan mplayer agar lebih nyaman untuk digunakan, sekaligus melihat betapa luar biasanya mplayer.
D
i Linux, Mplayer termasuk satu dari dua kubu besar multimedia. Tentu saja yang satu lagi adalah kubu Xine. Keduanya memiliki kelebihan dan kekurangan masing-masing. Kita tidak akan membahas kekurangan dan kelebihan masing-masing dari mereka, melainkan akan memfokuskan pada bagaimana melihat mplayer lebih dalam agar dapat lebih nyaman untuk digunakan. Sekilas, apabila dijalankan pada modus GUI, terlihat seolah-olah bahwa apa yang dapat diatur dari Mplayer adalah apa yang tersimpan dalam window Preferences. Pada kenyataannya, Mplayer sangatlah configurable, bahkan terlalu configurable. Sayangnya, untuk melakukan konfigurasi lebih lanjut, kita akan melakukannya melalui modus command line. Kita akan melihat tips mulai dari cara start sampai pemahaman mengenai filefile apa saja yang digunakan oleh Mplayer. Pembahasan akan dilakukan secara mendalam persetiap poin. Untuk itu, Anda akan membutuhkan Mplayer telah terinstalasi di sistem. Pemaketan Mplayer menyebabkan beberapa distro tidak dapat memaketkan
Mplayer pada modus GUI.
74
INFOLINUX 02/2005
Mplayer ke dalam distronya karena masalah legal. Apabila distro Anda tidak memaketkan mplayer, cobalah cari terlebih dahulu paket untuk distro Anda di internet. Apabila tidak ada juga yang memaketkan, downloadlah Mplayer di http://www.mplayerhq.hu.
1
Pertama-tama, kita akan membahas tentang cara start mplayer. Secara default, Mplayer dapat dijalankan dengan memberikan perintah berikut ini pada sistem:
ini kita menjalankan Mplayer untuk memutar a.mpg dalam modus full screen: $ mplayer a.mpg -fs
Di samping menyebutkan nama file biasa, Mplayer dapat pula menerima URL seperti berikut ini: $ mplayer vcd://1 $ mplayer dvd://1 $ mplayer http://server/share/ file
$ mplayer
Namun, apabila paket Mplayer Anda juga menyediakan binary untuk bekerja pada modus GUI, Anda juga dapat menjalankan mplayer dengan perintah: $ gmplayer
Bentuk paling sederhana dalam menjalankan mplayer adalah dengan melewatkan sebuah URL menuju file multimedia yang ingin dimainkan, sebagai contoh: $ mplayer a.mpg
Opsi dapat diberikan sebelum atau sesudah nama program. Sebagai contoh, berikut
Mplayer para modus command line.
www.infolinux.web.id
Umumnya, pemanggilan akan mengikutsertakan beberapa opsi berguna seperti contoh sebelumnya yang memanggil opsi -fs agar pemutaran video dapat langsung dilakukan dalam modus full screen. Pembahasan opsi berguna akan kita bahas tersendiri menjelang akhir tulisan. Kita akan membahas hal penting dalam pemberian opsi di poin nomor 1 ini. Opsi yang terdiri dari satu kata atau lebih tidak akan diawali dengan dua garis sambung ( - - ), melainkan hanya satu garis sambung ( - ). Hal ini sedikit berbeda dengan sistem opsi panjang GNU. Sementara, apabila lebih dari satu kata, maka diantara kata akan dipisah-
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Mplayer
kan satu garis sambung. Apabila Anda menggunakan Konqueror, Anda dapat mendaftarkan file-file multimedia (.MPG, .AVI, dll) agar dibuka dengan mplayer. Daftarkan file-file tersebut di Control Center | KDE Components | File Associations. Kliklah tombol Add untuk menambahkan tipe baru apabila belum tersedia dan masukkan mplayer atau gmplayer sebagai aplikasi yang digunakan untuk membuka file tipe tersebut. KDE akan segera mengupdate konfigurasi sistem apabila Anda selesai menambahkan. Dengan demikian, klik dua kali pada suatu file multimedia akan membuka file multimedia tersebut dengan mplayer. Untuk keluar dari Mplayer, Anda dapat klik pada tombol silang pada GUI Mplayer ataupun dengan menekan tombol q.
2
Melakukan seek dengan mplayer. Dengan menggunakan mplayer, melakukan seeking selama sesi pemutaran video sangatlah mudah dilakukan. Untuk melakukan seek 10 detik ke belakang atau kedepan, tekanlah tombol panah kanan atau tombol panah kiri. Tombol panah kanan untuk ke depan, dan sebaliknya. Untuk seek 1 menit ke depan atau ke belakang, gunakan tombol panah atas dan bawah. Panah atas untuk seek ke depan, dan sebaliknya. Sementara, untuk seek 10 menit ke depan atau ke belakang, gunakan tombol page up dan page down. Tombol page up untuk seek ke depan dan sebaliknya. Tentu saja, apabila menjalankan Mplayer pada modus GUI, Anda dapat pula mempergunakan seek bar mplayer untuk melakukan seeking dengan bantuan mouse. Satu tip agar seeking dapat dilakukan lebih cepat lagi (termasuk ketika dilakukan cukup intensif), perbesarkan cache memori Anda. Untuk mengatur ukuran cache memori untuk mplayer, jalankan mplayer pada modus GUI, klik kanan dan pilihlah menu Preferences. Pindahlah ke tab Misc. Aktifkan pilihan Cache on/off dan masukkan nilai yang masuk akal untuk cache size. Ukuran 20480 adalah ukuran yang cukup masuk akal. Jangan mengatur nilai yang terlalu besar karena hal tersebut bisa-bisa memperlambat waktu loading pertama kali karena Mplayer harus melakukan caching terlebih dahulu.
Satu hal yang menarik tentang seeking adalah bagaimana langsung seek pada posisi tertentu di video pada saat pertama menjalankan mplayer. Apabila Anda telah mengetahui adegan favorit Anda ada di time frame ke berapa, maka, Anda dapat mempergunakan opsi -ss untuk langsung menuju ke timeframe yang Anda inginkan. Contoh: $ mplayer a.mpg -ss 10:10
Perintah tersebut akan menjalankan mplayer untuk memutar a.mpg dan langsung seek pada 10 menit 10 detik pertama.
3
ngan memberikan perintah mplayer -vo aa
, maka kita dapat menikmati video kita dalam modus tek. Cukup menarik juga. Namun, sebaiknya Anda memperhatikan dari jarak yang lebih jauh agar terlihat lebih nyata. Hadirnya aalib di Linux membuktikan betapa kreatifnya para developer di Linux. Anda terkesan dengan adegan tertentu dan ingin mengirimkan ke rekan Anda dalam bentuk ecard? Akan lebih mudah kalau adegan tersebut dipotong dan dijadikan gambar yang dilengkapi animasi seperti halnya format GIF. Menggunakan mplayer, hal tersebut mungkin sekali. Pastikan Anda mengetahui time frame dimulainya adegan tersebut. Sebagai contoh, kita akan mempergunakan menit ke 10 detik ke 10. Berikan perintah berikut ini:
Pengaturan volume. Mplayer memungkinkan kita untuk mengatur volume pada saat memainkan video. Cukup gunakan kontrol pada GUI Mplayer atau gunakan shortcut berikut ini. Tombol 9 atau / dapat digunakan untuk menurunkan volume suara, sementara tombol 0 atau * dapat digunakan untuk menaikkan volume suara. Sebenarnya, kita masih dapat melakukan beberapa pengaturan audio pada Preferences Mplayer. Bukalah Gmplayer dan bukalah dialig Preferences. Pada tab Audio, Anda akan menjumpai pengaturan untuk normalisasi suara dan pengaturan untuk extra stereo.
Tidak akan ada keluaran gambar yang ditampilkan karena video output telah diarahkan pada file gif. Perkirakan waktu selesai adegan dan keluarlah dari mplayer. Sebuah file dengan nama out.gif telah tersimpan di direktori tempat Anda menjalankan mplayer. File tersebut bisa Anda kirimkan ke rekan Anda. Mudah sekali bukan?
4
5
Pengaturan video out. Salah satu keunikan dari Mplayer adalah tersedianya banyak driver sebagai video out. Sebagai contoh, Anda bisa menikmati video Anda tampil menggunakan driver Xv, opengl, sdl, frame buffer device, ascii art lib, berbagai format gambar, vidix dan lain sebagainya. Beberapa driver menawarkan kelebihan dibandingkan driver lainnya. Beberapa driver lebih unik dibandingkan driver lainnya. Secara default, mplayer akan mencoba driver yang terbaik untuk Anda. Berikut ini adalah cara untuk melihat driver video out apa saja yang tersedia di sistem Anda: $ mplayer -vo help
Sementara, untuk menggunakan salah satu video ‘vo’ out, berikut ini adalah contoh perintahnya:
$ mplayer -vo gif89a -ss 10:10 a.mpg
Audio output. Sama seperti halnya video output, kita juga bebas menentukan audio output untuk Mplayer. Cara penggunaannya juga sama, hanya, gantilah vo menjadi ao. Untuk melihat audio output apa saja yang didukung mplayer, berikanlah perintah berikut ini: $ mplayer -ao help
Diantaranya, Anda akan bisa menikmati audio output OSS, alsa, arts, esd, sdl, pcm dan lain sebagainya. Tentunya, penentuan ao harus sesuai konfigurasi sistem Anda. Penggunaan OSS sebagai ao dapat dipertimbangkan cukup aman, walaupun tidak menawarkan banyak fitur. Berikut ini adalah contoh penggunaan audio output yang berbeda: mplayer -ao alsa1x a.mpg
$ mplayer -vo xv a.mpg
Sudahkah Anda mencoba vo berupa ascii art lib (aa) ? Kalau belum, cobalah. De-
www.infolinux.web.id
Salah satu tip sehubungan dengan pemanfaatan audio output adalah mengekstrak suara dari suatu video. Pernah-
INFOLINUX 02/2005
75
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Mplayer
kan Anda begitu menginginkan suara dari video tertentu namun tidak menginginkan videonya? Seperti menginginkan lagu dari video klip tertentu? Caranya, mudah sekali dengan mplayer. Gunakan saja audio out berupa pcm dan mainkan saja video Anda sampai selesai. Sebuah file dengan nama audiodump.wav akan terbentuk di direktori Anda menjalankan mplayer. Berikut ini adalah contoh perintahnya: $ mplayer -ao pcm a.mpg
File audiodump.wav tersebut kemudian bisa Anda konversi ke format OGG misalnya menggunakan program oggenc, sebagai contoh: $ oggenc audiodump.wav
Tip terakhir yang masih berhubungan dengan suara. Anda sebenarnya dapat menjalankan video tanpa suara dengan memberikan opsi -nosound, sebagai contoh: $ mplayer -nosound a.mpg
6
Shortcut-shortcut berguna. Di samping shortcut-shortcut untuk bekerja dengan fungsi seeking dan kontrol volume, kita mengenal beberapa shortcut berguna berikut ini: < dan > untuk backward/forward di playlist p atau SPASI untuk melakukan pause q atau ESC untuk keluar dari mplayer + dan – untuk melakukan penyesuaian delay audio sebesar 0.1 detik. Hal ini akan sangat berguna dalam menangani audio dan video yang tidak sinkron. m untuk melakukan mute suara
Pengaturan preferences.
76
INFOLINUX 02/2005
f untuk toggle full screen T untuk toggle stay on top o untuk toggle penampilan on screen display (OSD) antara none/seek/seek + timer Apabila Anda berada di modus GUI, beberapa shortcut berikut mungkin berguna: ENTER untuk mulai memainkan video s untuk stop l untuk membuka file c untuk skin browser p untuk toggle playlist
7
Pengubahan parameter video. Menggunakan mplayer, Anda dapat menubah parameter video dengan sangat mudah. Cukup gunakan keyboard Anda. Berikut ini adalah beberapa shortcutnya: 1 dan 2 untuk penyesuaian kontras 3 dan 4 untuk penyesuaian brightness 5 dan 6 untuk penyesuaian hue 7 dan 8 untuk penyesuaian saturation
10
Melakukan looping. Kita dapat meminta mplayer untuk memainkan video tertentu dalam beberapa kali pengulangan. Apabila nilai jumlah perulangan dimasukkan 0, maka perulangan akan dilakukan tanpa henti. Perulangan dapat dilakukan dengan memberikan opsi -loop. Sebagai contoh: $ mplayer -loop 2 a.mpg
11
Menggunakan playlist. Playlist dapat dibuat sendiri dalam format URL per baris ataupun dalam format WINAMP. Setelah playlist dibuat, kita kemudian dapat memainkannya dengan memberikan opsi -playlist dan menyebutkan nama filenya sebagai berikut: $ mplayer -playlist a.pl
12
8
Secara default, mplayer mencetak begitu banyak informasi pada saat memainkan suatu video. Apabila Anda tidak menyukai pesan-pesan tersebut, Anda dapat menjalankan mplayer dengan opsi -quiet untuk membuat mplayer menampilkan lebih sedikit informasi. Sebagai contoh:
9
Beberapa informasi tidak akan ditampilkan dengan opsi -quiet tersebut. Apabila Anda masih ingin meminta mplayer menampilkan lebih sedikit informasi, gunakanlah opsi -really-quite. Sebagai contoh:
Ketika berada pada modus GUI, Anda dapat melakukan enqueue suatu file daripada memainkannya langsung. Hal ini berguna untuk membuat playlist sementara. Anda cukup memberikan opsi -enqueue diikuti dengan URL yang akan dimainkan.
Anda dapat juga mengamati identifikasi suatu video dengan memberikan opsi identify. Pada saat dimainkan, Anda dapat mengamati berbagai informasi seputar video yang Anda mainkan. Sangat lengkap! Berikut ini adalah contoh perintahnya: mplayer -identify a.mpg
Mplayer dengan vo ASCII Art.
www.infolinux.web.id
$ mplayer -quiet a.mpg
$ mplayer -really-quiet a.mpg
Berlawanan dari opsi ini, Anda dapat meminta mplayer untuk mencetak informasi yang lebih banyak dengan memberi-
TUTORIAL
Berita | Ulasan | Adu Software | Utama | Bisnis | Apa Sih Sebenarnya... | Tutorial
Mplayer
kan opsi -verbose. Tersedia empat verbosity level yang disediakan (default adalah 0). Anda dapat memberikan nilai 0 sampai 3. Berikut adalah contoh penggunaan: $ mplayer -verbosity 2 a.mpg
13
Saat ini, media player tidak hanya perlu menonjolkan fungsi. Tampilan yang indah pun sudah menjadi persyaratan. Mplayer juga melengkapi dirinya dengan kemampuan menerima skin pada modus GUI agar dapat tampil lebih indah. Anda dapat mendownload banyak skin mplayer di websitenya. Untuk memulai gmplayer dengan skin tertentu, berikanlah opsi -skin. $ gmplayer -skin default
Secara default, skin akan dicari pada direktori ~/.mplayer/Skin dan /usr/share/ MPlayer/Skin.
14
Mplayer dapat pula digunakan untuk mensimulasikan slide show. Namun, slide show ala video. Katakanlah Anda memiliki video demo berbagai produk. Anda dapat memainkan seolah-oleh pergerakan gambar menjadi kaku dan dilakukan dalam interval tertentu. Caranya, Anda meminta mplayer untuk berpindah frame setiap beberapa detik sekali. Dan, untuk melakukannya, mudah sekali. Hanya dengan memberikan opsi -sstep. Sebagai contoh: $ mplayer -sstep 5 a.mpg
15
MPlayer dapat diatur untuk mengeluarkan suara dalam jumlah channel audio seperti yang Anda miliki. Caranya, cukup berikan saja opsi -channels diikuti nilai channel yang Anda miliki. Nilai yang tersedia adalah: 2 untuk stereo 4 untuk surround 6 untuk dukungan penuh terhadap 5.1 Contoh perintah: $ mplayer -channels 4 a.mpg
16
Ada kalanya, kita ingin mengambil hanya beberapa frame pertama dari suatu movie. Hal tersebut memungkinkan dengan Mplayer. Frame-frame tersebut kemudian kita gabungkan bersama-sama ke dalam sebuah file GIF animasi.
Untuk mengambil beberapa frame pertama tersebut, kita akan memberikan opsi -frames diikuti oleh jumlah frame yang diinginkan. Sebagai contoh: $ mplayer -frames 50 a.mpg
Apabila diinginkan, seperti yang telah disebutkan, frame-frame tersebut dapat dirangkai bersama ke dalam sebuah file GIF animasi. Apa yang perlu kita lakukan hanyalah mengubah video output menjadi gof89a. Berikut ini adalah contohnya: $ mplayer -frames 50 -vo gif89a a.mpg
19
Salah satu fitur Mplayer yang paling menarik adalah kehadiran video filter. Dengan beberapa video filter yang disediakan, Anda dapat dengan mudah melakukan pengubahan terhadap video yang ditampilkan. Berikut ini, kita akan melihat contoh bagaimana memutar video dalam efek mirror dan flip. Kita juga akan melihat bagaimana melakukan cropping bagian tertentu pada video. Caranya adalah dengan memberikan opsi -vf diikuti dengan video filternya. Untuk memutar video dalam efek flipped, berikanlah perintah berikut ini: $ mplayer -vf flip a.mpg
17
Secara normal, memberikan opsi -fs akan membawa kita ke modus fullscreen. Apabila apa yang Anda dapatkan adalah layar hitam yang mengelilingi video Anda yang tampil kecil, maka fasilitas fullscreen tidak Anda dapatkan. Sebagai solusinya, Anda dapat mengganti ke video output lain. Solusi lain adalah mencoba memberikan opsi -fstype fullscreen. Namun, hal ini juga perlu diperhatikan karena bisa saja tidak bekerja untuk sistem tertentu. Pengguna OpenBox 1.x harus menggunakan opsi fstype -fullscreen agar dapat switching ke modus fullscreen tanpa masalah.
18
Bisakah Anda membayangkan gangguan screensaver yang tiba-tiba muncul ketika Anda sedang menikmati video dan duduk cukup jauh dari komputer? Pasti akan terasa sangat menyebalkan. Untuk itu, sebagai tindakan berjaga-jaga, matikan terlebih dahulu screensaver sebelum menjalankan video. Mplayer akan melakukan hal tersebut secara bertanggungjawab untuk Anda. Cara pertama adalah membuka dialog Preferences, aktif di tab Misc dan mengaktifkan pilihan Stop Xscreensaver. Cara kedua adalah dengan memberikan opsi -stop-xscreensaver pada saat menjalankan mplayer. Kedua cara tersebut akan mematikan xscreensaver pada saat menjalankan mplayer dan akan menjalankannya kembali sesaat sebelum Mplayer keluar. Dengan demikian, Anda tidak akan kehilangan fungsi screensaver setelah menonton.
www.infolinux.web.id
Untuk memutar video dalam efek mirrored, berikanlah perintah berikut ini: $ mplayer -vf mirror a.mpg
Untuk melakukan cropping, berikan perintah berikut ini: $ mplayer -vf crop=100:100 a.mpg
20
Apa saja file-file yang digunakan oleh Mplayer? Pertama-tama, untuk system wide data, Mplayer akan mempergunakan direktori /usr/share/MPlayer. Setelah itu, mplayer juga akanmempergunakan direktori per user ~/.mplayer. Untuk konfigurasi system wide, Mplayer akan mempergunakan /etc/mplayer/mplayer.conf. Untuk pengaturan user, Mplayer akan mempergunakan ~/.mplayer/config. Untuk konfigurasi GUI, Mplayer akan mempergunakan ~/.mplayer/gui.conf. Untuk font, Mplayer akan mencari ke ~/.mplayer/font. Direktori ini harus berisikan file font.desc dan file-file dengan ekstensi .RAW. Mplayer menyimpan sejumlah besar parameter yang bisa kita utak atik untuk menyesuaikan cara kerjanya sesuai dengan keinginan kita. Dan, semuanya terdokumentasi dengan sangat baik dalam sebuah halaman manual sepanjang hampir 4000 halaman. Apa yang kita bahas kali ini hanyalah beberapa tip mendasar. Anda selalu bisa membaca manual Mplayer untuk penggunaan lebih lanjut (halaman manual MPlayer tergolong sangat lengkap). Selamat mencoba! Noprianto ([email protected])
INFOLINUX 02/2005
77