Remastering Sistem Operasi Berbasis Linux
SKRIPSI
Diajukan untuk Menempuh Ujian Akhir Sarjana Program Strata Satu Jurusan Teknik Informatika
Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia
TOMMI ALBERT SURBAKTI 10106449
PROGRAM STUDI S1
JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNIK DAN ILMU KOMPUTER
UNIVERSITAS KOMPUTER INDONESIA 2012
(2)
i
REMASTERING SISTEM OPERASI BERBASIS LINUX
Oleh
Tommi Albert Surbakti 10106449
Linux mulai banyak digunakan oleh masyarakat baik oleh pengembang perangkat lunak (developer) ataupun pengguna biasa. Kebutuhan akan sistem operasi linux yang mudah untuk digunakan dan memiliki antarmuka yang user friendly mendorong banyak orang melakukan remastering Linux, remastering adalah proses mengubah linux dari versi Linux yang sudah ada, baik menambah maupun mengurangi aplikasi.
Tahapan-tahapan remastering secara umum dibagi menjadi empat bagian, yaitu : download source code, instalasi sistem operasi, proses modifikasi (remastering) dan mengubah hasil remastering menjadi file ISO sehingga bisa di install.
Dengan adanya distro hasil remastering ini, penulis berharap semakin banyak pengguna yang menggunakan Linux sehingga dapat menghindari pembajakan software.
(3)
ii
REMASTERING LINUX OPERATING SYSTEM
by
Tommi Albert Surbakti 10106449
Linux is widely used by the public either by software developers (developers) or regular users. The need for linux operating system that is easy to use and has user friendly interface that encourages more people to do remastering Linux.
Remastering generally divided into four sections, namely: downloading source code, installation of operating systems, modifications (remastering) and then create an ISO file from souce code for instalation.
Given the remastering of this distro, I hope more and more users are using Linux to avoid software piracy, because Linux is free.
(4)
iii
Puji dan syukur saya panjatkan kehdirat Tuhan Yang Maha Esa, karena saya telah menyelesaikan tugas akhir saya yang berjudul “Remastering Sistem Operasi Berbasis Linux”.
Tugas akhir ini untuk memenuhi salah satu syarat kelulusan pada Program Studi Sistem Komputer Strata Satu di Jurusan Teknik Komputer, Fakultas Teknik dan Ilmu Komputer, Universitas Komputer Indonesia.
Atas selesainya penulisan skripsi ini, penulis mengucapkan banyak terimakasih kepada :
1. Allah Bapa di Surga.
2. Kedua orang tuaku (N. Surbakti dan A. Br. Ginting), abangku (Doris Sukanta Surbakti), dan adik-adikku (Esron Gunanta Surbakti, Seleranta Filisia Br Surbakti, Peni Kristi Br Surbakti), endam anakndu ndai nde, pa nggo lulus sarjana aminna gia melawen lulusna, erpengendes lah kita man Dibata gelah i pasu-pasuna kita kerina, ras sehat-sehat kita kerina.;
3. Skripsi aku persembahkan untuk abangku (Andi Alfian Surbakti) yang telah meninggal dunia beberapa tahun yang lalu.
4. Abang dan adikku yang jauh disana, gundari nggo mesera pejumpasa kita, siban pagi arihta bas sada waktu radu mulih kita ku kuta gelahna pulung kita kerina.
5. Bapak Ir. Eddy Suryanto Soegoto, M.Sc, selaku Rektor Universitas Komputer Indonesia (UNIKOM), Bandung.
6. Bapak Prof.Dr.Ir. Ukun Sastraprawira, M.Sc, selaku Dekan Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indoneasia (UNIKOM), Bandung. 7. Ibu Mira Kania Sabariah, S.T.,M.T., selaku Ketua Jurusan Teknik
Informatika, Fakultas Teknik dan Ilmu Komputer UNIKOM Bandung.
8. Pak Edi Mulyana, M.T., selaku pembimbing saya, terimakasih saya ucapkan atas semua nasehat-nasehat bapak.
(5)
iv 10.Frederika Br Tarigan, terimakasih banyak.
11.IF-10 angkatan 2006, jangan lupa beritahu jika ada lowongan kerja.
12.Renner Hendra Ginting, Arif Putra Firdaus, dan Daniel van Bone semangat belajarnya, jangan sampai berhenti kuliah hanya karena masalah kecil. Untuk Bone, terimakasih sudah mengantar aku.
13.KliK (Kelompok Studi Linux Unikom), terimakasih buat kalian semua. Motto : Linux for a better future.
14.Semua orang yang pernah mengerjai proyek dengaku, tidak terasa portofolioku sudah hampir 100, terimakasih buat kalian semua.
15.Kalak Karo, ijape kam ringan ula lupaken taneh karo simalem.
16.dan kepada semua teman-teman yang tidak bisa aku sebutkan namanya satu persatu, saya ucapkan banyak terimakasih. God Bless
Akhir kata penulis mengharapkan agar skripsi ini dapat memberikan manfaat bagi penulis khususnya dan pembaca umumnya di masa yang akan datang.
Bandung, Februari 2012
(6)
62 1. Sistem Operasi.
http://bebas.vlsm.org/v06/Kuliah/SistemOperasi/BUKU/SistemOperasi-4.X-1/ch01s03.html (diakses Oktober 24, 2011).
2. GNU. http://id.wikipedia.org/wiki/GNU (diakses Desember 2, 2011) 3. Sobell, Mark G. Practical Guide to Linux Commands, Editors, and Shell
Programming, A (2nd Edition). USA: Sobell, 2009.
4. Pungi. https://fedorahosted.org/pungi/ (diakses Januari 19, 2012)
5. Linux From Scratch. http://linuxfromscratch.org (diakses Oktober 20, 2011) 6. Membuat Repository Lokal Fedora 16.
http://blog.karo.or.id/linux/membuat-repository-lokal-fedora-16/ (diakses Januari 2, 2012)
7. Fedora Project Wiki. https://fedoraproject.org/wiki/Fedora_Project_Wiki (diakses Oktober 4, 2010)
(7)
1
PENDAHULUAN
1.1Latar Belakang Masalah
Perkembangan pengunaan Linux dewasa ini sangat pesat, dan sudah banyak hardware yang kompatible dengan Linux, beberapa penyedia Laptop bahkan ada yang secara defaultnya menginstall sistem operasi Linux di paket penjualannya. Kebanyakan distro Linux didistribusikan dengan lisensi GPLv2, yang intinya membesaskan user untuk memodifikasi Linux sesuai dengan keinginan dan kebutuhan masing-masing user.
Banyak perusahaan yang berpindah ke Linux dari Windows karena biaya yang dikeluarkan untuk menggunakan sistem operasi linux hampir tidak ada, disamping itu software-software Linux yang beredar kebanyakan dapat didownload secara gratis melalui repository-repository (pusat software) yang ada di seluruh dunia. Dengan pemanfaatan Linux maka biaya untuk pengadaan software menjadi minim sehingga biaya tersebut bias dialokasikan untuk kebutuhan lainnya. Dan juga dengan adanya repository di banyak negara-negara di dunia, kebutuhan akan bandwith internasional menjadi berkurang, karena bisa langsung di download dari repository server paling dekat.
Walaupun sangat banyak distro Linux yang beredar di Internet, tetapi kebanyakan hanya menyediakan software-software default yang mungkin tidak digunakan oleh user, untuk itulah banyak user yang melakukan remastering Linux agar sesuai dengan kebutuhannya masing-masing. Remastering adalah sebuah proses untuk membuat sebuah sistem operasi linux baru dari sistem operasi linux
(8)
yang sudah ada, dengan menambah atau mengurangi fitur-fitunya. Hasil remastering sistem operasi linux ini adalah sebuah sistem operasi linux yang mudah digunakan dan kompatible dengan berbagai VGA yang beredar di pasaran. Linux kebanyakan digunakan di lingkungan server tetapi sebuah distro yang khusus untuk pengembangan web, proses instalasi yang mudah, dan ringan belum ada yang sesuai dengan kebutuhan banyak pengguna, untuk itulah penulis mengambil judul skripsi “REMASTERING SISTEM OPERASI BERBASIS LINUX”.
1.2Identifikasi Masalah
Adapun masalah yang dapat di identifikasi adalah sebagai berikut :
1. Sering terjadinya kesulitan untuk melakukan instalasi software-software untuk administrasi jaringan, web development karena kurangnya pengetahuan pengguna cara melakukan instalasi software di sistem operasi linux.
2. Ukuran file iso DVD yang terlalu besar, dan kebutuhan akan spesifikasi hardware komputer yang tinggi.
3. Kurangnya dokumentasi untuk penggunaan aplikasi di Linux.
4. Harga sistem operasi Windows beserta aplikasinya yang kurang terjangkau.
5. Menghindari pembajakan software dengan menggunakan software-software gratis.
(9)
1.3Maksud dan Tujuan a. Maksud
Maksud dari penelitian skripsi yang penulis ajukan adalah untuk membuat sebuah distro Linux yang sesuai dengan kebutuhan.
b. Tujuan
Dari permasalahan yang diteliti, maka tujuan dari penulisan tugas akhir ini adalah:
1. Mengurangi biaya pengeluaran untuk pembelian lisensi software berbayar.
2. Memudahkan administrator untuk mengelola server dengan menyediakan tools-tools tambahan seperti phpMyadmin, nmap, dan conky.
3. Mempermudah instalasi software-software seperti Java JRE/JDK, nginx, percona, dan MySQL versi terbaru untuk pengguna.
4. Menyediakan aplikasi untuk otomatisasi backup file-file baik ke media USB, Hardisk Eksternal, FTP maupun media backup lainnya dengan metode incremental backup.
1.4Batasan Masalah
Sistem operasi yang akan dibangun memiliki user interface yang menarik dan mudah digunakan, tetapi dalam pembuatannya memiliki beberapa batasan masalah, diantaranya :
1. Sistem operasi yang akan dibangun menggunakan XFCE sebagai desktop environment.
(10)
3. Sistem operasi yang akan digunakan tidak kompatible dengan driver SIS, karena SIS tidak menyediakan driver yang mendukungan untuk 3D untuk sistem operasi Linux.
4. Bahasa pemrograman yang digunakan adalah BASH.
1.5Metodologi Penelitian
Metode yang digunakan adalah metode eksperimental. Metode eksperimental merupakan suatu metode penelitian yang digunakan untuk membuat sesuatu yang baru atau mengembangkan sesuatu berdasarkan ilmu-ilmu pengetahuan atau ilmiah
Tahap penelitian yang dilakukan akan adalah : 1. Studi Literatur
Penulis mengumpulkan teori-teori pendukung yang berhubungan dengan judul yang diambil melalui buku literature, dan juga mengumpulkan data melalui website-website tentang permasalahan yang dibahas.
2. Wawancara
Penulis mengadakan tanya jawab dengan beberapa orang yang mengerti tentang aplikasi yang akan dibangun kemudian menganalisis aplikasi dan memberi masukan.
3. Perancangan
Membuat sketsa masalah yang merupakan gambaran kasar program yang dapat dibuat dari sejumlah data yang berhasil dikumpulkan pada proses sebelumnya.
(11)
1.6Sistematika Penulisan
Sistematika penulisan skripsi ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan skripsi ini adalah sebagai berikut :
BAB I PENDAHULUAN
Menguraikan tentang latar belakang permasalahan, merumuskan inti permasalahan yang dihadapi, menentukan tujuan dan kegunaan penelitian, yang kemudian diikuti dengan pembatasan masalah, asumsi, serta sistematika penulisan.
BAB II LANDASAN TEORI
Membahas berbagai konsep dasar dan teori-teori yang berkaitan dengan topik penelitian yang dilakukan dan hal-hal yang berguna dalam proses analisis permasalahan serta tinjauan terhadap penelitian-penelitian serupa yang telah pernah dilakukan sebelumnya termasuk sintesisnya.
BAB III PERANCANGAN SISTEM
Membahas tentang perancangan sistem dan perancangan antarmuka yang akan digunakan.
BAB IV PERANCANGAN DAN IMPLEMENTASI
Merupakan tahapan yang dilakukan dalam penelitian secara garis besar sejak dari tahap persiapan sampai penarikan kesimpulan, metode dan kaidah yang diterapkan dalam penelitian. Termasuk menentukan variabel penelitian, identifikasi data yang diperlukan dan cara pengumpulannya, penentuan sampel
(12)
penelitian dan teknik pengambilannya, serta metode/teknik analisis yang akan dipergunakan dan perangkat lunak yang akan dibangun jika ada.
BAB V KESIMPULAN DAN SARAN
Pada bab terakhir ini akan memberikan suatu kesimpulan terhadap sistem operasi yang telah dibuat.
(13)
7 2.1 Sistem Operasi
Sistem Operasi adalah penghubung antara perangkat keras dan perangkat lunak1. Sekarang ini Sistem Operasi sudah memiliki fitur multithreading, yang memungkinkan untuk menjalankan berbagai program secara bersamaan. Sistem Operasi menjamin aplikasi-aplikasi yang sedang berjalan memiliki alokasi memori tersendiri, melakukan proses masukan (input) dan keluaran (output) terhadap perangkat yang lain dan memiliki akses kepada file sistem. Apabila beberapa aplikasi berjalan secara bersamaan, maka Sistem Operasi mengatur penjadwalan yang tepat, sehingga sedapat mungkin semua proses yang berjalan mendapatkan waktu yang cukup untuk menggunakan prosesor (CPU) serta tidak saling mengganggu. Seiring dengan berkembangnya pengetahuan dan teknologi, pada saat ini terdapat berbagai sistem operasi dengan keunggulan masing-masing.
Struktur sebuah sistem komputer dapat dibagi menjadi: 1. Sistem Operasi Komputer.
2. Struktur I/O.
3. Struktur Penyimpanan.
4. Storage Hierarchy. 5. Proteksi Perangkat Keras.
(14)
Gambar 2.1 Sistem Operasi (sumber : http://id.wikipedia.org/)
2.2 Sejarah Linux
Nama Linux merupakan kombinasi unik antara nama penciptanya dan nama sistem operasi UNIX. Semuanya berawal dari sebuah sistem operasi bernama Minix. Minix dibuat oleh Profesor Andrew Tanenbaum. Minix adalah sistem operasi mirip UNIX yang bekerja pada PC. Torvald adalah salah seorang mahasiswa di Universitas Helsinki yang menggunakan Minix. Walaupun cukup bagus, ia belum menganggap Minix memadai.
Kemudian pada tahun 1991 ia membuat sistem operasi yang merupakan clone UNIX, yang diberi nama Linux. Seperti halnya Minix, Linux tidak menggunakan kode apa pun dari vendor UNIX komersial, sehingga Torvalds mendistribusikan linux di internet secara bebas dan gratis.
Pada 5 Oktober 1991, Torvalds mengeposkan sistem operasinya di newsgroup comp.os.minix. Ia mengumumkan bahwa source code Linux tersedia dan meminta bantuan programmer-programmer lain untuk ikut
(15)
mengembangkannya. Ketika itu Linux masih setengah matang, sistem operasi ini hanya bisa menjalankan sedikit perintah UNIX, seperti bash, gcc dan gnu-make. Saat Linux 1.0 diluncurkan pada 1994, sistem operasi ini telah cukup stabil dan memiliki banyak fitur, seperti preemptive multitasking (kemampuan untuk membagi sumber daya CPU untuk banyak aplikasi) dan symmetric multiprocessing (kemampuan untuk membagi tugas di antara banyak CPU). Linux bahkan memiliki maskotnya sendiri yang oleh Torvalds dijelaskan sebagai "seekor penguin yang menggemaskan dan ramah, yang kekenyangan setelah makan banyak ikan hering".
Gambar 2.2 : Logo Linux
Pada 1996, tim pengembangan Linux yang ada diseluruh dunia mulai memberikan hasilnya. Tahun itu mereka telah membuat versi Linux untuk sejumlah versi hardware, dari Atari ST sampai Macintosh. Linux terus berkembang pesat, utamanya karena ada sejumlah distributor (seperti RedHat, Caldera, dsb) yang berkompetisi untuk berebut pangsa pasar. Oleh karena itu dibentuk kelompok bernama Linux Standard Base. Kelompok ini bekerja untuk memastikan bahwa beragam distribusi Linux yang ada tetap bisa menjalankan aplikasi yang sama.
(16)
Saat ini ada lima distribusi Linux paling terkenal (berdasarkan distrowatch.com), yaitu :
1. Linux Mint
Linux Mint merupakan distro turunan dari Ubuntu, salah satu kelebihan Linux Mint adalah antarmuka yang bagus, dan menyediakan codec-codec komersial seperti format MP3 dan MPEG. Proyek pengembangan Linux Mint dimulai pada tahun 2006, proyek itu dibuat karena Debian dan Ubuntu tidak menyertakan codec-codec komersial di dalam produk mereka, pengguna harus menggunakan repository pihak ketiga untuk dapat memutar MP3. Sampai sekarang Linux Mint memiliki repository software sebanyak 30.000 paket software. Linux Mint memiliki banyak varian distro sumber, dan juga desktop environment, diantaranya : Linux Mint berbasis Debian, Linux Mint berbasis Ubuntu, Linux Mint berbasis Ubuntu LTS (Long Time Support), Linux Mint berbasis Debian Rolling Release dan Linux Mint berbasis KUBUNTU.
2. Ubuntu
Kode sumber Ubuntu berasal dari Debian, dan Ubuntu juga menggunakan Paket Manajer Debian, yang diberi nama apt-get. Ubuntu di kembangkan untuk memudahkan pengguna mengoperasikan komputer yang berbasis Linux, tanpa perlu berinteraksi atau melakukan instalasi melalui terminal, karena Ubuntu menggunakan Ubuntu Software Center untuk memanage software-software yang di install oleh pengguna. Kehadiran Ubuntu merupakan batu loncatan dan masa gemilang perkembangan Linux untuk pengguna rumahan. Versi server Ubuntu banyak digunakan karena kemudahan serta patch yang sangat cepat dibuat oleh
(17)
pengembang Ubuntu setiap muncul bug terbaru. Sekarang Ubuntu telah merambah ke dunia televisi dan telepon genggam.
3. Fedora
Pada mulanya Fedora bernama Fedora Core, distro open source dari RedHat salah satu dari distro Linux yang paling terkenal untuk tingkat enterprise.
4. openSUSE
openSUSE merupakan distro Linux turunan SUSE, SUSE merupakan Linux versi berbayar dan pada umumnya digunakan tingkat enterprise.
5. Debian
Salah satu distribusi Linux tertua adalah Debian, dibuat pada tahun 1997, 4 tahun setelah kelahiran Linux. Debian paling banyak digunakan sebagai server, baik web server maupun mail server. Mulai Debian 6, pengembang Debian menghapus Kernel proprietary (tidak menyertakan kode sumber) dari Kernel yang digunakan Debian.
Pada penulisan skripsi ini saya memilih distribusi (distro) Fedora 16 sebagai sumber penelitian saya, karena Fedora didukung oleh komunitas yang sangat banyak di seluruh dunia. Menurut distrowatch.com Fedora merupakan distro Linux yang paling digunakan setelah Linux Mint dan Ubuntu.
(18)
2.3 Distro Linux Fedora
Fedora (sebelumnya bernama Fedora Core, sering disebut juga dengan Fedora Linux) adalah sebuah distro Linux berbasis RPM dan YUM yang dikembangkan oleh Fedora Project yang didukung oleh komunitas pemrogram serta disponsori oleh Red Hat. Nama Fedora berasal dari karakter fedora yang digunakan di logo Red Hat. Pada rilis 1 sampai 6 distro ini bernama Fedora Core yang kemudian berubah menjadi Fedora pada rilis ke-7. Fedora dikenal di dunia Linux sebagai sebuah distro yang menjadi pioneer dalam penggunaan teknologi terkini dan merupakan distro yang digunakan oleh Linus Torvalds.
2.3.1 Sejarah Fedora
Proyek Fedora dimulai akhir tahun 2003, ketika Red Hat Linux dihentikan. Red Hat Enterprise Linux menjadi satu-satunya distro resmi Red Hat, sedangkan Fedora menjadi distro yang bersifat open source. Bagi Red Hat, Fedora merupakan ajang percobaan utuk menghasilkan distro Red Hat Enterprise Linux (RHEL) yang stabil, rilis-rilis RHEL dikembangkan dari versi Fedora.
Nama Fedora berasal dari Fedora Linux, relawan proyek yang mengembangkan perangkat lunak tambahan untuk distro Red Hat Linux, dan dari karakteristik fedora (topi kulit) yang digunakan dalam logo Red Hat (“Shadowman”). Fedora Linux akhirnya diserap ke dalam Fedora Project. Fedora adalah merek dagang dari Red Hat, walaupun hal ini pernah disengketakan oleh para pencipta repositori perangkat lunak Fedora, namun masalahnya telah diselesaikan dan nama tersebut tetap dipakai sampai saat ini.
(19)
2.3.2 Versi Fedora
Sejak pertama kali dirilis pada tahun 2003, sampai sekarang Fedora telah sampai pada versi ke-16. Pada rilis pertama Fedora menggunakan kernel 2.4.19, versi kernel stabil pada waktu itu. Berikut ini adalah nama sandi dan waktu rilis Fedora mulai versi pertama sampai versi ke-17.
Tabel 2.1: Versi Rilis Fedora
No. Nama Sandi Jadwal Rilis
1 Yarrow 05-11-2003
2 Tettnang 18-05-2004
3 Heidelberg 08-22-2004
4 Stentz 13-06-2005
5 Bordeaux 20-03-2006
6 Zod 24-10-2006
7 Moonshine 31-05-2007
8 Werewolf 08-11-2007
9 Sulphur 13-05-2008
10 Cambridge 25-11-2008
11 Leonidas 09-06-2009
12 Constantine 17-11-2009
13 Goddard 25-05-2010
14 Laughlin 02-11-2010
15 Lovelock 10-05-2011
16 Verne 08-11-2011
17 Beefy Miracle Mei 2012
2.3.3 Komunitas Fedora
Komunitas Fedora tersebar di seluruh dunia, seluruh komunitas Fedora bekerjasama untuk membuat Fedora menjadi lebih baik. Fedora membuat Wikipedia tersendiri sebagai tempat untuk berbagi dengan komunitas Fedora di dunia. Wiki Fedora sendiri sudah di terjemahkan ke berbagai bahasa di dunia, diantaranya Jerman, China, Singapura, Malaysia, India, Indonesia, Myanmar, dan Turki. Dengan adanya proses penerjemahan tersebut penyebarannya semakin cepat karena bagi pengguna yang tidak mengerti bahasa Inggris bisa mengikuti tutorial yang telah diterjemahkan kedalam bahasa mereka, proyek tersebut dapat
(20)
berkesinambungan karena adanya dukungan dari Ambasador Fedora di setiap Negara. Ambassador Fedora adalah orang yang dipercayai oleh komunitas Fedora untuk membantu mendistibusikan, menulis tutorial dan juga mengadakan kegiatan-kegiatan Fedora di negara masing-masing.
Di Indonesia sendiri komunitas fedora Indonesia memiliki alamat portal fedora.or.id. Fedora Indonesia selalu mengadakan acara releas party Fedora setiap muncul Fedora versi terbaru. Sekitaran kampus Unikom juga pernah diadakan acara release party Fedora 16 pada waktu openhouse Unikom di tahun 2011.
2.4 GNU
GNU adalah sebuah sistem operasi komputer yang dibangun menggunakan software-software gratis dan berkode terbuka (opensource)2. GNU dibuat pada tahun 1984, GNU adalah kependekan dari GNU's Not Unix, GNU adalah sistem operasi yang menyerupai sistem operasi Unix namun tidak terikat oleh lisensi dan kepemilikan tunggal karena tidak mengandung kode pemrograman Unix yang berlisensi dan mengharuskan kita membayar sejumlah uang untuk lisensi penggunaannya.
Berbeda dengan Unix, GNU dibangun dengan semangat kebebasan dari lisensi yang mengikat penggunaannya. Pada tahun 1985 Richard Stallman kemudian mempelopori didirikannya Free Software Foundation (FSF), sebuah organisasi yang menampung berbagai macam pengembangan program dan aplikasi yang berbasis kode sumber terbuka (open source), tidak berbayar (free software) serta membuat rancangan GNU General Public License (GPL) yang mengatur kepemilikan dan hak atas kekayaan intelektual dari program dan
(21)
aplikasi yang bersifat terbuka dan bebas itu menjadi milik publik dan bukan miliki perseorangan/tunggal saja.
Pada awal tahun 1990, proyek GNU telah berhasil menciptakan sekaligus mengumpulkan berbagai program dan komponen sistem yang dibutuhkan untuk membangun sebuah sistem operasi, termasuk didalamnya adalah libararies, compilers, editor, Unix Shell dan juga sistem X Windows yang menyediakan antar-muka grafis untuk pengoperasian sistem operasinya. Namun proyek ini kemudian mengalami kendala pada bagian kernel.
GNU memutuskan untuk membuat sistem operasi yang kompatibel dengan Unix, karena desainnya secara umum telah terbukti, portable, dan karena adanya kompatibilitas yang membuatnya mudah bagi pengguna Unix untuk berganti ke GNU.
Tujuan awal dari sistem operasi seperti Unix yang bebas telah berhasil diperoleh. Hingga tahun 1990-an, GNU telah menyelesaikan komponen-komponen utama kecuali satu-yaitu kernel. Kemudian Linux, sebuah kernel bebas, dikembangkan oleh Linus Torvald. Menggabungkan Linux dengan sistem GNU yang hampir lengkap membuahkan sebuah sistem operasi yang lengkap: sistem GNU berbasiskan Linux. Diperkirakan bahwa ratusan dari ribuan orang saat ini menggunakan sistem GNU berbasiskan Linux, termasuk Slackware, Debian, Red Hat dan lainnya.
Bagaimana pun, kegiatan proyek GNU tidak hanya terbatas pada sistem operasi. GNU bertujuan untuk menyediakan segala ragam perangkat lunak, apa pun yang diinginkan para pengguna. Hal ini termasuk perangkat lunak aplikasi. GNU telah memiliki spreadsheet. GNU berharap untuk dapat memperluas GNU
(22)
Emacs menjadi sistem desktop publishing WYSIWYG (What You See Is What You Get, Anda mendapatkan yang anda lihat) dalam beberapa tahun mendatang.
GNU juga ingin menyediakan perangkat lunak untuk pengguna yang bukan ahli komputer. Oleh karena itu, GNU saat ini sedang mengerjakan sebuah sistem desktop drag-and-drop untuk membantu para pemula menggunakan sistem GNU.
GNU juga ingin menyediakan permainan dan sarana rekreasi lainnya. Beberapa permainan bebas telah tersedia. Seberapa jauh perangkat lunak bebas dapat melangkah? Tidak ada batasan, kecuali adanya hukum seperti halnya sistem paten, yang melarang perangkat lunak bebas secara keseluruhan. Tujuan utama GNU ialah menyediakan perangkat lunak bebas yang melakukan semua pekerjaan yang pengguna ingin lakukan, serta membuat perangkat lunak berpemilik menjadi ketinggalan jaman.
2.5 Daemon
Daemon atau lebih dikenal dengan nama service adalah program yang bisa dijalankan secara otomatis setiap komputer dihidupkan. Daemon biasanya terdiri atas program-program pendukung yang akan digunakan oleh berbagai macam program lain dan juga sistem operasi pada saat proses komputasi berlangsung seperti konfigurasi keamanan akes komputer, antar-muka grafis, konfigurasi IP, sistem penamaan domain (DNS), routing, dll.
Konfigurasi Daemons/Services biasanya terdapat di /etc/init.d/ untuk mengkonfigurasinya bisa menggunakan text editor yang telah disediakan oleh distro misalnya seperti nano, vi atau emacs.
(23)
Aplikasi client-server banyak memanfaatkan daemon sebagai jembatan untuk saling berkomunikasi. Hampir semua daemon dijalankan di background sehingga tidak perlu bantuan pengguna untuk penggunaannya.
2.6 Shell
Linux shell merupakan tool berbasis teks untuk berinteraksi dengan komputer. Linux shell sering juga disebut dengan xterm, konsole, terminal, shell command,ataupun shell. Shell ini merupakan antarmuka penghubung user dengan sistem. Shell juga sering disebut dengan interpreter yang mengoperasikan sebuah loop sederhana yakni menerima perintah, menginterpretasikan perintah, menjalankan perintah, dan menunggu perintah masukan berikutnya.
Shell adalah sebuah program antar-muka yang digunakan oleh pengguna untuk berinteraksi dan memberikan perintah kepada sistem operasi untuk melakukan serangkaian proses yang dikehendaki pengguna .
Tugas utama shell adalah untuk menyediakan antar-muka bagi pengguna (user environment) yang dapat dikonfigurasi dan dieksekusi sesuai dengan keinginan pengguna dalam memberikan perintah kepada sistem operasi. Shell digunakan untuk memberikan perintah langsung secara satu-persatu atau melalui serangkaian perintah yang sudah dibuat menjadi sebuah shell script atau shell program.
Dalam penggunaannya shell di sistem operasi Linux memiliki beberapa kelebihan, yaitu :
1. Kebanyakan konfigurasi sistem dapat dilakukan dari shell command.
2. Linux shell memberikan fleksibilitas terutama saat anda bekerja dengan banyak file.
(24)
3. Untuk tindakan penyelamatan terhadap sebuah data atau recovery terhadap sistem dan pekerjaan maintenance sistem pada single mode dapat anda lakukan lewat shell command.
4. Untuk mengeksekusi perintah-perintah Linux, jauh lebih cepat bila menggunakan mode teks dibandingkan mode GUI.
Secara umum, shell di sistem operasi linux dapat dibagi menjadi beberapa garis besar yaitu :
2.6.1 SH (Bourne Shell)
Shell ini adalah shell standard yang hingga sekarang masih digunakan pada sistem operasi Unix dan variannya. Shell ini dikenal juga sebagai shell dasar (basic shell) yakni program sederhana yang memiliki berbagai macam fitur bagi pengguna untuk melakukan serangkaian interaksi dengan sistem operasi. Meskipun tidak lagi menjadi standard pada sistem operasi Linux, shell ini masih selalu disertakan untuk menjaga kompatibilitas dengan program Unix yang ada kalanya masih diadopsi pada sistem operasi Linux.
2.6.2 BASH (Bourne Again Shell)
Shell ini adalah shell standard GNU. BASH selalu di rekomendasikan oleh para pengembang dan pakar sistem operasi Linux kepada para pengguna karena memiliki fitur dan kemampuan yang lebih lengkap dan mudah digunakan. Pada sistem operasi Linux, BASH ditetapkan sebagai standard shell yang digunakan. Keistimewaan dari shell Bash ini adalah kemampuannya dalam mengadopsi shell SH, sehingga setiap perintah yang dikenal oleh SH dapat dikenali dan dieksekusi
(25)
juga oleh BASH. Namun sebaliknya, tidak setiap perintah yang digunakan dalam Bash dapat dikenali dan eksekusi oleh shell SH.
2.6.3 CSH (C shell)
Perintah yang terdapat pada shell ini diambil dari bahasa pemrograman C, sehingga sebagian programmer yang menggunakan bahasa pemrograman C dalam proses pengembangan programnya biasanya menggunakan shell ini.
2.6.4 TCSH (Turbo C shell)
Perintah yang terdapat pada shell ini diambil dari bahasa pemrograman Turbo C, pengembangan dari bahasa C yang menawarkan kemudahaan penggunaan dan kecepatan akses yang lebih baik dibandingkan CSH.
2.7 Text Editor
Text editor adalah program yang digunakan untuk memanipulasi isi sebuah script ataupun konfigurasi pada sebuah file. Sistem operasi Linux dibekali dengan 2 mode editor, yang pertama adalah editor berbasis teks (nano, pico, vi, emacs, dll) dan yang kedua adalah editor berbasis grafis/GUI (geany, gedit dll).
Text editor berbasis teks menggunakan antar-muka teks sebagai media penggunaannya. Sistem operasi menyediakan sebuah shell dengan beberapa perintah yang sudah disediakan oleh pembuat editor sebagai panduan untuk melakukan proses editing. Perintah-perintah tersebut biasanya ditampilkan pada layar dan menggunakan tombol singkat pada keyboard untuk penggunaannya. Sedangkan editor berbasis grafis menggunakan kombinasi windows panel, dan serangkaian menu yang mirip dengan program berbasis sistem operasi windows lainnya, sehingga para pengguna cukup mengarahkan pointer dan klik pada menu
(26)
yang di inginkan untuk melakukan proses editing. Distro Linux yang menggunakan GNOME sebagai Desktop Environment menggunakan nano sebagai text editor bawaan, karena nano memiliki fitur syntaxhighlight dan hanya menggunakan beberapa KB memory.
2.8 Desktop Environment
Desktop Environment (DE) adalah jembatan antara sistem operasi dengan pengguna berbasis grafis. DE menyediakan fitur-fitur dasar untuk mengakses service yang diberikan oleh sistem operasi. DE terdiri dari icons, windows, toolbars, folders, wallpapers and desktop widgets. GNOME menggunakan Metacity sebagai Desktop Environment.
2.9 Window Manager
Window Manager adalah antar muka berbasis grafis (Graphical User Interface/GUI) yang menyediakan tampilan seperti windows pada sistem operasi Microsoft Windows berikut dengan toolbar, icons, taskbar dan komponen lainnya dalam sebuah kesatuan yang dikenal dengan nama Desktop Environtment. Berbeda dengan sistem operasi Microsoft Windows, Window Manager pada sistem operasi Linux adalah sebuah opsi yang dapat dipasang ataupun tidak sebagai sebuah pilihan. Selain itu, Window Manager pada sistem operasi Linux tidak hanya terpaku pada satu mode tampilan saja seperti halnya windows pada sistem operasi Microsoft Windows, para pengguna Linux dapat memilih Window
(27)
Manager yang banyak tersedia sesuai dengan keinginan dan selera tampilan yang di inginkannya.
Secara umum, Window Manager berfungsi sebagai antar-muka grafis dengan berbagai pilihan bentuk, warna dan tampilan yang bertugas menterjemahkan berbagai perintah dan scripts yang terdapat pada sistem operasi menjadi sebuah tampilan yang lebih mudah dipahami dan digunakan oleh para pengguna. Window Manager memungkinkan tersedianya tampilan grafis yang menarik dan indah bagi para pengguna untuk berinteraksi dengan sistem operasi dan melakukan serangkaian proses komputasi dengan tampilan yang lebih baik. Secara default sistem operasi linux menggunakan GNOME sebagai windows managernya, beberapa Window Manager yang lain adalah openbox dan xmonad.
2.10 Kernel
Dalam sebuah perangkat komputer, kernel merupakan komponen inti dari Sistem Operasi yang berjalan dalam perangkat tersebut. Kernel bertugas untuk mengatur pembagian sumber daya sistem; komunikasi antara komponen hardware dan software. Kernel menghubungkan antara software aplikasi dan hardware komputer. Ia menyediakan abstraction layer pada level terendah untuk resource-resource seperti memori, prosesor dan perangkat I/O di mana suatu software aplikasi harus mengontrol resource-resource tersebut agar dapat berfungsi. Kernel mampu menyediakan fasilitas seperti ini bagi proses-proses aplikasi melalui mekanisme IPC (Inter Process Communication) dan System call.
Kernel kemudian dilengkapi dengan aplikasi yang menyediakan perangkat fungsional sistem operasi. Perangkat fungsional ini menyediakan antar muka perintah berbasis teks yang berfungsi memberikan instruksi kepada kernel agar
(28)
dapat berinteraksi dengan perangkat keras komputer. Selain itu, kernel juga dilengkapi dengan compiler, sebuah aplikasi yang berfungsi untuk mengubah kode sumber program menjadi aplikasi binary yang siap digunakan.
Hingga saat ini, kernel terus dikembangkan agar dapat mengenali dan mengoperasikan berbagai perangkat keras komputer dan elektronik baru yang terus menerus bermunculan. Perkembangan kernel ini kemudian ditandai dengan munculnya versi kernel. Pada saat tulisan ini dibuat, kernel Linux sudah mencapai versi 3.1.1 (http://kernel.org/).
2.11 Struktur Direktori
Salah satu perbedaan utama antara sistem operasi Linux dengan DOS ataupun windows adalah struktur direktori file. Linux tidak mengunakan notasi drive (seperti C, D, E) yang berbeda untuk membedakan partisi yang terdapat pada hard disk karena semuanya disimpan dalam sebuah direktori utama yang dikenal dengan nama root (/).
(29)
Gambar 2.3 Struktur Direktori Linux (sumber : thegeekstuff.com)
Secara umum direktori Linux dibagi menjadi :
1. /
Direktori ini adalah direktori utama sistem operasi Linux yang menampung seluruh sub-direktori yang terdapat pada sistem operasi Linux.
2. /bin
Direktori ini berisi program-program utama yang dapat dieksekusi oleh pengguna untuk berinteraksi dengan sistem operasi. Selain itu, direktori ini berisi shell dan juga perintah-perintah sistem file seperti ls, cp, dan mkdir.
(30)
3. /boot
Direktori ini beris program yang digunakan untuk melakukan proses pada saat komputer dinyalakan (booting), program tersebut akan mengaktifkan kernel Linux yang juga terdapat pada direktori ini.
4. /dev
Pada sistem operasi Linux, semua sistem, berikut dengan konfigurasi dan bahkan juga perangkat kerasnya dikenali kedalam file. Semua perangkat keras seperti serial port, usb, hard disk, akan dibuatkan sebuah file khusus yang berisi informasi perangkat keras dan metode aksesnya. Direktori ini berisi file-file khusus mengenai perangkat keras yang terdapat pada komputer.
5. /etc
Direktori ini berisi seluruh file konfigurasi sistem, mulai dari file konfigurasi tampilan grafis, database pengguna, konfigurasi pada saat komputer dinyalakan dan file konfigurasi lain yang digunakan oleh sistem operasi.
6. /home
Sistem operasi Linux bersifat multi user sehingga setiap pengguna diberikan sebuah akses dan direktori kerja masing-masing yang bersifat pribadi dan berbeda antara pengguna yang satu dengan pengguna yang lainnya. Direktori ini berisi direktori-direktori pengguna tersebut.
7. /lib
Direktori ini berisi seluruh pustaka (libraries) yang akan digunakan oleh sistem operasi.
(31)
8. /mnt
Direktori ini berisi akses menuju media penyimpanan data seperti media cakram padat (CD-ROM) ataupun tempat meletakkan partisi-partisi dari media penyimpanan data lain kedalam direktori utama.
9. /opt
Direktori ini berisi program ataupun aplikasi tambahan yang tidak terdapat pada direktori /bin yang akan digunakan oleh pengguna. Biasanya program/aplikasi tersebut adalah program/aplikasi tambahan (optional). 10. /proc
Direktori ini adalah salah satu direktori spesial yang berisi virtual filesystem yang menyediakan akses menuju informasi kernel seperti jenis prosesor yang digunakan, kecepatan akses memori, dan lain sebagainya. 11. /root
Pada sistem operasi Linux, terdapat pengguna yang memiliki hak akses penuh untuk melakukan pengubahan terhadap sistem. Pengguna ini dikenal dengan nama root dan memiliki direktori kerja yang terpisah dari pengguna lainnya. Direktori ini merupakan direktori kerja untuk pengguna tersebut.
12. /sbin
Direktori ini berisi program-program yang dapat digunakan oleh pengguna root untuk mengubah konfigurasi sistem operasi. Seluruh file dan program yang terdapat pada direktori ini tidak dapat digunakan oleh pengguna biasa.
(32)
13. /tmp
Direktori ini digunakan sebagai media penyimpanan data sementara pada saat proses komputasi berlangsung. Direktori ini dapat digunakan oleh semua pengguna yang terdapat pada sistem operasi.
14. /usr
Direktori ini merupakan direktori utama untuk berbagai macam keperluan seperti dokumentasi, kode sumber kernel, modul-modul kernel, dan juga program-program seperti Window Manager untuk tampilan grafis dan juga program lain yang di install dari kode sumber.
15. /var
Direktori ini berisi log dan cache dari seluruh proses komputasi yang dilakukan oleh sistem operasi.
2.12 RemasteringLinux
Remastering Linux adalah proses membuat Linux dari Linux yang sudah ada. Proses remastering Linux pada umumnya melalui beberapa tahapan yaitu, download source code, instalasi ISO, proses remastering, dan hasilnya menjadi file ISO. Pada Fedora proses remastering menggunakan aplikasi fungi, kickstart, ataupun livecd-creator. Aplikasi yang paling banyak digunakan untuk proses remastering adalah livecd-creator, sedangkan aplikasi fungi dan kickstart karena sudah lama tidak di update menjadi tidak kompatible dengan Fedora 16.
2.13 Distro Turunan
Distro Turunan adalah proses untuk membuat sebuah linux baru dari linux yang sudah ada sebagai dasar atau pondasi sistemnya, hampir sama dengan
(33)
definisi distro remastering hanya dalam distro turunan terdapat beberapa paket aplikasi khas yang dipelihara oleh developer distro turunan tersebut, tujuannya hampir sama dengan distro remastering, sebagai pengembangan dan penyesuain dengan kebutuhan pengguna. Distro Turunan lebih banyak dipilih oleh pengembang untuk bahasa tertentu, misalnya bahasa Indonesia, karena pengembang bisa membuat paket software mereka sendiri dengan menggunakan paket software sumber distro dan menyesuaikan dengan bahasa lokal ataupun tulisan lokal (dari kiri ke kanan, atau dari kanan ke kiri).
Perbedaan antara distro remastering dengan distro turunan dapat dilihat pada tabel dibawah ini:
Tabel 2.2: Perbandingan distro turunan dengan distro remastering
No Distro Turunan Distro Remastering
1. memiliki repository software sendiri, dan masih bisa menggunakan repository software sumber.
Tidak memiliki repository software sendiri dan masih menggunakan repository software sumber.
2. Mengubah semua logo dari distro sumber.
Masih menggunakan logo dari distro sumber.
3. Memiliki pengembang untuk pembuatan paket software.
Bergantung kepada pengembang distro sumber
4. Membuat patch untuk aplikasi yang dikembangkan.
Patch dibuat oleh pengembang dari distro sumber.
5. Memiliki paket yang khas. Tidak memiliki paket khas.
6. Membuat waktu rilis sendiri. Mengikuti waktu rilis software induk.
7. Memiliki aplikasi untuk mengelola bug dan pemaketan sendiri.
Berkas bug dikirim ke software induk.
(34)
28 3.1 Analisis Perangkat Keras
Perangkat keras berperan penting dalam proses remastering Linux, apabila perangkat keras yang digunakan tidak sesuai maka sistem tidak dapat berjalan sebagaimana mestinya.
3.1.1. Perangkat Keras yang digunakan
Tabel 3.1 Perangkat Keras yang Digunakan
Hardware Spesifikasi
Processor Intel Core 2 Duo
Memory Kingstone 2 GB DDR2
VGA NVIDIA 7600 GT 512 MB
Hardisk 200 GB Seagate
Monitor LCD View Sonic 19”
Keyboard + Mouse Standart
Kebutuhan minimum sistem :
Tabel 3.2 Kebutuhan Minimum Sistem
Hardware Spesifikasi
Processor Intel Pentium 4/AMD Celeron
Memory 1 GB
(35)
Monitor 14”
Keyboard + Mouse Standart
3.2 Analisis Perangkat Lunak
3.2.1. Perangkat Lunak yang Digunakan
Dalam proses remastering Fedora 16 digunakan livecd-creator dan kickstart untuk proses remastering. Aplikasi lain yang diinstall didalam sistem operasi ini: geany, Google Chrome, Google Chromium, Adobe Flash, Firefox, Gedit, Opera, php-mysql, apache2, mysqld, gdm, libreoffice, mplayer, Microsoft Font, nmap dan VLC.
3.2.2. GNOME 3 Fedora 16
GNOME merupakan standar desktop environment pada sistem Linux, GNOME 3 telah memasuki versi ke-3. Di versi GNOME terbaru tampilannya menyerupai tampilan smartphone dengan ukuran icon yang sangat besar.
Instalasi Fedora 16 menggunakan GNOME 3 sebagai Desktop Environment, GNOME 3 membutuhkan dukungan driver 3D agar dapat berlajalan dengan lancar.
Waktu pertama kali dijalankan Fedora 16 dengan GNOME 3 menggunakan sekitar 700 MB memory.
(36)
OpenGL memory yang digunakan juga cukup besar. GNOME 3 dioptimalkan untuk layar sentuh.
Gambar 3.2: Tampilan GNOME 3
Berkas ISO DVD Fedora sebesar 4 GB yang terdiri dari 2000 aplikasi. Pada instalasi DVD Fedora aplikasi seperti LibreOffice, Apache Web Server, FTP server, Web Development, sudah disertakan sehingga bagi pengguna Fedora 16 sudah cukup. Paket CD Fedora memiliki ukuran 700 MB, paket CD tersebut tidak menyertakan LibreOffice, Web Server, XFCE, LXDE dan KDE. Fedora paket CD hanya menyertakan paket-paket aplikasi standar dan tanpa aplikasi-aplikasi office dan chatting.
Office
Salah satu file yang paling besar di dalam daftar aplikasi Fedora adalah Office, aplikasi Office yang digunakan di Fedora adalah LibreOffice, aplikasi yang dikembangkan dari OpenOffice yang telah dibeli oleh SUN Microsystem.
(37)
menggunakan 700 MB ruang hardisk.
LibreOffice dibangun dengan bahasa pemograman Java, sehingga sebelum menjalankan LibreOffice pengguna terlebih dahulu melakukan instalasi file-file Java agar aplikasi office dapat berjalan dengan lancar dan membuat penggunaan memori semakin besar, dibutuhkan memori 100 MB untuk menjalankan aplikasi LibreOffice.
Web Server
Paket instalasi DVD Fedora menyertakan Apache Web Server sebagai standar web server. Untuk menjalankan Apache dibutuhkan 5 MB untuk daemon dan 1 MB untuk setiap child process. Untuk mengurangi penggunaan memory dapat digunakan nginx yang hanya membutuhkan memory kurang dari 1 MB untuk menjalankan daemon.
3.2.3.Perbandingan Berkas ISO Fedora
Tabel 3.3 : Perbandingan Berkas ISO Fedora
No. Nama Rilis Arsitektur Ukuran
1. Fedora 16 Desktop Edition 32 bit 3,54 GB
2. Fedora 16 KDE Spin 32 bit 697 MB
3. Fedora 16 LXDE Spin 32 bit 542 MB
4. Fedora 16 Xfce Spin 32 bit 627 MB
3.3 Tahapan Remastering ISO Linux
Tahapan-tahapan dalam melakukan remastering sistem operasi linux, adalah sebagai berikut :
3.3.1. Download ISO/Source Code
(38)
3.3.2. Instalasi Sistem Operasi
Sebelum memulai proses modifikasi, ISO Fedora yang telah di download di install terlebih dahulu untuk memudahkan proses remastering, karena bila menggunakan LIVE USB/LIVE CD proses remastering akan berlangsung lebih lama, dikarenakan kecepatan tulis dari kedua media tersebut lebih lambat dari kecepatan tulis dari hardisk langsung.
3.3.3. Memulai Proses Remastering
Bagian yang paling penting didalam proses remastering ini adalah bagian Desktop Environment, karena aplikasi-aplikasi yang akan diinstall selanjutnya bergantung kepada Desktop Environment yang digunakan. Aplikasi-aplikasi yang dihapus adalah GNOME 3, OpenOffice, dan Evolution. GNOME 3 tidak digunakan sebagai Desktop Environment karena GNOME 3 membutuhkan spesifikasi VGA yang memiliki dukungan 3D, walaupun GNOME 3 dapat berjalan dalam mode fall back tetapi tampilannya tidak maksimal, untuk pengguna yang tetap ingin menggunakan GNOME 3 sebagai Desktop Environment dapat melakukan instalasi langsung dari repository Fedora. OpenOffice juga dihapus dari distro remastering ini karena pengembangan OpenOffice belum jelas setelah diakusisi oleh Oracle, sebagai penggantinya dipasang LibreOffice. Desktop email klien yang digunakan adalah Thuderbird menggantikan Evolution, karena Evolution memiliki tampilan yang kurang userfriendly dan juga sulit untuk mengkonfigurasi email dimana Thunderbird sudah membuat tampilan yang userfriendly dan juga system yang otomatis mengecek POP3 dan SMTP mail
(39)
3.3.4. File ISO
Setelah proses remastering selesai, tahapan selanjutnya adalah membuat file images dalam format iso, format iso dipilih karena bawaan sistem linux sudah mendukung format ini, baik untuk proses kompres maupun proses dekompres.
Gambar 3.3 Tahapan Remastering SO
Sistem yang akan dibuat menggunakan Fedora Linux dengan XFCE sebagai Desktop Environment-nya.
3.3.5. Kebutuhan Perangkat Lunak
Fedora 16, pungi, kickstart untuk proses remastering sistem operasi linux. Aplikasi lain yang diinstall didalam sistem operasi ini: geany, Google Chrome, Google Chromium, Adobe Flash, Firefox, Gedit, Opera, php-mysql, apache2, mysqld, gdm, libreoffice, mplayer, Microsoft Font, nmap dan VLC.
3.4 Perancangan Antarmuka
Perancangan antar muka bertujuan untuk memberikan mengenai sistem operasi yang akan dibangun sehingga akan mempermudah dalam
(40)
yang user frienldy.Perancangan antar muka pada remastering sistem operasi linux ini bisa dibagi menjadi menjadi 5 bagian, yaitu :
3.4.1. Desktop Environment
Pada sistem operasi Linux yang akan dirancang desktop yang digunakan adalah XFCE, Panel (menu) berada dibagian atas window dan launcher berada di bagian bawah
Gambar 3.4 Tampilan Desktop Environment
3.4.2. GNOME Session Manager
GNOME adalah antar muka pengguna untuk masuk ke sistem, GDM dipilih karena memiliki antar muka yang mudah untuk digunakan, dan menggunakan sedikit memori.
(41)
Gambar 3.5 GNOME Session Manager
3.4.3. Conky System Monitoring
Conky digunakan untuk memonitoring sistem yang sedang berjalan, di antar muka conky yang ditampilkan adalah hostname (nama komputer), CPU, memori, kernel, uptime (waktu hidup), aplikasi yang menggunakan memori terbanyak, alamat ip publik, alamat ip lokal, jumlah download dan jumlah upload. Conky dipilih sebagai system monitoring karena penggunaan memory yang ringan dan mudah di modifikasi, karena file konfigurasinya memiliki penjelasan yang lengkap.
(42)
Gambar 3.6 Tampilan Conky System Monitoring
3.4.4. Informasi Sistem
Informasi sistem menampilkan sistem operasi yang digunakan, kernel, model CPU, jumlah memori, swap memori, dan uptime komputer. Bahasa pemrograman yang digunakan adalah bash dan zenity sebagai antar muka.
(43)
Instalasi program di Linux cukup sulit untuk pengguna awam, karena program di compile terlebih dahulu, atau bila menggunakan software manager instalasi program menjadi lebih mudah, tetapi banyak aplikasi yang dibutuhkan user sulit untuk melakukan instalasinya, seperti adobe flash, codec mp3, dan Google Earth.Untuk itu dibuat aplikasi Autoinstaller untuk memudahkan pengguna awam menginstall software-software tersebut diatas. Aplikasi Autoinstaller dibuat dengan bahasa pemrograman BASH dan menggunakan zenity sebagai antar muka. Untuk menginstall aplikasi-aplikasi melalui zenity dibutuhkan koneksi internet.
(44)
38
IMPLEMENTASI
Sebelum melakukan proses remastering terlebih dahulu harus dipersiapkan berkas-berkas repository yang dapat di download dari Fedoraproject.org, untuk Fedora 16 ukuran repository 20 GB, livecd-creator dan script remastering semua file diletakkan di folder /home/remaster/. File-file repository diletakkan di /home/remaster/repo/ dan script remastering diletakkan di /home/remaster/script/.
4.1. Proses Remastering
Software-software yang dibutuhkan untuk melakukan remastering ini adalah
kickstart, dan liveusb-creator.Aplikasi-aplikasi tersebut bisa di install melalui terminal
dengan cara :
yum install kickstart* liveusb-creator
Proses ini bisa berlangsung lama, bila menggunakan repository (pusat software) online, untuk mempercepat proses ini, repository yang akan digunakan adalah
repository local yang file-filenya diambil dari DVD Fedora 16 dan repository online.
Sebagai contoh pada skripsi ini akan dibuat 3 buat file ISO hasil remastering
yang terdiri dari FTP Server, Web Server, dan FTP Server dan Web Server.
Eksekusi file remastering yang di simpan di /home/remaster/script/remastering
dengan perintah :
(45)
setelah script dijalankan akan muncul 3 pilihan yaitu :
1. Install FTP Server
2. Install Web Server
3. Install FTP dan Web Server
4. Exit program
Gambar 4.1: screenshoot script remastering
Untuk melakukan instalasi Linux versi FTP server tekan nomor 1 di keyboard
dan tekan enter
Gambar 4.2: screenshoot instalasi FTP server
Proses instalasi versi FTP pada sistem yang digunakan membutuhkan waktu 3
jam 40 menit dengan kecepatan internet 100-200 KB/s, ukuran file ISO sebesar 484
MB.
(46)
tekan enter.
Gambar 4.3: screenshoot instalasi web server
Proses instalasi versi Web Server pada sistem yang digunakan membutuhkan
waktu 4 jam dengan kecepatan internet 100-200 KB/s, ukuran file ISO sebesar 509 MB.
Untuk melakukan instalasi FTP Server dan Web Server tekan tombol nomor 3 di
keyboard lalu tekan enter.
Gambar 4.4: screenshoot instalasi ftp server dan web server
Untuk keluar dari program dan kembali ke shell tekan angka 0, di keyboard.
Gambar 4.5 : keluar dari program
(47)
remastering mulai mengeksekusi script untuk mendownload aplikasi-aplikasi yang telah
di pilih (FTP server, web server, atau web server dan ftp server). Proses selanjutnya
setelah file-file yang dibutuhkan di download adalah instalasi aplikasi-aplikasi tersebut
dan membuat berkas ISO, sehingga bisa di install melalui media USB ataupun
CD/DVD.
4.2. Membuat installer melalui media USB
Membuat live USB bisa dilakukan dengan menggunakan Liveusb Creator.
Liveusb-creator didesain khusus untuk distro Fedora, sehingga distro-distro hasil
remastering dari Fedora kompatibel dengan liveusb-creator.
Tekan tombol Browse untuk memilih file iso yang baru dibuat. Setelah file iso
dipilih klik Open lalu akhiri dengan menekan tombol Create Live USB.
(48)
4.3. Proses Instalasi Sistem Operasi
Proses instalasi sistem operasi hasil remastering tersebut melalui media USB,
media USB mudah untuk digunakan dan komputer-komputer modern dapat melakukan
booting melalui USB. Tahapan-tahapan instalasi sistem operasi linux melalui media
USB adalah sebagai berikut :
1.Masukkan USB ke port USB Komputer
2.Setting booting komputeragar boot melalui USB
3. Tahapan-tahapan instalasi
Setelah komputer booting dari USB tampilan yang akan muncul adalah seperti gambar dibawah ini :
Gambar 4. 7 Tampilan awal booting
Untuk memulai proses instalasi klikStart Kalix, dengan menekan tombol enter di
(49)
Gambar 4. 8 Tampilan Booting
Tampilan selanjutnya adalah Welcome, sebagai menu pembuka, klik forward
untuk melanjutkan
Gambar 4. 9 Welcome
License Information menampilkan lisensi yang harus disetujui oleh pengguna, lalu klik forward untuk melanjutkan
(50)
Gambar 4. 10: License agreement
Date and Time pilih waktu yang sesuai dengan timezone, klik forward untuk melanjutkan
Gambar 4.11: Date and Time
Fedora hasil remastering dikonfigurasi menggunakan settingan waktu Asia/Jakarta (GMT +7), untuk mendapatkan waktu yang lebih tepat bias dengan
(51)
time over the network.
Gambar 4.12 : Create User
Pada tahap ini pembuatan user sangat penting, karena kita akan login dengan
username yang password yang dibuat di bagian Create User. Klik forward untuk
membuka windows selanjutnya
Gambar 4.13: Hardware Profile
Informasi sistem yang digunakan untuk instalasi akan dikirim ke server fedora, sebagai referensi kepada para developer dan juga sebagai acuan kepada pengguna bahwa hardware yang digunakan dapat diinstall Fedora. Untuk mengirimkan informasi
(52)
sistem tersebut, membutuhkan koneksi internet, bila anda tidak ingin mengirimkan data
-data hardware yang digunakan pilih Do not send profile lalu klik Finish untuk
mengakhirinya.
Gambar 4.14 Konfirmasi
Bila anda telah menetapkan tidak mengirim informasi hardware klik No, do not
send.
4.4. Perbandingan Ukuran Berkas ISO
Tabel 4.1 : Perbandingan Ukuran File ISO
No. Nama Rilis Arsitektur Ukuran
1. Fedora FTP 32 bit 3,54 GB
2. Fedora Web Server 32 bit 697 MB
3. Fedora FTP dan Web Server 32 bit 542 MB
4.5. Software-software Tambahan
Software-software tambahan ini berguna untuk menambah fungsionalitas dari
sistem operasi.
4.5.1. Conky System Monitoring
Proses instalasi conky dilakukan melalui terminal dengan menggunakan akses
root.
sudo yum install conky lua –y
(53)
konfigurasi ini dibuat melalui terminal, buat sebuah file dengan nama .conkyrc di /home/[namauser]
cd $HOME &&nano .conkyrc
masukkan script yang ada dibawah ini kedalam .conkyrc
# untuk menampilkan window
update_interval 1.0 double_buffer yes
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager background no
use_xft yes
xftfont Bitstream Vera Sans:size=8 maximum_width 270
alignment top_right uppercase no draw_outline no top_cpu_separate false gap_x 8
gap_y 16
own_window no draw_shades no
own_window_type override own_window_transparent yes # untuk menampilkan output text TEXT
(54)
${alignc 30}${color #E7E713}${font OpenLogos:size=45}Kalix${font} ${color #ffffff}${time %A, %d %B %Y} ${alignr}${time %T}
$stippled_hr${color}
${color #92ff9a}Kondisi Mesin:
${color #0000FF} CPU: ${alignr}${machine}
${color #0080FF} RAM terpakai: $memperc% ${alignr}${membar 8,60} #${color #ffffff} SWAP terpakai: $swapperc% ${alignr}${swapbar 8,60}
${font Bitstream Vera Sans:size=8}${color #FF0000}${execi 99999 cat /proc/cpuinfo | grep "model name" -m1 | cut -d":" -f2 | cut -d" " -f2- | sed 's #Processor'}$font$color ${color #6699ff}$sysname $kernel ${alignr}Aktif: ${color #92ff9a}${uptime} $stippled_hr${color}
${color #92ff9a}Aplikasi : ${color #6699ff}
${color #6699ff}${top_mem name 1} $alignr ${top_mem pid 1} ${top_mem cpu 1} ${top_mem mem 1}
${color #92ff9a}${top_mem name 2} $alignr ${top_mem pid 2} ${top_mem cpu 2} ${top_mem mem 2}
${color #92ff9a}${top_mem name 3} $alignr ${top_mem pid 3} ${top_mem cpu 3} ${top_mem mem 3}
${color #6699ff}Kegiatan Sistem:${color #92ff9a} $processes $alignr ${color #92ff9a}Sedang Berlangsung:${color #6699ff} $running_processes
$stippled_hr${color} ${color #6699ff}LAN
${color #92ff9a}Alamat IP Publik: ${color #6699ff}${curl ifconfig.me} ${color #92ff9a}Alamat IP Lokal: ${color #6699ff}${addr p2p1}
(55)
${color #6699ff}mengunduh: ${color #92ff9a}${totaldown p2p1} $alignr ${color #6699ff}mengunggah: ${color #92ff9a} ${totalup p2p1}
4.5.2. Informasi Sistem #!/bin/bash
# sebelum dijalankan install zenity diinstall terlebih dahulu.
kernel=$(uname -r)
osver=$(cat /etc/redhat-release)
cname=$(cat /proc/cpuinfo|grep name|head -1|awk '{ $1=$2=$3=""; print }')
freq=$(cat /proc/cpuinfo|grep MHz|head -1|awk '{ print $4 }')
tram=$(free -m | awk 'NR==2'|awk '{ print $2 }') swap=$(free -m | awk 'NR==4'| awk '{ print $2 }') up=$(uptime|awk '{
$1=$2=$(NF-6)=$(NF-5)=$(NF-4)=$(NF-3)=$(NF-2)=$(NF-1)=$NF=""; print }') echo "OS : $osver"
(56)
echo "Kernel : $kernel" echo "CPU model : $cname"
echo "CPU frequency : $freq MHz"
echo "Total amount of ram : $tram MB" echo "Total amount of swap : $swap MB" echo "System uptime : $up"
4.5.3. Autoinstaller LC_ALL=C
LOG=/var/log/autoplus
######################################################## ########################################################
####################### typeset -r RPM="`which rpm`"
typeset -r PERL="`which perl`" typeset -r YUM="`which yum`"
(57)
typeset -r CURL="`which curl`"
######################################################## ######################################################## #######################
#if [ $(whoami) != "root" ] ; then # zenity --error \
# --text="sorry you must be root to run this script"
#exit 1 #fi
#window-icon="/user/share/pixmaps/autoten.png"
######################################################## ######################################################## ########################
(
livna() { clear
$RPM -ivh http://rpm.livna.org/livna-release.rpm
$YUM -y install --nogpgcheck http://rpm.livna.org/livna-release.rpm
sed -i 's/enabled=1/enabled=0/g' /etc/yum.repos.d/livna.repo
(58)
$YUM --enablerepo=livna -y install --nogpgcheck install libdvdcss
}
mplayercodecs() { clear
if [ $(arch) != "i686" ] && [ $(arch) != "i586" ] ; then wget
http://www1.mplayerhq.hu/MPlayer/releases/codecs/mplayer -codecs-20061022-1.x86_64.rpm
wget
http://www1.mplayerhq.hu/MPlayer/releases/codecs/mplayer -codecs-extra-20061022-1.x86_64.rpm
$YUM -y install --nogpgcheck mplayer-codecs* rm -rf mplayer-codecs*
else wget
http://www1.mplayerhq.hu/MPlayer/releases/codecs/mplayer -codecs-20061022-1.i386.rpm
wget
http://www1.mplayerhq.hu/MPlayer/releases/codecs/mplayer -codecs-extra-20061022-1.i386.rpm
$YUM -y install --nogpgcheck mplayer-codecs* rm -rf mplayer-codecs*
(59)
}
rpmfusion(){
if [ -f /etc/yum.repos.d/rpmfusion-nonfree.repo ] then
echo "Rpmfusion already installed" else
$YUM install -y --nogpgcheck
http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm
$YUM -y update --nogpgcheck rpmfusion* fi
}
ok() { clear
zenity --info \
--text="Operation Completed Succesfully, Autoplus will now update itself,
Press Ok to continue." autoplus
(60)
okr() { clear
zenity --info \
--text="Operation Completed Succesfully, You will need to restart comp for changes to take effect,
Autoplus will now update itself, Press Ok to continue."
autoplus }
okb() { clear
zenity --info \
--text="Backup was Succesfully,
You should have a Backup.iso in you Documents folder Autoplus will now update itself,
Press Ok to continue." autoplus
}error() {
cat /var/log/autoplus | zenity --text-info --width 800 --height 480 --title "ERROR OPERATION FAILED "
autoplus} error2() {
(61)
zenity --error \
--text="THIS IS ONLY AVAILABLE IN GNOME" autoplus
}
error3() {
zenity --error \
--text="THIS IS UNAVAILABLE" autoplus
}
sun() { clear
if [ $(arch) != "i686" ] && [ $(arch) != "i586" ] ; then sun64
else sun32 fi }
(62)
4.6. Kuesioner
Berdasarkan data hasil kuesioner tersebut , dicari prosentase masing-masing jawaban dengan menggunakan rumus : Y = P/Q * 100%
Keterangan : P = Banyaknya jawaban responden tiap soal Q = Jumlah Responden
Y = Nilai Prosentase
1. Apakah anda pernah menggunakan Linux ?
A. Ya B. Tidak
2. Apakah Desktop Environment yang Anda gunakan ?
A. Ya B. Tidak
3. Apakah anda setuju Sisitem Operasi hasil remastering lebih mudah digunakan ?
A. Ya B. Tidak
4. Apakah dengan menggunakan Sistem Operasi Linux mengurangi kebutuhan akan
software-software berbayar ?
A. Ya B. Tidak
5. Apakah script Autoinstaller mempermudah Anda dalam melakukan proses instalasi
software-software?
A. Ya B. Tidak
6. Apakah dengan adanya sistem operasi hasil remastering, proses backup data
semakin mudah?
A. Ya B. Tidak
7. Dengan tersedianya conky, nmap, mempermudah Anda memantau resource
komputer anda ?
A. Ya B. Tidak
8. Apakah Anda terbantu untuk melakukan proses remastering dengan adanya script
remastering?
A. Ya B. Tidak
Berikut ini adalah hasil persentase masing-masing jawaban yang diberikan
(63)
1. Apakah Anda pernah menggunakan Linux ?
A. Ya B. Tidak
No. Keterangan Responden Persentase
1 Ya 10 100 %
2 Tidak 0
Dari persentase diatas keseluruhan responden pernah menggunakan Linux.
2. Apakah puas dengan Desktop Environment digunakan pada distro remastering ini?
A. Ya B. Tidak
No. Keterangan Responden Persentase
1 Ya 8 80 %
2 Tidak 2 20%
Dari persentase diatas 8 orang responden menyatakan puas dengan tampilan desktop environment yang digunakan, dan sebanyak 2 responden menyatakan tidak puas.
3. Apakah anda setuju Sisitem Operasi hasil remastering lebih mudah digunakan ?
A. Ya B. Tidak
No. Keterangan Responden Persentase
1 Ya 5 50 %
2 Tidak 5 50%
Dari persentase yang diberikan responden sebanyak 5 orang responden (50%)
menyatakan sistem operasi hasil remastering lebih mudah untuk digunakan, dan 5 orang
lainnya menyatakan sistem operasi hasil remastering sama dengan sistem operasi tanpa
remastering.
4. Apakah dengan menggunakan Sistem Operasi Linux mengurangi kebutuhan akan software-software berbayar ?
A. Ya B. Tidak
No. Keterangan Responden Persentase
1 Ya 9 90 %
(64)
Berdasarkan hasil persentase diatas, dapat disimpulkan bahwa 90% responden setuju dengan penggunaan sistem operasi Linux, mengurasi kebutuhan akan
penggunaan software-software berbayara, sementara 10% tidak setuju.
5. Apakah script Autoinstaller mempermudah Anda dalam melakukan proses instalasi software-software?
A. Ya B. Tidak
No. Keterangan Responden Persentase
1 Ya 10 100 %
2 Tidak 0
Berdasarkan persentase kuesioner diatas dapat disimpulkan bahwa seluruh
responden setuju bahwa script Autoinstaller mempermudah responden dalam
melakukan proses instalasi software.
6. Apakah dengan adanya sistem operasi hasil remastering, proses backup data semakin mudah?
A. Ya B. Tidak
No. Keterangan Responden Persentase
1 Ya 6 60 %
2 Tidak 4 40%
Berdasarkan hasil persentase kuesioner diatas dapat disimpulkan bahwa 60 % (6 orang) responden setuju sistem operasi hasil remastering mempermudah responden
dalam melakukan backup, sementara 40% (4 orang) menyatakan tidak.
7. Dengan tersedianya conky, nmap, mempermudah Anda memantau resource komputer anda ?
A. Ya B. Tidak
No. Keterangan Responden Persentase
1 Ya 10 100 %
2 Tidak 0
Berdasarkan hasil persentase kuesioner diatas dapat disimpulkan bahwa 100 %
(10 orang) responden setuju conky dan nmap mempermudah memantau resource
komputer dan juga memantau jaringan.
8. Apakah Anda terbantu untuk melakukan proses remastering dengan adanya script remastering?
(65)
A. Ya B. Tidak
No. Keterangan Responden Persentase
1 Ya 7 70 %
2 Tidak 3 30%
Berdasarkan hasil persentase kuesioner diatas dapat disimpulkan bahwa 70 % (7
orang) responden setuju script remastering mempermudah responden dalam pembuatan
file remastering, dan 30% responden menyatakan tidak. 4.7. Kesimpulan Hasil Pengujian
Berdasarkan hasil persentase kuesioner diatas dapat ditarik kesimpulan bahwa sistem operasi hasil remastering mempermudah pengguna (karena jawab dari responden lebih banyak menjawab ya, dibandingkan jawaban tidak) dalam pembuatan file ISO
remastering, dan juga mempermudah dalam proses backup dan memonitoring
(66)
60
KESIMPULAN DAN SARAN 5.1 Kesimpulan
Berdasarkan permasalahan yang ada diatas maka dapat disimpulkan : 1. Hasil remastering mempermudah pengguna untuk membuat sistem operasi
dengan FTP dan web server.
2. Berkas ISO yang dihasilkan berukuran lebih kecil dari Fedora 16 DVD. 3. Dapat mempermudah user untuk menggunakan sistem operasi Linux.
4. Komputer dengan memory 768 MB dapat menjalankan sistem operasi Fedora 16 dengan lancar.
5. Komputer dengan VGA build in dapat menjalankan tampilan grafis Fedora 16 dengan maksimal.
6. Autoinstaller yang memudahkan user menginstall software. 7. Berkas ISO hasil remastering memiliki ukuran 500-600 MB.
5.2 Saran
Berikut beberapa saran yang disampaikan oleh penulis : 1. Tampilan antarmuka dibuat lebih menarik.
2. Service-service yang tidak dibutuhkan di nonaktifkan, untuk mengurangi penggunaan memory.
3. Conky ditambah dengan script LUA untuk menghasilkan antarmuka yang lebih menarik.
4. Menggunakan repository dari hardisk untuk mempercepat proses remastering.
(67)
5. Hasil remastering dapat berjalan di sistem operasi dengan arsitektur 32 bit dan 64 bit
(68)
Nama : Tommi Albert Surbakti Jenis kelamin : Laki-Laki
Tempat lahir : Berastagi Tanggal lahir : 6 April 1988 Agama : Katolik
Alamat : Sekeloa Selatan No. 57 RT 07 RW 15 Kec Coblong Kel Lebakgede, Bandung Jawa Barat - 40132
No. Telepon : 081217043936
Email : tommy@surbakti.com
Riwayat Pendidikan :
1994-2000 : SD Negeri Gundaling 1 Berastagi 2000-2003 : SMP Negeri 2 Berastagi
2003-2006 : SMA N 1 Berastagi
2006- 2012 : Program Studi S1 Jurusan Teknik Informatika Universitas Komputer Indonesia Bandung
Riwayat Pekerjaan :
2006 : Membuat Aplikasi Sistem Parkir Swalayan Administrator server untuk perusahaan hosting
(69)
N 2 Berastagi.
Membuat radio online, beserta parsing website Radio Karo Online. Developer dan Administartor Portal Berita Karo.
Membangun Situs Video Streaming Karo.
Kamus Karo Offline berbasis Delphi, C++, Gambas dan Java. 2008 : Mengembangkan aplikasi CMS untuk perusahaan.
2009 : Web developer dan administator website KliK (Komunitas Linux Unikom).
Pengembang website MLM motor, Bandung.
Pengembang dan administrator website MLM obat-obatan herbal, Jakarta.
2010 : Pengembang website ecommerce berbagai perusahaan ecommerce. Membangun aplikasi desktop monitoring server berbasis desktop.
(70)
(71)
(72)
(73)
(1)
BIODATA PENULIS
Nama : Tommi Albert Surbakti Jenis kelamin : Laki-Laki
Tempat lahir : Berastagi Tanggal lahir : 6 April 1988 Agama : Katolik
Alamat : Sekeloa Selatan No. 57 RT 07 RW 15 Kec Coblong Kel Lebakgede, Bandung Jawa Barat - 40132
No. Telepon : 081217043936
Email : tommy@surbakti.com
Riwayat Pendidikan :
1994-2000 : SD Negeri Gundaling 1 Berastagi 2000-2003 : SMP Negeri 2 Berastagi
2003-2006 : SMA N 1 Berastagi
2006- 2012 : Program Studi S1 Jurusan Teknik Informatika Universitas Komputer Indonesia Bandung
Riwayat Pekerjaan :
2006 : Membuat Aplikasi Sistem Parkir Swalayan Administrator server untuk perusahaan hosting
(2)
2007 : Membuat website Ikatan Alumni SMA N 1 Berastagi, Alumni SMP N 2 Berastagi.
Membuat radio online, beserta parsing website Radio Karo Online. Developer dan Administartor Portal Berita Karo.
Membangun Situs Video Streaming Karo.
Kamus Karo Offline berbasis Delphi, C++, Gambas dan Java. 2008 : Mengembangkan aplikasi CMS untuk perusahaan.
2009 : Web developer dan administator website KliK (Komunitas Linux Unikom).
Pengembang website MLM motor, Bandung.
Pengembang dan administrator website MLM obat-obatan herbal, Jakarta.
2010 : Pengembang website ecommerce berbagai perusahaan ecommerce. Membangun aplikasi desktop monitoring server berbasis desktop.
(3)
(4)
(5)
(6)