DENGAN DVD 8 GB EDISI 04/2011 | HARGA Rp45.000 [Luar Sumatra-Jawa-Bali: Rp47.000] N E T WO R K I N G , SYS T E M A D M I N I S T R AT I O N , A N D M O R E WWW.INFOLINUX.WEB.ID UberStudent 1D.0 ON THE DV LEARN ANYTIME, ANYWHERE FROM WEB KURSUS ONLINE Membangun sistem kursus berbasis web Moodle tanpa dibatasi oleh tempat belajar [24] MONITORING IPTABLES: BATASI AKSES INTERNET SISTEM Batasi kuota dan waktu akses internet SEKOLAH Memantau aktivitas guru NOTASI MATEMATIKA dan siswa di sekolah melalui web browser DENGAN FORMULA INSIDE DVD DISTRO UNTUK PENDIDIKAN [36] [32] [46] Google Chrome 9.0.597.107 Browser web keluaran Google untuk berselancar di dunia maya Scilab 3.5.1 Permudah menghitung aljabar linear dan analisis numerik layaknya MATLAB IMS 1.18 Mengelola aset atau inventaris penting perusahaan secara mudah melalui web browser Zend Framework 1.11.4 Framework mudah bagi Anda yang ingin belajar bahasa program PHP Cover LINUX_04.indd 2 Pelajari desain grafis dengan UberStudent 1.0 [62] 3/11/2011 7:29:28 PM indoglobal (IL0050203).indd 1 8/26/2010 10:13:25 AM EDITORIAL PEMIMPIN UMUM Mario Alisjahbana PEMIMPIN REDAKSI Rusmanto Maryanto REDAK TUR SENIOR Anton R. Pardede, Effendy Kho SIDANG REDAKSI Supriyanto (Koord.), Denie Kristiadi, Fajar Anggiawan, Rully Novrianto, Sylvia Agustina Inamora, Suherman, Tri Waluyo, Wawa Sundawa, Zaky Abdurrachman KONTRIBUTOR Budi Rahardjo, I Made Wiryana, Michael S. Sunggiardi Noprianto, Ria Canseria TATA L E TA K & D E S A I N G R A F I S Dhany Sudharmanto, Lely Yulaena, Mardiana S E K R E TA R I AT R E D A K S I Evawani U. Putri IKL AN Indran B. Sapto, Febriyanti, Lala Camelia SIRKUL ASI & DISTRIBUSI Purwaluyo (Manajer) KEUANGAN Deetje Monoarfa (Manajer), Albert Sulistyo, Ngafiv, Tety Winarni, Untung PERSONALIA & UMUM Ekawati (Koord.), Suhaedin, Supandi PENERBIT PT InfoLINUX Media Utama A L A M AT Gedung Warta Lt. 4 Jl. Kramat IV No. 11, Jakarta Pusat-10430 Telp: (021) 315-3731, Fax: (021) 315-3732 P E N C E TA K PT Dian Rakyat, Jakarta Semua tip yang ada di dalam majalah ini gunakan atas risiko Anda sendiri. Kami tidak bertanggung jawab atas segala kehilangan data atau kerusakan pada komputer, alat-alat, atau software yang Anda miliki ketika menggunakan tip atau saran tersebut. Linux merupakan trademark terdaftar dari Linus Torvalds. Linux di sini adalah pemendekan dari GNU/Linux. Semua trademark lainnya merupakan hak masing-masing pemiliknya. InfoLINUX diterbitkan bulanan oleh Pinpoint Publications. Pinpoint Publications juga ikut menerbitkan majalah komputer bulanan PC Media, tabloid dwi-mingguan PC Mild, Buku Mini PC Media, dan Buku Mini InfoLINUX. Dilarang mereproduksi seluruh atau sebagian materi di media ini dalam bentuk dan dengan tujuan apapun. Pinpoint Publications tidak terafiliasi dengan perusahaan atau produk yang diuji coba di InfoLINUX. Seluruh staf InfoLINUX tidak memiliki investasi pada perusahaan atau produk yang diuji coba. Hasil uji coba produk yang dimuat di InfoLINUX tidak terkait dengan iklan atau hubungan bisnis perusahaan/produk tersebut dengan InfoLINUX. Kecuali disebutkan, uji coba dilakukan InfoLINUX pada produk dan layanan yang tersedia pada saat ini. Kami, di Pinpoint Publications, menjunjung tinggi nilai integritas. Untuk itu, dalam menjalankan tugasnya seluruh staf kami tidak dibenarkan menerima atau meminta imbalan dalam bentuk apapun dari relasi/narasumber. PENDIDIKAN KARAKTER DAN FOSS Istilah pendidikan karakter atau berkarakter menjadi populer belakangan ini. Pendidik diharapkan tidak hanya menyampaikan ilmu dan melatih keterampilan namun juga menjaga dan memperbaiki moral dan etika. Kemajuan teknologi informasi dan komunikasi atau TIK di satu sisi dipercaya sangat berguna untuk pendidikan namun di sisi lain dapat mendorong pendidik dan peserta didik melakukan tindakan amoral atau kejahatan. Salah satu kejahatan atau penyalahgunaan TIK di dunia pendidikan Rusmanto Maryanto [[email protected]] adalah pelanggaran hak atas kekayaan intelektual, terutama pelanggaran lisensi atau hak cipta software. Tindakan amoral di bidang TIK bisa sangat luas lingkupnya. TIK tidak sebatas sebagai mata pelajaran, tapi juga sebagai alat bantu pendidikan, misalnya pengajaran bahasa dengan TIK, serta penunjang proses pendidikan misalnya alat administrasi pendidikan. Umumnya, lembaga pendidikan di Indonesia masih menggunakan software ilegal untuk ketiga kegiatan tersebut. Ini berbahaya jika terus dibiarkan, karena pepatah “guru kencing berdiri, murid kencing berlari” bisa menjadi kenyataan sehingga pendidikan berkarakter akan sulit dilaksanakan. Apa solusinya agar TIK mendukung pendidikan berkarakter? Solusi cerdasnya adalah menggunakan Linux dan FOSS lainnya untuk ketiga bidang pemanfaatan TIK di pendidikan. Beberapa negara berkembang dan maju seperti Brasil dan Spanyol telah terbukti dapat memanfaatkan TIK berbasis Linux/FOSS untuk pendidikan. Penggunaan software proprietary, selain membebani biaya pendidikan karena mahalnya harga lisensi, juga kurang memberikan kebebasan kepada siswa/mahasiswa dan guru/dosen mengeksplorasi dan menguasai TIK. Dalam rangka menyambut Hari Pendidikan Nasional 2 Mei, InfoLINUX edisi 04/2011 ini menyajikan beberapa artikel dan isi DVD yang terkait pendidikan. Opini ketiga kontributor InfoLINUX juga menyoroti dunia pendidikan TIK dari sudut pandang masingmasing. Semoga Anda semakin semangat belajar dan berkarya sepanjang hayat. KONTAK REDAKSIONAL E-mail: [email protected], Telepon: (021) 315-3731 ext. 127-131 CD BERMASALAH E-mail: [email protected], Telepon: (021) 315-3731 ext. 127 BERKONTRIBUSI NASKAH [email protected] atau [email protected] ALAMAT ADVERTISING E-mail: [email protected], Telepon: (021) 315-3731 ext. 105-107 MAILING-LIST PEMBACA [email protected] PENDAFTARAN MAILING-LIST PEMBACA [email protected] BERLANGGANAN ATAU PEMESANAN EDISI-EDISI SEBELUMNYA E-mail: [email protected], Telepon: (021) 4682-6816, 7079-6499, Faksimili: (021) 4682-8919 www.infolinux.web.id 3_Editorial_04 edit rosi.indd 3 INFOLINUX 04/2011 3 3/10/2011 1:23:35 PM INDEKS [22] [22] [22] [23] [23] [23] [23] Edisi 04/2011 Rsyslog 5.6.4 Google Chrome 9.0.597.107 RedNotebook 1.1.3 Tracker 0.10.1 IMS 1.18 Zemanta 0.8.2 Froxlor 0.9.18.1 Utama [24] Kursus Online Berbasis Moodle Komunitas [30] SD II Al Abidin Gelar Lomba Game Anak [30] Seminar Network Security Linux di Aceh Praktik Instan [32] Akses Sistem Sekolah via Web Net Admin [36] Membatasi Akses Internet Berdasarkan Quota dan Waktu Akses [38] Daftar Warnet Berbasis Linux di Indonesia 24 Tutorial [40] Membangun Shell Sendiri [46] Menulis Notasi Matematika dengan LibreOffice [50] Instalasi Nginx, PHP5, dan MySQL [53] [3] Editorial [4] Indeks 17 7 30 34 36 52 55 Aktual [6] Debian Memenangi Dua Kategori di LNM Award 2011 [6] LibreOffice Enterprise [6] Scientific Linux 6.0 [7] Perubahan Distribusi dari Kernel RHEL [7] SUSE Manager [7] Mozilla Firefox WebApps [14] 4 04/2011 INFOLINUX 04_Indeks_04 edit rosi.indd 4 Workshop Surat Anda [54] Menggunakan Screenshot Desktop Shutter [56] Membuat Glass ORB 3D [57] Membuat Tetes Air (Embun) [58] Hitung Sel Khusus Sesuai dengan Kriteria [58] Pengenalan Dasar Fungsi HLOOKUP() [59] Hitung Sel Menggunakan Dua Kriteria [59] Pengenalan Dasar Fungsi VLOOKUP() [60] Simpan atau Bandingkan Checksum Hardware [64] Kuis InfoLINUX [66] Edisi Mendatang [17] Rainer SM150C12-2.4 SATA35NR [17] ASUS NAS-M25 Distro [18] Edubuntu 10.10 [18] UberStudent 1.0 Game [19] Neverball 1.5.4 [19] Toribash 3.5 Opini [8] Budi Rahardjo: Berkarya, Bisa Apa Saja [10] Michael S. Sunggiardi: Kesalahan Penyampaian Teknologi [12] I Made Wiryana: Makin Sexy dengan Open Source Tip & Trik Software Pilihan [20] [21] [21] [21] [21] [22] Scilab 3.5.1 Kalkun 0.2.9 Zend Framework 1.11.4 Sqlkit 0.9.3 Tornado 1.2.1 PacketFence 2.1.0 www.infolinux.web.id 3/10/2011 5:12:56 PM IKLAN PASS FM (materi FILM) DTP (IL0110211).indd 1 5/5/2010 11:33:56 AM AKTUAL Debian Memenangi Dua Kategori di LNM Awards 2011 ada penyelenggaraan Linux New Media Awards yang diselenggarakan pada pameran CeBIT belum lama ini di Jerman, distro Debian memenangi dua dari tujuh kategori. Salah satu distro komunitas tertua ini di LNM Awards 2011 memenangi kategori “Best Open Source Server Distribution” dan “Outstanding Contribution to Open Source/Linux/Free Software”. Karsten Gerloff, President of the Free Software Foundation Europe, saat mempresentasikan penghargaan kepada pihak Debian, mengatakan kalau pada distro Debian, kualitas merupakan fokus dari semua yang P diinginkan oleh pengguna. Namun semua yang bekerja pada sistem Debian mengetahui dengan baik kalau software yang baik tidak akan ada artinya jika tidak bersifat bebas. Dengan rilis versi terbaru dari Debian, yakni Debian 6.0 (Squeeze), Debian telah mengambil langkah penting dalam menyajikan kernel yang benar-benar bersifat free, tanpa ada tambahan file biner. Pada penyelenggaraan LNM Awards sebelumnya, semua pemenang kategori dipilih oleh dewan juri yang terdiri atas redaksi, pengajar dan ahli industri dalam bidang open source. Namun pada tahun ini, untuk LibreOffice Enterprise ebagai kontributor utama aplikasi LibreOffice, aplikasi turunan OpenOffice.org, Novell telah mengumumkan sebuah versi yang bersifat komersial, enterprise-class dan memiliki dukungan paket. Novell mengatakan kalau LibreOffice dengan Novell Services terdiri atas enam aplikasi yang terdiri atas aplikasi pengolah kata, spreadsheet, pembuat presentasi, database, perhitungan formula matematika dan menggambar. Dibandingkan dengan paket aplikasi perkantoran lainnya, LibreOffice dapat menurunkan biaya sekitar 50 hingga 60 persen dalam kurun waktu tiga tahun. Sebelumnya, Novell juga telah memasok Open- S 6 04/2011 INFOLINUX Aktual_04_EditZaky.indd 6 Office.org Novell Edition, dan kini menawarkan LibreOffice sebagai penerusnya. Harga yang ditawarkan untuk dukungan komersial LibreOffice dari Novell ditawarkan mulai dari US$120 untuk satu perangkat dalam setahun. Versi gratis dari LibreOffice 3.3.1 sendiri, sudah dapat di download dari alamat url http:// www.libreoffice.org/ download/. Paket LibreOffice 3.3.1 tersedia untuk platform Windows, Linux dan Mac OS X. Menurut info, sejumlah versi akan datang dari distro besar seperti Ubuntu 11.04, Fedora 15 dan openSUSE 11.4, akan menjadikan LibreOffice sebagai aplikasi defaultnya. kali pertama para pemenang LNM Awards terpilih melalui pemilihan suara secara online dari komunitas pada umumnya untuk kategori Distribusi Linux Favorit. Dari postingan yang terdapat pada situs Debian (http://www.debian.org/ News/2011/20110304), pihak Debian sangat bangga kalau tahun ini mereka dapat memenangi dua kategori sekaligus pada penyelenggaraan LNM Awards 2011. Pada penyelenggaraan LNM Awards 2010, Debian juga mendapat penghargaan sebagai pemenang kedua dalam kategori “Outstanding contributions in the field of free software and Linux”. Scientific Linux 6.0 ara pengembang Scientific Linux telah merilis versi 6.0 dari distribusi Linux buatan mereka yang ditujukan untuk sistem x86-32 dan x86-64. Dikembangkan oleh Fermilab, CERN dan sejumlah universitas dan lembaga riset, proyek Scientific Linux menyediakan model gratis dari Red Hat Enterprise Linux (RHEL). Sejumlah komponen yang dilindungi dan sejenisnya pun, sudah dihilangkan terlebih dahulu dari sumber kode RHEL. Beragam paket yang disertakan dalam Scientific Linux telah dikompilasi ulang untuk memastikan semua paket yang termasuk dalam RHEL 6.0 dapat bekerja dengan baik di P Scientific Linux 6.0. Scientific Linux merilis lebih cepat dibandingkan dengan distro CentOS yang baru merilis versi 4.9. Scientific Linux 6.0 juga menawarkan sejumlah perubahan dan tambahan paket dibandingkan dengan distro CentOS. Meski demikian, baik distro CentOS maupun Scientific Linux menjanjikan kompabilitas penuh. Untuk menambah fungsionalitas, repositori Scientific Linux dapat merujuk ke repositori Extra Packages for Enterprise Linux. Bagi yang ingin mencoba, file iso Scientific 6.0 dapat diunduh pada url http:// www.scientificlinux.org/ download. www.infolinux.web.id 3/8/2011 4:07:51 PM AKTUAL Perubahan Distribusi dari Kernel RHEL ed Hat, salah satu vendor distro terbesar di dunia open source, telah merubah kebijakan cara distribusi kernel pada RHEL. CTO Red Hat, Brian Stevens, membuat pernyataan mengenai perubahan cara distribusi kernel Red Hat ini di blog Red Hat. Menurut Brian, Red Hat telah merubah kebijakan distribusi kernel Linux yang terdapat pada distro RHEL. Kernel Linux pada RHEL merupakan komponen kunci dari Red Hat Enterprise Linux (RHEL). Sebelumnya, kernel RHEL didistribusikan sebagai sebuah kernel standar beserta patch yang perlu diterapkan untuk menjadi versi Red Hat Enterprise Linux. Namun mulai RHEL 6, distribusi kernel RHEL kini berubah menjadi sebuah file arsip R dengan patch yang belum diterapkan dan rincian patch yang dibuat tidak dijelaskan secara eksplisit. Menurut Steven, perubahan ini dilakukan karena kompetitor Red Hat di pasar Linux Enterprise telah mengubah pendekatan mereka, yang mana mereka juga menawarkan layanan dukungan seperti pada RHEL. Dengan diubahnya pola distribusi kernel RHEL, pihak Red Hat dapat mengandalkan dukungan melalui layanan subscription. Meski terjadi pola distribusi kernel Linux, Stevens menegaskan kembali komitmen Red Hat untuk membuka pengembangan kode sumber. Selain itu, Red Hat juga mencatat kalau pihak perusahaan maupun pesaing Red Hat, telah mengambil banyak man- SUSE Manager ovell, perusahaan yang berada dibalik suksesnya SUSE Linux Enterprise Server, telah mengumumkan rilis dari SUSE Manager. Selain mendukung platform SUSE Linux Enterprise Server (SLES), SUSE Manager juga dapat berjalan pada distro Linux yang lain seperti Red Hat Enterprise Linux (RHEL). Markus Rex, Novell VP and GM of Open Platform Solutions, mengatakan kalau SUSE Manager merupakan sebuah langkah besar dalam kematangan sebuah perusahaan Linux. Dengan menyediakan integrasi lengkap dan dapat berjalan pada sejumlah dis- N www.infolinux.web.id Aktual_04_EditZaky.indd 7 tro, SUSE Manager memungkinkan pengembangan Linux dalam mencapai tingkat yang baru. SUSE Manager dibuat berbasiskan Spacewalk, solusi manajemen sistem bersifat free untuk platform Linux dan menawarkan kemampuan sistem provisioning dan monitoring, seperti update dan manajemen aset. Tool ini juga memiliki fitur untuk mendukung manajemen paket Zypp, yang menyediakan kecepatan dan efisiensi dari proses update Linux. Informasi lebih lanjut mengenai Novell SUSE Manager dapat ditemukan lengkap pada alamat situs www.novell.com/products/suse-manager. faat dari pendekatan model ini sehingga Red Hat akan terus memberikan kontribusi patch kernel. Red Hat percaya kalau model pengembangan berbasis open source adalah model pengembangan terbaik untuk menghasilkan software terbaik, sehingga Red Hat akan terus meningkatkan sumber daya yang diinvestasikan untuk perkembangan software terbuka. Stevens juga menambahkan kalau bisnis perusahaan Red Hat bukan bicara tentang “bit”, tetapi layanan kepada pelanggan. Mozilla Firefox WebApps esaat sebelum merilis versi final dari Firefox 4, para pengembang Mozilla telah memperkenalkan proyek bernama “Web Apps”. Aplikasi ini diharapkan dapat memainkan peran utama dalam masa depan browser Firefox. Dengan Web Apps web browser tidak hanya berfungsi sebagai aplikasi untuk melihat halaman web, namun juga menjadi suatu platform untuk menginstalasi aplikasi secara lokal. Spesifikasi ini juga memuat daftar struktur dan isi dari aplikasi, sehingga cukup digunakan untuk mengembangkan aplikasi. Aplikasi yang dibuat juga dapat berbagi sumber daya dan akan menggunakan spesifikasi HTML5 untuk of- S fline cache dari sumber dayanya yang mana cara ini biasa digunakan oleh aplikasi cache. Adapun untuk prosedur instalasi WebApps, selain pengguna dapat melakukan instalasi melalui prosedur normal instalasi WebApps yang biasa dilakukan seperti menginstalasi AddOn, namun Mozilla juga menyediakan JavaScript functions. User Agent akan melakukan instalasi aplikasi, menjalankannya, dan memberi sejumlah tambahan hak akses. Mozilla juga sedang membuat eksperimen Web Apps extensions yang dapat berjalan dengan baik pada web browser Firefox 4 Beta dan Google Chrome bagi kemudahan pengguna. INFOLINUX 04/2011 7 3/8/2011 4:07:52 PM OPINI Budi Rahardjo Berkarya, Bisa Apa Saja elakangan, ada perdebatan apakah memasang sebuah content management system (CMS) dan membuat sebuah layanan berdasarkan CMS itu bisa dikatakan sebuah karya? Apakah untuk disebut berkarya kita harus membuat CMS sendiri dari awal? Menurut saya, “sekadar” memasang CMS dan membuat layanan di atasnya bisa disebut berkarya karena “sekadar” di sini ternyata tidak hanya “sekadar.” B Untuk memasang CMS dibutuhkan upaya (effort) yang mungkin terlihat mudah tetapi pada kenyataannya sering membutuhkan upaya yang lebih. Untuk CMS yang sudah mapan pemasanganan bisa lancar, tetapi untuk CMS yang masih baru kadang kita harus memasang program tambahan atau bahkan merakit (compile) berbagai program tambahan. Ini baru urusan memasang. Mengubah konfigurasi bawaan dan menyesuaikannya dengan keinginan kita juga ternyata tidak mudah. Mulai dari membuat desain tampilan, layout, gambar-gambar, header, dan seterusnya membutuhkan upaya yang tidak sedikit. Perbedaan konfigurasi ini yang justru membuat sebuah situs atau layanan berbeda, meskipun CMS yang digunakannya sama; misalnya sama-sama berbasis wordpress atau drupal. Desain dan layout yang berbeda ini bisa disebut sebuah tema (theme). Membuat theme dari sebuah CMS sudah pasti dapat dikatakan berkarya karena tidak 8 04/2011 INFOLINUX 08_Opini_04 edit rosi.indd 8 sedikit yang harus dikerjakan. Bahkan, salah satu alasan yang menyebabkan CMS wordpress sangat populer dan mengalahkan CMS lainnya adalah keberadaan theme yang bervariasi ini. Ini pula yang menyebabkan aplikasi winamp populer, yaitu ketersediaan skin yang banyak. Apakah sebuah karya harus jauh berbeda dengan karya yang lain untuk dapat disebut sebuah karya? Menurut saya tidak harus. Ketika Google muncul, sudah ada Yahoo! Keduanya memberikan layanan yang sama, seperti pencarian (search) dan email. Lantas, apakah Google bukan sebuah karya karena sudah ada Yahoo!? Tentu saja Google merupakan sebuah karya. Kembali ke masalah berkarya dan CMS, akan sangat membatasi jika yang dimaksudkan dengan berkarya adalah dengan membuat CMS sendiri dari awal. Apakah untuk membuat sebuah aplikasi (program komputer) kita harus membuat compiler sendiri? Tentu saja tidak. Kita bisa menggunakan apa yang sudah ada dan mengembangkan berbagai produk, aplikasi, dan layanan di atasnya. Ada banyak hal lain yang bisa kita lakukan untuk berkarya. Menerjemahkan dokumen manual, menu aplikasi open source, halaman bantuan (help), tutorial, dan tulisantulisan lainnya juga dapat dianggap sebuah kontribusi atas sebuah karya open source. Masih dibutuhkan banyak tenaga untuk melakukan penerjemahan ini. Bahkan, sekadar menulis apa saja, dapat dikatakan berkarya. Ada sebuah ungkapan yang mengatakan bahwa ide itu hanya 1% “Membuat theme dari sebuah CMS sudah pasti dapat dikatakan berkarya karena tidak sedikit yang harus dikerjakan.„ Setelah situs berjalan, mengelolanya dengan tekun juga merupakan tantangan tersendiri. Banyak situs yang muncul, bahkan diluncurkan secara besar-besaran, kemudian mati suri karena masalah pengelolaan yang tidak serius, malas-malasan, dan setengah hati. Pengelolaan ini menurut saya masih menjadi bagian dari berkarya. saja dari kesuksesan, keringat (usaha) itu yang 99%. Jadi, sekadar memasang CMS dan membuat layanan di atasnya bisa dianggap sebuah karya. Apalagi kalau bisa memodifikasi CMS seperti membuat theme atau program tambahan. Ini juga berlaku untuk jenis aplikasi yang lain, tidak hanya CMS. Nah, sudahkah kita berkarya hari ini? Yuk, mari. www.infolinux.web.id 3/8/2011 4:05:32 PM biznet (IL0510508).indd 1 2/4/2011 3:16:53 PM OPINI Michael S. Sunggiardi Kesalahan Penyampaian Teknologi enulis bergelut dalam dunia TIK Indonesia sejak 1982. Dalam perjalanan 29 tahun ini terasa ada yang tidak betul dalam pengembangan TIK Indonesia, terutama di pendidikan dasar dan menengah. Pada 2010 yang lalu, Pustekkom melalui jaringan Jardiknasnya sudah berhasil menyambungkan 25.835 sekolah ke internet. Namun, kenyataannya banyak sekolah tidak memanfaatkan secara kontinyu sambungan yang telah terpasang ini. P Penyebab gagalnya pemanfaatan Jardiknas, antara lain internet di sekolah selalu mati-nyala tidak konsisten dan ketidakmampuan sekolah mengelola akses internet yang sangat terbatas. Biasanya, dari lima komputer hanya satu unit yang tersambung. Selain fisik dan infrastruktur yang belum sempurna dan tidak seperti yang diharapkan, kesiapan SDM juga masih di bawah angka yang diharapkan. Ini terutama bagi guru-guru TIK (teknologi informasi dan komunikasi) yang bertanggung jawab atas laboratorium komputer sekolah dalam kurun waktu sepuluh tahun terakhir. Guru TIK yang mestinya mengembangkan pengetahuan TIK ke guru-guru non-TIK, pada kenyataannya tidak punya kesempatan untuk saling berbagi karena keterbatasan waktu atau padatnya jadwal mengajar. Sehingga, 10 04/2011 INFOLINUX 08_Opini_04 edit rosi.indd 10 mereka tidak sempat untuk belajar dan menerapkan TIK dalam proses pembelajarannya. gunakan kapur atau spidol di papan tulis putih yang dipasang di kelas dan guru TIK mengajar komputer di laboratorium komputer. Pemerintah lewat Pusat Buku dan Pustekkom sudah membuat buku elektronik atau e-book BSE (Buku Sekolah Elektronik) yang bisa menjadi pintu masuk pemanfaatan TIK di sekolah untuk mata pelajaran nonTIK. Akan tetapi, buku elektronik yang mestinya didistribusikan secara elektronik itu akhirnya dicetak atau di-foto copy untuk dapat dibaca oleh anak-anak sekolah. Dibangunnya laboratorium komputer berharganya puluhan juta rupiah dengan jumlah komputer yang banyak membuat guru TIK terpaku pada mesin-mesin ini sehingga tidak mampu mengembangkan pengetahuannya untuk diterapkan dalam proses belajar-mengajar di kelas. Jarang sekali guru non-TIK yang mau mengajar di laboratorium komputer sekolah selain karena jadwal yang ketat, guru non-TIK juga bingung jika harus mengajar mata pelajarannya di depan komputer. Kesalahan-kesalahan inilah yang harus segera diperbaiki sehingga secara umum kita dapat meningkatkan pemanfaatan TIK di sekolah dasar dan menengah. Ini semua juga harus “Guru-guru non TIK kebanyakan tetap mengajar hanya dengan menggunakan kapur atau spidol di papan tulis...„ Keadaan ini terus berlangsung dalam kurun waktu sepuluh tahun belakangan ini. Guru TIK terisolasi di laboratorium komputer dan tidak ada kaitannya dengan guru non-TIK dalam proses pembelajaran. Akhirnya, belajar komputer hanya belajar menjalankan komputer saja tanpa tahu persis apa yang seharusnya diperbuat dengan peranti itu. Guru-guru non-TIK kebanyakan tetap mengajar hanya dengan meng- dilakukan agar kita dapat menepis anggapan beberapa pakar pendidikan yang merasa tidak perlunya mata pelajaran komputer di sekolah dasar dan menengah. Selain itu, konsep laboratorium komputer juga harus dikaji ulang dan sebaiknya puluhan atau ratusan komputer disebar ke kelas-kelas. Sehingga, guru nonTIK terdorong mengajar dengan memanfaatkan komputer untuk mata pelajaran non-TIK. www.infolinux.web.id 3/8/2011 4:05:35 PM Asia Raya (IL0520117).indd 1 3/9/2011 2:16:34 PM OPINI I Made Wiryana Makin Sexy dengan Open Source eringkali, orang tidak sadar bahwa pengetahuan matematika merupakan hal yang penting dalam pengembangan teknologi informasi. Misal, dalam teknologi sekuriti, banyak teori matematika yang diterapkan. Begitu juga di dalam pemrograman game. Tetapi, seringkali mahasiswa merasa malas dan enggan mempelajari teori tersebut. Apalagi, mata kuliah tersebut seringkali diajarkan secara “kering” karena kurang melibatkan contoh-contoh nyata. Terkadang, teori tersebut juga dijabarkan dalam program contoh yang terlalu sederhana. S Ini mungkin disebabkan mengajarkan mata kuliah seperti metode numerik diawali dengan menerangkan konsep matematika lalu diikuti dengan implementasi pemrograman, misalnya penulisan source code. Sayangnya, seringkali contoh yang diberikan bukanlah masalah dengan skala sesungguhnya. Pada pemecahan masalah numerik pada skala sesungguhnya, kerap dibutuhkan pertimbangan-pertimbangan lainnya. Baik pertimbangan dari sisi algoritma, struktur data ataupun implementasi software/hardware. Hal itu yang sering luput dilakukan dalam pengajaran mata kuliah seperti ini sehingga menyebabkan mahasiswa tidak melihat benang merah antara teori dan implementasi nyata dari teori tersebut. Mahasiswa tidak bisa “melihat” secara konkret, 12 04/2011 INFOLINUX 08_Opini_04 edit rosi.indd 12 bagaimana teori-teori matematika tersebut diterapkan di source code program dan digunakan dalam pe- aplikasi ini, di samping telah tersedianya fungsi-fungsi numeris yang kaya, penggunaan source code yang menyertai pengajar sebagai contoh dari aplikasi yang kompleks juga dimungkinkan. Mahasiswa bisa melihat bagaimana perhitungan matematika dimanfaatkan oleh program seperti GIMP dalam mengolah gambar. Dengan menggunakan program Open Source seperti R atau Scilab, mahasiswa bukan saja dapat menggunakan program legal untuk memecahkan masalah numeris yang kompleks. Akan tetapi, lebih jauh lagi, pengajar dapat menunjukkan bagaimana suatu pengetahuan matematis diterapkan menjadi source code pada aplikasi “sesungguhnya” yang berskala serius. Benang merah, antara teori matematika dengan source code akan terlihat jelas. Ini sangat penting bagi mahasiswa komputer yang mempelajari matematika. Pembelajaran menggunakan Open Source bukan saja menguntungkan dari sisi ekonomis tetapi juga memiliki nilai tambah dari sisi pedagogis. Ini karena, aplikasi Open Source telah menyediakan fungsi yang dibutuhkan anak didik dan pengajar secara legal. Mahasiswa dan dosen mendapat kesempatan untuk mempelajari source code dari program sesungguhnya yang digunakan untuk memecah- “Mahasiswa dan dosen mendapat kesempatan untuk mempelajari source code dari program sesungguhnya...„ nyelesaian masalah yang nyata. Penyebabnya, penggunaan perangkat lunak jadi menutupi kemungkinan itu sehingga, pengajar tidak dapat menunjukkan secara nyata. Di lain pihak, banyak pengajar yang belum membuat aplikasi kompleks. Untungnya, masalah itu kini dapat diatasi dengan pemanfaatan aplikasi numerik berbasis Open Source. Pada kan masalah yang kompleks. Dengan cara ini, mahasiswa dan pengajar di negara berkembang seperti Indonesia mendapat kesempatan yang sama dengan mahasiswa di negara maju dan dapat melakukan lompatan jauh untuk memperkaya pengetahuannya. Ini yang sulit dilakukan dengan penggunaan program proprietary closed source. www.infolinux.web.id 3/8/2011 4:05:36 PM PCMEDIA SPECIAL Office The Unnofisial Magazine #3. INFO LINUX EXTRA GIMP: Free Photoshop Alternatve For Photo And Image Editor PCMEDIA SPECIAL Essential Guide Blackberry PC MILD EXTRA Corel Draw: Seni Mendesain Vector Artistik PCMEDIA EXTRA Windows XP Security. PC MILD EXTRA Tweaking PC Demi Langkah Mempercepat Komputer Tercinta. MAJALAH EXTRA SPECIAL I AP K G LE N LE KSI KO A! AN D PCMEDIA GROUP INFO LINUX EXTRA Ubuntu: Distro Linux Masa Kini. Belajar asyik teknologi melalui beragam tutorial konkret plus software di CD/DVD. Untuk pemesanan langsung hubungi: Sirkulasi Pinpoint Publications (DPKU) Telp: (021) 4682-6816, 7079-6499. Fax: (021) 4682-8919 [email protected] IKlan campur.indd 1 2/28/2011 5:34:17 PM SURAT ANDA Punya opini, pendapat, kritik, atau saran yang terpendam untuk InfoLINUX? Sampaikan melalui surat ke Redaksi InfoLINUX, Jl. Kramat IV No. 11 Jakarta 10430 atau email di [email protected]. Debian 6.0 Berhubung telah rilisnya versi stable Debian 6, saya sangat mengharapkan sekali InfoLINUX dapat menyertakannya dalam Ekstra DVD InfoLINUX edisi mendatang. Atau, mungkin InfoLINUX bisa menyajikannya sebagai edisi InfoLINUX Extra. Dejan Dharmawan - via e-mail Distro Debian 6.0 kemungkinan baru dapat kami muat pada Ekstra DVD majalah InfoLINUX 05/2011. Jadi, harap bersabar menunggu terbitnya InfoLINUX 05/2011, ya. buku Panduan Praktis Membangun Server Email Enterprise dengan Zimbra dan Majalah Extra InfoLinux 2. Berapa harga kedua buku tersebut dan bagaimana prosedur pemesanannya? Ari Debian Nugroho - via e-mail Opexs - via e-mail Untuk pemesanan buku dan majalah extra InfoLINUX, Anda dapat menghubungi Sirkulasi Pinpoint Publication (DPKU), Telp: (021) 4682-6816, 7079-6499, Fax: (021) 4682-8919, email: [email protected]. Preview Majalah InfoLINUX Membuat Mail Server yang Andal 1. Kapan majalah InfoLINUX mau mengulas cara membuat mail server? 2. Kira-kira distro apa yang cocok untuk membuat mail server? Yosep Raharja - via e-mail 1. Pembahasan mengenai mail server baik dengan Qmail toaster, Postfix maupun Zimbra sudah pernah dilakukan pada majalah InfoLINUX edisi terdahulu. InfoLINUX juga sudah mengeluarkan sejumlah buku mini yang membahas tentang pembuatan email server. Salah satu yang terbaru adalah buku mini InfoLINUX yang berjudul Panduan Praktis Membangun Server Email Enterprise dengan Zimbra. 2. Pada dasarnya hampir semua distro yang ditujukan untuk server dapat Anda gunakan untuk membuat mail server. Namun, sebagai saran, Anda dapat menggunakan distro CentOS 5.4, Ubuntu 10.04 LTS Server, Debian 6.0, atau openSUSE 11.3. Pemesanan Buku Saya mau menanyakan perihal harga 14 04/2011 INFOLINUX 14_Surat Anda_04_EDITSUPRI editros.indd 14 dih. Jika berkenan, tolong dibahas seputar permasalahan ini. Kalau bisa, tolong sertakan juga file iso distro Rescatux, yaitu distro seperti super grub disk yang berfungsi mengatasi bootloader yang bermasalah pada MBR hardisk. Saya bukan pengguna Linux untuk kebutuhan sehari-hari. Namun terkadang saya membeli majalah InfoLINUX untuk menambah pengetahuan. Karena saya tidak langganan, untuk membeli InfoLINUX saya sering melihat-lihat di lapak tukang koran terlebih dahulu. Untuk itu, saya ingin menyarankan agar pada website InfoLINUX selalu ada preview untuk edisi bulan depan. Informasi ini kalau bisa disampaikan juga melalui milis Majalah InfoLINUX di [email protected]. Doni - via e-mail Usulan Anda sudah kami realisasikan. Pada website InfoLINUX yang baru didevelop ulang (http://www. infolinux.web.id), kami akan secara berkala memuat preview Majalah InfoLINUX edisi bulan selanjutnya pada pertengahan bulan sebelumnya. Jadi, silakan Anda cek langsung ke website InfoLINUX di bagian INFOLINUX MAGAZINE. Problem Grub2 Saya sering berrmasalah dengan dual booting pada bootloader Grub2 Linux. Setelah install ulang Windows, bootloader Linux akan tertin- Permasalahan Grub2 yang bermasalah setelah install ulang Windows, sudah pernah dibahas pada salah satu artikel InfoLINUX edisi lalu. Pembahasan mengenai Grub2, juga dapat dilihat pada url http://www.dedoimedo.com/computers/grub-2.html. Untuk permintaan file iso distro Recatux, jika memungkinkan akan coba kami muat pada salah satu Ekstra DVD InfoLINUX edisi mendatang. Request Distro Superb Mini-server Kami baru saja menyelesaikan Ujian Kompetensi keahlian untuk SMK dan Vyatta kami gunakan sebagai distro Linux untuk membangun internet gateway (router) dalam Ujian tersebut. Tanpa informasi di majalah InfoLINUX tentang Vyatta, mungkin kami masih menggunakan sistem operasi bajakan untuk membangun internet gateway tersebut. Selain itu, saya juga ingin meminta bonus iso distro Superb Mini Server versi LiveCD untuk dimuat pada Ekstra DVD InfoLINUX mendatang. Maarif - via e-mail Kami cukup senang jika informasi yang terdapat pada majalah InfoLINUX dapat membawa banyak manfaat bagi para pembaca kami. Untuk permintaan file iso distro Superb Mini Server, jika memungkinkan akan coba kami muat pada salah satu Ekstra DVD InfoLINUX edisi mendatang. www.infolinux.web.id 3/10/2011 11:40:36 AM IKLAN PASS FM (materi FILM) iklanlinux_1hal_awan.indd 1 3/9/2011 1:48:53 PM TES&REVIEW INDEX Belajar Tanpa Henti Hardware Rainer SM150C12-2.4 SATA35NR ASUS NAS-M25 17 17 Distro Edubuntu 10.10 UberStudent 1.0 18 18 Game Neverball 1.5.4 Toribash 3.5 19 19 Definisi Label “On the Disc” Sebuah software yang memperoleh label “On the Disc” berarti Anda dapat menemukan paket software tersebut dalam bonus Disc InfoLINUX edisi kali ini. 18 Prosedur “Linux Ready” 19 ata siapa belajar itu hanya sampai bangku kuliah? Banyak orang pun bisa mengambil sarana kursus sebagai pembelajarannya. Oleh karena itu, InfoLINUX edisi ini akan membahas banyak hal yang terkait dengan pendidikan mulai dari distribusi Linux yang disertakan serta topik pada rubrik "Utama" dan juga "Praktik Instan". Di rubrik "Utama" kali ini InfoLINUX membahas tentang bagaimana membuat kursus online berbasis Moodle. Mengapa memilih Moodle? Karena dengan menggunakan Moodle, pengguna dapat membuat sistem belajar berbasis online dengan mudah untuk membantu kegiatan belajar mengajar. Tidak ketinggalan, pada rubrik "Praktik Instan" akan dibahas bagaimana sebuah sistem sekolah yang terdiri dari kepala sekolah, staf pengajar, hingga siswa dapat dimonitor K 16 04/2011 INFOLINUX 16_Pengantar tes&review_04_EditZaky edit rosi.indd 16 17 melalui web atau internet. Monitoring yang dimaksud di sini adalah bagaimana kepala sekolah dapat memonitor absensi staf pengajarnya dan orang tua murid dapat memonitor kehadiran serta prestasi buah hatinya di sekolah. Masih ada lagi kejutan dari kami untuk pembaca di edisi ini: kami menyertakan distribusi Linux khusus untuk pendidikan yaitu UberStudent 1.0 dan Edubuntu 10.10. Semua distribusi Linux ini merupakan turunan dari Ubuntu. Khusus untuk UberStudent 1.0, pada rubrik "Workshop Distro" tersedia artikel yang akan mengajak Anda untuk belajar desain grafis menggunakan berbagai macam aplikasi grafis di UberStudent. Semua aplikasi dan distribusi pendidikan ini disediakan hanya untuk pembaca setia InfoLINUX. Sebuah PC atau notebook yang mendapatkan predikat “Linux Ready” berarti semua peripheral standar seperti adapter jaringan LAN maupun WLAN, dapat berfungsi sebagaimana mestinya, mulai proses instalasi distro Linux dilakukan hingga instalasi driver hardware tersebut. Distro Linux yang digunakan dalam pengujian “Linux Ready” adalah Ubuntu 10.04 LTS, Fedora 13, dan openSUSE 11.3. Supriyanto [[email protected]] www.infolinux.web.id 3/10/2011 5:31:16 PM HARDWARE SERVER NETWORK-ATTACHED STORAGE Rainer SM150C12-2.4 SATA35NR ASUS NAS-M25 MODEL SM150C12-2.4 PROSESOR 2x Intel Xeon E5645 Six Core 2.4 Ghz L3 cache 5.86 GT/s QPI HDD 6x ports SATA with 1x 500 GB Seagate Barracuda SATA II ES installed NETWORK CARD 2x Gigabit Ethernet RAID Support RAID 0, 1, dan 5 HARGA Rp24.400.000 (kisaran) RAM 8x slot memory with 2x Visipro 2GB DDR3 ECC UDIMM TIPE ANTENA 2x external antenna GARANSI 1 tahun INFO http://rainerserver.net DISTRIBUTOR TERADATA INDONUSA (021) 626-6780 PROCESSOR Marvell 1.2 GHz ARM Processor RAM 512 MB DDR2, 128 MB Flash STORAGE 2x3.5” SATA I/II DIMENSI 120 mm (H) x 129 mm (W) x 211 mm (D) STORAGE MANAGEMENT Single Drive, JBOD, RAID 0/1, S.M.A.R.T INTERFACE LAN: 1xRJ45 10/100/1000 Mbps HARGA $200 GARANSI 3 tahun INFO www.asus.com DISTRIBUTOR Disti Astrindo, (021) 612-1330 ari jajaran produk server 12 Core, kali ini InfoLINUX mendapat kesempatan mengetes server Rainer SM150C122.4 SATA35NR. Produk ini dilengkapi dengan prosesor 2x Intel Xeon E5645 Six Core 2.4 Ghz L3 cache 5.86 GT/s QPI dan Intel 5500 server chipset. Media penyimpanan server ini dilengkapi dengan 6x ports SATA dengan 1 buah hard disk 500 GB Seagate Barracuda ES yang telah terpasang. Untuk urusan konektivitas ke jaringan, server ini menyediakan 2 buah Gigabit Ethernet. Dilengkapi dengan 4x slot memory plus 2x Visipro 2 GB DDR3 ECC UDIMM. Jika Anda butuh melakukan koneksi ke perangkat lain via USB port, disediakan pula 6x port USB. D www.infolinux.web.id 17_Hardware_04_EditZaky edit rosi.indd 17 Ada juga tambahan 2x PCI Express2.0 x8 dan 1x slot PCI Express2.0 x4. Dalam pengujian dengan Phoronix Test Suites, server ini mencatat hasil yang cukup memuaskan. Dari beberapa uji coba, tercatat produk ini memiliki nilai benchmark yang cukup tinggi untuk pengujian dengan IOzone dan Stream dan mendapat nilai 119 untuk write dan read performance. Hanya saja, untuk urusan harga, server ini masih terasa cukup mahal untuk kalangan UKM.Sup Hasil Pengujian Performa (40%) Kelengkapan (30%) Service (10%) Harga (20%) 9,5 5,5 9,0 2,5 RATING 0 2 4 6 8 10 8,0 etode pertukaran data menggunakan CD dan DVD ataupun menggunakan flashdisk sudah ketinggalan zaman. Sekarang adalah zamannya Network Attached Storage (NAS). Melihat peluang ini, ASUS mengeluarkan perangkat terbarunya, yaitu ASUS NASM25 yang merupakan perangkat berbagi data sekaligus sebagai media server yang mendukung iTunes dan klien DLNA. Perangkat ini menyediakan dua buah bay untuk meletakkan hard disk dengan mudah. Apabila Anda memiliki hard drive lainnya, Anda dapat memasangnya melalui konektivitas port USB pada bagian depan dan bagian belakang. Bagi yang ingin melakukan backup dan M restore, NAS-M25 memiliki fitur one touch USB auto backup, jadi Anda tinggal pasang kamera digital ataupun camcorder pada port USB bagian depan kemudian klik tombol auto backup. Secara otomatis, data dari kamera digital akan tersimpan di dalam NAS. Konfigurasi perangkat ini dapat dilakukan dengan browser karena berbasis web. Berarti, Anda, dapat dengan mudah melakukan pertukaran data ataupun streaming multimedia.Za Hasil Pengujian Performa (20%) Kelengkapan (30%) Service (20%) Harga (30%) 2,5 9,0 6,5 8,0 RATING 0 2 4 6 8 10 6,0 INFOLINUX 04/2011 17 3/10/2011 4:29:45 PM DISTRO EDUCATION EDUCATION Edubuntu 10.10 UberStudent 1.0 PEMBUAT Edubuntu Team SITUS www.edubuntu.org KERNEL 2.6.35 DESKTOP GNOME 2.32.0 OFFICE OpenOffice.org 3.2.1 PARENTAL CONTROL Nanny 2.29 GRAPHICS GIMP 2.6.10, Inkscape 0.48.0 INTERNET Firefox 3.6.10 EDITOR Gcompris 9.3-1, KStars 4.5.1, Kalzium 4.5.1, KTouch 4.5. PEMBUAT UberStudent Team SITUS http://uberstudent.org KERNEL 2.6.32-22 DESKTOP GNOME 2.30.2 OFFICE OpenOffice.org 3.2.0 GRAPHICS GIMP 2.6.10 VIEWER Adobe Reader 9.1, chmsee 1.0.7 MULTIMEDIA Audacious 2.3, VLC 1.0.6, Arista 0.9.3, imagination 2.1 EDUCATION Anki 0.10.04.7, GoldenDict 1:3.0, Osmo 0.2.8 ebagai distro paling populer saat ini, Ubuntu memiliki sejumlah distro turunan yang ditujukan untuk dunia pendidikan. Salah satu distro turunan Ubuntu tersebut adalah Edubuntu. Versi terbaru dari Edubuntu adalah Edubuntu 10.10 yang diturunkan dari Ubuntu 10.10. Dalam distro ini, sudah disematkan sejumlah aplikasi umum yang biasa terdapat pada Ubuntu plus sejumlah tambahan aplikasi untuk dunia pendidikan dan permainan. Dalam Edubuntu, sudah disertakan paket Gcompris Educational Suite yang menyediakan sejumlah paket permainan puzzle untuk anak usia 2 hingga 10 tahun. Untuk mengawasi segala aktivitas si kecil saat bermain komputer, Edubuntu juga sudah dilengkapi dengan Gcompris Administration. Belajar matematika juga ari sebagian distro Linux yang tersedia secara bebas untuk digunakan, terdapat sebagian distro untuk tujuan pendidikan. Salah satu distro yang ditujukan untuk pendidikan adalah UberStudent 1.0. UberStudent merupakan distro berbasis Ubuntu yang ditujukan untuk tujuan pengajaran dan edukasi untuk pendidikan tingkat tinggi maupun mahasiswa. Dalam distro UberStudent, sudah disematkan sejumlah paket aplikasi yang biasa digunakan untuk menyelesaikan pekerjaan sehari-hari, plus sekumpulan paket aplikasi untuk pengajaran dan disiplin ilmu lainnya. Bagian menu panel Education UberStudent 1.0 terbagi menjadi enam bagian, yakni Books, Research and Writing, SelfManagement, Study Aids, Subjects dan Utilities. S 18 04/2011 INFOLINUX 18_Distro_04_EditZaky edit rosi.indd 18 Kebutuhan Hardware D Processor : Kelas Pentium IV Harddisk : 20 GB Memory : 1 GB mudah dilakukan dengan adanya KAlgebra, KBrunch, Kig dan Step. Untuk memperlancar proses mengetik dengan 10 jari, distro ini sudah menyertakan aplikasi KTouch dan Tux Typing. Mengenal berbagai lokasi negara di penjuru dunia juga dapat dilakukan dari aplikasi Marble. Tak ketinggalan, ada aplikasi KStars yang dapat menghadirkan planetarium virtual untuk mengenal berbagai planet, komet, dan berbagai objek luar angkasa lainnya.Sup Hasil Pengujian Fungsionalitas (20%) Fitur (40%) Kemudahan (30%) Dokumentasi (10%) 9.0 10 9.0 9.0 RATING 0 2 4 6 8 10 9.5 Kebutuhan Hardware Processor : Kelas Pentium IV Harddisk : 20 GB Memory : 1 GB Sejumlah aplikasi pendidikan yang terdapat pada menu tersebut di antaranya: Calibre, Textbookx, GutenBrowser, Chegg Text Rentals, Lyx, Zotero, gtk-recordMyDesktop, Buddi dan Anki. Versi UberStudent 1.0 sendiri terdiri atas dua versi, yakni versi DVD dengan desktop GNOME dan versi CD dengan desktop LXDE. Dengan menggunakan UberStudent, diharapkan kalangan pendidikan akan memperoleh kemudahan dalam hal riset dan pembelajaran.Sup Hasil Pengujian Fungsionalitas (20%) Fitur (40%) Kemudahan (30%) Dokumentasi (10%) 9.0 10 9.0 9.0 RATING 0 2 4 6 8 10 9.5 www.infolinux.web.id 3/10/2011 1:10:37 PM GAME PUZZLE ARCADE Neverball 1.5.4 Toribash 3.5 PEMBUAT Robert Kooima <[email protected]> SITUS http://neverball.org LISENSI GPL HARGA Gratis TINGKAT KESULITAN Medium MULTIPLAYER GAME No DEPEDENSI libpng12-0 >= 1.2.13, libsdl-ttf >= 2.0, libvorbisfile3 >= 1.2.1 PEMBUAT Hampus Soderstrom <[email protected]> SITUS www.toribash.com LISENSI GPL HARGA Gratis TINGKAT KESULITAN Medium MULTIPLAYER GAME Yes DEPEDENSI libgcc1 >= 4.1.1, libsdl-mixer >= 1.2.6, liblua >= 5.1 A oribash adalah sebuah game petarung yang inovatif berdasarkan model “physics sandbox” dengan karakter pemain yang disebut ragdoll yang Anda atur untuk bergerak. Mainkan Toribash de ngan dengan mengeklik cursor mouse Anda lalu pilih dan sentuh bagian sendi pada tubuh ragdoll. Setelah itu, arahkan ke lawan dengan memajukan waktu (tombol spasi) un tuk proses gerakan (default sepuluh gerakan) ragdoll Anda. Jika Anda benar dalam memani pulasi, ragdoll dapat mela kukan penyerangan ke lawan. Apabila cukup kerusakan yang ditimbul kan dengan satu pukulan, bagian tubuh ragdoll dapat terpotong-potong atau patah. Tujuan permainan ini adalah mencetak ban yak poin dengan me lakukan pukulan yang pakah Anda pernah bermain minigolf? Ada salah satu game puzzle yang memiliki konsep serupa yaitu Ne verball. Jenis permainan aksi-puzzle 3D Never ball cukup menyenang kan dan adiktif. Tantangan utama dalam game ini adalah menggelindingkan bola mengguna kan gravitasi dengan memiringkan lantai per mainan, jadi pemain ti dak secara langsung mengontrol bola. Sema kin tinggi level yang didapatkan, semakin ban yak rintangan yang harus dilewati dengan batas waktu yang ditetapkan. Beberapa mode kame ra yang tersedia untuk membantu pemain dalam memandu bola, contoh nya kamera mengejar dan kamera manual. Un tuk dapat menang dan te rus ke level selanjutnya, pemain harus mengum www.infolinux.web.id T Kebutuhan Hardware Processor : Kelas Pentium IV Harddisk : 60 MB Memory : 256 MB pulkan jumlah koin yang diperlukan. Koin-koin ini terdiri dari koin kuning, merah, dan biru yang memiliki nilai satu, lima, dan se puluh. Jika berhasil me ngumpulkan 100 koin dalam Challenge Mode, Anda akan mendapatkan sebuah Extra Ball dan Anda juga dapat melihat review permainan sebelumnya. Sejumlah kon trol dalam permainan ini yaitu terutama menggun akan tombol arrow untuk arah permainan. Yad Hasil Pengujian Grafik(30%) Fitur (40%) Kompatibiltas (20%) Dokumentasi (10%) 8,5 9,0 7,0 7,5 RATING 0 2 4 6 8 10 8,5 Kebutuhan Hardware Processor : Kelas Pentium IV Harddisk : 100 MB Memory : 512 MB mendarat ke lawan de ngan poin berdasar jum lah kerusakannya. Anda pun dapat me milih bentuk per mainan (mods) yang resmi atau dibuat sen diri. Dari mods, Anda dapat memilih bentuk pertandingan, mengu bah bentuk karakter pe main, dan melihat review pertandingan. Beberapa pertandingan yang dapat dipilih yai tu wushu, sumo, kick boxing, swords, judo, dan banyak lagi. Yad Hasil Pengujian Grafik(30%) Fitur (40%) Kompatibiltas (20%) Dokumentasi (10%) 8,0 8,5 7,5 7,0 RATING 0 2 4 6 8 10 8,0 INFOLINUX 04/2011 19 SOFTWARE PILIHAN DVD/CD sertaan terdiri atas berbagai macam aplikasi gratis, shareware, dan demo. Susunan kategori selalu berubah, bergantung pada tren aplikasi yang tengah berlaku. Beberapa kategori selalu ada di tiap edisi. INDEX ON THE DISC IMS 1.18 Tracker 0.10.1 DVD DISC BOOT UberStudent 1.0 /Matematika Scilab 5.3.1 [MATEMATIKA] Scilab 3.5.1 /Browser Firefox 3.6.15 Google Chrome 9.0.597.107 Opera 11.01 /Perkantoran Adobe Reader 9.4.1 LibreOffice 3.3.1 OpenOffice.org 3.3.0 RedNotebook 1.1.3 /Development JDK 6u24 JRE 6u24 Sqlkit 0.9.3 Zend Framework 1.11.4 /Plugins Adobe Flash Player 10.2.152.27 /DISTRO Edubuntu 10.10 /RUBRIK Game Praktik Instan Tutorial Utama Workshop /EBook Advanced Bash Scripting Guide agi yang berkecimpung di lingkungan akademik dan industri, pasti tidak asing lagi dengan aplikasi MATLAB. Aplikasi yang banyak digunakan oleh insinyur, peneliti, dan bidang terkait lainnya ini merupakan perangkat bantu dalam melakukan perhitungan aljabar linear, analisis numerik, maupun perhitungan untuk pengolahan gambar. Sayangnya, MATLAB bersifat komersial dan biaya lisensinya juga tidak murah. Sebagai alternatif, kini sudah tersedia aplikasi Scilab, bahasa pemprograman tingkat tinggi yang sebagian besar kegunaannya didasarkan pada kemampuan spesifikasi banyak komputasi dengan sedikit baris kode. Scilab melakukan hal ini dengan mengabstraksi tipe data primitif B 20 04/2011 INFOLINUX 20-22_Software Pilihan_04_EditZaky edit rosi.indd 20 kepada matriks ekuivalen menurut fungsinya. Memiliki kesamaan fungsionalitas dengan MATLAB, Scilab tersedia untuk diunduh tanpa biaya lisensi. Program ini memungkinkan pengguna melakukan komputasi pada cakupan luas operasi-operasi matematika dari operasi yang relatif sederhana seperti perkalian hingga operasi tingkat tinggi seperti korelasi dan aritmetika kompleks. Perangkat lunak ini juga sering dipakai untuk pemrosesan sinyal, analisis statistika, perbaikan gambar, dan simulasi dinamika fluida.Sup PEMBUAT: Scilab Consortium SITUS: www.scilab.org LISENSI: GPL DEPEDENSI: REQUIREMENT: - /Internet Google Earth 6.0 Beta Google Picasa 3.0 Beta Thunderbird 3.1.9 Tornado 1.2.1 Vuze 4.6 Zemanta 0.8.2 /Sistem Froxlor 0.9.18.1 PacketFence 2.1.0 rsyslog 5.6.4 /Virtualisasi VirtualBox 4.0.4 /Komunikasi Kalkun 0.2.9 Skype 2.1 Beta2 /Manajemen Informasi Askbot 0.6.73 : On The DVD Regular : Disc Boot DISC RUSAK? Apabila disc yang Anda terima tidak terbaca atau rusak dan Anda ingin menggantinya, kirimkan disc yang rusak tersebut kepada kami: Tim Disc InfoLINUX, Jl. Kramat IV No. 11, Jakarta 10430 agar kami dapat mengirimkan disc pengganti. www.infolinux.web.id 3/10/2011 11:35:42 AM SOFTWARE PILIHAN Kalkun 0.2.9 [KOMUNIKASI] [DEVELOPMENT] Sqlkit 0.9.3 SMS adalah sarana komunikasi yang paling banyak digunakan oleh masyarakat luas saat ini. Selain mudah, biayanya juga cukup terjangkau. Oleh karena itu, kini banyak perusahaan yang menggunakan SMS untuk menyampaikan informasi layanan kepada para pelanggannya sehingga diperlukan suatu sistem yang dapat mempermudah pekerjaan ini. Salah satunya adalah menggunakan aplikasi Kalkun. Kalkun merupakan sistem manajemen SMS berbasis web yang bersifat open source. Aplikasi ini menggunakan gammu-smsd sebagai aplikasi back-end SMS gateway untuk mengambil dan menerima pesan dari telepon/modem. Sebelum dapat menggunakan Kalkun, pastikan gammu telah telah terinstalasi dan terkonfigurasi dengan baik. Setelah itu, silakan manfaatkan Kalkun untuk melakukan promosi beragam layanan perusahaan Anda.Sup Bagi seorang database administrator, manajemen database adalah pekerjaan sehari-harinya. Namun, bagi pengguna awam yang juga ingin melakukan manajemen database secara mudah, kini sudah tersedia aplikasi Sqledit. Sqledit berfungsi sebagai data editor/ browser yang mudah digunakan oleh orang awam sekali pun.Sup PEMBUAT: Azhari Harahap SITUS: http://kalkun.sourceforge.net LISENSI: GPL DEPENDENSI: Apache, PHP, MySQL, Gammu REQUIREMENT: - PEMBUAT: Sandro Dentella SITUS: http://sqlkit.argolinux.org/misc/sqledit.html LISENSI: GPL DEPENDENSI: Python, PyGTK, SQLAichemy REQUIREMENT: - Zend Framework 1.11.4 [DEVELOPMENT] [INTERNET] Tornado 1.2.1 Dari sekian pilihan beragam dari framework PHP yang tersedia, salah satu yang paling banyak dipilih oleh para programmer PHP adalah Zend Framework. Zend Framework merupakan framework open source berkualitas tinggi yang memiliki fokus untuk pengembangan aplikasi web modern dan berbagai layanan berbasis web yang lain. Dalam Zend Framework, telah disertakan sejumlah komponen skrip PHP yang siap pakai sehingga dapat mempersingkat waktu pengembangan. Framework satu www.infolinux.web.id 20-22_Software Pilihan_04_EditZaky edit rosi.indd 21 ini juga menyediakan implementasi Model-View-Controller (MVC) yang lengkap. Versi terbaru dari Zend Framework juga sudah mendukung penggunaan AJAX, search, syndication dan web services. Dokumentasi lengkap mengenai Zend Framework, juga dapat Anda temukan pada url http://framework.zend.com/manual/en/.Sup Tornado merupakan versi open source dari server web non-blocking dan dapat diperluas dan perangkat yang dilengkapi oleh FriendFeed. FriendFeed dibuat menggunakan web framework namun dengan tambahan perangkat dan lebih optimal yang memanfaatkan non-blocking sebagai dasar pembuatannya.Sup PEMBUAT: Zend Technologies SITUS: http://framework.zend.com LISENSI: BSD License DEPENDENSI: Apache, PHP, MySQL REQUIREMENT: - PEMBUAT: Facebook, Inc. SITUS: www.tornadoweb.org LISENSI: GPL DEPENDENSI: Python, PycURL, simplejson REQUIREMENT: - INFOLINUX 04/2011 21 3/10/2011 11:35:46 AM SOFTWARE PILIHAN [SISTEM] Google Chrome 9.0.597.107 [INTERNET] PacketFence 2.1.0 Celah keamanan merupakan hal yang krusial. Hal inilah yang menjadi tujuan dari PacketFence. PacketFence dapat menjadi aplikasi enterprise yang baik untuk melindungi ancaman keamanan yang berasal dari jaringan klien dan guest, jaringan VPN, serta jaringan internet.Sup PEMBUAT: Inverse SITUS: www.packetfence.org LISENSI: GPL DEPENDENSI: Perl-suidperl, Httpd, Mod_ssl, Php REQUIREMENT: - [SISTEM] Saat ini, siapa yang tidak kenal dengan Google? Setelah sukses dengan search engine-nya, Google mencoba ranah lain, dan salah satunya adalah rilis web browser yang dibuat oleh Google, yakni Google Chrome. Chrome juga sangat konsen dan memilih tampilan yang minimal namun berteknologi rumit yang menjadikannya lebih cepat, aman, dan mudah. Salah satu fitur terbaiknya adalah fitur Chrome Web Store. Pada halaman Chrome Web Store (https://chrome.google.com/webstore), Anda dapat menemukan sejumlah aplikasi tambahan yang dapat disisipkan pada Chrome untuk menambah fungsi Google Chrome. Bosan dengan tampilan default Google Chrome? Ganti dengan sejumlah themes yang tersedia pada situs yang sama.Sup PEMBUAT: Google, Inc. SITUS: www.google.com/chrome LISENSI: GPL DEPENDENSI: REQUIREMENT: - RedNotebook 1.1.3 [PERKANTORAN] Rsyslog 5.6.4 Segala aktivitas yang terjadi pada server dapat diamati dari file log. Rsyslog adalah aplikasi yang dapat menangani proses log berkinerja tinggi, dapat diintegrasikan dengan database, bersifat modular, dan mendukung sejumlah protokol log yang dipilih sysadmin sebagai daemon log pilihannya.Sup PEMBUAT: Rainer Gerhards SITUS: www.rsyslog.com LISENSI: GPL DEPENDENSI: REQUIREMENT: - 22 04/2011 INFOLINUX 20-22_Software Pilihan_04_EditZaky edit rosi.indd 22 Reminder atau aplikasi pengingat yang dapat diinstalasi pada PC ataupun ponsel adalah hal penting bagi Anda yang memiliki “sejuta” kegiatan dalam sehari. Salah satu aplikasi yang berfungsi sebagai pengingat adalah RedNotebook, yang merupakan aplikasi berbasis desktop yang membuat hidup Anda lebih mudah dalam mengatur jadwal kegiatan. Fitur yang dimiliki oleh RedNotebook antara lain: memasukan pengingat teks pada kalender yang disediakan, menambah kategori dan mengisinya dengan konten kecil, melakukan backup arsip yang sudah dikompres dengan zip, hingga meng-export data Anda ke dalam berbagai format yang Anda butuhkan. Aplikasi ini juga melakukan perbaikan terhadap bugs pada versi RedNotebook sebelumnya.Sup PEMBUAT: Jendrik Seipp SITUS: http://rednotebook.sourceforge.net LISENSI: GPL DEPENDENSI: GTK+, WxPython, PyYAML REQUIREMENT: - www.infolinux.web.id 3/10/2011 11:35:57 AM SOFTWARE PILIHAN Tracker 0.10.1 [MANAJEMEN INFORMASI] [INTERNET] Zemanta 0.8.2 Butuh aplikasi untuk mengindeks file di PC Anda? Gunakan saja Tracker. Aplikasi ini dapat melakukan proses indeks berbagai macam file yang terdapat di hard disk dan disimpan ke dalam database. Menurut pembuatnya, aplikasi ini hanya membutuhkan sekitar 4 MB RAM untuk membantunya melakukan proses penyusunan indeks. Jadi, tidak dibutuhkan resource tinggi. Berbagai macam objek class dari suatu file sudah didukung dengan baik oleh Tracker 0.10.1. Beberapa di antaranya: file, dokumen, musik, gambar, file teks, file kode untuk pengembangan, email, aplikasi, kontak, bookmark dan history, serta catatan. Dengan menggunakan Tracker, kini Anda serasa memiliki search engine untuk mencari berbagai macam informasi file yang terdapat pada PC Anda.Sup Mozilla Firefox extension ini merupakan perluasan dari dashboard blog dan dapat mempopulerkan blog yang kita buat dengan memberi sejumlah tips yang relevan dengan teks terkait. Zemanta dapat menyajikan gambar, link, artikel dan tags dalam tampilan yang mudah digunakan.Sup PEMBUAT: Mr Jamie McCracken SITUS: http://projects.gnome.org/tracker LISENSI: GPL DEPENDENSI: GTK+, D-Bus, Gstreamer REQUIREMENT: - PEMBUAT: Zemannta Web Services SITUS: www.zemanta.com LISENSI: Proprietary DEPENDENSI: Mozilla Firefox REQUIREMENT: - IMS 1.18 [MANAJEMEN INFORMASI] [SISTEM] Froxlor 0.9.18.1 Mengelola beragam aset yang dimiliki oleh perusahaan merupakan suatu pekerjaan yang mudah namun kompleks. Divisi manajemen proyek maupun inventaris pasti membutuhkan suatu sistem yang dapat mempermudah pekerjaan ini. Salah satu aplikasi tersebut yaitu Inventory Management Software (IMS). tarkan dan melihat sejumlah nama vendor, mendaftarkan dan melihat nama supplier, menambahkan daftar produk, melihat daftar produk, melihat transaksi produk, dan menambah inventori. Dengan melakukan pengawasan inventory yang baik, diharapkan kesuksesan dapat menyertai perusahaan Anda.Sup Pengaturan sistem dari halaman control panel berbasis web sangat diperlukan, apalagi pengaturan mail, proxy, dan server lainnya. Dibuat berdasarkan pengalaman system administrator dan system control panel SysCP, Froxlor berfokus menjadi aplikasi yang sederhana dan mudah digunakan.Sup Aplikasi berbasis web ini membantu Anda mengelola beragam inventory yang dimiliki oleh perusahaan. Dalam sistem ini, sudah terdapat sejumlah menu untuk mendaf- PEMBUAT: Inventory Management Software Team SITUS: www.inventory-management.org LISENSI: GPL DEPENDENSI: Apache, PHP, MySQL REQUIREMENT: - PEMBUAT: The Froxlor Team SITUS: www.froxlor.org LISENSI: GPL DEPENDENSI: Apache, PHP, MySQL REQUIREMENT: - www.infolinux.web.id 20-22_Software Pilihan_04_EditZaky edit rosi.indd 23 INFOLINUX 04/2011 23 3/10/2011 11:36:05 AM UTAMA Supriyanto KURSUS ONLINE BERBASIS MOODLE “Tuntutlah ilmu hingga ke negeri Cina.” Pepatah lama yang menyuruh kita agar selalu belajar, tetap relevan hingga akhir dunia nanti. Sejak zaman dahulu hingga kini, kegiatan belajar manusia tidak akan pernah berhenti. Bicara tentang kegiatan belajar, saat ini sekolah merupakan sarana paling utama untuk memperoleh pendidikan dan tempat belajar-mengajar. Seiring dengan kemajuan teknologi Internet, kegiatan belajar-mengajar ini kini menjadi lebih interaktif dan tidak terbatas pada tempat dan wilayah. Dunia Linux dan free software juga tidak ketinggalan dan turut bersumbangsih untuk dunia pendidikan. Berbagai macam perangkat lunak gratis dan dapat diunduh secara bebas, misalnya mulai dari kompiler, interpretes, dan perkantoran, dapat menjadi pilihan yang sangat baik 24 04/2011 INFOLINUX Utama_04_editZaky edit rosi.indd 24 untuk dunia pendidikan. Salah satu perangkat lunak bersifat free yang dapat digunakan untuk kebutuhan ini adalah aplikasi Moodle. Dengan menggunakan aplikasi Moodle, sekolah, perusahaan, atau lembaga lainnya dapat dengan mudah membuat berbagai modul pendidikan yang bisa diberikan kepada para siswa atau murid-muridnya. Pada rubrik “Utama” edisi ini, InfoLINUX akan membahas cara instalasi dan konfigurasi dari Moodle dari sisi sistem administrator. Dengan ini, diharapkan Anda dapat memberikan sistem pembelajaran tambahan baru melalui halaman web kepada para siswa dan membantu mereka menuntut ilmu. Selamat mencoba dan menikmati! APA ITU MOODLE? Moodle merupakan aplikasi Open Source Course Management System (CMS) atau juga lebih dikenal sebagai Learning Management System (LMS) yang dapat digunakan oleh kalangan universitas, komunitas mahasiswa, sekolah tingkat dasar hingga menengah atas, kalangan bisnis, dan para pengajar dari kalangan individu yang ingin memanfaatkan teknologi web yang dimiliki Moodle ke dalam materi pelatihannya. Untuk dapat bekerja dengan baik, Moodle membutuhkan sebuah web server yang terletak pada komputer lokal maupun pada web hosting. Saat ini, lebih dari 49.000 situs yang menggunakan Moodle sebagai paket software pe- www.infolinux.web.id 3/11/2011 7:37:04 PM UTAMA ngajaran yang digunakannya. Moodle sendiri banyak digunakan pada lingkungan pendidikan yang bersifat privat dan umum, mulai dari taman kanak-kanak hingga universitas. VLE, LMS, DAN CMS Terdapat banyak istilah yang digunakan oleh Moodle yang diberikan oleh para anggotanya. Ada yang memasukan Moodle ke dalam kategori VLE (Virtual Learning Environment) atau LMS (Learning Management System) karena berfokus pada pembelajaran dan pendidikan. Tambahan lainnya, ada yang mengatakan kalau Moodle termasuk ke dalam CMS (Content Management System), LCMS (Learning Content Management System), dan terkadang sebagai CMS (Content Management System). Semua istilah ini pada dasarnya tidak ada yang salah. Tinggal dilihat dari konteks si pengguna yang memakai Moodle untuk kebutuhan apa. CONTOH WEB YANG MENGGUNAKAN MOODLE Sejumlah contoh kecil perusahaan dan lembaga pendidikan yang telah mengimplementasikan Moodle di antaranya sebagai berikut. E-Learning PT Wika Realty. Situs Kuliah Universitas Atma Jaya Yogyakarta. E Learning Site Magister Teknik Informatika Universitas Atma Jaya Yogyakarta. Kuliah Online Terpadu FMIPA Universitas Gadjah Mada. ELearning - SMA Negeri 5 Palembang. ABA Widyadharma. Adi Winanto ELearning. AGUS SANTOSO: 2010 TEFL WORKSHOP@UPH. AGUS SANTOSO: WorldWide Online Learning Enterprise. Airlangga University e-Learning Application. Contoh perusahaan dan lembaga pendidikan lain yang menggunakan Moodle dapat dilihat pada url: http:// moodle.org/sites/. www.infolinux.web.id Utama_04_editZaky edit rosi.indd 25 PRA INSTALASI Sebelum dapat menginstalasikan Moodle dengan baik, terdapat beberapa hal yang harus disiapkan terlebih dahulu. Karena Moodle dibangun menggunakan Apache, MySQL, dan PHP, pastikan keempat komponen tersebut sudah terinstalasi dengan baik pada sistem Anda. Moodle juga dapat berjalan pada sistem operasi Windows XP/2000/2003, Solaris 10 (Sparc dan x64), Mac OS X, dan Novell Netware. Untuk database, selain MySQL Moodle juga mendukung penggunaan database PostgreSQL, Oracle, dan Microsoft SQL Server. PERANGKAT KERAS Berikut sejumlah spesifikasi perangkat keras yang dibutuhkan sebelum melakukan instalasi Moodle. Kapasitas hard disk: 160 MB (minimal). Memori: 256 MB (minimal) atau 1 GB (direkomendasikan). INSTALASI APACHE, MYSQL DAN PHP Sebelum dapat menginstalasikan Moodle dengan baik, ada baiknya platform Apache, MySQL, dan PHP sudah terkonfigurasi dengan baik pada sistem Anda. Dalam contoh ini, penulis menggunakan Ubuntu Linux 10.04 LTS sebagai platform sistem operasi yang digunakan untuk melakukan percobaan. Proses instalasi LAMP server di Ubuntu 10.04 LTS cukup mudah dilakukan. Anda hanya perlu menjalankan perintah berikut. $ sudo tasksel Pilih opsi LAMP server untuk menginstalasikan paket LAMP server, lalu tekan OK. Saat tampil halaman yang menanyakan password untuk root MySQL, isikan sesuai dengan keinginan Anda. Selain perintah di atas, Anda juga dapat menggunakan perintah berikut untuk instalasi LAMP. $ sudo apt-get install php5 mysqlserver apache2 Atau: $ sudo tasksel install lamp-server Jalankan web browser Mozilla Firefox kemudian ketikkan alamat berikut pada kotak url. http://localhost/ Jika terdapat halaman yang bertuliskan: “It works!” berarti platform LAMP berhasil diinstal. INSTALASI MOODLE Instalasi Moodle cukup mudah dilakukan. Bagi pengguna distro yang sudah menyertakan file binari moodle pada repositori servernya, cukup instalasikan Moodle. Berikut tahapan instalasi Moodle di Ubuntu 10.04 LTS. INSTALASI DARI PAKET BINARI Bagi pengguna distro Ubuntu 10.04 LTS, paket Moodle sudah tersedia dalam bentuk binari. Untuk menginstalasikan Moodle, Anda cukup menjalankan perintah berikut dari Terminal. $ sudo apt-get install moodle Setelah instalasi mungkin akan ditanyakan database apa yang akan digunakan oleh Moodle. Pilih MySQLserver, lalu ikuti petunjuk yang diberikan. Jika diperlukan, Anda juga dapat melakukan konfigurasi Moodle dengan melakukan sejumlah penyesuaian parameter dalam file / etc/moodle/config.php. $ sudo gedit /etc/moodle/config.php Proses instalasi Moodle selesai dilakukan. Untuk memastikannya, ketikkan alamat http://localhost/ moodle. Jika berhasil, akan tampil halaman User Login Moodle. INSTALASI DARI PAKET TARBALL Selain dari paket binari, kita juga dapat menginstalasikan paket Moodle yang masih berbentuk paket tarball. Dalam contoh ini, penulis menggunakan paket Moodle 2.0.2+ INFOLINUX 04/2011 25 3/11/2011 7:37:12 PM UTAMA (moodle-latest-20.zip) yang diperoleh dari url http://download.moodle. org. File moodle-latest-20.zip juga dapat Anda peroleh dalam Ekstra DVD InfoLINUX edisi ini. Adapun tahap instalasi paket tarball Moodle di Ubuntu 10.04 LTS adalah sebagai berikut. Pastikan paket LAMP sudah terinstalasi dengan baik. Instalasikan paket unicode dan php5-intl $ sudo apt-get install unicode php5intl Buat database yang akan digunakan untuk database Moodle. Dalam contoh ini, penulis menggunakan database bernama moodle2. $ mysql -u supriyanto -p Enter password: Pastikan semua kebutuhan untuk instalasi Moodle sudah terpenuhi. moodle-latest-20.zip ke DocumentRoot Apache Anda. Dalam contoh ini, penulis menggunakan UserDir dan mengekstrak file moodle-latest-20.zip ke direktori “/home/supriyanto/public_html. --> menggunakan database MySQL $CFG->dblibrary = ‘native’; // ‘native’ only at the moment $CFG->dbhost = ‘localhost’; // eg ‘localhost’ or ‘db.isp.com’ or IP $CFG->dbname = ‘moodle2’; // Welcome to the MySQL monitor. $ unzip moodle-latest-20.zip -d --> sesuaikan dengan nama database Commands end with ; or \g. /home/supriyanto/public_html yang akan digunakan oleh Moodle Your MySQL connection id is 401 Server version: 5.1.41-3ubuntu12.10 (Ubuntu) Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement. $CFG->dbuser Buat direktori “moodle-data” dalam direktori moodle untuk menyimpan file-file yang dibutuhkan oleh Moodle. = ‘xxx’; // --> sesuaikan dengan username database Anda $CFG->dbpass = ‘xxxx’; // --> sesuaikan dengan password username $ sudo mkdir -p /home/supriyanto/ database Anda moodle-data ... $ sudo chown -Rf www-data:www-data mysql> show databases; /home/supriyanto/moodle-data //$CFG->wwwroot +--------------------+ | Database | +--------------------+ | ... | | moodle2 | | ... | +--------------------+ 8 rows in set (0.14 sec) mysql> Note: disarankan untuk membuat direktori “moodle-data” di luar direktori yang dapat langsung diakses dari web untuk alasan keamanan. Ubah hak kepemilikin folder dan seluruh folder /home/supriyanto/ public_html agar menjadi milik user dan group www-data. $ sudo chown -Rf www-data:www-data Masih dari prompt mysql, lakukan perubahan database moodle2 agar karakter set-nya menjadi utf8_ unicode_ci. mysql> ALTER DATABASE moodle2 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; mysql> quit 26 04/2011 INFOLINUX Utama_04_editZaky edit rosi.indd 26 $CFG->wwwroot = ‘http://localhost/ ~supriyanto/moodle’; // --> sesuaikan dengan url untuk mengakses Moodle .. $CFG->dataroot = ‘/home/supriyanto/ moodle-data’; // --> sesuaikan dengan direktori moodle-data Anda .. /home/supriyanto/public_html/moodle/ Buka file config.php, lalu edit sejumlah parameter yang terdapat dalam file tersebut. Sejumlah parameter yang harus diedit di antaranya sebagai berikut. Buka web installer Moodle, dan jalankan web browser. Ketikkan url berikut untuk menjalankan web installer Moodle. http://localhost/~supriyanto/moodle/ admin/index.php ... //$CFG->dbtype Kini kita akan melakukan proses instalasi Moodle. Ekstrak file = ‘http://example. com/moodle’; = ‘pgsql’; // ‘pgsql’, ‘mysqli’, ‘mssql’ or ‘oci’ $CFG->dbtype = ‘mysqli’; // Tahapan instalasi yang harus dilalui antara lain: Halaman pernyataan lisensi. www.infolinux.web.id 3/11/2011 7:37:12 PM UTAMA Tahapan instalasi Moodle selesai dilakukan. Pada halaman awal, Moodle akan menampilkan halaman pernyataan lisensi. Klik Continue untuk melanjutkan ke tahap instalasi selanjutnya. Halaman server check. Pada halaman ini, installer Moodle akan memeriksa apakah segala komponen yang dibutuhkan untuk proses instalasi sudah tersedia dengan baik atau belum. Pastikan pada kolom status semua komponen yang diperlukan untuk instalasi Moodle semuanya sudah OK. Klik Continue. Tunggu beberapa saat karena Moodle akan menginstalasikan sejumlah komponen yang dimilikinya. Setelah semua komponen yang diinstalasikan tampil dalam status Success, klik Continue. Konfigurasi user admin. Pada halaman ini, Anda dapat mengisikan sejumlah konfigurasi yang terkait dengan user admin untuk Moodle. Isikan user admin dan password sesuai dengan keinginan Anda. Untuk password berikan minimal 6 karakter, yang terdiri atas kombinasi huruf besar, huruf kecil, angka dan non-alphanumeric karakter. Setelah selesai, klik Continue. Konfigurasi halaman depan. Pada bagian ini, isikan dengan nama web yang Anda inginkan. www.infolinux.web.id Utama_04_editZaky edit rosi.indd 27 Setelah selesai, klik Continue. Proses instalasi Moodle selesai. Pada tahap ini proses instalasi Moodle selesai dilakukan dan Anda akan menuju ke halaman admin Moodle. KUSTOMISASI TAMPILAN MOODLE Setelah proses instalasi Moodle selesai dilakukan, tahap selanjutnya adalah melakukan sejumlah kustomisasi Moodle agar sesuai dengan kebutuhan Anda. Untuk melakukan kustomisasi di Moodle, login dahulu sebagai administrator lalu lakukan sejumlah kustomisasi sesuai dengan yang Anda inginkan. KONFIGURASI HALAMAN MUKA Agar halaman depan Moodle dapat tampil beda dengan tampilan default yang diberikan, Anda dapat melakukan konfigurasi dari halaman administrator Moodle. Berikut adalah langkah-langkahnya: Dari halaman administrator, masuk ke menu Settings | Front page settings | Edit Settings. Pada halaman ini, terdapat sejumlah konfigurasi yang dapat merubah tampilan halaman depan dari Moddle yang diantaranya: Full site name: merupakan nama yang terletak pada bagian pojok kiri dari halaman depan situs Moodle. Penulis mengisikan: “Welcome to InfoLINUX Web Online Course”. Short name: merupakan nama yang digunakan untuk nama singkat situs. Dalam contoh ini, penulis mengisikan: “Online Course”. Front page description: teks ini akan tampil pada bagian Course/Site Description yang sudah terinstalasi secara default dan akan ditampilkan pada bagian pojok kiri/kanan atas dari halaman depan Moodle. Dalam contoh ini, penulis mengisikan: “Halaman ini dibuat sebagai media pembelajaran secara online yang terdapat di website InfoLINUX.” Front Page: memilih item yang akan ditampilkan untuk pengguna yang tidak login ke situs Moodle. Terdapat empat item yang berbeda untuk memilih dari dan melalui empat dropdown menu yang tersedia. Tampilan urutan dari atas ke bawah menentukan urutan dimana Anda akan menggunakan menu drop-down. Front page items when logged in: memilih item yang ingin ditampilkan ke pengguna yang telah login ke dalam situs. Opsi ini memungkinkan Anda untuk melakukan kustomisasi bagaimana informasi dapat ditampilkan berdasarkan apakah pengguna pribadi dapat login ke dalam Moodle atau tidak. Karena kita ingin menggunakan halaman depan Moodle untuk melakukan posting berita yang terkait dengan kurikulum, aktifkan opsi New Items agar terlihat, baik oleh pengguna yang melakukan login ke halaman situs tersebut atau tidak. Course per page: memungkinkan Anda untuk mengisikan berapa banyak jumlah kursus yang ingin ditampilkan dalam datu halaman web dalam satu kategori. Pada contoh ini, penulis ingin menampilkan 50 jenis kursus. Untuk itu, penulis INFOLINUX 04/2011 27 3/11/2011 7:37:13 PM UTAMA mengisikan 50 pada opsi Course per page. Default frontpage role: mengubah setting aturan default untuk halaman depan dan akan berdampak ke bagaimana pengguna dapat berinteraksi dengan isi yang dibuat agar tersedia pada halaman depan. Kita akan mengubah opsi ini menjadi Authenticated User dengan tujuan mengijinkan para siswa agar dapat mengakses aktivitas yang ditambahkan ke halaman depan. Setelah selesai melakukan sejumlah konfigurasi di atas, klik Save changes untuk menyimpan perubahan yang telah dilakukan. MENAMBAH BLOK MENU Hampir sama seperti Content Management System lainnya, Moodle juga menggunakan sistem block untuk menambahkan bagian-bagian yang akan ditampilkan ke dalam halaman web. Dengan cara ini, pengguna dapat menentukan secara mudah bagian-bagian apa saja yang perlu ditampilkan atau dibuang dari halaman web secara mudah. Untuk menambah atau menghilangkan blok dari Moodle, caranya adalah sebagai berikut. Masuk ke menu Settings | Site administration | Plugins | Blocks | Manage blocks. Klik button Blocks editting on yang terdapat pada bagian pojok kanan atas halaman Moodle. Dari halaman Blocks, Anda dapat melihat sejumlah blocks yang sudah di-load secara default oleh Moodle. Untuk menghapus block dari daftar Blocks tersebut, pilih blocks yang ingin dihilangkan, lalu klik Delete. Untuk menambahkan block ke dalam halaman Moodle, arahkan kursor ke bagian Add a block yang terletak pada bagian sisi kiri halaman administrasi Moodle, lalu klik Add dan pilih block yang akan ditambahkan. Secara otomatis block 28 04/2011 INFOLINUX Utama_04_editZaky edit rosi.indd 28 tersebut akan langsung ditambahkan ke daftar blocks yang sudah di-load. MENNGGANTI DEFAULT THEMES Agar tidak bosan dengan tampilan default yang diberikan oleh Moodle, kita dapat mengubah halaman Moodle dengan sejumlah themes yang telah disediakan oleh Moodle. Untuk memilih themes yang tersedia, lakukan petunjuk berikut: Masuk ke menu Settings | Site Administration | Appearance | Themes | Theme selector. Pada halaman Theme selector, sudah tersedia sejumlah pilihan themes. Pilih sesuai dengan themes yang Anda kehendaki. Dalam contoh ini, penulis memilih themes Formal White sebagai pilihan themes. Klik Use for modern browser atau Use for old browser untuk mengaktifkan themes yang telah dipilih. MEMBANGUN KONSTRUKSI MOODLE Setelah mengerti bagaimana cara melakukan perubahan pada antarmuka halaman Moodle, sekarang kita akan masuk ke bagian pembuatan dan organisasi latihan yang akan ditawarkan pada kurikulum Anda dengan Moodle. MEMBUAT KATEGORI DAN SUB-KATEGORI Secara umum, pembuatan kategori dalam kursus akan mempermudah pengguna untuk dapat cepat memahami apa yang akan dipelajari. Moodle didesain untuk mudah membuat kategori dari kursus yang akan diselenggarakan. Berikut tahap pembuatan kategori kursus dari halaman Moodle. Dari halaman admin, klik link Courses | Add/edit courses. Tampil halaman Courses categories, klik Add new category. Pada bagian Category name, isikan dengan nama kategori yang Anda inginkan. Pada bagian Description, isikan dengan penjelasan dari kategori yang sedang Anda buat. Setelah selesai mengisikan sejumlah parameter untuk kategori yang ingin dibuat, klik Create category. Setelah pembuatan kategori selesai dibuat, kini Anda dapat membuat sub-kategori. Berikut tahapan pembuatan sub-kategori. Pastikan Anda sudah membuat minimal satu kategori. Masuk ke menu Course dengan melakukan klik link Courses | Add/edit courses. Untuk membuat sub-kategori, klik menu Add a new course. Dari halaman Edit course settings, terdapat sejumlah parameter yang perlu diisikan. Di antaranya sebagai berikut. Category: Pilih kategori untuk jenis kursus yang Anda buat pada bagian sub-kategori. Course full name: Isikan dengan nama kursus yang sedang dibuat. Course short name: Isikan dengan nama singkat dari kursus yang sedang dibuat Course ID number: Isikan dengan ID number dari kursus yang sedang dibuat Course summary: Isikan dengan penjelasan dari kursus yang sedang dibuat Setelah selesai melakukan sejumlah parameter pada bagian ini, klik Save changes untuk menyimpan perubahan. PEMBUATAN AKUN USER Setelah proses pembuatan kategori dan sub-kategori kursus sudah selesai dibuat, tahap selanjutnya adalah pembuatan akun untuk pengajar. Adapun tahap pembuatan akun untuk pengajar adalah sebagai berikut: Klik menu Site Administration | Users | Accounts. Sebelum dapat melakukan konfigurasi, klik button Blocks editing www.infolinux.web.id 3/11/2011 7:37:14 PM UTAMA on untuk dapat melakukan proses konfigurasi Setelah masuk ke halaman New User, isikan beberapa parameter sebagai berikut: Username: <masukkan dengan nama user yang Anda kehendaki>. Choose an authentication method: pada pilihan ini terdapat beberapa pilihan model otentikasi user. Pilih model otentikasi user yang Anda inginkan. New password: masukkan password yang Anda inginkan. First name: isikan nama depan user bersangkutan. Surname: isikan dengan nama tengah dan nama belakang user berangkutan. Email address: isikan dengan alamat email user bersangkutan. City/town: isikan dengan nama kota user bersangkutan. Select a country: isikan dengan nama negara user bersangkutan. Setelah mengisikan berbagai macam data user terkait, klik Update profile untuk meng-update isian akun user bersangkutan. MENENTUKAN LEVEL KEBIJAKAN USER Setelah melakukan pembuatan pengguna, tahap selanjutnya yang perlu Anda selesaikan adalah menentukan Membuat sub-kategori kursus. level kebijakan dari akun user yang telah dibuat. Penentuan level pengguna ini mudah untuk dikonfigurasi. Anda dapat melakukan tahapantahapan berikut ini. Masuk ke menu Home | Users. Dari daftar user, pilih nama user yang ingin Anda ubah level kebijakan dari user bersangkutan. Klik menu Settings | Roles | Permission. Setelah tampil halaman Permission in User: <Nama User>, pilih menu Advanced role override, lalu tentukan level kebijakan dari user bersangkutan, misalnya Manager, Course creator, Teacher, Nonediting teacher, Student, Guest, Authenticated user, atau Authenticated user on frontpage. Proses penentuan level kebijakan user selesai dilakukan. MEMBUAT GROUPS Untuk mempermudah pengelompokan user yang telah selesai, ada baiknya dibuat pengelompokan beberapa user ke dalam sebuah groups. Berikut langkah-langkahnya. Masuk ke menu Site Administration | Settings | Users | Groups. Dari halaman Online Course Groups, klik Create group. Setelah tampil halaman Create Group, isikan sejumlah parameter berikut. Group name: <isikan dengan nama group yang Anda inginkan>. Group Description: <isikan dengan deskripsi group yang sudah dibuat>. Setelah selesai menentukan parameter lain yang dibutuhkan untuk group yang telah Anda buat, klik Save Changes. Untuk menentukan user mana saja yang akan dimasukkan ke dalam group yang telah dibuat, dari menu Online Course Groups, klik Add/remove users lalu pilih user mana saja yang ingin Anda masukkan ke dalam group yang baru saja Anda buat. Masih banyak hal lain di Moodle yang dapat Anda telusuri lebih jauh lagi. Silakan berkunjung ke dokumentasi Moodle yang terdapat di url: http://moodle.org/support/. Akhir kata, selamat mencoba! Memilih themes yang dapat digunakan di Moodle. www.infolinux.web.id Utama_04_editZaky edit rosi.indd 29 Supriyanto [[email protected]] INFOLINUX 04/2011 29 3/11/2011 7:37:14 PM Daftar KPLI yang Diketahui Saat Ini KOMUNITAS SD II Al Abidin Gelar Lomba Game Anak Bali BALINUX Situs: http://bali.linux.or.id Bandung ekolah Dasar Islam Internasional Al Abidin Surakarta Jawa Tengah bekerja sama dengan Lembaga Pendidikan Komputer Intikom Buana Malika Solo mengadakan lomba game untuk anak dengan program Open Source. Acara yang didukung oleh Kementerian Ristek dan majalah InfoLINUX ini dilaksanakan dalam rangka mensukseskan program pemerintah IGOS dan berlangsung pada Sabtu, 5 Maret 2011, di kampus SD II Al Abidin Surakarta. Menurut Kepala Sekolah Al Abidin Shodiqin, Open Source Software telah digunakan untuk pendidikan TIK dan non-TIK di sekolahnya sejak tujuh tahun yang lalu. Koordinator lomba, Harsanto dan Hanif menjelaskan bahwa game yang dilombakan ini dikembangkan oleh Intikom Buana Malika dengan bahasa pemrograman Lazarus yang mirip Delphi. Ada tiga jenis game sesuai tingkat pendidikan, yaitu game kategori A untuk TK A/B, kategori B untuk SD kelas 1 dan 2, serta kategori C untuk SD kelas 3 dan 4. S Lomba yang memperebutkan piala Deputi Kementerian Ristek ini mengambil tema “Indonesia, Go Open Source! Kids Computer Competition 2011”. Sebanyak 71 peserta dari TK dan SD se-Surakarta mengikuti lomba dengan antusias. Pemenang I hingga III kategori A: Hilmi Herismawati, Irfan Akbar Fehreza, dan Nadhif Favian, kategori B: Calvin Janitra, Vinsen Colin skandar, dan Nafal Ghilan Aryaputra, dan kategori C: Fredy Adi Surya, Afif Alaudin Falah, dan Santy Aprilia.Rus K Batam BLUG Situs: http://batam.linux.or.id Bogor GRUB Situs: http://bogor.linux.or.id Gorontalo GoLA Situs: http://gorontalo.linux.or.id Jakarta KPLI Jakarta Situs: http://jakarta.linux.or.id Madiun KPLI Madiun Situs: http://madiun.linux.or.id Makassar LUGU Situs: http://makassar.linux.or.id Malang Maling (MAlang LINux user Group) Situs: http://malang.linux.or.id Manado Wakil Kepala Sekolah, Ibu Vita berfoto bersama pemenang lomba. Seminar Network Security Linux di Aceh omunitas pengguna Linux Politeknik Negeri Lhokseumawe Aceh atau yang lebih dikenal dengan nama POLICY (Polytechnic Linux Community) mengadakan seminar nasional tentang Security Linux dan Open Source pada 11 Desember 2010 lalu. Acara yang dibuka oleh Direktur Politeknik Negeri Lhokseumawe Ir. Nahar, MT itu dilaksanakan di Aula Utama Lantai III, Politeknik Negeri Lhokseumawe. Narasumber dari ID-SIRTI Jakarta Muhammad Salahuddien Manggalanny atau yang lebih dikenal dengan panggilan Pataka menekankan pentingnya Information Security dan Network Security berbasis Linux dan Open Source, karena Linux terkenal dengan keamanannya. Menurut Ketua Pelaksana, M. Amsaruddin, seminar nasional ini disambut antusias oleh para mahasiswa dan pelajar. Namun, karena tempat terbatas, panitia hanya sanggup menampung 300 peserta yang terdiri dari kalangan pelajar, mahasiswa, dosen, guru, dan umum KLUB Situs: http://bandung.linux.or.id dari wilayah Lhokseumawe, Aceh Utara dan Bireun. Ketua POLICY, Ismuhar Dwi Putra sangat berharap komunitasnya bisa menjadi sebuah Unit Kegiatan Mahasiswa yang resmi untuk memudahkan aktivitas di dalam dan luar kampus. Seminar tentang Linux dan Open Source di Politeknik Negeri Lhokseumawe dilaksanakan tiga kali sepanjang 2010. POLICY mengharapkan dukungan dari semua pihak khususnya pemerintah daerah Aceh agar kegiatan seperti ini dapat dilaksanakan kembali pada 2011.Rus LUG Manado Situs: http://manado.linux.or.id Medan KPLI Medan Situs: http://medanlinux.com Padang KPLI Padang Situs: http://padang.linux.or.id Palembang MINUX Situs: http://palembang.linux.or.id Pekanbaru KPLI Pekanbaru Situs: http://pekanbaru.linux.or.id Semarang ATLAS Situs: http://jateng.linux.or.id Serang KPLI Serang Situs: http://serang.linux.or.id Sidoarjo KPLI Sidoarjo Situs: http://sidoarjo.linux.or.id Solo KPLI Solo Situs: http://solo.linux.or.id Surabaya KLAS Situs: http://surabaya.linux.or.id Surabaya KPLITS Situs: http://its-sby.linux.or.id Tangerang Panitia dan narasumber seminar di Lhokseumawe Aceh. KPLI Tangerang Situs: http://tangerang.linux.or.id Yogyakarta 30 04/2011 INFOLINUX 30_Komunitas_04_EditZaky edit rosi.indd 30 www.infolinux.web.id KPLI Yogyakarta Situs: http://jogja.linux.or.id 3/10/2011 1:05:20 PM gsd (IL0030205)+nf(IL0060343) 1.indd 1 3/9/2011 2:11:45 PM PRAKTIK INSTAN Akses Sistem Sekolah via Web Sekolah memiliki berbagai macam komponen di dalamnya, mulai dari kepala sekolah, guru, dan siswa. Semua komponen harus menjalankan kewajibannya sesuai prosedur yang ditentukan. Bagaimana memantau setiap komponen sekolah agar berjalan sesuai prosedur? Jawabannya adalah menggunakan aplikasi open admin for school yang memungkinkan Anda memantau setiap komponen sekolah mulai dari staf pengajar hingga siswa. Dengan aplikasi ini, orang tua siswa dapat memantau perkembangan anaknya di sekolah. Aplikasi ini bersifat free, memiliki lisensi GPL, dan dapat digunakan untuk berbagai model sekolah. Hal-hal apa saja yang dapat dilakukan open admin? Yang paling utama adalah memantau melalui aplikasi berbasis web yang terdiri dari tiga bagian yaitu admin, guru, dan orang tua. Contoh tugas admin misalnya menambahkan staf pengajar, siswa, dan membuat laporan keduanya. Pada sisi guru, open admin misalnya diguna- kan untuk melakukan absen dan memantau murid di kelas. Bagi orang tua, mereka cukup memasukkan nomor induk dan password dari siswa untuk melihat kehadiran dan prestasi mereka di sekolah. Pada praktik instan kali ini, open admin diinstalasikan menggunakan Linux Ubuntu Desktop 10.04, hal ini dikarenakan instalasi dengan menggunakan server Anda harus memiliki DNS yang sudah terlebih dahulu dikonfigurasikan untuk bisa diakses dari jaringan. Oleh karena itu, open admin kali ini menggunakan Ubuntu Desktop agar bisa langsung diakses dari browser. Instalasi Open Admin Berikut ini, tahapan instalasi open admin melalui Panduan Gambar 1 Memasukkan password MySQL. 2 Memasukkan alamat situs untuk orang tua. 4 Mengedit file /etc/hosts. 32 04/2011 INFOLINUX 32-35_Praktik Instan 04_EditZaky editrosi.indd 32 3 Memasukkan user admin beserta password-nya. 5 Melakukan restart layanan apache. 6 Login ke dalam situs admin open admin. www.infolinux.web.id 3/9/2011 6:28:29 PM PRAKTIK INSTAN repositori yang ada di internet. Jika Anda tidak memiliki koneksi internet, Anda dapat mendapatkan semua paket yang dibutuhkan di dalam bonus DVD InfoLINUX edisi 04/2011 kali ini. Pertama, lakukan ekstrak pada file tarball open admin dengan menggunakan perintah: Setelah skrip kedua selesai, mulai jalankan skrip ketiga dengan perintah: $ sudo ./install-3.pl Di sini adalah halaman perjanjian, tekan ENTER. Berikutnya, jalankan juga skrip keempat dengan perintah: $ tar -xvf OA550-1298449207.tar.gz $ sudo ./install-4.pl Hasil ekstrak adalah sebuah direktori openadmin5.50Jan30, masuklah ke dalam direktori tersebut dengan perintah: $ cd openadmin-5.50Jan30 Selanjutnya, masuk ke dalam direktori utility dengan perintah: $ cd utility Masuk lagi ke dalam direktori install-debian dengan perintah: $ cd install-debian Jalankan skrip instalasi open admin bagian pertama dengan menjalankan perintah: $ sudo ./install-1.sh Masukkan password akun Anda dan tekan tombol ENTER, biarkan proses instalasi berjalan. Masukkan kembali verifikasi password MySQL (Gambar 1). Lanjutkan proses instalasi menuju skrip kedua untuk instalasi paket perl yang dibutuhkan open admin. Jalankan perintah: $ sudo ./install-2.sh 7 Klik menu edit konfigurasi open admin. www.infolinux.web.id 32-35_Praktik Instan 04_EditZaky editrosi.indd 33 8 Melakukan edit file konfigurasi admin. 10 Mengubah isi file konfigurasi. Masukkan informasi sekolah di sini. Pertama, Anda akan diminta memasukkan nama sekolah, dalam hal ini adalah “myschool”. Tekan ENTER. Langkah selanjutnya, masukkan domain name untuk situs admin open admin. Dalam hal ini, domain adalah admin.myschool.net. Tekan ENTER. Masukkan juga alamat domain untuk situs guru atau dosen di open admin, dalam hal ini teacher.myschool. net. Tekan ENTER. Nama domain terakhir yang dimasukkan adalah nama domain untuk situs orang tua murid, dalam hal ini parent.myschool.net. Tekan ENTER (Gambar 2). Selanjutnya, Anda akan diminta memasukan akun yang digunakan sebagai admin beserta password-nya, dalam hal ini “admin” dan “123456” (Gambar 3). Masukkan password MySQL yang telah Anda tentukan sebelumnya. Tentukan juga akun global MySQL, dalam hal ini adalah root dan masukkan juga password-nya. Terakhir, masukkan password MySQL yang telah Anda tentukan. 9 Edit bagian konfigurasi file open admin. 11 Menentukan tahun ajaran baru. 12 Menambahkan tenaga pengajar. INFOLINUX 04/2011 33 3/9/2011 6:28:33 PM PRAKTIK INSTAN Edit file /etc/hosts dengan editor kesayangan Anda dengan perintah: $ sudo vim /etc/hosts Masukan domain yang telah ditentukan untuk masingmasing situs open admin di bawah 127.0.1.1. Dalam hal ini, yang dimasukkan adalah : 192.168.0.51 admin.myschool.net tombol Edit Admin.conf (Gambar 8). Klik tombol Edit pada masing-masing bagian yang ingin diedit (Gambar 9). Berikutnya, masukkan nilai baru untuk bagian yang diedit, klik Update Record (Gambar10). Setelah selesai, klik Edit jika ingin melakukan edit file konfigurasi lainnya atau klik Main untuk kembali. 192.168.0.51 teacher.myschool.net Memulai Tahun Ajaran Baru 192.168.0.51 parent.myschool.net Simpan file /etc/hosts (Gambar 4). Restart service apache untuk meng-update perubahan yang ada dengan perintah (Gambar 5). $ sudo /etc/init.d/apache2 restart Buka browser Anda dan ketikkan url http://admin. myschool.nethttp://admin.myschool.net untuk mengakses situs admin open admin. Anda akan diminta untuk memasukkan login admin yang sudah Anda tentukan sebelumnya, dalam hal ini username-nya adalah “admin” dan password-nya “123456” (Gambar 6). Akhirnya, Anda akan melihat halaman utama open admin setelah login. Edit Konfigurasi Open Admin Pada halaman utama, klik menu Start/End of Year. Pada bagian Configuration/Data Updates, klik tombol Configure Open Admin (Gambar 7). Halaman berikutnya adalah Edit Configuration, klik Klik menu Start/End of Year. Pada bagian Date Management, klik Add Dates. Masukkan tanggal awal tahun ajaran baru yang akan dimulai, beserta tipe. Klik Save Date (Gambar 11). Kembali ke menu utama, klik menu Main. Menambah Pengajar Pada halaman utama open admin lakukan klik menu Start/End of Year. Klik menu Add Staf Member pada bagian Staff Management (Gambar 12). Masukkan informasi pengajar yang dibutuhkan, hal yang harus diisi di sini adalah user id pengajar dan juga password-nya. Klik Add Staff Member setelah selesai (Gambar 13). Untuk melihat staf pengajar, kembali ke menu Start/ End of Year dan pilih View Staff Members pada bagian Staff Management. Panduan Gambar 13 Memasukkan informasi pengajar. 14 Daftar pengajar yang sudah terdaftar. 16 Mendaftarkan siswa baru. 34 04/2011 INFOLINUX 32-35_Praktik Instan 04_EditZaky editrosi.indd 34 15 Melakukan penghapusan staf pengajar. 17 Memasukan informasi dasar siswa. 18 Menentukan password siswa. www.infolinux.web.id 3/9/2011 6:28:36 PM PRAKTIK INSTAN Pengajar yang telah dimasukkan akan terlihat pada halaman berikutnya (Gambar 14). Menghapus Pengajar Klik menu Start/End of Year. Pada bagian Staff Management, klik Edit/Delete Staff Members. Klik tombol Delete pada pengajar (Gambar 15). Sebagai penegasan, klik tombol Yes, Delete the Record pada halaman berikutnya. Menambah Murid Klik menu Main dan pilih Enrol pada bagian Student Enrollment/Withdrawal (Gambar 16). Isikan nama akhir murid dan nama awal murid beserta tanggal lahirnya. Klik Continue (Gambar 17). Berikutnya klik tombol Enrol. Anda bisa memberikan alasan pendaftaran siswa. Klik tombol Yes, enrol nama siswa. Masukkan informasi lainnya pada formulir yang lebih lengkap. Hal yang penting di sini adalah password yang harus diisi untuk akses login orang tua siswa. Klik Save Record – Student Table (Gambar 18). Menghapus Murid Klik menu Main dan klik tombol Withdraw pada bagian Student Enrollment/Withdrawal. Masukkan nama siswa pada kolom yang disediakan, kemudian klik tombol Search (Gambar 19). Klik tombol Withdraw nama siswa. Pilih tombol Yes Withdraw nama siswa (Gambar 20). Klik kembali link Main dan pada halaman selanjutnya klik menu Start/End of Year. Pada bagian Archive/ Delete pilih tombol Permanent Student Deletion. Berikan tanda centang pada siswa dan klik tombol Delete Selected Student (Gambar 21). Login Guru Akses situs untuk guru, dalam hal ini http://teacher. myschool.net. Biasanya, akan diminta memasukan username admin beserta password-nya. Selanjutnya, klik menu Log IN untuk masuk. Muncul jendela popup dan masukkan User Id beserta password guru dan klik Login (Gambar 22). Apabila ingin keluar, klik menu Log Out. Login Orang Tua Untuk melihat NIM siswa, klik menu Main dan pada bagian View/Edit Students, klik Edit Student Record. Lihat nama siswa beserta nimnya untuk diberikan kepada orang tuanya sebagai akses login (Gambar 23). Akses url http://parent.myschool.net dan isikan nim dan password siswa. Klik View (Gambar 24). Hasilnya, orang tua akan melihat daftar kehadiran anaknya pada halaman orang tua tersebut. 19 Pencarian siswa yang akan dihapus. 20 Melakukan penghapusan siswa. 22 Login masuk staf pengajar. www.infolinux.web.id 32-35_Praktik Instan 04_EditZaky editrosi.indd 35 Zaky Abdurrahman [[email protected]] 21 Mencentang siswa yang akan dihapus. 23 Melihat NIM siswa untuk login orang tua. 24 Login orang tua melalui situs open admin. INFOLINUX 04/2011 35 3/9/2011 4:12:00 PM NETADMIN Membatasi Akses Internet Berdasarkan Quota dan Waktu Akses E mang gak ada matinye nih Linux!” Ungkapan ini tentunya sangat wajar. Mengapa demikian? Sistem Linux yang dikenal banyak orang, bukan saja berbiaya murah, namun juga begitu powerfull dan dapat diandalkan untuk menjadi infrastruktur jaringan dengan berbagai fungsi. Sebut saja untuk paket aplikasi firewall. Pada sistem operasi Linux telah disediakan mekanisme firewall yaitu Iptables yang umumnya merupakan modul pada kernel Linux. Iptables dikembangkan oleh netfilter project (www.netfilter.org). Ternyata, Iptables memiliki dukungan ektensi atau modul yang sangat variatif dan powerfull. Dengan Iptables, Anda bukan saja menerapkan firewall (packet filtering) namun lebih dari itu, Anda dapat menerapkan NAT (Network Address Translation) dan PAT (Port Address Translation). Anda juga dapat mengatur pembatasan akses internet berdasarkan quota dan waktu akses. Bagi Anda pengelola RT/RW net, atau ISP kecil-kecilan, tentunya butuh mekanisme pembatasan akses internet yang dapat berdasarkan quota dan waktu akses. Anda tidak perlu mengeluarkan kocek yang cukup mahal untuk membeli perangkat khusus yang dapat melakukan hal tersebut. Cukup gunakan perangkat komputer biasa yang diinstal sistem operasi Linux, kemudian lakukan konfigurasi Iptables, semuanya sudah bisa dilakukan. Terkait kebutuhan pembatasan akses internet berdasarkan quota dan waktu akses, penulis kali ini akan mencoba membahas hal ini menggunakan solusi Iptables dalam upaya pembatasan akses internet tersebut. Ekstensi atau modul Ip- 36 04/2011 INFOLINUX NetAdmin_04_EditZaky edit rosi.indd 36 tables yang akan digunakan adalah modul quota dan modul time. Pada pembahasan kali ini, penulis menggunakan Ubuntu 10.04 (kernel 2.6.3221-generic ). Dalam melakukan konfigurasi pembatasan akses internet berdasarkan quota dan waktu ini, penulis menggunakan tool Iptables yang merupakan bawaan dari distribusi Linux Ubuntu 10.04. Skenario Untuk memudahkan pembahasan, penulis membuat skenario sebagai berikut: Skema topologi jaringan tampak pada Gambar 1. Jaringan lokal (LAN) memiliki alamat jaringan 192.168.20.0/24. Komputer Firewall Linux memiliki dua buah network controller yaitu eth0 dan eth1. Eth0 terhubung ke router (internet) dan eth1 terhubung ke jaringan lokal (LAN). Komputer Firewall berfungsi juga sebagai gateway/internet sharing. Kebijakan Firewall Linux adalah mengijinkan semua komputer pada LAN mengakses jaringan internet dan juga mengijinkan LAN mengakses komputer firewall. Akses dari router (internet) ke komputer firewall dan ke LAN ditolak. Pembatasan akses internet yang diterapkan pada firewall terhadap akses yang berasal dari LAN adalah sebagai berikut: Pembatasan berdasarkan quota diterapkan pada komputer tertentu yaitu komputer bernomor ip 192.168.20.101 dan komputer 192.168.20.102. Quota yang diberikan untuk komputer 192.168.20.101 dan komputer 192.168.20.102 adalah sebesar 100 MB. Jadi, jika quota telah tercapai, komputer 192.168.20.101 dan 192.168.20.102 tidak akan bisa lagi mengakses internet. Pembatasan akses internet untuk komputer 192.168.20.101 dan 192.168.20.102 juga diterapkan berdasarkan waktu akses, yakni waktu akses internet dari hari Senin sampai dengan Minggu, mulai pukul 08:00 sampai dengan pukul 17:30. Jadi, jika waktu akses dilakukan di luar ketentuan waktu tersebut, komputer 192.168.20.101 dan 192.168.20.102 tidak akan dapat mengakses internet. Gambar 1. Skema Tipologi Jaringan www.infolinux.web.id 3/9/2011 3:15:14 PM NETADMIN Konfigurasi Gateway perintah berikut: Langkah awal dalam upaya pembatasan akses internet adalah menentukan nomor IP untuk setiap network controller (eth0 dan eth1) yang terpasang pada komputer firewall. Yang perlu menjadi catatan, pada komputer firewall, default gateway diatur ke alamat IP dari router yang terhubung ke komputer firewall (melalui eth0). Di sisi komputer klien pada LAN, diatur default gatewaynya ke alamat IP komputer firewall (IP pada eth1). Untuk penomoran alamat IP komputer firewall ini, silakan Anda tentukan (sesuaikan dengan skenario pada Gambar 1). Ulanglah selanjutnya adalah melakukan konfigurasi gateway/internet sharing, agar komputer firewall Linux dapat meneruskan traffic IP dari LAN ke internet. Berikut ini langkah langkahnya: Mengaktifkan IP Forwarding, ketiklah perintah berikut: # echo 1 > /proc/sys/net/ipv4/ip_ 17:30 --weekdays Mon,Tue,Wed,Thu,Fri # iptables -P FORWARD DROP ,Sun,Sat -j ACCEPT Kedua perintah di atas menyebabkan default policy untuk chain INPUT dan FORWARD menjadi DROP. # iptables -A INPUT -s 192.168.20.0/24 -j ACCEPT # iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT Kedua perintah di atas menunjukkan akses ke komputer firewall yang berasal dari jaringan 192.168.20.0/24 diijinkan. # iptables -N loc2net # iptables -N net2loc Kedua perintah di atas menunjukkan dibuatnya dua buah chain baru yaitu chain loc2net dan net2loc. # sysctl w net.ipv4.ip_forward=1 Yang perlu dicatat, perintah-perintah tersebut bersifat sementara. Agar permanen, tulislah kembali perintah-perintah tersebut ke dalam file /etc/rc.local. Mengaktifkan IP Masquerade. Diasumsikan rule firewall saat ini memiliki default policy ACCEPT untuk semua jenis traffic (no firewall). Ketiklah perintah berikut ini untuk mengaktifkan IP Masquerade: # iptables -F # iptables -F -t nat # iptables -F -t mangle # iptables -X # iptables -t nat -A POSTROUTING -s 192.168.20.0/24 -o eth0 -j MASQUERADE Langkah berikutnya adalah melakukan konfigurasi awal firewall. Untuk itu, ketiklah beberapa baris www.infolinux.web.id NetAdmin_04_EditZaky edit rosi.indd 37 # iptables -A net2loc -j LOG --logprefix “QUOTA EXCEED OR TIME EXPIRE” Perintah di atas menunjukkan semua traffic yang tidak cocok dengan berbagai rule firewall sebelumnya pada chain net2loc akan dicatat dalam log (/var/log/messages) dengan log prefix “QUOTA EXCEED OR TIME EXPIRE”. # iptables -A loc2net -s eth1 -j net2loc 192.168.20.0/24 -j ACCEPT # iptables -A FORWARD -i eth1 -o eth0 -j loc2net Kedua perintah di atas menunjukkan traffic IP yang masuk dari eth0 dan keluar melalui eth1 akan dimasukkan ke chain net2loc. Dan traffic IP yang masuk dari eth1 dan keluar melalui eth0 akan dimasukkan ke chain loc2net. Konfigurasi Pembatasan Akses Berdasarkan Quota dan Waktu Langkah terakhir adalah mengatur firewall agar melakukan pembatasan akses internet berdasarkan quota dan waktu akses. Kebijakan pembatasannya sesuai dengan skenario yang telah disebutkan di atas. Untuk itu, buatlah beberapa rule firewall yang akan melakukan pembatasan akses internet berdasarkan quota dan waktu akses menggunakan perintah Iptables seperti berikut : Perintah di atas menyatakan semua akses internet dari jaringan 192.168.20.0/24 diijinkan. Agar seluruh konfigurasi firewall yang telah dilakukan bersifat permanen, lakukan perintah berikut ini: # iptables-save > /etc/iptables.cfg Kemudian, agar setiap kali komputer firewall booting, beberapa rule firewall yang tersimpan dalam file /etc/iptables. cfg dijalankan secara otomatis, tambahkan baris perintah berikut ini ke dalam file /etc/rc.local, tepatnya di atas (sebelum) baris perintah “exit 0”: iptables-restore -c /etc/iptables. cfg exit 0 # iptables -I net2loc 2 -m quota -d Untuk melakukan uji coba, silakan Anda melakukan download file dari internet pada komputer 192.168.20.101 atau 192.168.20.102 yang berukuran lebih besar dari 100 MB, atau cobalah cara lain dengan mengakses internet pada jam sebelum 08:00 atau setelah jam 17:30. Selamat mencoba. 192.168.20.102 --quota 100000000 -m Henry Saptono [[email protected]] # iptables -I net2loc 1 -m quota -d 192.168.20.101 --quota 100000000 -m time --timestart 8:00 --timestop Konfigurasi Awal Firewall Kedua perintah di atas menunjukkan traffic yang datang dari inernet menuju komputer 192.168.20.101 serta 192.168.20.102 dibatasi akses internetnya berdasarkan quota sebesar 100 MB atau waktu akses yaitu Senin sampai Minggu, mulai pukul 08:00 sampai 17:30. # iptables -A FORWARD -i eth0 -o forward Atau: time --timestart 8:00 --timestop # iptables -P INPUT DROP 17:30 --weekdays Mon,Tue,Wed,Thu,Fri ,Sun,Sat -j ACCEPT INFOLINUX 04/2011 37 3/9/2011 3:15:16 PM WARNUX DKI – Jakarta Alcatraz, Kelapa Dua, Kebon Jeruk, Jakarta Barat Dexternet, Jl. Meruya Utara No. 33, Jakarta Barat Home.Net, Meruya, Jakarta Barat Awaludin II, TanahAbang, Jakarta Pusat Garasi.Net, Jl. Taruna Raya No. 31, Jakarta Pusat Muara Info, Jl. Kramat Jaya Baru Blok G.V No. 476 Johar Baru, Jakarta Pusat ComNet, Petukangan, Jakarta Selatan Flash.Net, Warung Buncit, Jakarta Selatan Kazenet, Lebak Bulus, Jakarta Selatan M-Net Open Source Internet, Jl. M. Kavling No.3 RT 11/13, Kebon Baru, Jakarta Selatan NixNuxNet, Jl. Nangka No. 6 RT 2/5, Tanjung Barat, Jakarta Selatan Q-Net, Jl. Raya Lenteng Agung, Gardu (Seberang UP), Jakarta Selatan Simpul, Mampang, Jakarta Selatan Tido’s.Net, Kebagusan, Jakarta Selatan Warnet USS, Jl. Raya Pasar Minggu No.42 Durentiga, Jakarta Selatan AANet, Condet, Jakarta Timur Prima.Net, Kel. Makassar, Jakarta Timur WarnetKoe, Pondok Kopi, Jakarta Timur Fabian.Net, Latumeten II, Jakarta Utara AANet, Plumpang, Tanjung Priok, Jakarta Utara Kawan Setia, Jl. Ganggeng Raya No.2a (depan Polsek) Tanjung Priok, Jakarta Utara Jawa Barat dan Banten Warnet Nidar, JL. Tentara Pelajar No. 19A, Banjar GBM Net, Jl. Babakan Loa No. 57 Cimahi, Depan Politeknik Gizi Bandung HeroesNet, Jl. Borobudur Ruko 3C, Cibaduyut, Bandung Amsterdam Internet Cafe, Jl. Raya Kodau (samping Alfamaret), Jatirahayu, Pondok Melati, Bekasi Deja Vu Internet Cafe, Jl. Raya Hankam No. 92-94 Pondok Gede, Bekasi Mynett, Jl. Nangka Raya No. 3D Perumnas I Kranji, Bekasi Taz@net, Pondok Surya Mandala Blok P No. 7 Bekasi Selatan, Bekasi Data Prima Comp, Cileungsi, Bekasi Globalnet, Jl. Jababeka Raya Blok B No. 23 Belakang Ruko BCA, Cikarang, Bekasi Dev-Net, Jl. Raya Kranggan No. 1 Citeureup Cibinong, Bogor Game House, Jl. Songgi Raya No. 5, Bogor JogloNet, Jl. Siliwangi No. 41 (SMKN 1 / ICT Center), Cianjur F&D INTERNET, Jl. Salak II Pondok Cina (belakang BSI Margonda), Depok Majao Computer, Pondok Petir, Sawangan, Depok [email protected], Jl. Mahakam Raya No. 39 Depok Timur, Depok Waskita.Net, Jl. Sawo No. 24A Pondok Cina (belakang Stasiun UI), Depok Warnet Ngenet, Jl. G. Sahari VIII / 11A Gg. Senggol, FKM UI, Depok Warnet Orbital, Jl. Ir. H Juanda No. 53 Karawang Barat, Karawang Revonet, JL. K.H. Abdul Halim (Depan GGM/UNMA), Majalengka FriendsNet, Jl. Raya OTTISTA No. 20, Depan Rumah Sakit PTP VIII, Subang Warnet Naila, Jl. R.A. Kosasih Gg. Ampera 29, Ciaul, Sukabumi Biru.net, Jl. Angkrek No.74, seberang Gapura ke Kampus UNSAP, Sumedang O’net Cafe, Jl. Surya Darma 34 Sewan, Tangerang Quantum.net, Jl. Sunan Gunung Jati No 50, Ciledug, Tangerang Q.net, Jl. Dr. Cipto Mangunkusumo No. 42, Ciledug, Tangerang Starnet, Cimone, Tangerang KZ Internet Cafe, Jl. Pesanggerahan No. 49 Rt.3/3, Cempaka Putih, Ciputat Timur, Tangerang Artanita , Jl. Cieunteung No 112 A [Sebelah SMK Artanita] Tasikmalaya Citra [Koperasi Pegawai Telkom], Jl. Otista No. 06, sebelah Kantor Pos, Tasikmalaya Kharisma, Jl. Ampera No. 142, Depan SD Gunung Lipung, Tasikmalaya Warnet Salsabila I, Jl. Rajawali 105, Kp. Siluman, Cibeureum. Tasikmalaya Warnet Salsabila II, Jl. Kol. Abd. Saleh Cicurug Ojo – Cikalang,Tawang, Tasikmalaya Jawa Tengah dan Yogyakarta Adzkanet, Jl. Raya Pucang-bawang KM 4, Banjarnegara My-Net, Jl. Menteri Supeno 3C (Gedung Perbain lt.1) Sokaraja, Banyumas SPECTRUMNET, Jl. Kulon 598 Sudagaran Kecamatan Banyumas TopNET, Jl. Raya Jatilawang No. 16 Jatilawang, Banyumas Warnet 88, Jl. Jend. Gatot Subroto 155 Kecamatan Banyumas Warnet BC, Kompleks Terminal Karesidenan Banyumas Warnet Pigeon, Ruko KUD No. 04, Jl. Wates KM 10 Sedayu, Bantul ICT Net, Jl. A. Yani No. 68 Kauman, Batang 38 04/2011 INFOLINUX NetAdmin_04_EditZaky edit rosi.indd 38 MegaNet, Jl. Merbabu 17 Boyolali (samping Rutan), Boyolali Cafe Net, Jl. Setiabudi No. 17, Brebes Fuji Warnet, Jl. Raya Timur Jatibarang Kidul, Brebes FOSS net, Kantor Puskud Kab. Brebes Lestari Net, Jl. Hj. Siti Aminah No. 23 Dukuhturi Bumiayu, Brebes AJ-Net, Jl. Urip Sumoharjo 9b Limbangan, Cilacap Hastama-Net, Jl. Gerilya 88a Sampang, Cilacap PojokNET Internet Cafe, Jl. Tugu Barat No. 1 Sampang, Cilacap Metrijaya Net Cafe, Jl. A. Yani No. 12 (Depan POLSEK) Adipala, Cilacap Tracert Cyber Station, Jl. Raya Jepara Kudus, Pecangan Kulon RT 03/02, Jepara Java Net, Jl. Duwet No. 4, Karangasem, Kartasura Gifa Net, Jl. Raya No. 148 Cepiring, Kendal [email protected], Jl. Kh. Noor Hadi No. 34 B (Samping Asrama Akper Muhammadiyah), Kudus Tit@ Net, Jl. Juwana-Pati KM. 1 No. 2 (Hotel Graha Dewata Juwana), Pati WWCE, Jl. Untung Suropati 33 Tayu, Pati AnantaNet, Jl. Diponegoro, masuk gang Utara Pasar Induk Kajen, Pekalongan KiosNet LiPI Linux, Jl. Bugenvil Rt.06/07 Purwoharjo Comal, Pemalang Aidea.net, Jl. S. Parman No. 4, Purbalingga AlfaNET, Jl. Ahmad Yani No. 1b Lt. 2 Alfamart Depan Terminal, Purbalingga GaneshaNET, Jl. Piere Tendean No. 81 Selatan Alunalun, Purbalingga JULIOS, Jl. Pujowiyoto 5 b, Purbalingga Banyu-Net, Jl. dr Soerparno No.18, Purwokerto Warnet 88, Jl. Jend. Sudirman Timur 172 Berkoh, Purwokerto Dago7 Net, Jl. Dr. Soeparno No. 12, Purwokerto Naurah.Net, Jl. Kutoarjo - Ketawang Km. 6, Dukuhdungus, Grabag, Purworejo Alfa.Net, Parang Barong Square 14 Kav 04, Semarang Andromeda.Net, Jl. Tanjungsari No. 4, Semarang CafeNet69, Jl. Tlogosari Raya 1/69, Semarang Exsanet, Jl. Jati Raya Blok Ck3 Ruko Banyumanik, Semarang GankbuntU WarungInternet, Jl. Purwoyoso Ic No.30, Semarang GrandNet - 1, Jl. Sirojudin No. 5 Tembalang, Semarang GrandNet - 2, Jl. Thamrin No. 12 Sebelah Pertamina, Semarang HitNet (GrandNet - 3), Wonodri Baru No. 31 Belakang RS Roemani, Semarang Homenet, Jl. Majapahit 281A, Semarang Infoesia.Net, Jl. Gusti Putri II/No. 40, Semarang Magesen Internet Cafe, Jalan Patriot I H-77, Semarang Mataram, Jl. MT Haryono 294-296, Semarang Starcomp, Jl. Karanglo Pedurungan, Semarang Star@net, Jl. Karanglo I No. 64, Semarang TrendNet, Jl Tirto Agung No. 13 Banyumanik, Semarang WSI Net, Jl. Prof. Sudharto, Tembalang (samping Cafe Tugu), Semarang Zulinet, Jl. Plamongan Sari Raya 3A, Semarang Warnet Amanah, Jl. Raya Sukowati 640, Sragen A Ha 7 Comp, Jl. Raya Balamoa – Banjaran 20 Pangkah, Tegal BIXnet, Jl. Pancakarya No. 19 Kajen Talang, Tegal BONeX, Jl. H. Samanhudi No. 33 Trayeman Slawi, Tegal Brug Abang 99 Warnet, Brug Abang Kajen Talang, Tegal BSC Net, Jl. Raya Karanganyar, Tegal Era Net, Jl. Moh. Yamin Slawi, Tegal Fudu Net, Jl. Pala Raya No. 45 Mejasem, Tegal Graficia Warnet, Jl. Srigunting No. 41, Tegal KSnetcafe, Jl. Abimanyu Kedungsukun, Tegal La Tanza Net, Jl. Samadikun Debong, Tegal Melati Net, Debong, Tegal Nasa Net, Jl. Nakula, Tegal Oase Net, Jl. Werkudoro, Tegal Queen Warnet, Jl. Werkudoro, Tegal RedMouse Internet Cafe, Jl. Sumbodro No. 34, Tegal Soto 99 Warnet, Jl. Raya Talang, Tegal Super Net, Jl. Raya Singkil No. 22 Adiwerna, Tegal Tecra Net, Jl. Setia Budi No. 35, Tegal Wings Net, Tembok Luwung, Adiwerna, Tegal Upnet, Jl. Maospati Raya No. 39, Pondok Babadan Baru, Selamarta, Babadan, Ungaran Timur NugrahaNet, Selomerto No. 150, Wonosobo i-KG.Net, Jl. Ngeksigondo No. 62 Kotagede, Yogyakarta Jo.Net, Jl. Bantul KM 8,5, Yogyakarta Jawa Timur dan Bali Bee Cyber Warnet & Hotspot, Perum Telang Indah Persada, Jl. Telang Indah Barat I No. 29 Telang, Kamal, Bangkalan Warnet Galaxy, Jl. A. Yani 03 (depan SMA 1), Blitar Warnet Mitra, Jl. Lawu No. 71, Blitar Setya Jaya Net, Jl. Panglima Sudirman No. 13, Bojonegoro SAGA-NET, Jl. dr. Wahidin SH No. 620, Gresik XNET, Ruko Pesona Jawa B-3, Hi-Tech Square, Jember Zencafe i-Net, Jl. Kartini 1A, Banyu Biru, Jombang Arnet, Jl. Welirang, Kediri At Taqwa, Madrasah Aliyah Negeri 3, Kediri Orange Net, Ruko Stadion Brawijaya A3, Kediri Titanium.Net, Jl. KH. Wakhid Hasyim, Kediri Warnet Bima, Kediri Warnet Bina, Kediri Warnet ERA, Jl. Raya Kolak 21, utara MTs, depan ALKABA Swalayan, Kolak, Ngadiluwih, Kediri Warnet Evo, Kediri Warnet FastNet, Kediri Warnet Plus, Jl. Ahmad Yani, Ruko Stadion Brawijaya C-5, Kediri Warnet PoS Kediri, Jl. Mayjen Sungkono 32, Kediri Warnet Putra Surya Computer, Kediri Warnet AWF, Jl. Raya Sugio-Kedungpring, Sugio, Lamongan Warnet Maju Jaya, RT 03 RW 02, Siman, Sekaran, Lamongan Warnet SMK Wachid Hasjim, Parengan, Maduran, Lamongan TuxEdoe, Jl. Panglima Sudirman, Purwosari, Wonoasri, Caruban, Madiun Warnet Ubuntu, Jl. Raya Genengan No. 256 Rt/Rw 03/09, Binangun, Pakisaji, Malang Warnet Mandiri, Jl. R. Wijaya 5 (Depan Stadion Gajah Mada) Mojosari, Mojokerto Warnet Paradise, Jl. Raya Kemantren, Kec. Gedeg, Mojokerto Best.Net, Jl. Musing 633 Kauman, Bangil, Pasuruan F@S Warnet, Jl. Durian No. 281, Bangil, Pasuruan Bluesky.net, Krajan 05/01, Desa Banjarsawah, Tegalsiwalan, Probolinggo ARFnet, Jl. Dharmawangsa No. 56B, Surabaya Ciber Net, Jl. Simo Kwagean No. 72, Surabaya Deepo.Net, Jl. Danakarya No.77 Surabaya KampoengCyber, Rungkut Asri Utara No. 9, Surabaya RC Net, Jl. Siwalankerto I/66, Surabaya Shinobi.Net, Jl. Mulyorejo 174, Surabaya Warnet Smart Office, Karang Menjangan 72, Surabaya Warnet Pacarkembang, Gang 3 No. 36, Surabaya Prompt.Net, Sidokare Asri Ai/9, Sidoarjo Core.Net, JL. Basuki Rahmat 37, Situbondo AE Net, Desa Mandirejo, Kec. Merakuran, Tuban Bina Tuban, Jl. Basuki Rahmat 73, Tuban Hasil Flash Net, Jl. Basuki Rahmat No. 235, Tuban Planet Com, Jl. Basuki Rahmat No. 320, Tuban Sudra Net, Jl. Basuki Rahmat No. 57, Tuban Tamim Net, Jl. Diponegoro No. 45, Tuban Toki Net, Jl. KH. Musta’in No. 50, Tuban Liberty Cyber, Jl. Gn. Rinjani IXC No. 8, Denpasar, Bali YOGA INTERNET 1, Jl. Patimura No 4, Tabanan, Bali YOGA INTERNET 2, Jl. Gajah Mada 128, Tabanan, Bali YOGA INTERNET 3, Jl. Raya Mengwitani, Badung, Bali Kalimantan Flink Internet Cafe, Jl. Adhyaksa Komplek Ruko Kayu Tangi Permai No R11, Banjarmasin, Kalsel Raihan-net, Jl. P.H.M. Noor (depan air mancur) Barabai, Kalsel Ciwank.net, Jl. Pramuka No. 15, RT/RW 29/10, Kel. Gunung Kelua, Samarinda, Kaltim Sulawesi MECS, Jl.Mesjid Raya No.17 Sungguminasa, Gowa @mAy-Net, Jl. Abd. Silondae No. 127 C (samping BCA), Kendari Aromanet, Jl. D.I. Panjaitan No. 88 Lepo-lepo (samping Trakindo), Kendari Jelajah Net, House of Linux. Jl. Perintis Kemerdekaan VIII no. 2B, Makassar K-Sepuluh Net, OpenSourceNet Cafe, Jl. Perintis Kemerdekaan Km.10 No.36, Makassar LouphNet, Jl. Aroepala, Hertasning Baru B2 No.26 (Samping Kampus STIKES Mega Rezky), Makassar Toraja.Net, Ruko O3, Jl. Perintis Kemerdekaan KM 12, Makassar Zenith Internet Cafe, Jl. Kumala No. 43 A, Makassar Kirei Net, Jl. Sam Ratulangi 159 (depan BCA), Manado LagaligOS (Lagaligo Open Source) Net, Jl. Andi Mappanyukki Ex Jl. Imam Bonjol (Depan SMA Kristen) Kota Palopo Warnet Sintek (Sinjai Teknologi), Jl. Baso Kalaka No. 10 Sinjai, Sulsel Sumatera Jack.Net, Jl. Medan-Banda Aceh, Matangglumpang Dua, Bireuen, Aceh Tarisa, Ruko Simpang Kantor Pos Keutapang, Aceh Besar Opotumon, Jl. Tgk. Chik Dipineung Raya No. 69, Kampung Pineung, Banda Aceh Mianova.Net, Jl. Hayatimahim No. 2 RT 20 RW 08 Tanjungpandan Belitung, Bangka Belitung Homy.net, Citra Batam C.233 Batam Centre, Batam, Kepulauan Riau Kaliber Net, Jl. Pemuda No. 22e Tanjungpinang, Kepulauan Riau Ulisa.Net, Jl. Cempedak No. 84 Dumai, Riau Daratan Kagaya.Net, Jl. Abdul Muis No. 9A, Jati, Padang, Sumbar AndiNet, Jl. Palembang Batas Kota, samping RM Lesehan Lumayan II, Muara Enim, Sumsel Delta.net, Jl. Mayor Ruslan III, Pasar Lama, Lahat, Sumsel IndahNyo.net, Jl. Pelda Saibi No. 1/40 Nasional, Prabumulih, Sumsel Kambangiwak.net, Jl. Palembang-Prabumulih KM 32 depan Bank Sumsel, Inderalaya, Sumsel Nikita.net, Jl. Jend. Sudirman, Simpang Muara Dua, Samping Atlas, Prabumulih, Sumsel www.infolinux.web.id 3/9/2011 3:15:16 PM ardhost (IL0320208)+linuxindo (IL0090312).indd 1 2/4/2011 4:45:14 PM TUTORIAL PYTHON Membangun Shell Sendiri Bagian 1 dari 2 Tulisan K ita akan membahas berbagai contoh pembuatan shell sendiri. Pembahasan termasuk shell-shell sederhana, penanganan environment variable, evaluasi atau eksekusi kode Python, dukungan builtin command, eksekusi program, history dan dukungan readline, serta pengubahan prompt dan script init/exit. Di dunia Linux, bash adalah shell yang umum digunakan. Walau demikian, kita juga dapat menemukan aneka shell alternatif sesuai selera masing-masing. Nah, apabila masih tidak juga menemukan yang cocok, kita dapat membuatnya sendiri. Di dalam tulisan ini, kita akan membahas dasar-dasar pembuatan shell, disajikan dalam 15 (lima belas) contoh (dua tulisan). Semua contoh shell di sini, dibangun dengan Python dan dilisensikan GPL. Pembahasan akan kita mulai dari lingkungan kerja. Pembuatan User Test Untuk membuat user test, login-lah sebagai root dan berikanlah perintah berikut. useradd -m test Kemudian, berikanlah password untuk user test tersebut (password bebas): passwd test Hak Akses Executable untuk Shell Untuk setiap contoh shell, mulai dari shell1.py sampai shell15.py, kita akan berikan hak akses executable dengan pola perintah berikut. $ chmod +x <shell> Lingkungan Kerja Berikut adalah lingkungan kerja yang penulis gunakan. Sesuaikanlah dengan preferensi Anda. Penulis bekerja sebagai user ‘‘user”. Semua shell contoh dan file-file pendukung (dibuat oleh “user”) akan disimpan pada /tmp. Direktori aktif penulis adalah / tmp. Untuk menguji shell, tersedia satu user dengan nama “test”. Untuk mengatur shell untuk user “test” dan meng-copy berbagai file pendukung ke home directory user test (/home/test), root akan terlibat. 40 04/2011 INFOLINUX Tutorial nopri_04 edit rosi.indd 40 Contoh: $ chmod +x shell1.py Untuk menghemat tempat, kita tidak membahas pemberian hak akses executable untuk setiap contoh shell. Pengubahan Shell oleh Root Untuk mengubah shell user “test” ke shell tertentu, login-lah sebagai root, dan berikanlah perintah berikut, dalam pola: # usermod -s <path_absolut_shell> test Contoh: # usermod -s /tmp/shell1.py test Untuk menghemat tempat, kita tidak membahas pengubahan shell oleh root untuk setiap contoh shell. Contoh Output Untuk menguji shell yang dibuat, user test akan login pada tty (sebelumnya, shell yang akan digunakan telah diset oleh root). Contoh output halaman login dan penggunaan shell akan ditampilkan untuk setiap shell, kecuali shell12. py. Parsing String Perintah Parsing string, perintah yang digunakan dalam tulisan ini, sangatlah sederhana. Salah satu cara berikut digunakan: Tidak ada parsing: satu baris dianggap sebagai satu perintah. Split berdasarkan white space: anggota pertama hasil split (index 0) adalah perintah. Argumen perintah adalah anggota kedua (index 1) atau didapat dari penggabungan kembali anggota selain perintah dengan sebuah spasi. Split berdasarkan white space: anggota pertama hasil split (index 0) adalah perintah. Argumen perintah adalah substring dari input, dipotong perintah. Tidak ada penggabungan kembali dengan www.infolinux.web.id 3/9/2011 3:40:55 PM TUTORIAL PYTHON sebuah spasi. Di dunia nyata, kita bisa menggunakan cara parsing yang lebih baik misal dengan menggunakan pustaka pyparsing. Keluar dari Shell yang Mendukung Input Beberapa contoh shell sederhana tidak menyediakan input bagi user. Untuk contoh-contoh lain yang menyediakan input bagi user: perintah exit (terlepas dari cara implementasi), Ctrl-C atau Ctrl-D dapat digunakan untuk keluar dari shell. Kita akan bahas untuk pertama kalinya pada shell4. Penjelasan: Pertama, kita sengaja login dengan password yang salah sehingga gagal. Setelah itu, kita login dengan password yang benar dan shell diharapkan bekerja. Ini benar dan bisa dilihat bahwa terjadi satu kesalahan login sebelumnya. Walau demikian, shell langsung exit dan kita kembali ke prompt login. Source Code #!/usr/bin/env python #(c) Noprianto, 2011. GPL. import os import pwd import sys def main(): Shell2.py: Mencetak ke Stdout print ‘Hello :)’ Ketika dijalankan, shell2 akan mencetak ke stdout dan langsung exit dengan status 0. print # uid = os.getuid() pw = pwd.getpwuid(uid) Source Code for i in pw: #!/usr/bin/env python print i Shell1.py: Tidak Melakukan Apapun Ini merupakan contoh shell yang akan langsung exit (dengan exit status 0) setelah dijalankan. Jadi, tidak melakukan apa-apa. Sekadar contoh, kita bisa membangun shell yang dapat bekerja. #(c) Noprianto, 2011. GPL. if __name__ == ‘__main__’: import sys # sys.exit(0) def main(): print Source Code main() print ‘Hello :)’ Contoh Output Welcome to Linux 2.6.21.5-smp (tty3) #!/usr/bin/env python ws0001 login: test #(c) Noprianto, 2011. GPL. if __name__ == ‘__main__’: import sys Password: main() Linux 2.6.21.5-smp. # Last login: Mon Feb 21 09:53:19 sys.exit(0) +0700 2011 on tty3. No mail. Contoh Output if __name__ == ‘__main__’: Hello :) Welcome to Linux 2.6.21.5-smp (tty3) sys.exit(0) test Contoh Output ws0001 login: test Welcome to Linux 2.6.21.5-smp (tty3) Password: Linux 2.6.21.5-smp. 1001 ws0001 login: test Last login: Mon Feb 21 09:52:44 100 Password: +0700 2011 on tty3. Login incorrect No mail. /home/test /tmp/shell3.py ws0001 login: test Password: Hello :) Linux 2.6.21.5-smp. Welcome to Linux 2.6.21.5-smp (tty3) 1 failure since last login. Last was 09:52:38 on tty3. ws0001 login: ws0001 login: Shell4.py: Echo Last login: Mon Feb 21 09:52:18 +0700 2011 on tty3. No mail. Welcome to Linux 2.6.21.5-smp (tty3) ws0001 login: www.infolinux.web.id Tutorial nopri_04 edit rosi.indd 41 Welcome to Linux 2.6.21.5-smp (tty3) Shell3.py: Mencetak Informasi User Ketika dijalankan, shell3 akan mencetak informasi user (yang login) berupa entry di /etc/passwd dan langsung exit setelahnya. Untuk pertama kalinya, shell menyediakan input oleh user. Ini semakin mirip dengan shell seharusnya. Apa yang diinput akan dicetak apa adanya (setelah di-trim/strip) ke INFOLINUX 04/2011 41 3/9/2011 3:40:55 PM TUTORIAL PYTHON stdout, kecuali exit (case insensitive), yang akan keluar dari perulangan (dan shell). Selain perintah exit, kita juga bisa menggunakan Ctrl-c atau Ctrl-d. : semuanya? semuanya? : exiT bye Source Code #!/usr/bin/env python #(c) Noprianto, 2011. GPL. Source Code Shell5.py: Cetak Environment Variables #(c) Noprianto, 2011. GPL. Dalam shell ini, setelah user login, shell akan mencetak semua environment variable, lalu exit dengan status 0. Source Code def main(): Shell6.py: Perintah Get, Dapatkan Environment Variable Ini merupakan shell yang lebih serius, dibanding beberapa shell sebelumnya. Kita menyediakan tambahan perintah get (case insensitive; membutuhkan satu argumen) untuk mendapatkan environment variable. Apabila variabel tersebut tersedia, kita tampilkan isinya ke stdout. #!/usr/bin/env python import sys ws0001 login: : while True: input = raw_input(‘: #!/usr/bin/env python ‘).strip() if not input: continue import sys import os #(c) Noprianto, 2011. GPL. import os # import sys if input.lower() == ‘exit’: raise KeyboardInterrupt else: print input def main(): print keys = os.environ.keys() for i in keys: def main(): while True: input = raw_input(‘: var = os.environ.get(i)[:60] print ‘%s: %s’ %(i, var) if __name__ == ‘__main__’: ‘).strip() if not input: try: continue main() except (KeyboardInterrupt, EOFError): print ‘bye’ # # if __name__ == ‘__main__’: main() sinput = input.split() # cmd = sinput[0] sys.exit(0) if cmd.lower() == ‘exit’: raise KeyboardInterrupt sys.exit(0) Contoh Output Penjelasan: Perhatikanlah bahwa kita memroses exception KeyboardInterrupt (default Ctrl-c) dan EOFError (Ctrl-d). Untuk keluar dari perulangan, kita tidak gunakan break, namun raise KeyboardInterrupt. elif cmd.lower() == ‘get’: Welcome to Linux 2.6.21.5-smp (tty3) try: ws0001 login: test except IndexError: e = sinput[1] Password: e = ‘’ Linux 2.6.21.5-smp. # Last login: Mon Feb 21 09:55:22 if e: +0700 2011 on tty3. No mail. var = os.environ. get(e) Contoh Output Welcome to Linux 2.6.21.5-smp (tty3) if var: HZ: 100 print var TERM: linux ws0001 login: test SHELL: /tmp/shell5.py Password: MAIL: /var/spool/mail/test Linux 2.6.21.5-smp. HUSHLOGIN: FALSE Last login: Mon Feb 21 09:54:43 LOGNAME: test +0700 2011 on tty3. USER: test No mail. PATH: /usr/local/bin:/bin:/usr/bin : halo HOME: /home/test try: Welcome to Linux 2.6.21.5-smp (tty3) except (KeyboardInterrupt, halo : apa kabar apa kabar 42 else: 04/2011 INFOLINUX Tutorial nopri_04 edit rosi.indd 42 print ‘get ?’ else: print input if __name__ == ‘__main__’: main() EOFError): www.infolinux.web.id 3/9/2011 3:40:55 PM TUTORIAL PYTHON print ‘bye’ continue main() # # except (KeyboardInterrupt, sys.exit(0) sinput = input.split() EOFError): cmd = sinput[0] Contoh output print ‘bye’ if cmd.lower() == ‘exit’: Welcome to Linux 2.6.21.5-smp (tty3) # raise KeyboardInterrupt sys.exit(0) elif cmd.lower() == ‘get’: ws0001 login: test Contoh Output try: Password: e = sinput[1] Linux 2.6.21.5-smp. Last login: Mon Feb 21 09:56:35 e = ‘’ # No mail. if e: : Linux 2.6.21.5-smp. var = os.environ. Last login: Mon Feb 21 09:58:05 +0700 2011 on tty3. get(e) test if var: : print var : GET get ? print ‘get ?’ : get A elif cmd.lower() == ‘set’: : : get SHELL e = sinput[1] except IndexError: : e = ‘’ : get A : set ? ? : set A # set ? ? bye try: : set A halo apa kabar : exit : var = ‘ : get A halo apa kabar ‘.join(sinput[2:]) Shell7.py: Perintah Get, Set, Unset untuk Environment Variable : get : set try: /tmp/shell6.py No mail. get ? else: Selain perintah get sebagaimana contoh sebelumnya, kita juga mengimplementasikan perintah-perintah berikut. Set: membuat/mengupdate variabel, membutuhkan dua argumen berupa nama variabel dan isinya. Unset: menghapus variabel dan membutuhkan satu argumen berupa nama variabel. ws0001 login: test Password: +0700 2011 on tty3. : test Welcome to Linux 2.6.21.5-smp (tty3) except IndexError: : except: var = ‘’ : unset # unset ? if len(e) > 0 and : unset A : len(var) > 0: os.environ[e] = var : get A : else: print ‘set ? ?’ elif cmd.lower() == ‘unset’: : exit bye try: e = sinput[1] except IndexError: e = ‘’ Source Code # #!/usr/bin/env python if e: if os.environ. #(c) Noprianto, 2011. GPL. has_key(e): import os pop(e) os.environ. import sys else: print ‘unset ?’ else: def main(): print input Penjelasan: User test bekerja dengan variabel A. Awalnya tidak tersedia, lalu diset dan tersedia, kemudian unset dan tidak tersedia kembali. Shell8.py: Evaluasi Ekspresi Python Di dalam shell8, kita menyediakan dukungan perintah eval (case insensitive), untuk evaluasi ekspresi Python. Salah satu kegunaannya adalah fitur kalkulator pada shell. while True: Source Code input = raw_input(‘: ‘).strip() if not input: www.infolinux.web.id Tutorial nopri_04 edit rosi.indd 43 if __name__ == ‘__main__’: #!/usr/bin/env python try: INFOLINUX 04/2011 43 3/9/2011 3:40:55 PM #(c) Noprianto, 2011. GPL. : eval (1+2+3) * 1000 try: 6000 main() import os : except (KeyboardInterrupt, import sys : eval 1234 ** 56 EOFError): 129911902554871451941032084396235137 def main(): while True: print ‘bye’ 754657820101273923843790127046242594 # 330550946489256784853624729020106139 sys.exit(0) 515647384910944921186523865849056275 input = raw_input(‘: 359066262352911682504769929216 ‘).strip() : if not input: : eval 1+a continue error # : sinput = input.split() : exit cmd = sinput[0] bye if cmd.lower() == ‘exit’: raise KeyboardInterrupt elif cmd.lower() == ‘eval’: args =‘‘join(sinput[1:]) if args.strip(): try: res = eval(args) Hell9.py: Eksekusi Kode Python Di dalam shell ini, kita menyediakan dukungan perintah exec (case insensitive), untuk eksekusi kode Python. Tentu saja, user bisa memberikan kode-kode yang berbahaya. :) print ‘error’ Source Code Welcome to Linux 2.6.21.5-smp (tty3) Password: #!/usr/bin/env python Linux 2.6.21.5-smp. Last login: Mon Feb 21 10:03:25 else: print input Contoh Output ws0001 login: test print res except: Penjelasan: Kita lewatkan exec dalam try/except. Apabila terjadi kesalahan, kita tampilkan “error”. Argumen untuk exec kita dapatkan dengan cara terakhir parsing string, sebagaimana dibahas pada awal-awal tulisan. Pada saat dilewatkan ke exec, kita strip sisi kiri string untuk mencegah white space yang tidak diperlukan. #(c) Noprianto, 2011. GPL. +0700 2011 on tty3. No mail. if __name__ == ‘__main__’: try: import os : exec print ‘halo’ import sys halo : main() : exec for i in range(3): print i except (KeyboardInterrupt, EOFError): print ‘bye’ def main(): 0 while True: 1 # input = raw_input(‘: 2 sys.exit(0) ‘).strip() : exec import platform; print if not input: platform.uname() Penjelasan: Kita lewatkan eval dalam try/except. Apabila terjadi kesalahan, kita tampilkan “error”. Contoh Output Welcome to Linux 2.6.21.5-smp (tty3) ws0001 login: test continue (‘Linux’, ‘ws0001’, ‘2.6.21.5-smp’, # ‘#2 SMP Tue Jun 19 14:58:11 CDT sinput = input.split() 2007’, ‘i686’, ‘AMD Sempron(tm) cmd = sinput[0] Processor LE-1150’) if cmd.lower() == ‘exit’: : raise KeyboardInterrupt elif cmd.lower() == ‘exec’: : if args.strip(): : exit try: Linux 2.6.21.5-smp. exec args.lstrip() Last login: Mon Feb 21 09:58:18 except: +0700 2011 on tty3. : test bye print ‘error’ else: print input test : eval 1 1 44 04/2011 INFOLINUX Tutorial nopri_04 edit rosi.indd 44 error args = input[len(cmd):] Password: No mail. : exec print test if __name__ == ‘__main__’: Untuk dukungan builtin command, eksekusi program, history dan dukungan readline, pengubahan prompt dan script init/exit, akan kita bahas pada edisi berikutnya. Selamat mencoba! Noprianto [[email protected]] www.infolinux.web.id 3/9/2011 3:40:55 PM IKLAN PASS FM (materi FILM) filler openoffice (IL0170707).indd 1 3/9/2011 1:51:18 PM TUTORIAL LIBREOFFICE MATH Menulis Notasi Matematika dengan LibreOffice S aat ingin mengetikkan materi di pelajaran Matematika atau kalkulus di Word Processor, Anda mungkin pernah menemui kesulitan saat ingin mengetikkan notasi Matematika. Jika hal ini yang Anda hadapi, gunakan saja paket Formula yang terdapat di LibreOffice atau OpenOffice.org. LibreOffice merupakan paket aplikasi Free/Open Source Software (FOSS) yang dibuat sebagai turunan OpenOffice.org. Pada pertengahan Januari tahun ini, LibreOffice merilis versi terbaru, yaitu Libreoffice 3.3 Final yang dapat Anda download di http://www.libreoffice.org/download. Kami juga menyertakan paket LibreOffice 3.3. di DVD edisi ini. Jika menemui kesulitan saat ingin mengetikkan notasi Matematika di Word Processor, Anda bisa menggunakan aplikasi Office Math dengan LibreOffice maupun OpenOffice.org. Math adalah editor formula atau rumus yang dapat digunakan untuk membuat rumus kompleks yang terdiri atas simbol-simbol atau karakter-karakter yang tidak ada pada font standar. Aplikasi Math dapat dipanggil dari Writer, Calc, dan Impress atau dapat pula diaktifkan sebagai editor sendiri. File yang dihasilkan dapat disimpan dalam format ODF Formula (.odf) dan MathML (.mml). Fitur LibreOffice Math LibreOffice Math menyediakan banyak pilihan, seperti operator, fungsi, dan panduan melakukan format untuk membantu Anda membuat formula atau rumus. Ini semua tercantum di selection window dengan 46 04/2011 INFOLINUX Tutorial yadi_04 edit nur3.indd 46 cara mengeklik jendela element dengan kursor mouse untuk memasukkan objek formula ke dokumen Anda. Bagian ini berisi gambaran beberapa fungsi penting dan kemampuan pada LibreOffice Math, sebagai berikut. Membuat Rumus Seperti halnya grafik dan gambar, rumus diciptakan sebagai objek dalam dokumen. Dengan LibreOffice Math, Anda dapat menyisipkan rumus ke dokumen secara otomatis. Selain itu, Anda dapat membuat, mengedit, dan membentuk rumus dengan banyak pilihan simbol dan fungsi. Mengetik Rumus secara Langsung Jika sudah familiar dengan bahasa LibreOffice Math, Anda juga bisa mengetik rumus secara langsung ke dokumen. Sebagai contoh, jenis ini rumus dalam bentuk teks: “a sup 2 + b sup 2 = c sup 2”. Pilih teks ini (dengan cara klik and drag pada kursor mouse Anda) lalu pilih Insert | Object | Formula. Teks akan dikonversi dalam format rumus dengan hasil pembentukan rumus adalah a²+b²=c² Catatan: Rumus tidak dapat dihitung dengan LibreOffice Math karena merupakan Aplikasi Office khusus Editor Formula (untuk menulis dan menampilkan rumus) dan bukan program perhitungan. Untuk menghitung rumus, Anda bisa menggunakan spreadsheet atau teks dokumen untuk perhitungan sederhana. Membuat rumus di Editor Formula Gunakan Editor Formula Math pada LibreOffice untuk memasukkan dan mengedit rumus ketika Anda membuat entri pada Editor Formula. Anda akan melihat hasilnya dalam dokumen. Untuk mempertahankan bentuk gambar saat membuat rumus yang panjang dan rumit, gunakan icon (Formula Cursor) pada Tools bar. Bila fungsi ini diaktifkan, lokasi kursor dalam Editor Formula ini juga ditampilkan dalam text window. Membuat Simbol Sendiri Anda dapat membuat simbol sendiri dan meng-import karakter dari font lain dan menambahkan simbol baru ke katalog dasar pada simbol LibreOffice Math atau membuat katalog khusus sendiri. Banyak karakter spesial yang juga tersedia. Rumus di Dalam Konteks Untuk membuat kerja rumus lebih mudah, gunakan menu konteks, yang dapat dipanggil dengan cara klik kanan pada kursor mouse Anda. Hal ini berlaku pada jende- www.infolinux.web.id 3/9/2011 10:27:13 AM TUTORIAL LIBREOFFICE MATH la Editor Formula. Menu konteks berisi semua perintah rumus yang dapat Anda temukan pada jendela element, operator, dan sebagainya yang dapat dimasukkan ke rumus Anda. Referensi Tabel Formula Untuk kemudahan dalam menggunakan Formula atau rumus pada LibreOffice Math, kita dapat menggunakan daftar referensi tabel Formula. Daftar referensi tabel terdiri atas Unary and Binary Operators, Relations, Set Operators, Function, Operators, Attributes, Others, Brackets, dan Formatting. Berikut adalah daftar singkat persamaan umum dan menandakan korespondensinya. Tanda Silang a times b Perkalian a*b Pembagian a over b Boolean ‘and’ a and b Boolean ‘or’ a or b Boolean ‘not’ neg a Sama dengan a=b Tidak sama dengan a <> b Tanda masuk/bagi- a in b axb a*b lebih kurang atau a∧b a∨b ¬a a=b a≠b a∈b a <= b a≤b a >= b a≥b Lebih besar atau a toward b Tanda panah ganda a dlrarrow b Tanda panah kanan a drarrow b Sama atau sebangun a equiv b Nilai pasti/mutlak abs{a} Menggunakan Office Math Tanda pangkatan a^{b} Terdapat tiga cara utama untuk membuat rumus pada Office Math, yaitu: Tikkan markup atau penanda dalam Editor Formula. Akar pangkat n nroot{a}{b} Referensi Tabel Formula lim a Σa ∫a Πa lim{a} Sum (jumlah) sum{a} Integral int{a} Product prod{a} Integral dengna range int from {b} to {a} {f(x) dx} Plus/Minus +-1 Penjumlahan a+b pengurangan a-b Tanda Titik(dot) a cdot b Jendela Editor Formula Jendela Hasil a ∫ f (x) dx Akar pngkat 2 sqrt{a} Tanda panah atas vec a Tanda accent di atas acute a Tanda titik di atas dot a Celah/spasi kecil info’Linux ª√b √a a → á . a Info Linux Celah/spasi besar Info Linux info~Linux (tanda tilde) Baris baru info newline Linux Font tebal bold Linux Italic Font ital Linux Roman (non italic) nitalic Linux b ±1 a+b a-b a.b Unary/binary Operators %gamma %psi %phi %theta Uppercase α %ALPHA Α β %BETA Β γ %GAMMA Γ ψ %PSI Ψ φ %PHI Φ θ %THETA Θ Spesial Karakter a→b a⇐b a⇔b a⇒b a≡b ⏐a⏐ ab (tanda grave) Limit (batas) %beta sama dengan a dlarrow b Hasil %alpha sama dengan Tanda panah kiri Command Lowercase a_ b an dari Ke arah Operasi Karakter Yunani Info Linux Linux Linux Linux Font Mengubah Size 16 Linux ukuran Font Mengubah warna Font color yellow Linux Linux Linux % and ∧ % notequal ≠ % angle < % or ∨ % element ∈ % perthousand ‰ % identical ≡ % strictly greatearthan » % infinite ∞ % strictly lessthan « % noelement ∉ % tendto → Klik kanan dalam Editor Formula dan pilih simbol dari menu konteks. Pilih simbol dari jendela element. Selanjutnya, kita coba membuat rumus pada aplikasi Math. Apikasi Math dapat dibuka melalui editor sendiri, yaitu menggunakan Office Math. Kita juga dapat membuka aplikasi Math dengan Office Writer, Calc, maupun Impress. Sebagai contoh, penulis akan memasukkan rumus pada Office Writer. Untuk memasukkan rumus pada Office Writer, kita buka pada tab Insert | Object | Formula. Selanjutnya, Edi- Divison(Fraction) } Kategori } Gambar 1. Jendela Formula. www.infolinux.web.id Tutorial yadi_04 edit nur3.indd 47 Simbol Gambar 2. Membuka Menu Konteks. INFOLINUX 04/2011 47 3/9/2011 10:27:54 AM TUTORIAL LIBREOFFICE MATH pada akhir persamaan teks “3,14159” dan hasil akhir rumus dalam bentuk teks adalah “%pi simeq 3.14159 ”. 3. Membuat rumus yang lebih rumit, yaitu -b±√b²-4ac Ukuran Gambar 3. Jendela Karakter. Display x + y =3 Command Jendela Editor Formula x + y =3 newline x - y = 1 x= x - y =1 ∫1 cost (x) dx= sinh () - sinh (1) int from 1 to% pi cosh (x) dx=sinh(%pi)-sinh(1) n 1 n ∫x dx=— +c dengan n+1 x int n≠–1 x^{n}+c bold dengan n <> -1 1 =∫x¯¹dx=1n|x|+c − ∫x int {{1} over {x}} = int x^{- x^{n}dx={1}over{n+1} 1}dx=ln{lline x rline}+c ∞ Σ 1 an +− n² sum from {n=1} to infinity n=1 det {a_n+1 over n^2} (ca db) det left( matrix {a# b## c# d } right) {df(t)} over {dt} = {partial f} df(t) ∂f dx ∂f dy — = — — +— — dt ∂x dt ∂y dt 34 =(3*6)-(5*4) 56 | | |M|= over {partial x}{dx} over {dt} lline M rline = left lline {matrix {3# 4## 5# 6}} right rline = (3*6) - (5*4) Contoh Rumus dan cara penulisannya. tor Formula terbuka di bawah layar halaman dokumen dan otomatis muncul jendela Element (Anda pun dapat membuka dan menutup jendela Element pada tab View | Elements). Anda juga akan melihat kotak kecil (dengan batas abu-abu) dalam dokumen Anda di mana rumus akan ditampilkan seperti tampak pada Gambar 1. Selanjutnya, kita buat rumus, misalnya sebagai berikut. 1. Membuat rumus sederhana, yaitu 10 pada toolbox Elements, seb5 agai berikut: Pilih kategori Unary/binary Operators dengan cara klik kiri menggunakan kursor mouse Anda lalu pilih simbol a , seperti tampak b pada Gambar 1. Bila Anda memilih simbol pembagian pada jendela element, dua hal akan terjadi: 1. Editor Formula akan menampilkan teks: “ {<?>} over {<?>}” 2. Halaman dokumen menunjukkan kotak abu-abu dengan gambar . Tanda “<?>” merupakan tanda sementara yang 48 04/2011 INFOLINUX Tutorial yadi_04 edit nur3.indd 48 Gambar 4. Kustomisasi Office Math. akan Anda ubah menjadi teks lain, misalnya kita tik teks: {10} over {5} dengan Anda mengubah teks tersebut, persamaan akan update secara otomatis dengan hasil adalah 10 . Anda pun 5 dapat mengubah persamaan update secara manual, yaitu dengan pilih tab View | Update (atau dengan menekan tombol F9) dengan syarat Anda mengunceklis AutoUpdate Display (di View | Update | AutoUpdate Display). Selain menggunakan jendela Element, Anda dapat mengakses simbol matematika dengan cara klik kanan kursor mouse Anda pada jendela Editor Formula seperti tampak pada Gambar 2. 2. Membuat rumus untuk persamaan dari 3.14159 Penjelasan: sama dengan 22 7 atau dibulatkan dengan angka 5 desimal di belakang koma, yaitu 3.14159. Tanda merupakan karakter Yunani, yaitu (“pi”), sedangkan simbol merupakan bagian relation (hubungan). Langkah-langkah pembuatan rumus sebagai berikut: Tikkan “%” diikuti dengan teks “pi”. Hasilnya menampilkan karakter Yunani atau Anda dapat juga membuat karakter Yunani pada tab Tools | Catalog seperti tampak pada Gambar 3. Untuk mencari simbol , caranya klik kanan kursor mouse Anda pada jendela Element, pilih kategori relations ≤ lalu pilih simbol . Hapus teks “<?>” dan tambahkan 2a Mungkin kita lebih mudah menggunakan rumus sederhana seperti √a . Lalu, bagaimana ketika muncul rumus yang lebih rumit? Solusinya adalah menambahkan tanda brackets({...}) untuk membatasi beberapa rumus yang akan kita gabungkan. Hasil akhir penulisan teks pada jendela Editor Formula adalah “{ -b +- sqrt { b^2 - 4ac } } over { 2a }”. 4. Membuat rumus Integral, yaitu a 1 ∫ x²+−dx x b b Untuk membuat rumus ∫ ke dalam bentuk teks, tambahkan opsi from dan to setelah simbol integral atau Anda dapat juga mengambil opsi dengan cara klik kanan kursor mouse Anda pada jendela Editor Formula, lalu pilih Operators | ...from a to b. Hasil akhir rumus dalam bentuk teks adalah “int from a to b { x^2 + 1 over x dx }”. a Kustomisasi Office Math Mengubah Ukuran Font Saat Anda memasukkan rumus, kadang kala ukuran font terlalu kecil. Untuk mengubah ukuran font sesuai yang Anda inginkan, Anda pilih teks rumus yang akan diubah, lalu pilih tab Format | Font Sizes. Pada Base size, Anda atur ukuran font yang Anda inginkan. Editor Formula sebagai Jendela Terpisah Editor Formula dapat menutupi sebagian besar jendela Writer. Untuk mengaktifkan Editor Formula ke jendela terpisah, arahkan kursor mouse Anda di atas bingkai Editor lalu tekan dan tahan tombol ctrl dan klik dua kali. Akhir kata, selamat mencoba! Yuliadi [[email protected]] www.infolinux.web.id 3/9/2011 10:27:56 AM nf(IL0060343) 2.indd 1 3/9/2011 2:11:04 PM TUTORIAL NGINX Instalasi Nginx, PHP5, dan MySQL D alam menggunakan web server, tentu Anda lebih mengenal web server open source Apache dan web server milik Microsoft, yaitu IIS. Apakah Anda tahu bahwa ada salah satu web server open source pendatang baru yang juga berkembang pesat saat ini? Web server tersebut adalah Nginx atau dikenal dengan sebutan Engine X. Web server Nginx atau Engine X datang dari Rusia. Nginx sebagai pendatang baru sekarang ini menjelma menjadi web server yang harus diperhitungkan karena selama ini mempunyai tren positif yang tumbuh menjadi web server raksasa. Hal itu bisa kita lihat dari hasil survei tahun 2011 seperti yang tampak pada Gambar 1. Dari Gambar 1, pangsa pasar Nginx terlihat meningkat dalam statistik web server terbaik dengan memperoleh 0,88% atau 3,59 juta hostnames. Nginx sekarang mengendalikan 7,50% dari hostnames pada survei ini walaupun hanya 6,12% dalam satu juta situs terbaik. Sejumlah 2,4 juta dari hostnames tambahan di-host oleh Ecatel, yang Gambar 1. Statistik Web Server. 50 04/2011 INFOLINUX Tutorial yadi_04 edit nur3.indd 50 tampaknya telah bermigrasi dari Apache ke Nginx pada Januari lalu. Namun, pangsa pasar web server di dunia saat ini masih dipegang kuat oleh web server Apache yang menguasai 59,13% pasar dunia, sedangkan Microsoft IIS menempati urutan kedua dengan angka 21%, Nginx di urutan ketiga dan masih memegang 7,50% pasar dunia berdasarkan sumber dari www.netcraft.com. Nginx (baca: engine x) adalah server HTTP dan reverse proxy gratis berbasiskan open source berkemampuan tinggi yang dapat pula digunakan sebagai proxy IMAP/POP3. Software ini diciptakan oleh Igor Sysoev pada 2002 dan dirilis untuk kali pertama secara umum pada 2004. Saat ini, Nginx digunakan oleh sekitar 20,5 juta nama domain di seluruh dunia. Nginx terkenal karena performanya yang tinggi, stabil, memiliki banyak fitur, mudah dikonfigurasi, dan menggunakan hanya sedikit sumber daya pada server. Nginx adalah salah satu dari sebagian kecil software untuk server yang diciptakan untuk mengatasi masalah “C10K”. Tidak seperti software server umum lainnya, Nginx tidak bergantung pada pendekatan berulir atau proses berorientasi untuk melayani klien seperti web server Apache. Sebaliknya, Nginx menggunakan arsitektur asynchronous yang lebih stabil. Arsitektur asynchronous membutuhkan lebih sedikit memory dan yang lebih penting, Anda dapat memperkirakan kebutuhannya. Bahkan, jika tidak mengharapkan server Anda untuk mengatasi ribuan koneksi pada saat yang bersamaan, Anda masih dapat diuntungkan dengan pemakaian memory yang sedikit, tetapi berkemampuan tinggi. Nginx dapat digunakan dalam semua skala, mulai VPS kecil sampai dengan cluster server dalam jumlah besar. Web server Nginx telah digunakan oleh beberapa website ternama, seperti WordPress, Hulu, Github, Ohloh, SourceForge, dan TorrentReactor. Pra Instalasi Dalam tutorial ini, penulis menambahkan nama host server1.example. com dengan alamat IP 192.168.0.101 agar dapat menjalankannya pada web browser yang terhubung melalui jaringan. Pengaturan dapat Anda edit sesuai dengan alamat IP dan nama host yang Anda miliki. # nano /etc/hosts 127.0.0.1 localhost 192.168.0.101 server1.example.com www.infolinux.web.id 3/9/2011 2:18:37 PM TUTORIAL NGINX Gambar 2. Welcome Page. Gambar 3. Welcome Page. Selanjutnya, kita mulai melakukan peng-install-an dengan syarat komputer sudah terhubung dengan repository Ubuntu di Internet. Untuk mempermudah peng-install-an, ada baiknya Anda arahkan hak akses sebagai root dengan mengetikkan perintah berikut: $ sudo su Instalasi MySQL 5.0 Untuk meng-install MySQL, tikkan perintah: muncul karena aplikasi Nginx pada Linux Ubuntu 10.10, untuk default document root di /var/www, tetapi tidak ada halaman indeks di /var/ www. Dengan demikian, untuk menampilkan Welcome Page, Anda harus membuka /var/www/nginxdefault (merupakan default dokumen root untuk Nginx pada Ubuntu sebelumnya). Jadi, untuk membuka Welcome Page pada browser, Anda tikkan http://192.168.0.101/ nginx-default/ di URL seperti yang tampak pada Gambar 3. # apt-get install mysql-server mysql-client Instalasi PHP5 Anda akan diminta untuk memberikan password untuk user root MySQL dan password ini berlaku untuk user root@localhost serta [email protected]. Jadi, kita tidak perlu menentukan password root MySQL secara manual nantinya. New password for the MySQL “root” user: <-- yourrootsqlpassword Repeat password for the MySQL “root” user: <-- yourrootsqlpassword Instalasi Nginx Selanjutnya, kita install aplikasi Nginx. Tikkan perintah di Terminal: # apt-get install nginx Selanjutnya, jalankan Nginx dengan perintah: service # /etc/init.d/nginx start Tik alamat IP web server atau nama host Anda ke dalam browser (misalnya http://192.168.0.101) dan Anda akan melihat halaman seperti yang tampak pada Gambar 2. Dari Gambar 2, tampak Anda mendapatkan masalah karena terdapat kalimat error 403 forbidden. Kalimat itu www.infolinux.web.id Tutorial yadi_04 edit nur3.indd 51 Kita bisa membuat PHP5 bekerja di Nginx dengan PHP-FPM. PHPFPM (FastCGI Proses Manager) merupakan implementasi alternatif PHP FastCGI dengan beberapa fitur tambahan yang berguna untuk situs dari berbagai ukuran, khususnya situs yang sibuk. Fitur-fitur tambahan tersebut meliputi: proses pembuatan adaptif (Baru!), statistik dasar (ala Apache’s mod_ status) (Baru!), manajemen proses tingkat lanjut dengan fungsi stop/start yang baik, memiliki kemampuan untuk bekerja dengan uid/gid/chroot/environment dan php.ini yang berbeda (menggantikan safe_mode), stdout & stderr logging, restart darurat dalam keadaan opcode cache yang rusak, dukungan upload lebih cepat, dukungan untuk “slowlog”, peningkatan pada FastCGI, seperti fastcgi_request(), fungsi khusus untuk menyelesaikan permintaan dan membersihkan data, sementara melakukan sesuatu yang memakan waktu lama (mengonversi video, pengolahan statistik, dll.). Selanjutnya, tikkan perintah berikut di Terminal linux: # apt-get install php5-FPM Catatan: PHP-FPM merupakan proses daemon (dengan script init di /etc/ init.d/php5-fpm) yang berjalan di server FastCGI pada port 9000. Konfigurasi Web Server Nginx Setelah peng-install-an Nginx selesai, kita melakukan beberapa konfigurasi pada Nginx sebagai berikut. Pertama adalah melakukan pengeditan di /etc/nginx/nginx.conf. Tikkan perintah di Terminal Linux: # nano /etc/nginx/nginx.conf [...] worker_processes 5; [...] keepalive_timeout 2; [...] Kedua adalah meningkatkan jumlah worker processes dan mengatur keepalive_timeout ke nilai yang wajar (ini hanya opsi, bisa Anda sesuaikan atau tetap seperti default-nya). Ketiga adalah melakukan pengeditan pada Virtual Host(vhost). Default vhost tersebut didefinisikan pada file /etc/nginx/sites-available/ default lalu kita ubah dan definisikan di bagian server {…}. Tikkan perintah di Terminal Linux: # nano /etc/nginx/sites-available/default [...] server { listen 80; ## listen for ipv4 listen [::]:80 default ipv6only=on; ## listen for ipv6 INFOLINUX 04/2011 51 3/9/2011 2:19:47 PM server_name _; files, if Apache’s document root # concurs with nginx’s one access_log /var/log/nginx/ # localhost.access.log; location ~ /\.ht { location / { } deny root /var/www; index index.php index.html all; } [...] index.htm; Keterangan yang Dimodifikasi } location /doc { root /usr/share; autoindex on; allow 127.0.0.1; deny all; } location /images { root /usr/share; autoindex on; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /var/www/nginx- default; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { #proxy_pass http://127.0.0.1; Server_name _; membuat ini sebagai default catchall vhost (tentu saja Anda juga dapat menentukan hostname di sini, seperti www.example. com). Di location atau bagian ini, kita tambahkan index.php ke baris index. root /var/www; yang berarti bahwa dokumen root adalah direktori /var/www. Bagian penting untuk PHP adalah pada bagian location ~ \.php$ {}. Hilangkan tanda pagar(#) untuk mengaktifkannya. Pastikan Anda mengubah baris fastcgi_param SCRIPT_FILE NAME /scripts$fastcgi_script_name; (ganti /script menjadi /var/www atau ubah dengan root dokumen vhost Anda) karena jika tidak, penerjemahan dari PHP tidak akan menemukan script PHP yang Anda hubungkan pada browser Anda. Pastikan ada beberapa ruang atau spasi antar-include dan fastcgi_ params; yang pada file default (in cludefastcgi_params) ini ditulis sebagai satu kata yang merupakan kesalahan atau bug. Sekarang, simpan file tersebut dan restart web server Nginx: # /etc/init.d/nginx restart #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 Sekarang, membuat file PHP berikut di document root /var/www: # nano /var/www/info.php # location ~ \.php$ { <?php fastcgi_pass 127.0.0.1:9000; phpinfo(); fastcgi_index index.php; ?> fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name; include fastcgi_params; } # deny access to .htaccess 52 04/2011 INFOLINUX Tutorial yadi_04 edit nur3.indd 52 Jalankan file tersebut pada browser (misalnya http://192.168.0.101/ info.php) seperti yang tampak pada Gambar 4. pada Gambar 4, Anda lihat PHP5 sudah bekerja dan bekerja Gambar 4. Informasi modul PHP. melalui FPM/FastCGI seperti ditunjukkan pada baris Server API. Jika Anda scroll atau turunkan ke bawah, Anda akan melihat semua module yang telah diaktifkan di PHP5. MySQL tidak terdaftar di sana yang berarti kita tidak memiliki dukungan MySQL pada PHP5. Untuk mendapatkan dukungan MySQL di PHP5, kita dapat menginstall paket php5-mysql. Untuk mengetahui paket apa saja yang perlu ditambahkan, Anda dapat mengetikkan perintah sebagai berikut: # apt-cache search php5 Lalu, pilih yang Anda butuhkan dan meng-install-nya seperti berikut: # apt-get install php5-mysql php5curl php5-gd php5-idn php-pear php5imagick php5-imap php5-mcrypt php5memcache php5-mhash php5-ming php5ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-json Sekarang, restart PHP-FPM sebagai berikut: # /etc/init.d/php5-fpm restart Sekarang, reload http://192. 168.0.101/info.php di browser Anda dan scroll atau turunkan ke bawah ke bagian module lagi. Sekarang, Anda menemukan banyak module baru di sana, termasuk module MySQL. Setelah selesai meng-install dan mengonfigurasi web server Nginx, PHP5, dan MySQL, Anda tinggal membuat dan menempatkan website Anda pada web server Nginx. Akhir kata, selamat mencoba! Yuliadi [[email protected] www.infolinux.web.id 3/9/2011 2:19:52 PM Beberapa Contoh Penggunaan Bzip2 Pada penjelasan di atas, Anda sudah mengetahui sepintas mengenai bzip2 dan apa kegunaan dari bzip2. Pada contoh di bawah ini, kita akan mencoba menjalankan perintah dalam menggunakan bzip2. Kompresi dan unkompresi data atau file. Dengan menambah opsi “-k“, file asli tidak terhapus saat dikompres. $ bzip2 file $ bzip2 -k file $ bunzip2 file.bz2 Tip&Trik Kompresi Data dengan Bzip2 Seorang system administrator atau yang berkecimpung di dunia IT pasti sangat sering berurusan dengan kapasitas hard disk yang sudah tidak memadai untuk menyimpan data. Jika mengalami kasus seperti ini, Anda dapat melakukan backup data ke media CD atau ke media penyimpanan eksternal lainnya. Alternatif lainnya, Anda dapat melakukan kompresi untuk sejumlah data yang sudah jarang diakses sehingga dapat menghemat kapasitas hard disk. Salah satu aplikasi kompresi data di Linux yang cukup mumpuni untuk melakukan kegiatan ini adalah bzip2. Bzip2 merupakan perintah di Linux yang dapat digunakan untuk melakukan kompresi dan unkompresi file. Kelebihan utama dari bzip2 ada pada ukuran file kompresi yang dihasilkan. Ukuran file kompresi dalam format bzip2 lebih kecil daripada file kompresi dalam format gzip maupun zip dengan menyisakan ruang hard disk sekitar 30-40 % . Untuk melihat versi aplikasi bzip2 yang terdapat pada sistem, Anda dapat menggunakan perintah berikut. $ bzip2 --version bzip2, a block-sorting file compressor. Version 1.0.5, 10-Dec-2007. Memperbaiki kerusakan atau corrupt pada file bzip2. $ bzip2recover file.bz2 Copyright (C) 1996-2007 by Julian Seward. Sintaks bzip2. bzip2 [ -cdfkqstvzVL123456789 ] [ filenames ... ] bunzip2 [ -fkvsVL ] [ filenames ... ] Mencari data dari file dalam format bzip2 tanpa harus diekstrak, menggunakan bzgrep, seperti perintah “grep“. $ bzgrep -e “syahril” file.bz2 Membaca file bzip2 menggunakan bzcat tanpa harus diekstrak. $ bzcat file.bz2 Melihat isi file bzip2 (halaman demi halaman) menggunakan bzless dan bzmore. $ bzmore file.bz2 $ bzless file.bz2 Membandingkan dua file bzip2 secara byte demi byte menggunakan bzcmp sama seperti perintah “cmp”. $ bzcmp file.txt.001.bz2 file.txt.002. bz2 Mencari perbedaan dari dua file bzip2 secara baris demi baris menggunakan bzdiff sama halnya dengan perintah “diff“. $ bzdiff file.txt.001.bz2 file. txt.002.bz2 Yuliadi [[email protected]] www.infolinux.web.id 54_Tip&Trik_04 edit rosi.indd 53 INFOLINUX 04/2011 53 3/10/2011 11:44:01 AM WORKSHOP APLIKASI Menggunakan Screenshot Desktop Shutter Anda yang berkecimpung di dunia IT pasti pernah menggunakan screenshot desktop untuk membuat karya tulis, biasanya dengan aplikasi Ksnapshot, Take Screenshot, dan menggunakan tombol print screen. Ada satu aplikasi screenshot yang kaya akan fitur dengan kualitas image yang tinggi dan dilengkapi dengan plugin-plugin yang unik, yaitu Shutter. $ sudo add-apt-repository ppa:shutter/ppa Biarkan beberapa saat hingga ppa untuk shutter terbuat. Setelah itu, lakukan update system dengan perintah, $ sudo apt-get update Kemudian, install Shutter dengan perintah, $ sudo apt-get install shutter Sekilas mengenai Shutter Menggunakan Shutter Shutter (sebelumnya dikenal sebagai GScrot) adalah GTK + 2.0 frontend sederhana untuk scrot, ditulis dalam program Perl oleh Mario Kemper dan Shutter Team (http:// shutter-project.org/) yang bersifat Free/Open Source Sofware (FOSS) dengan lisensi di bawah GPL. Shutter berfungsi mengambil screenshot pada area desktop lalu menyimpannya dalam bentuk image atau gambar. Tidak sekadar menyimpan area desktop, aplikasi ini juga dapat mengedit gambar dan menambahkan segala macam efek seperti layaknya aplikasi grafis seperti GIMP. Beberapa fitur Shutter adalah sebagai berikut: mengambil screenshot desktop secara lengkap berdasarkan area maupun menangkap website, mengambil screenshot secara langsung atau dengan delay waktu, menyimpan screenshot ke direktori tertentu, menghasilkan thumbnail yang cepat ketika Anda mengambil screenshot dan mengatur tingkat ukuran (dengan %), Shutter juga diintegrasikan sepenuhnya untuk Gnome Desktop, meng-upload file langsung ke image-hosters (misalnya http://ubuntu-pics.de), mengambil semua link yang dibutuhkan dan membaginya dengan orang lain, mengedit screenshot Anda secara langsung dengan Shutter DrawingTool, hasil gambar dapat di simpan dalam berbagai macam format, dapat di-print dan di-export dalam bentuk PDF maupun Postscript(ps). Kini saatnya kita mengeksplorasi aplikasi Shutter. Berikut tahap penggunaannya. Dari desktop Ubuntu, pilih Applications | Accesories | Shutter. Akan tampil halaman utama Shutter seperti tampak pada gambar berikut. Pengembangan Shutter selalu up to date dengan menambah fitur-fitur terbaru dan selalu melakukan perbaikan-perbaikan sehingga pengguna lebih nyaman dalam pemakaian aplikasi ini. Rilis terbaru Shutter saat tulisan ini disusun adalah versi 0.87. 1 Seperti tampak pada Gambar 1, jendela utama Shutter terdiri atas berbagai pilihan, yaitu: Selection, menggunakan kursor mouse untuk menyeleksi bagian-bagian area jendela desktop mana yang benar-benar Anda butuhkan. Desktop, mengambil gambar penuh pada area desktop dan mendukung pengaturan multimonitor. Window, menggunakan kursor mouse dengan cukup menyoroti area desktop yang Anda butuhkan. Active Window, mengambil area gambar pada jendela desktop yang sedang aktif. Section, hanya menangkap bagian-bagian area jendela desktop Anda. Menu, menangkap area gambar khusus pada area menu file. Tooltip, menangkap area gambar khusus pada area tooltip (petunjuk penggunaan aplikasi). Web, menggunakan gnome-web-photo untuk menangkap website dengan link URL tanpa harus membuka jendela pada browser Anda. Selain jendela utama Shutter, kita pun dapat menggunakan icon tray seperti tampak pada gambar berikut. Instalasi Shutter Untuk melakukan instalasi Shutter di Ubuntu, arahkan repository ke Internet. Kemudian, tambahkan Ubuntu PPA repository untuk menginstalasi Shutter versi ter-update dengan mengetikkan baris berikut ini pada Terminal. 54 04/2011 INFOLINUX Workshop aplikasi_04_Edit_Yadi edit nur2.indd 54 www.infolinux.web.id 3/9/2011 2:43:41 PM WORKSHOP APLIKASI Selanjutnya, kita coba menggunakan Shutter untuk mengambil screenshot secara full screen. Klik tab Desktop pada jendela Shutter lalu klik mouse dengan mengarahkannya ke area desktop. Biarkan beberapa saat sampai Shutter sepenuhnya mengambil screenshot Anda (dengan default delay waktu selama lima detik dan otomatis file tersimpan dengan format .png). Anda juga bisa mengatur delay waktu, mengedit penyimpanan file, dan mengedit bentuk format selain .png dengan mengubah pada tab Edit | Preferences kemudian pada tab Main, Anda atur sesuai yang Anda inginkan. 2 Hasil gambar kita manipulasi dengan plugin Shutter. Pada versi 0.87, Shutter memiliki 20 jenis plugin yang berbeda. Semua plugin tersebut dapat digunakan untuk memberikan efek khusus pada gambar yang Anda ambil. Kedua puluh plugin tersebut antara lain untuk memberikan tulisan copyright, memberikan efek bayangan pada gambar, memasukkan efek cat air, efek kertas robek, membuat refleksi dari gambar dengan bentuk 3D, mengubah warna background pada gambar, mengubah rotasi dalam bentuk 3D, mengubah ukuran gambar dengan ukuran yang dikehendaki, membuat gambar menjadi polaroid, dan banyak lagi. Untuk menjalankan setiap plugin, cukup klik kanan pada layar lalu pilih Run a plugin atau menggunakan tombol shortcut [Ctrl + Shift + P]. Salah satu contoh gambar dengan memberikan efek polaroid seperti berikut. Selain memberikan efek dengan plugin, kita pun dapat dengan mudah mengedit hasil gambar tanpa harus menggunakan bantuan aplikasi editor grafis lain seperti GIMP. Fitur pada Shutter tidak selengkap aplikasi GIMP, tetapi memiliki manfaat tool yang dapat kita gunakan, seperti menambahkan teks, tanda panah (arrow), menyisipkan tanda kotak (rectangle dan ellipse) untuk keterangan pada area gambar, mengubah warna font, censor atau pixelize untuk menyembunyikan data pribadi (seperti menyembunyikan alamat IP address atau e-mail), menambahkan penomoran angka secara otomatis (seperti saat menulis langkah demi langkah panduan pada area gambar dengan penomoran), dan menggunakan crop untuk mengambil area gambar yang Anda butuhkan. Untuk penggunaan, pada jendela Shutter, kita klik tab Edit lalu akan tampil Shutter DrawingTool. Selanjutnya, Anda manfaatkan beberapa tool yang terdapat di Shutter DrawingTool, seperti tampak gambar berikut. 4 3 Pada aplikasi Shutter, selain hasil gambar dalam format .png, kita pun dapat mengekspor hasil gambar ke bentuk PDF maupun bentuk PostScript(ps) dan mempunyai fasilitas print secara langsung. Pada jendela Shutter, klik tab File dan Anda pun dapat memilih hasil penyimpanan screenshot desktop Anda. 5 Selamat mencoba dan tetap berusaha. “Jangan Menyerah”, kata D’Masiv. Yuliadi [[email protected]] www.infolinux.web.id Workshop aplikasi_04_Edit_Yadi edit nur2.indd 55 INFOLINUX 04/2011 55 3/9/2011 2:43:58 PM WORKSHOP GRAFIS Membuat Glass ORB 3D Tutorial ini membahas pembuatan objek Glass ORB 3D dengan tujuan memahami pembuatan objek becahaya yang memanfaatkan fasilitas manipulasi warna gradasi. Buatlah sebuah objek lingkaran dan beri warna merah tanpa Stroke. Gunakan kombinasi tombol CTRL + drag mouse untuk membentuk lingkaran yang sempurna. 1 Kemudian, aktifkan panel Fill and Stroke dengan mengklik icon Fill and Stroke atau tekan kombinasi tombol CTRL + SHIFT + F. Panel Fill and Stroke akan tampil di bagian kanan aplikasi Inkscape. 2 Beri warna Linear gradiasi pada lingkaran tersebut, pastikan bahwa warna terang berada di bagian atas. Geser ke atas juga node berbentuk kotak di bagian bawah objek, agar sisi bawah objek terlihat lebih gelap. Lakukan langkah seperti langkah nomor 7 pada objek lingkaran yang telah ada untuk memberi “alas” berwarna putih. 9 Duplikasi objek berwarna #C87137 yang telah diatur gradasi warnanya tadi. Posisikan di bagian paling belakang dari semua objek, perbesar ukurannya sebagaimana langkah nomor 8 sehingga berukuran sedikit lebih besar dari objek sebelumnya. 10 Selanjutnya, klik tab Fill dan klik icon Linear Gradient. 3 4 Aktifkan Pick Tool, kemudian klik icon Rotate Left untuk memutar objek lingkaran ke kiri sebesar 90° sehingga gradasi warnanya berada dalam arah vertikal. Aktifkan tool Edit Node untuk mengatur lebih lanjut gradasi warna pada objek kemudian tarik node atas yang berbentuk lingkaran putih kecil sedikit ke atas. Node tersebut akan menjadi berwarna biru jika Anda mengekliknya. Supaya pengaturan pergeseran node tersebut lebih mudah, gunakan kombinasi tombol SHIFT + geser node atau non-aktifkan icon Snap Nodes or Handles. 5 Duplikasi objek tersebut dengan menekan kombinasi tombol CTRL + D, beri warna putih. Klik icon Pick Tool dan klik icon Lower to Bottom atau Lower One Step untuk memindahkan hasil duplikasi objek ke posisi belakang objek lingkaran sebelumnya. Adanya latar putih di bagian belakang, akan memberikan kesan bercahaya pada objek tersebut. Kita akan menampilkan objek lain yang berwarna gelap di belakang objek lingkaran tersebut. Jika sebelumnya tidak “dialas” dengan warna putih, objek lain ini akan mempengaruhi efek gradien dari objek lingkaran sehingga kelihatan kurang bagus (tidak tampak efek cahayanya). Putar 180° objek lingkaran ini dengan mengklik icon Flip Vertical. Duplikasi objek ini, beri warna putih dan tempatkan di posisi paling belakang dari semua objek. 11 Buatlah objek elips berwarna putih dan letakkan di posisi atas dalam objek lingkaran pertama. Atur gradasi warnanya dengan Linear Gradient hingga transparasi berada di bawah dan Anda memperoleh hasil akhir sebagaimana tampilan berikut. 12 6 Bentuk Alternatif: 1. Mengubah posisi dua objek lingkaran paling belakang sehingga memiliki gradasi warna yang berlawanan dengan gambar yang kita buat sebelumnya. 2. Mengubah dan mengatur tipe warna Linear Gradient menjadi Radial Gradient di objek lingkaran tengah. Duplikasi lagi objek lingkaran tersebut dan posisikan di bagian paling belakang. Beri warna yang berbeda misalnya #C87137. 7 Perbesar ukuran objek hasil duplikasi dengan cara menekan kombinasi tombol CTRL + SHIFT + drag salah satu panah sisi (atau) hingga berukuran sedikit lebih besar dari objek lingkaran pertama. 8 56 04/2011 INFOLINUX Workshop grafis_04_EditZaky edit rosi.indd 56 Aji [[email protected]] www.infolinux.web.id 3/9/2011 3:13:14 PM WORKSHOP GRAFIS Membuat Tetes Air (Embun) Atur transparasi dan blur pada objek hasil pemotongan dengan nilai blur 9,0 dan transparasi 50,0 atau sesuaikan dengan selera mata Anda. Tutorial ini membahas pembuatan tetes air (embun) untuk memahami penggunaan efek gradasi warna. 7 Buatlah objek segi empat berwarna hijau (#008000). Anda juga dapat membuat bentuk lain, misalnya lingkaran. Objek ini akan digunakan sebagai latar dari tetes air/embun yang akan kita buat. 8 1 Buatlah objek berbentuk elips berwarna putih di atas segi empat tersebut. 2 3 Klik objek elips, duplikasi, lalu beri warna yang berbeda pada kedua objek. Objek duplikasi kedua berwarna hitam dan tempatkan di belakang objek duplikasi pertama yang berwarna 50% gray. Atur ukuran dan posisi objek duplikasi kedua sehingga sedikit keluar ke kanan dari area elips seperti gambar berikut. Atur warna gradasi dengan mengklik icon Linear Gradient pada panel Fill and Stroke (tekan tombol CTRL + SHIFT + F untuk mengaktifkan panel ini) dan atur posisi garis gradient warna sebagaimana gambar berikut. Klik icon Pick Tool, kemudian atur parameter warna pada tab Stroke Paint (R=0, G=100, B=0 dan A=255) dan ketebalan garis tepi pada tab Stroke Style sebesar 0,300. 4 Tekan tombol SHIFT + klik objek duplikasi berwarna gray, tekan CTRL + - atau klik menu Path > Difference untuk memotong objek berwarna hitam, serta atur transparasinya menjadi 25% sebagaimana gambar berikut. 9 Duplikasi objek tersebut dan beri warna hitam (black), duplikasi lagi, lalu beri warna yang berbeda (misalnya 50% gray). Geser posisi objek elips gray ini sedikit ke kanan bawah kemudian seleksi kedua objek elips hasil duplikasi ini. 5 Tekan tombol CTRL + - atau klik menu Path > Difference. 6 10 Pada posisi atas objek elips, buat lingkaran kecil berwarna putih dengan transparasi 80% hingga 90%. Grup seluruh objek kecuali kotak latar. Perkecil ukurannya dan duplikasi sebanyak mungkin hingga Anda mendapatkan hasil yang Anda inginkan. 11 Aji [[email protected]] www.infolinux.web.id Workshop grafis_04_EditZaky edit rosi.indd 57 INFOLINUX 04/2011 57 3/9/2011 3:13:37 PM WORKSHOP OFFICE Hitung Sel Khusus Sesuai dengan Kriteria Untuk menyaring data dari sebuah tabel dengan syarat yang diletakkan pada range lain, Anda dapat menggunakan fungsi DCOUNT(). lebih dari 5000. Cukup ketikkan “Sayur” di bawah kolom Kelompok, dan “<=5000” di bawah kolom Harga. DCOUNT() adalah fungsi yang berguna untuk menyaring sejumlah sel yang memuat data numerik sesuai kriteria dari sekumpulan data dalam sebuah daftar. Format penulisan fungsi DCOUNT() adalah sebagai berikut: 1 =DCOUNT (database, field, criteria) Keterangan: Database: range data yang akan diambil atau diolah datanya. Field: kolom mana yang akan dicari. Criteria: kriteria yang akan digunakan oleh fungsi untuk memilih beberapa record yang dipakai untuk melakukan perhitungan. Untuk memperoleh hasil, pada sel B17 ketikkan formula sebagai berikut: 5 =DCOUNT(A3:D12,D14,A14:D15) Untuk memahami fungsi DCOUNT(), buat daftar worksheet seperti gambar berikut. 2 3 4 Copy-kan sel A3:D3 dan letakkan di A14:D14. Langkah berikutnya, buat kriteria yang akan diletakkan di bawah judul kolom di baris 15. Misalnya, Anda ingin menghitung berapa sayuran yang harganya tidak Pada sel B17, akan didapat nilai 2 untuk kriteria jumlah sayuran yang harganya tidak lebih dari 5000. Supriyanto [[email protected]] Pengenalan Dasar Fungsi HLOOKUP() Fungsi HLOOKUP() digunakan untuk mencari data pada tabel yang berbentuk horizontal atau ke arah baris. Pada sel B7, ketikkan formula: 4 =HLOOKUP ($A$7,A1:F3,2,0) Berikut adalah format penulisan fungsi VLOOKUP(): 1 =HLOOKUP(field_kunci, range_tabel, nomor_baris, tingkat_ Pada sel B7 akan didapat nilai hasil penjualan Team D. ketepatan) Pada sel C7, ketikkan formula: Kali ini, akan dibuat latihan untuk mencari data jumlah penjualan serta biaya penjualan yang dikeluarkan oleh suatu team penjualan. Pertama, buat tabel dengan isi data seperti gambar berikut: 2 Pada sel A7, ketik nama team yang dicari. Pada contoh ini diketikkan “Team D”. 3 58 04/2011 INFOLINUX Workshop_office_supri_04_EditZaky_ok edit rosi.indd 58 5 =HLOOKUP ($A$7,A1:F3,3,0) Sel B7 akan terdapat nilai biaya penjualan Team D. Supriyanto [[email protected]] www.infolinux.web.id 3/9/2011 2:37:51 PM WORKSHOP OFFICE Hitung Sel Menggunakan Dua Kriteria Selain dapat digunakan untuk menyaring data dari sebuah tabel yang diletakkan dalam sebuah baris, kita juga dapat menggunakan DCOUNT() untuk membuat dua kriteria yang diletakkan dalam dua baris. Pada contoh sebelumnya, kita sudah mempelajari fungsi DCOUNT() untuk menghitung berapakah sayuran yang harganya tidak lebih dari 5000. Selain dapat digunakan untuk mencari data pada suatu kelompok dengan menggunakan satu kriteria, kita juga dapat menggunakan fungsi DCOUNT() untuk mencari data dari beberapa kriteria. Pada contoh ini, kita akan melakukan perhitungan sejumlah data dengan menggunakan dua kriteria. 1 Untuk contoh data yang digunakan, buat daftar worksheet seperti gambar berikut. 2 Buat kriteria untuk mencari harga sayur yang harganya lebih dari 5000 pada baris 15, dan buat kriteria untuk mencari harga buah yang harganya lebih dari 8000 pada baris 16. Untuk melakukan hal ini, cukup ketikkan “Sayur” di sel B15 dan “Buah” di sel B16, serta “>5000” di sel D15 dan “>8000” di sel D16. 3 Untuk mencari harga sayur yang >5000 dan harga buah yang >8000, cukup ketikkan formula berikut pada sel B17. 4 =DCOUNT(A3:D12,D14,A14:D16) Pada sel B17 akan didapat nilai 2 untuk kriteria jumlah sayuran yang harganya >5000 dan buah yang harganya >8000. 5 Supriyanto [[email protected]] Pengenalan Dasar Fungsi VLOOKUP() Fungsi VLOOKUP() digunakan untuk menemukan data yang cocok dengan field_kunci yang selanjutnya menampilkan isi field dari kolom yang disebutkan nomornya. Format penulisan VLOOKUP() yaitu sebagai berikut: 1 =VLOOKUP (field_kunci, range_tabel, nomor_kolom, tingkat_ketepatan) Untuk memahami fungsi VLOOKUP, buat tabel dengan isi datanya seperti terlihat pada gambar berikut: 2 4 Untuk menampilkan informasi nama barangnya, pada sel B2 ketikkan formula berikut: =VLOOKUP($B$1,$A$7:$D$18,2,0) 5 Untuk menampilkan informasi harga, pada sel B3 ketikkan formula berikut: =VLOOKUP($B$1,$A$7:$D$18,3,0) 6 Pada sel B1, ketikkan nomor seri dari produk yang ingin Anda ketahui informasinya. 3 www.infolinux.web.id Workshop_office_supri_04_EditZaky_ok edit rosi.indd 59 Untuk menampilkan informasi berapa jumlah barangnya, pada sel B4 ketikkan formula berikut: =VLOOKUP($B$1,$A$7:$D$18,4,0) Supriyanto [[email protected]] INFOLINUX 04/2011 59 3/9/2011 2:37:55 PM WORKSHOP PROGRAMMING Jython: Python Simpan atau Bandingkan untuk platform Checksum Java Dalam workshop ini, kita akan membangun checksum. py, program yang akan mendapatkan MD5 hash dari file yang diberikan, menyimpan hash tersebut ke database, kemudian membandingkan kembali berdasarkan database tersebut. xxx all.append(abs) Noprianto [[email protected]] # if not all: return # Program membutuhkan beberapa module berikut. Untuk database, kita akan mempergunakan modul anydbm. 1 try: db = anydbm.open(DB, ‘c’) import sys except: import os print ‘fatal error’ import glob return import anydbm # try: for i in all: from hashlib import md5 if os.access(i, os.R_OK): except ImportError: md5sum = md5(open(i).read()).hexdigest() try: print ‘%s: %s’ %(i, md5sum) from md5 import new as md5 db[i] = md5sum except ImportError: else: print ‘:(‘ error.append(i) sys.exit(1) print ‘%s: error’ %(i) # Nama file database telah ditentukan, yaitu “checksum. dat”, yang tersimpan pada direktori aktif. 2 db.close() # DB = ‘checksum.dat’ print ‘-> Done, %d error(s)’ %(len(error)) if error: Apabila program dijalankan tanpa argumen, fungsi check() yang akan memeriksa checksum, akan dipanggil. Apabila tersedia argumen, fungsi update() yang akan mendapatkan/meng-update/menyimpan MD5 hash, akan dipanggil. 3 if __name__ == ‘__main__’: if len(sys.argv) == 1: check() else: update(sys.argv[1:]) Apa saja yang kita lakukan dalam fungsi update()? 4 def update(files): for i in error: print ‘ -> %s’ %(i) Penjelasan: Dapatkan setiap argumen yang dilewatkan, lakukan glob, dan bangun daftar file yang akan didapatkan MD5 hash (all). Apabila daftar tersebut (all) kosong, program dihentikan. Buka database untuk menyimpan nama file dan MD5 hash-nya. Untuk setiap file dalam daftar, apabila dapat dibaca, baca dan dapatkan MD5 hash. Kita tampilkan juga ke stdout selain menyimpan ke database: print ‘update’ md5sum = md5(open(i).read()).hexdigest() all = [] print ‘%s: %s’ %(i, md5sum) error = [] db[i] = md5sum # for i in files: temp = glob.glob(i) Agar lebih nyaman, kita dapatkan file yang gagal dibaca, sehingga namanya dapat ditampilkan di akhir. error.append(i) if not temp: print ‘%s: error’ %(i) print ‘skip: %s’ %(i) continue for j in temp: abs = os.path.abspath(j) if not abs in all: 60 04/2011 INFOLINUX Workshop pemograman_04_ edit nur.indd 60 Apa saja yang kita lakukan dalam fungsi check()? 5 def check(): www.infolinux.web.id 3/10/2011 11:23:51 AM WORKSHOP PROGRAMMING print ‘check’ error = [] $ python checksum.py /bin/l* /etc/shadow ./test # update /bin/link: a9fc601d93aa58abe01e1daa43a52d87 try: db = anydbm.open(DB) ... ... except: print ‘fatal error’ /etc/shadow: error return /home/user/workshop/python/checksum/test: a9d9a1e2c516bc 8bcba949a85ff6791d # -> Done, 1 error(s) if not db.keys(): -> /etc/shadow print ‘nothing to check’ return # for k,v in db.iteritems(): if not os.access(k, os.R_OK): error.append(k) Perhatikanlah bahwa ditemukan satu kesalahan yaitu /etc/shadow karena tidak dapat dibaca (hak akses). Di dalam direktori aktif, kini dapat ditemukan checksum.dat. else: md5sum = md5(open(k).read()).hexdigest() if md5sum != v: 7 Mari kita periksa kembali, apakah ada file yang berubah (diasumsikan tidak): error.append(k) $ python checksum.py print ‘%s: error’ %(k) check ... else: print ‘%s: OK’ %(k) ... # /bin/ln: OK db.close() /bin/loadkeys: OK # -> Done, 0 error(s) print ‘-> Done, %d error(s)’ %(len(error)) if error: for i in error: print ‘ -> %s’ %(i) 8 Mari kita ubah ./test dan periksa kembali: $ echo “apa kabar” >> test $ python checksum.py check Penjelasan: Buka database. Apabila tidak ditemukan isi, program dihentikan. Untuk setiap nama file yang berhasil didapatkan, kita periksa apakah file tersebut dapat diakses. Apabila gagal baca, akan dianggap kesalahan: if not os.access(k, os.R_OK): error.append(k) Apabila berhasil dibaca, kita dapatkan MD5 Hash saat ini dan bandingkan dengan nilai yang tersimpan dalam database. Apabila tidak sama, tambahkan dalam daftar kesalahan. ... /home/user/workshop/python/checksum/test: error ... -> Done, 1 error(s) -> /home/user/workshop/python/checksum/test Rupanya ada yang tidak cocok! Hal ini disebabkan karena MD5 hash untuk ./test telah berubah karena pengubahan sebelumnya. 9 Begitupun, kalau ada file yang tidak lagi ditemukan. Sebagai contoh, mari kita hapus ./test: $ rm -v test md5sum = md5(open(k).read()).hexdigest() removed `test’ if md5sum != v: $ python checksum.py error.append(k) check print ‘%s: error’ %(k) ... ... Terakhir, cetak daftar kesalahan apabila ada. -> Done, 1 error(s) -> /home/user/workshop/python/checksum/test Contoh update sejumlah file: /bin/l* /etc/shadow ./test. Sebelumnya, pastikan file ./test telah tersedia: 6 $ cat test halo www.infolinux.web.id Workshop pemograman_04_ edit nur.indd 61 10 Source code selengkapnya bisa didapatkan di DVD InfoLinux. Noprianto [[email protected]] INFOLINUX 04/2011 61 3/10/2011 11:23:54 AM WORKSHOP DISTRO Belajar Desain Grafis dengan UberStudent UberStudent 1.0 Cicero versi DVD yang disertakan dalam edisi 04/2011 ini merupakan distro Linux yang cukup lengkap digunakan untuk belajar, mengajar, dan penulisan atau riset. Workshop ini hanya mengupas sebagian keistimewaan UberStudent, terutama untuk desain grafis. UberStudent ini berbentuk Live-CD, sehingga Anda dapat menggunakannya untuk belajar tanpa harus menginstal ke hard disk. Kelengkapan program UberStudent 1.0 Cicero yang berbasis Ubuntu 10.04 LTS (Long-Term Support) ini sesuai dengan motto di website-nya yang berbasis Moodle e-Learning, “Lebih dari Sekadar Sistem Operasi”. Banyak hal menarik dari UberStudent, antara lain tersedia beragam link ke website untuk belajar, mengajar, dan berbagi pengetahuan. Karena keterbatasan halaman, workshop ini hanya mengupas dan memberikan trik pengelolaan file gambar. Gambar 1. Website UberStudent berbasis Moodle. Proses booting dan instalasi UberStudent tidak dibahas dalam workshop ini. Jika Anda menemui kesulitan dalam menginstalasi UberStudent, Anda dapat menanyakan masalahnya melalui milis majalah-infolinux@googlegroups. com atau langsung ke email penulis [email protected]. Apa yang Berbeda dan Bagaimana Mengubahnya? Aplikasi dan setting beberapa program di UberStudent ini tidak seperti yang biasa diterapkan sebagai bawaan (default) distro Linux umum. Saat pertama membuka file gambar berformat PNG dengan klik sekali atau dua kali ikonnya, Anda akan merasa asing karena tidak otomatis menjalankan program pembuka gambar. Klik file gambar PNG akan menjalankan Ardesia, program menggambar dan merekam layar secara bebas seperti Sketch Pad. Demikian pula klik file gambar JPG akan menjalankan Pinta, program sederhana untuk mengedit foto dan menggambar seperti Paint. Sedangkan umumnya Linux akan menjalankan program pembuka gambar (image viewer) ketika kita klik file PNG dan JPG. Berikut ini langkah- 1 62 04/2011 INFOLINUX Workshop distro_04_EditZaky_ok edit rosi.indd 62 langkah untuk tidak menggunakan Ardesia dan Pinta. Jika Anda ingin membuka gambar PNG dan JPG dengan image viewer, klik mouse kanan pada ikon file gambar PNG, lalu pilih Open With sesuai pilihan yang tersedia, atau Open With Other Application. Setelah muncul jendela seperti Gambar 2, pilih Image Viewer. Catatan: desktop Gnome Image Viewer biasanya menggu- Gambar 2. Membuka file dengan Open With Other Application. nakan program EOG (Eye of GNOME). Jika Anda tidak ingin menjalankan Ardesia ketika meng-klik file PNG atau JPG dan ingin otomatis menjalankan Image Viewer, Anda bisa mengeklik mouse kanan pada ikon file gambar PNG. Setelah muncul jendela seperti Gambar 3, klik bar Open Gambar 3. Mengubah default program untuk suatu file. With, lalu pilih Image Viewer. Kedua cara atau pilihan aplikasi default di atas juga dapat Anda gunakan untuk jenis-jenis file yang lain. Misalnya Anda punya file video flv, yang secara default akan dijalankan oleh Totem, Anda dapat mengubah menjadi default dibuka dengan VLC atau Xine. Ardesia untuk Presentasi dan Merekam Layar. Di satu sisi, Ardesia membuat pengguna pertama UberStudent kebingungan ketika membuka file PNG, di sisi lain Ardesia sangat berguna untuk presentasi melalui desktop dan merekamnya menjadi video berformat OGV (Ogg Vorbis untuk video). Ketika Anda klik file PNG, otomatis Ardesia dijalankan, kecuali Anda sudah mengubahnya seperti pembahasan sebelumnya. Berikut ini beberapa tip menggunakan Ardesia. Ardesia dapat dijalankan melalui menu Applications | Education | Research and Writing | Presentation | Ardesia. Jika Anda belum belajar Ardesia sebelumnya, Anda 2 www.infolinux.web.id 3/10/2011 12:39:27 PM WORKSHOP DISTRO bisa jadi kebingungan karena tidak dapat mengakses menu di layar. Setiap mouse digerakkan menghasilkan gambar. Untuk menampilkan layar, klik gambar kunci (lock) di ikon bagian bawah pada kumpulan ikon Ardesia di sisi kanan layar. Jika Visual Effect desktop Compiz belum diaktifkan, Anda tidak dapat menjalankan Ardesia. Klik gambar PNG akan menampilkan pesan kesalahan seperti Gambar 4. menambahkan tanda lingkaran dan teks seperti terlihat di Gambar 7. Pinta juga telah dilengkapi banyak tool atau alat membuat efek untuk merekayasa foto dan gambar. Gambar 7. Mengedit gambar dengan Pinta. Gambar 4. Ardesia memerlukan Compiz. Cara mengaktifkan Visual Effect, klik System | Look anda Feel | Appearance. Lalu klik bar Visual Effect dan pilih Normal (sebelum- Gambar 5. Mengaktifkan Visual Effect Compiz. nya None). Jika kartu grafis VGA komputer Anda belum mendukung 3D atau setting 3D-nya belum diaktifkan di UberStudent, Anda tidak bisa mengaktifkan Visual Effect, sehingga Ardesia tidak dapat dijalankan. Anda perlu mengubah default aplikasi pembuka file PNG dengan Image Viewer atau Pinta. Untuk merekam layar dengan Ardesia, klik ikon panah kanan di ikon paling bawah, lalu pilih Record dan ketikkan nama file yang akan berekstensi ogv. Untuk menghentikan perekaman klik kembali panah kanan itu lalu Gambar 6. Mengaktifkan Ardesia untuk merekam layar. pilih Stop atau Quit. Saat melihat hasil rekamannya, jika Anda tidak mengubah nama file dan direktori ketika mengaktifkan perekaman, file hasil rekaman tersimpan pada direktori /home/user/Desktop dengan nama file ardesiatanggal-jam.ogv. Klik pada file ogv akan menjalankan program pemutar video Totem. Pinta untuk Mengedit Foto dan Gambar. Jika Anda sudah biasa menggunakan Paint yang tersedia di Windows, Anda akan menemukan kemudahan yang sama ketika menggunakan Pinta. Secara default, Pinta dijalankan ketika Anda klik file gambar JPG, TIF, dan BMP. Pinta lebih ringan atau cepat dijalankan dan sederhana dibandingkan Gimp. Anda dapat membuka gambar atau paste gambar hasil print-screen dan mengeditnya secara cepat dan mudah, misalnya untuk Desktop Publishing. Salah satu kelebihan UberStudent adalah kelengkapan program untuk urusan Desktop Publishing atau DTP dan desain grafis lainnya. Semua program desain yang berhubungan dengan DTP atau desain grafis ini tersimpan dalam menu Applications | Graphics | Editor. Tiga aplikasi yang sangat berguna dalam kegiatan pracetak adalah Gimp untuk mengedit foto atau gambar bitmap, Inkscape untuk menggambar bebas atau membuat ilustrasi yang menghasilkan gambar vektor, dan Scribus untuk me-layout halaman yang dapat menghasilkan file pdf siap cetak. UberStudent juga menyertakan beberapa program pengolah file PDF, misalnya PDF Mod dan Whiteboard, selain Inkscape yang juga dapat digunakan untuk mengubah pdf menjadi teks atau mengedit isinya. PDF Mod berguna untuk mengedit halaman pdf, misal menyelipkan halaman pdf dan menyimpan kembali sebagai file PDF. Whiteboard berguna untuk mengedit isi PDF seperti kemampuan yang dimiliki Gimp, misal menambahkan teks atau gambar lalu menyimpannya sebagai pdf atau file gambar PNG, JPG, dan TIF. 4 3 www.infolinux.web.id Workshop distro_04_EditZaky_ok edit rosi.indd 63 Gambar 8. Whiteboard mengedit file pdf. Rusmanto [[email protected]] INFOLINUX 04/2011 63 3/10/2011 12:39:28 PM KUIS INFOLINUX Ingin mendapatkan hadiah VGA ZOTAC 8600GT 512MB? ASIARAYA COMPUTRONICS menyediakan 1 buah VGA ZOTAC 8600GT 512MB untuk 1 orang pemenang. Baca keterangannya di bawah ini. Caranya: Di antara susunan huruf dalam kotak di atas, tersembunyi beberapa nama distro Linux. Arah tulisan bisa berupa horizontal, vertikal, maupun diagonal dengan arah membaca bisa dari kiri ke kanan, kanan ke kiri, atas ke bawah, atau bawah ke atas. Termasuk kategori apakah beragam aplikasi yang tersembunyi pada gambar di atas? A. Multimedia B. Pendidikan C. Video Editor Kirimkan jawaban Anda melalui SMS (Short Message Service) dengan format: LINUX<spasi>04<spasi>[Jawaban A/B/C]<spasi>Nama Contohnya: LINUX 04 A Budi Santosa Kirimkan jawaban Anda melalui SMS ke 9333 (tarif Rp2000++/SMS berlaku untuk semua operator) atau melalui kartu pos yang dilengkapi kupon kuis yang terdapat pada halaman ini ke Kuis InfoLINUX, Jl. Kramat IV No. 11, Jakarta, 10430. SMS atau kartu pos diterima paling lambat 1 April 2011. Daftar pemenang akan kami umumkan pada InfoLINUX No. 06/2011. Pemenang harap menghubungi Sekretariat Redaksi InfoLINUX melalui telepon (021) 315-3731 ext. 127 atau e-mail ke evawani.putri@infolinux. co.id untuk verifikasi (tanpa verifikasi dan pengambilan hadiah hingga dua bulan semenjak pengumuman ini, hadiah dinyatakan hangus). Setelah verifikasi berhasil, pemenang yang berdomisili di Jabodetabek bisa mengambil hadiah di kantor Redaksi InfoLINUX setiap hari/jam kerja, SeninJumat, 9.30-16.30 WIB dengan menyerahkan kartu identitas yang masih berlaku. Hadiah bagi pemenang di luar Jabodetabek akan dikirim via pos 04/2011 (ongkos ditanggung pemenang). InfoLINUX tidak bertanggung jawab atas kerusakan atau kehilangan hadiah yang terjadi selama pengiriman. 64 Pemenang Kuis InfoLINUX Edisi 02/2011 Jawaban Edisi 02/2011: A. BackTrack Pemenang VGA CARD ZOTAC GEFORCE 8600 GT 512 1. Muhammad Azharuddin 04/2011 INFOLINUX 64_Kuis_04_EditZaky edit rosi.indd 64 081357221xxx www.infolinux.web.id 3/10/2011 2:49:40 PM Berlangganan Hemat Hubungi: Sirkulasi Pinpoint Publications (DPKU) Telp: (021) 4682-6816, 7079-6499 Fax: (021) 4682-8919 e-mail: [email protected] FORMULIR BERLANGGANAN DATA PRIBADI (Pilih dengan tanda dan isi dengan huruf kapital) Saya ingin berlangganan majalah InfoLINUX: NO. WILAYAH 1. PAKET LANGGANAN Jabodetabek HARGA LANGGANAN 6 Bulan (6 Edisi) Rp229.500 1 Tahun (12 Edisi) Rp432.000 Pulau Jawa 6 Bulan (6 Edisi) Rp240.000 (Jateng, Jabar, Jatim) 1 Tahun (12 Edisi) Rp450.000 3. Bali/Sumbar 1 Tahun (12 Edisi) Rp540.000 4. Sumut/Kalimantan/Sulawesi 1 Tahun (12 Edisi) Rp558.000 5. Indonesia Timur 1 Tahun (12 Edisi) Rp558.000 2. Nama Lengkap: Alamat: Fax: Cara Pembayaran: Transfer ke BCA Cabang Rawamangun a/n PT DIAN PASIFIK KOMUNIKASI UTAMA No. Rekening 094 303 3533 Bukti transfer & formulir ini harap di-fax ke (021) 4682-8919 Tanggal : ---------------------------------------------------------------------- Up. Bagian Langganan Tanda Tangan : langganan linux_04.indd 1 LUAR JAWA Medan: Pustaka Obor 061-4145622 • Pekanbaru: Jack 076127706 • Padang: Taman Bacaan 075135150 • Palembang: TB Sriwijaya 0711320679 • Jambi: Gloria 0741-23360, Elieson 0741-24424 • Bengkulu: TB Zaldy 0736-24291 • Pangkal Pinang: Supermini 0717-423973, Idris Hadi 0717424547 • Tanjungkarang: Tohoma 0721261839, Intisari 0721-64026 • Pontianak: Angkasajaya 0561-734689, Ridho 0561775843 • Balikpapan: TBTerang 0542421301, Antra 0542-396003 • Samarinda: Aziz 0541-260235, A.Terang 0541-741768 • Banjarmasin: Naprin Budhi 0511-65475 • Palangakaraya: Fathir 0536-28317 • Makasar: Telly 0411-321795, IndahJaya 0411-330707 • Kendari: TB Ade 040121613 • Palu: Ramedia 0451-421218, Masrun 0451-423805 • Manado: Lok Book Store 0431-852734 • Denpasar: Corsica 0361-226358, TB Anna 0361427594, Gunung Agung dan Gramedia • Mataram: Titian 0370-622188 • Kupang: Rapi 0380-832033 PULAU JAWA Cilegon: Torpedo Agc 0254-391460 • Serang: Estica Agc 0254-202292 • Bandung: Alphabet Agc 022-6006000, Gunaraya 022-4232513, Wahyudin Agc 022-6011414 • Garut: Monita Agc 0262-23479 • Tasikmalaya: Nasuha 0265-334064 • Indra mayu: Kompas Agc 0234-484032 • Cirebon: Cirebon Agc 0231-203376 • Tegal: Tegal News Agc 0283-356138 • Pekalongan: TB Rajamurah 285- 424463, Fajar Agc 0285-431466 • Semarang: Erlangga Agc 024 -8313405, Hartono Agc 024-3545301, Adila Agc 024-3560615, Hariani Agc 0243541832, TB Prasojo 024-569561 • Solo: TB ABC 0271-644345, Sendang Mulia Agc 0271-633751 • Yogyakarta: Hidup Agc 0274-587921-Lamhaba 0274-541808, Togamas, dan Gramedia • Magelang: TB Larista 0293-368060 • Purwokerto: TB ABC 0281-638344, SHS Agc 0281-622485 • Surabaya: Kantor Perwakilan 0318291511, Gunung Agung dan Gramedia • Malang: Yahya Oentoeng 0341-3410105 • Kediri: TB Alief 0354-684211 • Jember: TB Amanah, Gunung Agung TOKO BUKU JABOTABEK Kode Pos: Telepon: Mobile/E-mail: Mulai berlangganan Edisi: MAKIN DEKAT DENGAN ANDA ----------------------------------------------- Maruzen: Blok M 7268334, Sultan Agung 8307641 • Kharisma: Cijantung 87793375, Cinere 7534125, Cilandak 78840163, Taman Anggrek 5639343, Puri 5822629, Pamulang 7445019 Kalimalang 8601887, Klender 86605956 • Gramedia: Matraman 8581763, Pondok Indah 7506997, Pintu Air 3843800, Melawai 7203445, Gajahmada 2601234, Citraland 5606363, Pluit 6683620, Cinere 7540663, Bekasi 8840401, Bogor 0251356341 • Gunung Agung: Pondok Indah 7506901, Taman Anggrek 5639045, Citraland 5681512, Kwitang 3102004, Blok M 7209344, Arion 7413078, Atrium 3867831, Lokasari 6254730, Bogor 0251326876 • News Stand Niaga Tower 2505250 • Time PI 330434 • Newstand WTC Sudirman 5211216, Mandarin 5678888 • Trio 7982331 • JBC Kalibata 7970350 • CabangTB Utama 3/9/2011 1:55:35 PM InfoLINUX 05/2011 EDISI MENDATANG Terbit 4 April 2011 Aplikasi Modeling dan Animasi 3D NANTIKAN DEBIAN 6.0 Merancang Desain Rumah Sendiri Mengenal Web Server Cherokee Rumah adalah cerminan dari pemiliknya. Dengan aplikasi Sweet Home 3D, pemilik rumah dapat membuat desain kreatif rumah mulai dari desain bentuk rumah beserta isinya seperti seorang arsitek profesional. Cherokee merupakan salah satu web server yang cepat, fleksibel, mudah dikonfigurasi, dan mendukung banyak teknologi seperti FastCGI, PHP, dan CGI. Ingin mengenal Cherokee? Nantikan di edisi mendatang. Membuat 20 Label Kreatif Objek Lilin Menyala Membuat label dengan jumlah banyak di dalam satu halaman menggunakan LibreOffice Draw dengan mudah. Selain itu, desain label akan dibentuk secara kreatif dengan warna yang menarik mata yang melihatnya. Bereksperimen dengan aplikasi Inkscape untuk membuat sebuah objek real-look, yaitu sebuah lilin yang sedang menyala. Menggunakan gradasi warna, blur, dan transparancy dapat membuat objek tampak lebih nyata. Topik-topik pada edisi mendatang masih mungkin berubah. 66 04/2011 INFOLINUX 66_Next Issue_04_EditZaky edit rosi.indd 66 www.infolinux.web.id 3/10/2011 11:37:42 AM Fedora 12 Sistem Operasi dan Aplikasi Linux untuk Desktop, Server, & Jaringan Pandai menguasai distro Linux Fedora mulai dari aplikasi simpel, multimedia, keamanan, CMS, virtualisasi, jaringan intranet dan internet, serta konfigurasi wireless LAN. +1 CD Rp35.000 Panduan Praktis Membangun Server Mail, Qmail, dan Squirrelmail Bagi yang ingin mengetahui cara meng-install dan mengonfigurasi server e-mail Qmail, dan webmail Squirrelmail, Anda harus membeli buku ini! +1 CD Rp35.000 Desain 3D, Optimalisasi Fitur Photoshop CS2 Kuasai teknik-teknik membuat objek desain 3D, dengan menggunakan aplikasi Photoshop CS2. Pelajari buku ini, dan Anda akan dapat membuat desain 3D. +1 CD Rp40.000 Mandriva 2010 Sistem Operasi Komputer Desktop & Server Buku lengkap yang membahas Linux Mandriva 2010 berikut penggunaan aplikasi desktop yang ada di dalamnya untuk aktivitas perkantoran, multimedia, grafis, internet, dan server jaringan. +1 CD Mandriva Linux 2006 Gunakan distro Mandriva Linux 2006, dalam aktivitas seharihari di kantor, penggunaan internet dan multimedia di warnet, kegiatan pendidikan, maupun untuk di rumah. +3 CD Rp40.000 Desain 3D, Optimalisasi Fitur Corel Draw 12 Praktikkan membuat objek 3D, dengan menggunakan software vektor 2D. Pahami materi buku ini, dan Anda akan mengetahui wawasan baru tentang desain grafis. +1 CD Rp40.000 Rp30.000 Fedora Core 5 Alternatif distro Linux OS, yang dapat Anda pilih sebagai aplikasi komputer desktop yang lengkap. Distro ini pun dapat dikonfigurasikan sebagai server jaringan. +1 DVD Rp45.000 Teknik Seleksi Foto Dengan Photoshop CS2, Seri 1 Buku ini mengulas teknik-teknik dasar menyeleksi objek, dengan menggunakan beragam tool di Photoshop CS2. Modal awal yang bermanfaat, untuk menghasilkan desain yang menarik. +1 CD Rp35.000 OpenSUSE 11.2 Linux untuk Desktop & Server Buku Linux yang mengulas tentang distro openSUSE mulai dari instalasi hingga mahir sebagai administrator sistem dengan YaST2. Juga dibahas mengenai aplikasi multimedia, jaringan, dan server. +1 CD Rp40.000 Panduan Praktis Debian GNU/ Linux 3.1 Setelah membaca buku ini, diharapkan Anda bisa bekerja dengan sistem Debian GNU/Linux, sesuai dengan kebutuhan. +1 CD Rp45.000 Teknik Seleksi Foto Dengan Photoshop CS2, Seri 2 Pertajam kemampuan Anda dalam menyeleksi image, untuk membuat objek yang lebih detail, dan lebih kompleks lagi. +1 CD Rp35.000 Menguasai PowerPoint 2003 Ungkap tip dan trik menguasai aplikasi ini, untuk membuat presentasi yang menarik, efektif, dan efisien.Temukan rahasianya, dengan membaca buku ini. +1 CD Rp35.000 HTML 4 Blackbox, Membuka Keajaiban HTML 4 Raih keajaiban dari HTML 4, sehingga Anda dapat menguasai struktur HTML, bagian tubuh HTML, dan sekilas mengenai aplikasi editor kode HTML dan browser. +1 CD Rp45.000 Informasi & Pesanan Langsung, hubungi : Prima Buku “Layanan Pesan Antar Buku”, Jl. Rawa Girang I no. 8, Kawasan Industri Pulogadung, Jakarta Timur Telp: (021) 4682-6816, SMS: 0813-115-23230, Fax: (021) 4682-8919, E-mail: [email protected] 1. Untuk wilayah JABODETABEK (Jakarta, Bogor, Depok, Tangerang, Bekasi), nilai pesanan Rp100.000,-, mendapatkan diskon 10%. 2. Setiap pemesanan disesuaikan dengan tarif kurir. 3. Untuk wilayah JABODETABEK, PEMBAYARAN DAPAT DILAKUKAN secara TUNAI DI TEMPAT. Untuk wilayah di luar JABODETABEK, PEMBAYARAN DILAKUKAN dengan TRANSFER via BANK BCA Cabang RAWAMANGUN, atas nama: PT DIAN PASIFIK KOMUNIKASI UTAMA, No. Rek: 094 303 3533. Bukti transfer di-fax ke: (021) 4682-8919. iklan buku (PC1633-PR1-0910).indd 3 11/3/2010 2:55:32 PM terra (IL0540105).indd 1 2/4/2011 1:57:15 PM