Anda di halaman 1dari 8

KERNEL LINUX

Disusun sebagai tugas Mata Kuliah Sistem Operasi Dosen Pengampu Bayu Adhi Nugroho,M.Kom

Oleh : Kholid Abdillah Putra (10650051 )

JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI MAULANA MALIK IBRAHIM MALANG SEPTEMBER 2012

KERNEL LINUX
Kholid Abdillah P. Teknik Informatika, UIN Maliki Malang kholidabdillah@gmail.com

KERNEL LINUX
a. Pengertian Kernel Kernel adalah program yang dimuat saat boot yang berfungsi sebagai interface antara user-level program dengan hardware. Fungsinya seperti layaknya sistem operasi, menangani task switching dalam multitasking, menangani permintaan membaca atau menulis peralatan disk, melakukan tugas-tugas network serta mengatur penggunaan memori. Secara teknis Linux hanyalah sebuah kernel. Program lain seperti kompiler, editor, window manager dsb yang disertakan dalam paket hanyalah sebuah distribusi (RedHat , Slackware, SuSE dsb) yang melengkapi kernel menjadi sebuah sistem operasi yang lengkap. b. Download Kernel Source kernel versi 2.0.34 RedHat 5.1 sudah disediakan dalam bentuk paket RPM dalam setiap cd distribusinya. Tapi kita masih bisa mendapatkan versi yang lebih baru di web site RedHat atau dibeberapa sumber di internet seperti: http://www.kernel.org ftp://ftp.cdrom/pub/linux/sunsite/kernel ftp://sunsite.unc.edu/pub/Linux/kernel ftp://tsx-11.mit.edu/pub/linux/source/system Source kernel tersebut biasanya dalam format linux-X.X.XX.tar.gz dimana X.X.XX menunjukkan nomor versi kernel, misalnya 2.0.35. Nomor versi kernel tersebut terdiri dari 3 bagian: major number, minor number dan revision number yang masing-masing dipisah titik. Angka 2 pada kernel 2.0.34 menunjukkan nomor major. Angka ini akan jarang berubah untuk waktu yang lama. Perubahan pada nomor ini menandakan adanya perubahan besar atau upgrade terhadap kernel. Angka 0 pada kernel 2.0.34 menunjukkan nomor minor atau stabilitas. Angka genap (misal 0, 2, 4 dst) menandakan kernel stabil sedangkan angka ganjil menandakan kernel dalam tahap pengembangan atau development. Kernel ganjil mengandung experimental code dan feature terbaru yang ditambahkan oleh developer-nya. Kernel genap pada saat di rilis sudah tidak lagi ada penambahan apapun dan dianggap sudah stabil. Kadang-kadang

kernel ganjil ini malah stabil dan biasanya dipakai oleh mereka yang sedang melakukan percobaan terhadap feature-feature baru tersebut. Dua angka terakhir, 34 menunjukkan nomor revisi. Ini menandakan current patch versi tersebut. Selama tahap pengembangan, versi baru bisa di rilis hingga dua kali seminggu. c. Konfigurasi Kernel Source kernel yang sudah di download biasanya di unpack di direktori /usr/src/. tar -zxvf linux-2.0.34.tar.gz Perintah tersebut akan menguraikan file-file ke dalam direktori /usr/src/linux. Bila perlu sempatkan membaca file /usr/src/linux/README. Konfigurasi dimulai dari direktori /usr/src/linux. Ada tiga cara: 1. make config, berupa text base interface, cocok untuk user yang memiliki terminal model lama dan tidak memiliki seting termcap. 2. make menuconfig, berupa text base juga tapi memiliki puldown menu berwarna, digunakan untuk user yang memiliki standar console. 3. make xconfig, interface menggunakan layar grafik penuh, untuk user yang sudah memiliki X Window. Bila berhasil layar Linux Kernel Configuration akan ditampilkan setelah perintah diatas dijalankan. Ada sekitar 14 menu pilihan dimulai dari Code maturity level options sampai Kernel hacking. Masing-masing memiliki sub-menu bila dipilih dan pilihan yes(y), module(m) atau no(no). Setiap pilihan untuk dimuat/kompile ke dalam kernel atau y akan memperbesar ukuran kernel nantinya. Jadi pilih feature-feature yang sering di gunakan yang di muat ke dalam kernel atau jadikan module untuk feature yang tidak sering di gunakan, misalnya PPP support.

Setelah semua pilihan dianggap sesuai, konfigurasi di simpan dengan memilih save sebelum keluar dari layar menu konfigurasi. Konfigurasi akan disimpan dalam sebuah file. Langkah selanjutnya adalah kompilasi atau dikenal dengan building the kernel. d. Kompilasi Kernel Siapkan kesabaran, terutama bagi user yang melakukan kompilasi kernel di mesin yang memiliki prosesor lambat dan sedikit memori. Kompilasi bisa memakan waktu 10 menit pada mesin dengan prosesor Pentium yang cepat hingga sampai 1,5 jam pada mesin Intel 386. Waktu kompilasi juga bertambah bila sistem digunakan untuk menjalankan proses lain pada saat itu. Tetap di direktori /usr/src/linux, jalankan perintah: make dep; make clean; make zImage Perintah pertama, make dep, membaca file konfigurasi dan membentuk dependency tree. Proses ini mengecek apa yang di kompile dan apa yang tidak di kompile. Selanjutnya, make clean, menghapus seluruh jejak kompilasi yang pernah dilakukan sebelumnya. Ini memastikan agar tidak ada feature versi lama yang tersisa. Terakhir, make zImage, adalah kompilasi sesungguhnya. Bila tidak ada pesan kesalahan, akan terbentuk kernel yang terkompresi dan siap di instalasi. e. Kompile Modul Sebelum instalasi kernel, modul-modul yang berhubungan perlu di kompile juga dengan: make modules Pastikan tidak ada kesalahan. f. Instalasi Kernel Cek lokasi kernel, biasanya nama kernel dimulai dengan vmlinuz, biasanya ada di direktori /boot. Atau buka file /etc/lilo.conf untuk memastikannya. Setelah itu copy file /usr/src/linux/arch/i386/boot/zImage ke direktori /boot dengan nama lain contohnya: cp /usr/src/linux/arch/i386/boot/zImage /boot/vmlinuz-2.0.34-baru Catatan: bila tidak ditemukan file zImage, berarti masih ada kesalahan dalam kompilasi.

Sebelum kernel modul di instalasi, sebaiknya backup dulu modul lama. Modul ada di direktori /lib/modules, rename modul dengan nama lain: cd /lib/modules mv 2.0.34 2.0.34-backup Keuntungan membackup modul ini adalah bila ternyata nanti modul baru tidak berjalan baik, maka modul lama bisa digunakan lagi dengan menghapus modul baru dan merename modul backup menjadi 2.0.34 kembali. Selanjutnya, kembali lagi ke /usr/src/linux dan jalankan perintah di bawah untuk menginstalasi modul ke kernel: make modules_install Akhirnya, edit /etc/lilo untuk menentukan kernel yang akan di pakai dan jangan lupa menjalankan lilo: Lilo Selesai, reboot sistem dan lihat hasilnya. g. Patch Kernel Setiap di keluarkannya kernel versi baru juga di keluarkan sebuah file patch. File patch ini jauh lebih kecil dari file source kernel sehingga jauh lebih cepat bila digunakan untuk upgrade kernel. File patch hanya bekerja untuk mengupgrade satu versi kernel dibawahnya. Misalnya, versi kernel 2.0.27 hanya bisa diupgrade dengan file patch 2.0.28 menjadi kernel 2.0.28. Begitu pula bila kernel 2.0.27 tersebut ingin diupgrade menjadi kernel 2.0.30 maka diperlukan file patch 2.0.28, 2.0.29 dan 2.0.30. Perhatikan, kernel 2.0.27 tidak bisa langsung dipatch menjadi 2.0.30 tanpa melalui file patch 2.0.28, 2.0.29 dan 2.0.30. File-file patch tersebut juga tersedia pada direktori yang sama di FTP dan Website yang biasa menyediakan source kernel. File-file patch tersedia dalam format .gz, setelah di download, pindahkan file patch ini ke direktori /usr/src. Pastikan source kernel versi lama sudah di instalasi juga. Pada direktori yang lama jalankan perintah: gzip -cd patch-2.0.28.gz | patch -p0 Setelah itu periksa apakah ada file yang berakhiran .rej di direktori /usr/src/linux. Bila ditemukan file seperti itu maka patch yang dilakukan tidak berhasil, periksa kembali apakah file patch yang dipakai sudah benar. Beberapa file patch menurut berita kadangkadang memang tidak sesuai untuk sebuah source kernel, terutama source kernel yang

telah di modifikasi oleh developer untuk kepentingan distribusi Linux. Saya tidak tahu pasti mengenai hal ini.

PERINTAH KONFIGURASI DALAM KERNEL


Untuk mengkongurasi fasilitas dan service kernel, eksekusi perintah sebagai berikut : make config Untuk mengkongurasi kernel secara text mode.

Setelah kita mengkongurasi suatu kernel maka langkah selanjutnya adalah membuat image yang akan digunakan dalam proses booting. Perintah yang dieksekusi adalah : make dep Untuk membuat dependency dari setiap fasilitas dan service dari kernel

Module-module yang diperlukan dalam suatu kernel dibentuk dan diletakkan di /lib/modules, modul dalam kernel dibentuk dengan mengeksekusi perintah berikut : make modules Untuk membentuk modul-modul make modules_install Untuk menempatkan modul-modul yang sudah dibentuk ke dalam /lib/modules

SUPER USER DAN ORDINARY USER


Pada system unix deterapkan konsep yang membedakan seorang user dengan user lain. Dimana setiap user memiliki privasi yang didasarkan tasa protes login, hak dan ijin. Pembagian nama login bertujuan untuk memberikan identitas pada tiap identitas agar dapat memiliki file, direktori dan protes sendiri, seorang user dibatasi oleh ijin akses yang berbedabeda. Dalam kita me-login linux,secara umum terdapat 2 jenis user ,yaitu : a. Super User (Root) User ini memiliki simbol #, user ini tidak memiliki keterbatasan dan memiliki hak akses penuh terhadap sistem.Login root digunakan dalam pengelolaan suatu administrasi sistem. b. Ordinary User (User Biasa) user ini memiliki simbol $, user ini memiliki keterbatasan dan hak terhadap system.

LFS (LINUX FROM STRATCH)


Linux From Scratch disingkat LFS, adalah Linux dari Nol atau Linux dari dasar. Pertama kali dikembangkan oleh Gerad Beckmans, berawal dari rasa tidak puas dengan semua distro yang ada. LFS kini merupakan sebuah proyek terbuka yang menyediakan bimbingan dibutuhkan untuk membangun sistim Linux pribadi Anda, langkah demi langkah dari Nol. Baik resep (bahasa Inggris) maupun bahan bakunya yang senantiasa ditingkatkan dan diperbaiki disediakan oleh LFS. Saat membangun distro pribadi secara manual dengan menginstalasi paket satu demi satu, Anda akan mengetahui segalanya yang membuat sebuah Linux berfungsi. Linux From Scratch adalah petunjuk rinci bagaimana Anda dapat bootstrap, membangun, mengkonfigurasi dan menginstal sendiri sistem GNU / Linux dari bawah ke atas.Setiap bagian dari teka-teki Linux dijelaskan, dengan petunjuk tentang cara mengkonfigurasi dan mengkompilasi semua dari source. LFS distribusi LiveCD khusus untuk mengajarkan bagaimana membuat distribusi linux khusus dengan melakukan kompilasi sendiri. LiveCD-nya sendiri, dapat digunakan sebagai host untuk membangun distro.Dalam distribusinya, disertakan semua source code beserta patch-nya yang diperlukan untuk proses kompilasi dan Ebook panduan langkah demi langkah yang bisa di print maupun diakses saat melakukan kompilasi. Linux From Scratch adalah cara untuk menginstal sistem Linux yang bekerja dengan membangun semua komponen secara manual. Ini, tentu saja, proses yang lebih panjang daripada memasang pre-compiled distribusi Linux. Menurut Linux From Scratch website, keuntungan metode ini adalah yang kompak, fleksibel dan sistem aman dan pemahaman yang lebih besar dari kerja internal dari Linux OS. Partisi yang bersih dan sebuah sistem Linux dengan kompilator dan beberapa perangkat lunak penting perpustakaan diperlukan untuk membangun LFS. Daripada menginstal dari sistem Linux yang sudah ada, orang dapat juga menggunakan Live CD (misalnya, Linux From Scratch Live CD). LFS Live CD yang berisi semua paket source (dalam versi lengkap dari Live CD saja), maka buku LFS, otomatis alat-alat bangunan dan (kecuali untuk minimal versi Live CD) sebuah lingkungan GUI Xfce untuk bekerja masuk Pembuatan distro dengan basis Linux From Scratch (LFS) . Metode ini biasanya digunakan bagi pengembang untuk membuat distro tanpa bisa untuk dikembangkan lagi dalam hal ini distro dipakai untuk diri sendiri. Linux From Scratch merupakan cara pembuatan distro secara mandiri, dimana semua aplikasi dikompilasi dari kode sumber murni (pristine code). Kelemahan dari metode ini adalah distro yang dihasilkan tidak biasa dibuat satu ISO yang installable, dan sulit untuk didistribusikan kembali, kalaupun dapat dikembangkan hal tersebut memerlukan usaha yang besar serta memerlukan tim yang handal. keuntungan dengan membangun LFS : 1. LFS mengajarkan bagaimana linux system bekerja dari dalam Membangun LFS dapat mengajarkan kalian bagaimana membuat linux system, bagaimana semua komponen (paket) bekerja sama dan saling ketergantungan satu sama

lain. Dan yang paling penting mengajarkan kita bagaimana untuk memodifikasi linux kita sesuai selera dan kebutuhan kita. 2. Membangun LFS menghasilkan linux system yang sangat solid Saat kalian menginstal linux yang biasa di distribusikan, anda akan berakhir dengan menginstal banyak program bawaan yang munkin akan jarang di gunakan. Program tsb hanya akan memakan ruang disk kita. Tidak sulit ketika menginstal LFS dengan kapasitas 100MB. Kita membuat system yang cukup untuk menjalankan apache web server, total disk yang di pakai sekitar 8MB sampai 5MB atau kurang. Coba itu dengan linux yang biasa di distribusikan. 3. LFS sangat flexible Bangunan LFS bisa dibandingkan dengan rumah selesai. LFS akan memberikan kerangka dari sebuah rumah, tetapi terserah pada Anda untuk menginstal pemipaan, saluran listrik, dapur, kamar mandi, wallpaper, dll Anda memiliki kemampuan untuk mengubahnya menjadi jenis sistem apapun yang Anda butuhkan untuk menjadi, disesuaikan sepenuhnya Anda. 4. LFS menawarkan keamanan tambahan Anda akan mengkompilasi seluruh sistem dari source, sehingga memungkinkan Anda untuk mengaudit semuanya, jika Anda ingin melakukannya, dan menerapkan semua patch keamanan yang Anda inginkan atau perlu mengajukan permohonan. Anda tidak perlu menunggu orang lain untuk menyediakan paket biner baru yang (semoga) perbaikan lubang keamanan. Seringkali, Anda tidak pernah benar-benar tahu apakah lubang keamanan yang tetap atau tidak kecuali jika Anda melakukannya sendiri. Tahap-tahap dari membuat LFS garis besarnya adalah sebagai berikut : Buat partisi kosong dulu dengan format partisi yang support buat linux Buat temporary file system.. Jadi kasarannya kita buat tools chain / rantai untuk membuat sistem asli dari linux yang akan kita buat (ya kasarannya buat konsole sementara untuk ngebuild sistem yang asli) Setelah itu kita chroot ke temporary sistem tadi, baru kita build sistem yang asli Setelah semua sistem selesai dibuat, kita buat bootscriptnya (script2 yang akan tereksekusi saat booting) Set grub loadernya sehingga sistem bisa load di awal menyalakan Komputer Jadi LFS, lalu kita baru buat script2 initnya

REFERENSI
[1 ]http://blog.ub.ac.id/briandanaa/2012/06/10/apa-yang-dimaksut-linux-from-scratch/ [2] http://kambing.ui.ac.id/bebas/v01/TimPandu/sysadm-linux-single.pdf [3] http://kur2003.if.itb.ac.id/file/FMKL-K2-13.pdf [4] http://hastiarblog.blogspot.com/2010/10/comand-line-dan-administrasi-sistem.html [5] http://pemula.linux.or.id/pengguna/kompile-kernel.html

Anda mungkin juga menyukai