Kamis, 26 Mei 2011

PEMAHAMAN DASAR TENTANG OS LINUX

O



BAB I
PENDAHULUAN


1.1 LATAR BELAKANG

          Kehadiran Sistem Operasi yang bersifat terbuka alias Open Source dalam hal ini misalkan Linux telah memicu adanya revolusi pemikiran pada industri perangkat lunak. Dikatakan demikian karena untuk pertama kalinya di dunia, fenomena demokratisasi telah memasuki industri teknologi informasi, sesuatu yang belum pernah terjadi dan terpikirkan sebelumnya. Secara prinsip, perangkat lunak merupakan pengejawantahan dari berbagai ide yang ada di kepala setiap manusia (programmer) ke dalam sebuah lingkungan teknis berbasis komputer. Sehingga kebanyakan orang beranggapan bahwa tidak ada salahnya jika ide maupun hasil pengolahannya dapat diberikan dan disebarluaskan kepada siapa saja yang membutuhkan secara gratis.

          Software Open Source kini menjadi pilihan tepat bagi negara berkembang seperti Indonesia untuk mengurangi tingkat pembajakan. Namun sayangnya, sampai saat ini perkembangan Open Source di tanah air dinilai masih lambat. Engkos Koswara, Staff Ahli Menteri Bidang IT Kementerian Riset dan Teknologi mengatakan, penggunaan Open Source paling besar masih dipegang kalangan akademik, yakni mahasiswa dan pihak kampus. Sementara lembaga pemerintah masih sangat sedikit yang bermigrasi.

          Linux merupakan program open source yang sekarang ini sudah bukan menjadi operating sistem alternatif, namun sudah menjadi operating sistem yang mesti digunakan karena sifatnya yang gratis dan didukung oleh banyak pihak, namun apakah sistem ini dapat dipakai begitu saja?. penggunakan operating sistem linux menjadi hambatan, karena kurangnya SDM yang mengerti tentang linux dan pembelajaran tentang linux yang menjadi momok bagi pegawai  yang sudah terbiasa dengan Windows™, apalagi jika pegawai yang bersangkutan sudah mulai berumur dan keinginan untuk mempelajari sistem baru sudah tidak berminat, karena mereka sudah terbiasa mahir dengan Windows™. Inilah yang menjadi tantangan setiap pemerintahan ketika mereka dihadapkan dengan penggunaan windows bajakan atau mengganti dengan sistem linux?


1.2 TUJUAN
Adapun tujuan dari penulisan ini adalah :
A. mengetahui apa itu linux, perbedaan dengan windows
B. mengetahui perintah dasar linux dan filesystemnya
C. mengetahui cara instalasi linux dan aplikasinya
D. mengetahui konfigurasi system





BAB II
PEMBAHASAN


2.1. PENGENALAN LINUX
         UNIX merupakan salah satu sistem operasi yang mengawali lahirnya Linux ke dunia ini. UNIX merupakan salah satu sistem operasi yang ada saat ini. Adapun UNIX merupakan salah satu sistem operasi populer selain keluarga raksasa Microsoft (mulai dari DOS, MS 9x sampai 7), Novell, OS/2, BeOS, MacOS dan lainnya. Sejarah kemunculan UNIX dimulai pada tahun 1965 ketika para ahli dari Bell Labs, sebuah laboratorium milik AT&T, bekerja sama dengan MIT dan General Electric membuat sistem operasi bernama Multics (sudah pernah dengar belum?). Nah, sistem operasi Multics ini awalnya didesain dengan harapan akan menciptakan beberapa keunggulan, seperti multiuser, multiprosesor, dan multilevel filesystem. Namun pada tahun 1969, AT&T akhirnya menghentikan proyek pembuatan Multics karena sistem operasi Multics ini sudah tidak memenuhi tujuan semula. Dengan kata lain, proyek ini mengalami hambatan karena dalam kenyataannya Multics banyak terdapat bugs dan sulit sekali dioperasikan.

2.2. SEJARAH LINUX
          Kenal Linus Torvalds kan? Linus dilahirkan di Helsinki, Finlandia pada tanggal 28 Desember 1969. Orang yang disebut sebagai Bapak Linux(LINus UniX) ini, sudah mengenal bahasa pemrograman pada umurnya yang ke 10. Saat itu ia sering mengutak-atik komputer kakeknya, Commodore VIC-20. Karena hobinya dalam dunia komputing, 1988 Linus diterima di Univerity of Helsinki dan pada tahun 1990, Linus memulai kelas pemrograman C pertamanya. Pada tahun 1991, Linus tidak puas terhadap sistem operasi yang ada pada PC pertamanya (MS-DOS atau Disk Operation System), OS buatan Microsoft. Linus lebih cenderung untuk menggunakan sistem operasi UNIX seperti yang dipakai komputer milik universitasnya. Akhirnya ia mengganti sistem operasi open source Minix (mini unix) yang berbasiskan UNIX.

          Adapun Minix ini merupakan sistem UNIX kecil yang dikembangkan oleh Andrew S. Tanenbaum, seorang professor yang menggeluti penelitian masalah OS dari Vrije Universiteit, Belanda. Adapun Minix ini digunakan untuk keperluan pengajaran dan pendidikan, Namun Linus merasa bahwa Minix masih memiliki banyak kelemahan. Dan mulai saat itu, di usianya yang ke-23, Linus mulai mengutak-atik kernel Minix. Dan ia mulai mengembangkan sistem yang kompatibel dengan IBM PC.

          Pada bulan Agustus 1991, lahirlah Linux 0.01 hasil oprekan Linus, dan pada tanggal 5 Oktober 1991, secara resmi Linus mengumumkan Linux 0.02 yang hanya dapat menjalankan BASH dan gcc compiler. Selain itu, Linus juga mempublikasikan sistem operasi buatannya tersebut lengkap dengan source codenya, yang ternyata disambut dengan sangat antusias oleh para programmer dan developer di seluruh dunia agar dapat di develop bersamasama Sampai saat ini, Linux dibangun oleh berbagai macam komunitas dan jangan heran apabila banyak sekali distro-distro Linux yang beredar. Mulai dari yang berbayar sampai yang gratis, dari untuk pemula sampai tingkat lanjut, dan biasanya dengan banyaknya distro Linux yang beredar akan membuat orang awam bingung untuk memilih distro.

          Bayangkan, ada beratus-ratus distro yang tercipta atau bahkan beribu-ribu. Namun perlahan tapi pasti, diantara distro-distro Linux ini ada yang menyamai (atau bahkan) melebihi kemampuan dari Sistem Operasi keluarga raksasa (Microsoft) dandengan semakin mudahnya dan semakin lengkapnya dukungan Linux padahardware, besar kemungkinan Linux akan menjadi alternatif (atau bahkan sistem operasi utama di dunia).

          Sejarah sistem operasi berbasiskan Linux berkaitan erat dengan projek GNU, proyek Free Software terkenal yang diketuai oleh Richard Stallman. Projek GNU bermula pada 1983 untuk membuat sistem operasi seperti Unix lengkap dengan kompiler, utiliti aplikasi, development utility dan seterusnya, Proyek ini dirancang sepenuhnya oleh FSF (Free Software Foundation).

          Pada 1991, ketika versi pertama kerangka Linux ditulis (Linux versi 0.01 dikerjakan sekitar bulan Agustus 1991), GNU project telah menghasilkan hampir kesemua komponen sistem ini, kecuali kernel. Torvalds dan programmer-programer pengembang kernel lainnya seperti Linux menyesuaikan kernel mereka supaya dapat berfungsi dengan komponen GNU yang sudah ada, hasilnya berupa Sistem Operasi yang dapat berfungsi dengan komponen GNU tesebut.








Richard Stallman,pendiri proyek GNU,dan Linus Torvalds, pembuat kernel Linux



          Linux mendukung banyak Tools Komputer, dan telah digunakan di dalam pelbagai perangkat, mulai komputer pribadi sampai Superkomputer, dari Sistem Benam (Embedded System) seperti Telephone, Fax, Handycam, hingga mesin cuci.

          Pada mulanya, ia dibuat dan digunakan oleh peminat linux saja. Kini Linux telah mendapat dukungan dari perusahaan besar seperti IBM, dan HP. Para analis memperkirakan bahwa kejayaan linux ini disebabkan karena Linux tidak bergantung kepada vendor (vendor-independence), biaya maintenance yang rendah, serta faktor kenyamanan dan kestabilannya berbanding dengan Microsoft Windows. Ciri-ciri ini juga menjadi bukti atas keunggulan model open source development.


LINUX Dan Maskotnya TUX

TUX
          Tak seprti produk komersial yang lain, Linux tak memiliki sebuah logo yang terlihat hebat, hanyalah sebuah burung Penguin yang memperlihatkan sikap santai ketika berjalan. Logo ini mempunyai asal mula yang unik, awalnya tak ada satu logo yang menggambarkan tredmark dari LINUX sampai ketika Linus (sang penemu) berlibur ke sebuah kebun binatang, dan tengah member makan penguin karena kecintaannya terhadap hewan yang satu ini, tak sengaja Penguin yang imut dan lucu itu menggigit jarinya. Hal ini lah yang membuat Linus mengalami demam yang hebat selama berhari-hari. Kejadian ini kemudian menginspirasikan Linus untuk memakai penguin sebagai logonya dengan haraoan user menjadi demam menggunakan system operasi yang beliau ciptakan.
TUX, nama seekor Penguin yang menjadi logo maksot dari LINUX. Tux sendiri hasil karya seniman Larry Ewing, yang memenagkan kontes menggambar logo LINUX yang bertemakan Penguin (1996). TUX menggambarkan seekor penguin yang tengah duduk kekenyangaan setelah banyak memakan ikan hering. Dan atas usulan James Huges dipilihlah nama TUX yang berarti Torvolds Unix. Lengkap lah sudah logo dari LINUX, berupa penguin dengan nama TUX. Tredmark ini segera didaftarkan untuk menghindari adanya pemalsuan. Lunux telah terdaftar sebagai Program siste, operasi (os).
Hingga sekarang logo Linux yaitu TUX sudah terkenal ke berbagai penjuruh dunia. Orang lebih mudah mengenal segala produk yang berbau Linux hanya dengan melihat logo yang unik nan lucu hasil kerjasama seluruh komunitas Linux di seluruh dunia.





2.3 KONSEP DASAR SISTEM OPERASI

          Sebuah sistem komputer memiliki kumpulan program dasar yang disebut sistem operasi. Program-program yang paling penting dalam sistem operasi tersebut disebut kernel. Kernel diload ke dalam RAM ketika system boot dan mengandung prosedur kritis yang dibutuhkan sistem untuk beroperasi. Sebuah sistem operasi harus memenuhi dua tujuan dasar :
• Berinteraksi dengan komponen hardware yang melayani elemen-elemen yang dapat diprogram yang terdapat pada platform hardware.
• Menyediakan lingkungan eksekusi kepada aplikasi yang berjalan pada komputer.

          Sistem operasi UNIX-like menyembunyikan semua detail low-level yang berkaitan dengan organisasi fisik komputer dari aplikasi yang dijalankan pemakai. Sebuah program yang ingin menggunakan sumber daya hardware harus membuat request kepada sistem operasi. Kernel memeriksa request dan berinteraksi dengan hardware atas nama aplikasi pemakai jika request tersebut dipenuhi. Mekanisme tersebut bergantung pada ketersediaan fitur hardware yang dapat membedakan mode eksekusi untuk CPU yaitu nonpriviledge mode (User Mode) untuk program user dan priviledge mode (Kernel Mode) untuk kernel.


2.3.1  Sistem Multiuser
          Sistem multiuser adalah komputer yang dapat mengeksekusi beberapa aplikasi yang dimiliki dua user atau lebih secara konkuren dan independen. Konkuren berarti aplikasi dapat aktif secara bersamaan dan saling bersaing untuk menggunakan sumber daya seperti CPU, memori, hard disk, dan lain sebagainya. Independen maksudnya adalah setiap aplikasi dapat menjalankan task-nya tanpa harus mempedulikan apa yang sedang dijalankan oleh pemakai lainnya. Sistem operasi yang multiuser harus memiliki beberapa fitur :
  • Mekanisme authentication untuk verifikasi identitas pemakai
  • Mekanisme proteksi terhadap program user yang mengandung bug sehingga menghindari kemungkinan mem-block aplikasi lain dalam sistem.
  • Mekanisme proteksi terhadap program user yang dapat mengganggu atau memata-matai aktivitas user lain.
  • Mekanisme penghitungan yang membatasi jumlah sumberdaya yang dapat dialokasi untuk masing-masing pemakai.



2.3.2 User Dan Group
          Dalam sebuah sistem multiuser, setiap user memiliki ruang privat dalam sistem, Umumnya, ia memiliki kuota dari harddisk untuk menyimpan file. Sistem operasi harus dapat memastikan bahwa ruang privat seorang user hanya dapat diakses oleh user yang bersangkutan. Sistem harus memastikan bahwa tidak ada user yang dapat mengeksploitasi aplikasi sistem untuk melanggar ruang privat user lain. Mekanisme untuk menjamin hal tersebut adalah dengan penggunaan User ID dan password yang harus dimasukkan user ketika ia login.
Untuk dapat berbagi file secara selektif antar-user, setiap user adalah anggota dari sebuah group. Setiap file diasosiasikan untuk setiap groups. Setiap group memiliki hak akses yang berbeda untuk sebuah file. Sistem operasi UNIX-like memiliki user spesial yang disebut root,superuser, atau supervisor. Administrator sistem harus login sebagai root untuk dapat mengatur user account, melakukan tugas maintenance, dan lain sebagainya. Root user dapat mengakses setiap file dalam sistem dan dapat mengambil alih program user lainnya.

2.3.3 Proses
       Sebuah proses dapat didefinisikan sebagai instans eksekusi program. Sistem operasi modern memungkinkan proses memiliki beberapa flow eksekusi, yaitu beberapa sekuens instruksi yang dieksekusi pada ruang alamat yang sama. Sistem multiuser harus dapat menciptakan lingkungan tempat beberapa proses dapat aktif secara konkuren dan saling bersaing untuk sumberdaya sistem. Sistem yang memungkinkan proses aktif konkuren disebut sebagai multiprogramming atau multiprocessing. Beberapa proses dapat mengeksekusi program yang sama secara konkuren sedangkan proses yang sama dapat mengeksekusi beberapa program secara sekuensial.
          Overview Kernel Linux dan Signaling Halaman 5 dari 22 Komponen sistem operasi yang menentukan proses mana yang dapat dilanjutkan disebut scheduler. Beberapa sistem operasi hanya memungkinkan proses nonpreemptive yang berarti scheduler hanya diaktifkan ketika proses secara sukarela melepaskan aksesnya terhadap CPU. Namun proses untuk sistem multiuser harus preemptive yaitu sistem operasi harus mencatat jangka waktu sebuah proses mengakses CPU dan secara periodik mengaktifkan scheduler.


2.3.4 Prinsip rancangan LINUX
Dalam rancangan keseluruhan, Linux menyerupai implementasi UNIX non-microkernel yang lain. Ia adalah sistem yang multi-user, multi-tasking dengan alat-alat UNIX-compatible yang lengkap. Sistem berkas Linux mengikuti semantik tradisional UNIX, dan model jaringan standar UNIX diimplementasikan secara keseluruhan. Ciri internal desain Linux telah dipengaruhi oleh sejarah perkembangan sistem operasi ini.

2.3.5 Prinsip Desain LINUX
    Akibat semakin berkembangnya teknologi PC, kernel Linux juga semakin lengkap dalam mengimplementasikan fungsi UNIX. Cepat dan efisien merupakan tujuan desain yang penting, tetapi akhir-akhir ini konsentrasi perkembangan Linux lebih pada tujuan desain yang ketiga yaitu standarisasi. Standar POSIX terdiri dari kumpulan spesifikasi dari aspek berbeda kelakuan sistem operasi. Ada dokumen POSIX untuk fungsi sistem operasi biasa dan untuk ekstensi seperti proses untuk thread dan operasi real-time. Linux di desain supaya sesuai dengan dokumen POSIX yang relevan; sedikitnya ada dua distribusi Linux yang sudah memperoleh sertifikasi ofisial POSIX.
Karena Linux memberikan interface standar ke programmer dan pengguna, Linux tidak membuat banyak kejutan kepada siapa pun yang sudah terbiasa dengan UNIX. Namun interface pemrograman Linux merujuk pada semantik SVR4 UNIX daripada kelakuan BSD. Kumpulan perpustakaan yang berbeda tersedia untuk mengimplementasi semantik BSD di tempat dimana kedua kelakuan sangat berbeda.


2.4. DISTRIBUSI LINUX
         Terdapat banyak versi atau distribusi Linux (lebih dikenali sebagai Distro), yang dibuat oleh individu, grup, dan lembaga lain. Masing-masingnya menyertakan program sistem operasi dan program aplikasi tambahan untuk di-install di komputer, di samping itu ada juga yang menyertakan suatu program lengkap yang dapat dijalankan langsung dari proses booting CD (live-CD).
          Inti bagi setiap distro Linux adalah Kernel Linux, koleksi program dari projek GNU (atau projek lain), shell, dan aturcara utiliti seperti pustaka (libraries), Compiler, dan Pengedit (editor). Kebanyakan sistem juga menyertakan aturcara dan utiliti yang bukan-GNU, bagaimanapun utiliti tersebut dapat diasingkan dan masih menyediakan sistem ala-Unix. Beberapa contoh adalah aturcara dan utiliti dari BSD dan Sistem Window-X (X-Window System). X menyediakan Antaramuka Grafis (GUI) yang asas bagi sistem Linux.
Ada banyak sekali Distro Linux, diantaranya :
  • RedHat, distribusi yang paling populer, minimal di Indonesia. RedHat merupakan distribusi pertama yang instalasi dan pengoperasiannya mudah.
  • Debian, distribusi yang mengutamakan kestabilan dan kehandalan, meskipun mengorbankan aspek kemudahan dan kemutakhiran program. Debian menggunakan file .deb dalam paket instalasi programnya.
  • Slackware, merupakan distribusi yang pernah merajai di dunia Linux. Hampir  semua dokumentasi Linux disusun berdasarkan Slackware. Dua hal penting dari Slackware adalah bahwa semua isinya (kernel, library ataupun aplikasinya) adalah yang sudah teruji.  Sehingga mungkin agak tua tapi yang pasti stabil. Yang kedua karena dia menganjurkan untuk menginstall dari source sehingga setiap program yang kita install teroptimasi dengan sistem kita. Ini alasannya dia tidak mau untuk menggunakan binary RPM dan sampai Slackware 4.0, ia tetap menggunakan libc5 bukan glibc2 seperti yang lain.
  • SuSE, distribusi yang sangat terkenal dengan YaST (Yet another Setup Tools) untuk mengkonfigurasi sistem. SuSE merupakan distribusi pertama dimana instalasinya dapat menggunakan bahasa Indonesia.
  • Mandrake, merupakan varian distro RedHat yang dioptimasi untuk pentium.  Kalau komputer kita menggunakan pentium keatas,umumnya Linux bisa jalan lebih cepat dengan Mandrake.
  • WinLinux, distro yang dirancang untuk diinstall di atas partisi DOS (WIndows).  Jadi untuk menjalankannya bisa di-klik dari Windows. WinLinux dibuat seakan-akan merupakan suatu program aplikasi under Windows.


2.5 KOMPONEN SISTEM LINUX
    Sistem Linux terdiri dari tiga bagian kode penting:
1. Kernel: Bertanggung jawab memelihara semua abstraksi penting dari sistem operasi, termasuk hal seperti proses-proses dan memori virtual. Kernel Linux terdiri dari beberapa bagian penting, seperti:
  • manajemen proses,
  • manajemen memori,
  • hardware device drivers,
  • filesystem drivers,
  • manajemen jaringan dan lain-lain.
Namun bagian yang terpenting ialah manajemen proses dan manajemen memori :
  • Manajemen memori menangani daerah pemakaian memori, daerah swap, bagian-bagian kernel dan untuk buffer cache.
  • Manajemen proses menangani pembuatan proses-proses dan penjadwalan proses. Pada bagian dasar kernel berisi hardware device drivers untuk setiap jenis hardware yang didukung.
Selain mengatur penggunaan memori, piranti masukan keluaran (perangkat I/O), proses-proses, pemakaian file pada file system dan lain-lain, kernel juga menyediakan sekumpulan layananyang digunakan untuk mengakses kernel yang disebut “system call”.  System call ini digunakan untuk mengimplementasikan berbagai layanan yang dibutuhkan oleh sistem operasi.


2. Perpustakaan system (system Library): menentukan kumpulan fungsi standar dimana aplikasi dapat berinteraksi dengan kernel, dan mengimplementasi hampir semua fungsi sistem operasi yang tidak memerlukan hak penuh atas kernel.
  • Perpustakaan sistem (termasuk sekumpulan layanan yang dimiliki kernel) menyediakan banyak tipe fungsi. Pada level yang paling mudah, mereka membolehkan aplikasi melakukan permintaan pada servis sistem kernel.
  • Library system membuat sebuah panggilan sistem (system calls), melibatkan transfer kontrol dari mode user yang tidak penting ke mode kernel yang penting, detil dari transfer ini berbeda pada masing-masing arsitektur. 
  • library bertugas untuk mengumpulkan argumen system-call dan jika perlu mengatur argumen tersebut dalam bentuk khusus yang diperlukan untuk melakukan system call.
  • Semua fungsi yang diperlukan untuk mendukung jalannya aplikasi UNIX atau POSIX diimplementasikan dalam perpustakaan sistem.
  • Sistem Library dan semua program-program lainnya yang berjalan di atas kernel disebut “user mode”.
  • Perbedaan mendasar antara perpustakaan sistem dan program aplikasi adalah perpustakaan sistem dibutuhkan agar suatu sistem operasi dapat berjalan sedangkan program aplikasi adalah program yang dibutuhkan untuk menjalankan suatu aplikasi tertentu. Contoh : daemon merupakan system library dan pengolah kata (word processor) merupakan program aplikasi.
3. Utilitas Sistem (System Utility): adalah program yang melakukan pekerjaan manajemen secara individu dan khusus. Sistem linux mengandung banyak program- program user-mode:
  • Utilitas sistem termasuk semua program yang diperlukan untuk meng-inisialisasi sistem, seperti program untuk konfigurasi alat jaringan (network device) atau untuk load modul kernel. Program server yang berjalan secara kontinu juga termasuk sebagai utilitas sistem, program semacam ini mengatur permintaan user login, koneksi jaringan yang masuk, dan antrian printer.
  • Utilitas yang lebih kompleks dapat melakukan fungsi text-processing, seperti menyusun data tekstual atau melakukan pattern-searches pada input teks. Jika digabung, utilitas-utilitas tersebut membentuk toolset standar yang diharapkan oleh user pada sistem UNIX mana saja, walau pun tidak melakukan fungsi sistem operasi apapun, utilitas tetap merupakan bagian penting dari sistem Linux dasar.

2.6 MODUL KERNEL LINUX

       Kernel modul juga memberikan keuntungan lain yaitu membuat sistem Linux dapat dinyalakan dengan  kernel standar yang minimal, tanpa tambahan device driver yang ikut dipanggil. Device driver yang dibutuhkan dapat  dipanggil kemudian secara eksplisit mau pun secara otomatis saat dibutuhkan. Terdapat tiga komponen untuk menunjang modul kernel Linux:
  • managemen modul,
  • registrasi driver, dan
  • mekanisme penyelesaian konflik.
      Manajemen modul akan mengatur pemanggilan modul ke dalam memori dan berkomunikasi dengan bagian lainnya dari kernel. Memanggil sebuah modul tidak hanya memasukkan isi binary-nya ke dalam memori kernel, namun juga harus dipastikan bahwa setiap rujukan yang dibuat oleh modul ke symbol kernel atau pun titik masukan diperbaharui untuk menunjuk ke lokasi yang benar di alamat kernel. Linux membuat tabel simbol internal di kernel. Tabel ini tidak memuat semua simbol yang didefinisikan di kernel saat kompilasi, namun simbol-simbol tersebut harus diekspor secara eksplisit oleh kernel. Semua hal ini diperlukan untuk penanganan rujukan yang dilakukan oleh modul terhadap simbol-simbol.

Pemanggilan modul dilakukan dalam dua tahap:

  1. Utilitas pemanggil modul akan meminta kernel untuk mereservasi tempat di memori virtual kernel untuk modul tersebut, kemudian Kernel akan memberikan alamat memori yang dialokasikan dan utilitas tersebut dapat menggunakannya untuk memasukkan kode mesin dari modul tersebut ke alamat pemanggilan yang tepat. Berikutnya system calls akan membawa modul, berikut setiap tabel simbol yang hendak diekspor, ke kernel. Dengan demikian modul tersebut akan berada di alamat yang telah dialokasikan dan tabel simbol milik kernel akan diperbaharui.
  2. Komponen manajemen modul yang lain adalah peminta modul. Kernel mendefinisikan antarmuka komunikasi yang dapat dihubungi oleh program managemen modul. Saat hubungan tercipta, kernel akan menginformasikan proses managemen kapan pun sebuah proses meminta device driver, sistem berkas, atau layanan jaringan yang belum terpanggil dan memberikan manajer kesempatan untuk memanggil layanan tersebut. Permintaan layanan akan selesai saat modul telah terpanggil. Manajer proses akan memeriksa secara berkala apakah modul tersebut masih digunakan, dan akan menghapusnya saat tidak diperlukan lagi.



2.7 FILESYSTEM DAN PERINTAH DASAR LINUX

2.7.1 File System Linux
         Ketika awal mula mencoba Linux kemudian mengeksplorasi direktory dan filefilenya, ada kemungkinan timbul pertanyaan-pertanyaan. “Apa maksud dari Home Directory, Root Folder (/), /etc, /var/, /boot, /home?” “Apakah Linux mengenal istilah ‘Drive A’, ‘Drive C, D’?” “Mengapa tidak ditemukan file program seperti .exe, .com, dll di dalam Linux ?” Untuk mengerti filesystem di Linux, kita perlu sedikit mengubah pengertian yang telah kita anut selama ini terhadap filesystem, khususnya filesystem di
system operasi Windows. Oleh karena itu, modul ini memerlukan asumsiasumsi sebagai berikut :

1. Pemahaman terhadap filesystem di Windows
2. Pemahaman komputer secara umum, misalnya apa itu direktori, dsbnya.

Dalam modul ini, yang dimaksud dengan filesystem adalah suatu cara pengorganisasian file dan direktori di dalam suatu media penyimpanan (misalnya harddisk).

1) Direktori / Partisi
         Filesytem di dalam Linux sebenarnya ada persamaan dengan Windows, misalnya kedua OS ( Operating System ) ini sama-sama mempunyai istilah ‘root directory’. Di dalam Windows tidak terdapat direktori bernama ‘root’, tapi sebenarnya yang dimaksud dengan root direktori dalam Windows adalah ketika user berada dalam prompt C:/. Root direktori ini adalah tempat awal dimana nantinya semua direktori akan bercabang.


2) Linux Tidak Mengenal ‘Drive C, Drive D’ Dll
        Disinilah perbedaan cara organisasi file dari Linux. Kita bisa katakan bahwa /etc, /boot, dll itu adalah ‘partisi’ seperti yang dikenal dalam Windows (walaupun tidak sama persis. Sebab Windows hanya mengenal 1 partisi utama dan partisi extended. Sedangkan di dalam Linux kita bisa membuat direktori atau partisi itu sangat banyak). Jadi /etc, /boot, /home itu bisa dikatakan sebagai partisi, tetapi jangan mengunci dalam pengertian filesystem Windows.
          Sebenarnya kita bisa saja membuat direktori bernama ‘C’ atau ‘D’, tapi hal ini tidak ada gunanya atau hubungannya dengan organisasi file/direktori dalam Linux. Dalam Linux, file-file dikelompokkan lebih berdasarkan fungsi, jadi misalnya: semua file konfigurasi akan berada dalam direktori /etc. Sedangkan Windows menggolongkan file berdasarkan Program, Misalnya program WinZip, maka boleh dibilang semua file program WinZip akan berada dalam direktori C:/Program Files/Winzip (kecuali bila diinstall dalam direktori lain).

3) Penamaan File
        Sistem penamaan file di dalam Linux lebih fleksibel. Dalam artian, tidak semua file memerlukan extension seperti halnya di dalam Windows. Jadi tidak akan ditemukan file berextension ‘exe’ atau ‘com’ di dalam Linux. Filefile aplikasi di Linux tidak memerlukan extension. Extension file dalam Linux hanya berguna untuk menandakan apa fungsi dari file itu, misalnya extension ‘conf’ untuk file konfigurasi (misalnya: named.conf), extension ’sh’ untuk file script.

4) Device = Nama File
        Satu lagi yang menarik dari Linux. Device-device seperti floppy disk, harddisk, CDROM, modem, dll, ditulis dalam bentuk sebuah file. Device ?device tersebut dapat dilihat dalam direktori /dev/ (device).

5) Daftar Direktori Dalam Linux
        Seluruh informasi yang tersimpan dalam Linux berada pada sebuah struktur file. Sistem file yang tersusun dalam direktori-direktori yang menyerupai struktur tree (seperti pohon dengan akar berada diatas dan cabang dibawah).

/
(root!)
|
|
—————————————————————-
| | | | | | | | |
| | | | | | | | |
/bin /boot /dev /etc /home /lib /tmp /usr /sbin
|
|
—————–
| |
/home/akbar /home/sabar


/  : root direktory
/home : direktori tempat user menaruh filenya. Jadi misalnya user akbar akan memiliki direktori home sbb: /home/akbar/
/etc : direktori tempat semua file konfigurasi, baik dari program aplikasi maupun system Linux.
/bin : direktori tempat binary dari program-program yang bisa dijalankan.
/sbin : sama seperti /bin, tapi khususnya untuk program-program yang berkaitan dengan system.
/tmp : sama seperti direktori direktori temp pada Windows, namun pada Linux direktori /tmp ini akan dihapus secara periodik
/usr : direktori yang berisi file-file program yang tidak kritis/penting sekali.
/var : direktori tempat menaruh file-file yang berubah-ubah terus, seperti file log, dan mail.
/boot : direktori tempat menaruh file-file yang berkaitan dengan proses booting     dari Linux
/dev/had : harddisk IDE pertama Anda
/dev/hda1 : partisi pertama pada harddisk IDE pertama
/dev/hdb2 : partisi kedua pada harddisk IDE kedua
/dev/fd0 : floppy drive pertama
/dev/ttyS1 : serial port yang pertama
/dev/hdc : biasanya CDROM
/dev/sda : device pertama pada SCSI controller




2.5.2 Perintah Dasar Linux
Perintah untuk berbagai operasi dasar di sistem operasi linux, beserta penjelasannya, dapat saudara lihat pada tabel yang telah penulis susun sebagai berikut:

PERINTAH KETERANGAN



ls
Melihat isi file dari direktori aktif. Pada linux perintah dir hanya
berupa alias dari perintah ls. Untuk perintah ls sendiri sering
dibuatkan alias ls --color, agar pada waktu di ls ditampilkan
warna-warna sesuai dengan file-filenya, biasanya hijau untuk
execute, dsb.

ls -al
Melihat seluruh isi file pada direktori aktif beserta file hidden,
lalu ditampilkan layar per layar.

cd directory
Change directory. Menggunakan cd tanpa nama direktori akan
menghantarkan anda ke home direktori. Dan cd – akan
menghantarkan anda ke direktori sebelumnya.

cp source destination Mengopi suatu file

mcopy source destination Mengcopy suatu file dari/ke dos filesystem. Contoh <tt>mcopy
a:autoexec.bat ~/junk . Gunakan man mtools untuk command
yang sejenis : mdir, mcd, mren, mmove, mdel, mmd, mrd,
mformat....
mv source destination Memindahkan atau mengganti nama file
ln -s source destination Membuat Simbolic Links, contoh <tt>ln -sf
/usr/X11R6/bin/XF86_SVGA /etc/X11/X, membuat Simbolic
link dari file XF86_SVGA ke X
rm files Menghapus file
mkdir directory Membuat direktori baru
rmdir directory
Menghapus direktori yang telah kosong


rm -r files (recursive remove) Menghapus file, direktori dan subdirektorinya. Hati-hati menggunakan perintah ini apabila anda login sebagai root, karena root dengan mudah dapat menghapus seluruh file pada sistem dengan perintah di atas, tidak ada perintah untuk undelete di Linux.

more Untuk melihat isi suatu file, dengan tambahan perintah more, maka isi file tersebut ditampilkan layar per layar.

less filename Melihat suatu file layar per layar, dan tekan tombol "q" apabila
ingin keluar,

pico filename Edit suatu text file.
pico -w filename Edit suatu text file, dengan menonaktifkan fungsi word wrap,
sangat berguna untuk mengedit file seperti /etc/fstab.

lynx file.html Melihat file html atau browse ke net dengan text mode, dimana gambar/image tidak dapat ditampilkan, tapi lynx adalah suatu browser yang sangat cepat, sangat berguna bila anda hanya menginginkan suatu artikel tanpa image.

tar –zxvf filename.tar.gz
Meng-untar sebuah file tar sekaligus meng-uncompress file tersebut (*.tar.gz atau *.tgz), untuk meletakkannya direktori yg diinginkan tambahkan option -C direktori, contoh tar –zxvf filename.tar.gz -C /opt (meletakkan file tersebut di direktori /opt

tar –xvf filename.tar
Meng-untar sebuah file tar yang tidak terkompress (*.tar).

gunzip
filename.gz
Meng-uncompress sebuah file zip (*.gz" or *.z). dengan menggunakan gzip (juga zip atau compress) jika anda menginginkan mengompress file.
bunzip2 filename.bz2
Meng-uncompress file dengan format (*.bz2) dengan utility "bzip2", digunakan pada file yang besar.

unzip
filename.zip
Meng-uncompress file dengan format (*.zip) dengan utiliti
"unzip" yang kompatibel dengan pkzip for DOS.

find / -name
"filename"
Mencari "namafile" pada komputer anda dimulai dengan direktori /. Namafile tersebut mungkin saja berisi wildcard (*,?).

locate filename
Mencari file dengan string "filename". Sangat mudah dan cepat dari perintah di atas.
pine
Email reader yang sangat mudah digunakan, dan menjadi
favorit banyak pemakai mesin Unix. Atau anda bisa pakai
email yang sangat customize, yaitu mutt ,

talk username1
Berbicara dengan keyboard dengan user lain yg sedang login pada mesin kita (atau gunakan talk username1@machinename</t> untuk berbicara dengan komputer lain). Untuk menerima undangan percakapan, ketikkan <tt>talk username2. Jika seseorang mencoba untuk berbicara dengan anda dan itu dirasakan mengganggu, anda bisa menggunakan perintah mesg n untuk menolak pesan tersebut. Dan gunakan perintah who atau rwho untuk melihat siapa user yang mengganggu tersebut.

mc
Menjalankan "Midnight Commander" sebagai file manager, cepat dan bagus.




telnet server
Untuk menghubungkan komputer kita ke komputer lain dengan menggunakan protokol TELNET. Gunakan nama mesin atau Nomor IP mesin, dan anda akan mendapatkan prompt login name dari mesin tersebut, masukkan passwordnya, oh ya .. anda juga harus punya account di mesin remote tersebut. Telnet akan menghubungkan anda dengan komputer lain dan membiarkan anda untuk mengoperasikan mesin tersebut. Telnet sangat tidak aman, setiap yang anda ketik menjadi "open text", juga dengan password anda! Gunakan ssh alih-alih telnet untuk mengakses mesin secara remote.




rlogin server
(remote login) Menghubungkan anda kekomputer lain. Loginname dan password, tetapi apabila account anda tersebut telah dipakai, maka anda akan mendapatkan pesan kesalahan pada password anda. Sangat tidak aman juga, gunakan ssh sebagai gantinya.




rsh server
(remote shell) Jalan lain untuk menghubungkan anda ke
remote machine. Apabila login name/password anda sedang
dipakai di remote mesin tsb, maka password anda tidak akan
berlaku. Idem dengan rlogin, gantikan dengan ssh.

ftp server
Ftp ke mesin lain, ini sangat berguna untuk mengopy file
ke/dari remote mesin. Juga tidak aman, gunakan scp dari
keluarga ssh sebagai gantinya.


minicom
Program Minicom (dapat dikatakan seperti "Procomm/Hyperterminal for Linux")


/program_name Menjalankan program pada direktori aktif, yang mana tidak
terdapat pada PATH anda

startx
Menjalankan X-window server dan meload default windows
manager. Sama seperti perintah "win" under DOS dengan
Win3.1


startx -- :1
Menjalankan sesi X-windows berikutnya pada display 1
(default menggunakan display 0). Anda dapat menjalankan
banyak GUI terminal secara bersamaan, untuk pindah antar
GUI gunakan <ctrl><alt><f7>, <ctrl><alt><f8>, etc, tapi ini
akan lebih banyak memakan memori.


xterm
(pada X terminal) ,menjalankan X-windows terminal. Untuk
keluar ketikkan exit


xboing
(pada X terminal). Sangat lucu deh ...., seperti games-games
lama .....


gimp
(pada X terminal) Program image editor yang sangat bagus,
bisa disamakan dengan Adobe Photoshop, yang
membedakan adalah program ini gratis.


netscape
(pada X terminal) menjalankan netscape, versi pada waktu
tulisan ini dibuat telah mencapai versi 4.7



netscape -display
host:0.0
(pada X terminal) menjalankan netscape pada mesin yang
aktif dan menampilkan outputnya pada mesin yang bernama
host display 0 screen 0. Anda harus memberikan akses untuk
mesin aktif untuk menampilkannya pada mesin host dengan
perintah xhost


shutdown -h now
(sebagai root) Shut down sistem. Umumnya digunakan untuk
remote shutdown. Gunakan <ctrl><alt> untuk shutdown pada
konsol (dapat dijalankan oleh user).


man topic
Menampilkan daftar dari sistem manual pages (help) sesuai
dengan topic. Coba man man. lalu tekan q untuk keluar dari
viewer. Perintah info topic Manual pages dapat dibaca dilhat dengan cara any_command --help.
apropos topic
Menampilkan bantuan manual berdasarkan topic.



hostname
Menampilkan nama local host (mesin dimana anda sedang
bekerja). Gunakan perintah netconf (sebagai root) untuk merubah nama host dari mesin tersebut, atau edit file /etc/hosts.

whoami
Mencetak login name anda

id username
Mencetak user id (uid) atau group id (gid)


date
Mencetak atau merubah tanggal dan waktu pada komputer,
contoh merubah tanggal dan waktu ke 2000-12-31 23:57
dengan perintah; date 123123572000


time
Melihat jumlah waktu yg ditangani untuk penyelesaian suatu
proses + info lainnya. Jangan dibingungkan dengan perintah
date

who
Melihat user yang login pada komputer kita.


rwho -a
Melihat semua user yg login pada network anda. Layanan perintah rwho ini harus diaktifkan, jalankan setup sebagai root
untuk mengaktifkannya.

finger username
Melihat informasi user, coba jalankan; finger root

last
Melihat user sebelumnya yang telah login di komputer.


uptime
Melihat jumlah waktu pemakaian komputer oleh seseorang, terhitung proses reboot terakhir.

ps
(=print status) Melihat proses-proses yang dijalankan oleh user


ps axu
Melihat seluruh proses yang dijalankan, walaupun tanpa terminal control, juga ditampilkan nama dari user untuk setiap
proses.
top
Melihat proses yang berjalan, dengan urutan penggunaan cpu.

uname -a
Informasi system kernel anda

free
Informasi memory (dalam kilobytes).

df -h
(=disk free) Melihat informasi pemakaian disk pada seluruh
system (in human-readable form)
du / -bh
(=disk usage) Melihat secara detil pemakaian disk untuk setiap direktori, dimulai dari root (in human legible form).

cat /proc/cpuinfo
Cpu info. Melihat file pada /proc directori yang bukan merupakan file nyata (not real files)

cat/proc/interrupts
Melihat alamat interrupt yang dipakai.

cat /proc/version
Versi dari Linux dan informasi lainnya.

cat/proc/filesystems Melihat filesystem yang digunakan.

cat /etc/printcap Melihat printer yang telah disetup

lsmod
as root) Melihat module-module kernel yang telah di load.

set Melihat environment dari user yang aktif

echo SPATH
Melihat isi dari variabel PATH. Perintah ini dapat digunakan
untuk menampilkan variabel environmen lain dengan baik.
Gunakan set untuk melihat environmen secara penuh.


dmesg
Mencetak pesan-pesan pada waktu proses boot.
(menampilkan file: /var/log/dmesg).

clear Membersihkan layar.

adduser Menambah pengguna.













2.8 PERBEDAAN DAN PERBANDINGAN LINUX TERHADAP OS LAINNYA
Satu hal yang membedakan Linux terhadap sistem operasi lainnya adalah harga. Linux ini lebih murah dan dapat diperbanyak serta didistribusikan kembali tanpa harus membayar fee atau royalti kepada seseorang. Tetapi ada hal lain yang lebih utama selain pertimbangan harga yaitu mengenai sourcecode. Sourcecode Linux tersedia bagi semua orang sehingga setiap orang dapat terlibat langsung dalam pengembangannya.
  • Linux disusun berdasarkan standar system operasi POSIX yang sebenarnya diturunkan berdasarkan fungsi kerja UNIX.
  • UNIX kompatibel dengan Linux pada level system call, ini berarti sebagian besar program yang ditulis untuk UNIX atau Linux dapat direkompilasi dan dijalankan pada sistem lain dengan perubahan yang minimal. Secara umum dapat dikatakan Linux berjalan lebih cepat dibanding UNIX lain pada hardware yang sama, dan lagi UNIX memiliki kelemahan (tidak bersifat free).
  • MS-DOS memiliki kemiripan dengan Linux yaitu dari sisi file system yang bersifat hirarkis. Tetapi MS-DOS hanya dapat dijalankan pada prosesor x86 dan tidak mendukung multi user dan multi tasking, serta tidak bersifat free. Juga MS-DOS tidak memiliki dukungan yang baik agar dapat berinteroperasi dengan sistem operasi lainnya, termasuk tidak tersedianya perangkat lunak network, program pengembang dan program utilitas yang ada dalam Linux.
  • MS-Windows dikenal memiliki kemampuan grafis yang user friendly, namun kemampuan mengolah perintah di command line interface-nya tidak dikembangkan, windows bersifat single user – multi tasking. Linux memiliki tampilan GUI yang menarik dan bervariasi, kemampuan shell (console) juga masih tetap unggul, konfigurasi sistem dapat dilakukan di tampilan GUI maupun konsole. Linux adalah SO yang Multi User-Multi Tasking.
  • Windows NT juga tersedia untuk Digital Alpha selain prosesor x86. Namun Windows NT masih memiliki beberapa kekurangan yang telah ada pada MS-DOS. Waktu untuk menemukan suatu bug dalam SO ini tak sebanding dengan harga yang harus dibayar. Linux memiliki mekanisme perbaikan bug’s yang sangat cepat karena distribusi paketnya yang menyedialan source code, sehingga kekurangan-kekurangan yang ditemukan dapat segera diperbaiki oleh semua orang yang menggunakan.
  • MacOS hanya dapat berjalan di komputer produk Apple, keluaran terbaru sudah dapat di install pada prosesor intel core duo. Namun memiliki kekurangan dari sisi ketersediaan perangkat bantu pengembang (development tool) dan juga kurang dapat secara mudah untuk berintoperasi dengan sistem operasi lainnya. Linux dapat dijalankan pada mesin Apple (PowerMac), dengan semua tipe prosesor yang ada.




2.9 KELEBIHAN LINUX

  • Pada dasarnya semua data tersimpan di dalam harddisk walau ada beberapa kondisi dimana data tersimpan di disket. Linux/UNIX memberikan beberapa proses spesial dimana terminal, printer dan device hardware lainnya dapat diakses seperti kita mengakses file yang tersimpan dalam harddisk atau disket.
  • Ketika program dijalankan, program tersebut dijalankan dari harddisk ke dalam RAM dan setelah dijalankan akan dinamakan sebagai proses.
  • Linux/UNIX menyediakan service untuk membuat, memodifikasi program, proses dan file.
  • Linux/UNIX mendukung struktur file yang bersifat hirarki.
  • Linux/UNIX adalah salah satu sistem operasi yang termasuk ke dalam kelas sistem operasi yang dapat melakukan kegiatan multitasking. Multitasking adalah keadaan dimana suatu sistem operasi dapat melakukan banyak kerjaan pada saat yang bersamaan.
  • Selain multitasking, Linux/UNIX juga dapat mendukung multiuser, yaitu sistem operasi yang pada saat bersamaan dapat digunakan oleh lebih dari satu user yang masuk ke dalam sistem.  Bahkan untuk Linux juga mendukung untuk multiconsole dimana pada saat bersamaan di depan komputer langsung tanpa harus melalui jaringan dan memungkinkan lebih dari satu user masuk ke dakam sistem.


2.10 LISENSI LINUX

        Kernel Linux terdistribusi dibawah Lisensi Publik Umum GNU (GPL), dimana peraturannya disusun oleh Free Software Foundation. Linux bukanlah perangkat lunak domain publik (public domain). Public Domain berarti bahwa pengarang telah memberikan copyright terhadap perangkat lunak mereka, tetapi copyright terhadap kode Linux masih dipegang oleh pengarang-pengarang kode tersebut. Linux adalah perangkat lunak bebas, namun bebas dalam arti bahwa siapa saja dapat mengkopi, modifikasi, memakainya dengan cara apa pun, dan memberikan kopi mereka kepada siapa pun tanpa larangan atau halangan.
Implikasi utama peraturan lisensi Linux adalah bahwa siapa saja yang menggunakan Linux, atau membuat modifikasi dari Linux, tidak boleh membuatnya menjadi hak milik sendiri.






BAB III
PENUTUP



3.1 KESIMPULAN

         Saat ini, Linux merupakan salah satu sistem operasi yang perkembangannya paling cepat. Kehadiran sejumlah kelompok pengembang, tersebar di seluruh dunia, yang selalu memperbaiki segala fiturnya, ikut membantu kemajuan sistem operasi Linux. Bersamaan dengan itu, banyak pengembang yang sedang bekerja untuk memindahkan berbagai aplikasi ke Linux (dapat berjalan di Linux).

          Masalah utama yang dihadapi Linux dahulu adalah interface yang berupa teks (text based interface). Ini membuat orang awam tidak tertarik menggunakan Linux karena harus dipelajari terlebih dahulu untuk dapat dimengerti cara penggunaannya (tidak user-friendly). Tetapi keadaan ini sudah mulai berubah dengan kehadiran KDE dan GNOME. Keduanya memiliki tampilan desktop yang menarik sehingga mengubah persepsi dunia tentang Linux.

Pemanfaatan Linux juga sudah diterapkan pada supercomputer. Diberikan beberapa contoh:
  • The Tetragrid, sebuah mega computer dari Amerika yang dapat menghitung lebih dari 13 trilyun kalkulasi per detik (13.6 TeraFLOPS). Tetragrid dapat dimanfaatkan untuk mencari solusi dari masalah matematika kompleks dan simulasi, dari astronomi dan riset kanker hingga ramalan cuaca.
  • Evolocity, juga dari Amerika, dapat berjalan dengan kecepatan maksimum 9.2 TeraFLOPS (Floating Operations Per Second), menjadikannya sebagai salah satu dari lima supercomputer tercepat di dunia.
  • Jika melihat ke depan, kemungkinan Linux akan menjadi sistem operasi yang paling dominan bukanlah suatu hal yang mustahil. Karena semua kelebihan yang dimilikinya, setiap hari semakin banyak orang di dunia yang mulai berpaling ke Linux.




DAFTAR PUSTAKA



[1] Richardus E.I. ,DR., Tranggono I.S, Dr. , Ardiansyah (2002). Open Source Linux Membangun Kekuatan Baru Teknologi Informasi Dunia. Yogyakarta : Pt. Elex Media Komputindo.

[2] Hidden Name (2008). Hambatan Pemakaian Linux [Online]. Tersedia http://nationalinks.blogspot.com/ [7 Maret 2009]

[3] Candra Adi Putra (2008). Mengapa Adopsi Linux di Indonesia Lambat [Online] http://candraadiputra.blogspot.com [7 Maret 2009]

[4] Amin (2009). Pengertian sistem operasi linux [online], tersedia: http://www.amintkj2.blogspot.com/2009/11/pengertian-os-linux.html [11November 2010]

[5] [online], <a href="http://www.id.wikipedia.org"> http://www.id.wikipedia.org </a> [11 November 2010]

[6] Sejarah perkembangan system operasi linux, [online]. tersedia  http://www.gudangmateri.com/2010/10/sejarah-perkwmbangan-sistem-operasi-linux.html   [ 11 November 2010 ]

[7] sejarah perkembangan system operasi linux, [online]. http://www.wartawarga.gunadarma.ac.id [ 15 november 2010]