Selasa, November 04, 2008

Sistem Operasi Linux

Sistem Operasi (SO, atau dalam bahasa Inggris: Operating System atau OS) adalah suatu software sistem yang bertugas untuk melakukan kontrol dan manajemen hardware serta operasi-operasi dasar sistem, termasuk menjalankan software aplikasi seperti program-program pengolah kata dan browser web.

Secara umum, Sistem Operasi adalah software pada lapisan pertama yang ditaruh pada memori komputer pada saat komputer dinyalakan. Sedangkan software-software lainnya dijalankan setelah Sistem Operasi berjalan, dan Sistem Operasi akan melakukan layanan inti umum untuk software-software itu. Layanan inti umum tersebut seperti akses ke disk, manajemen memori, scheduling task, dan antar-muka user. Sehingga masing-masing software tidak perlu lagi melakukan tugas-tugas inti umum tersebut, karena dapat dilayani dan dilakukan oleh Sistem Operasi. Bagian kode yang melakukan tugas-tugas inti dan umum tersebut dinamakan dengan "kernel" suatu Sistem Operasi.

Sebelum melangkah lebih jauh, kita perlu mengetahui sistem operasi yang digunakan dalam komputer (termasuk PC, komputer personal). Secara umum Sistem Operasi pada komputer terbagi menjadi 3 kelompok besar, yaitu :

Keluarga Microsoft Windows - yang antara lain terdiri dari Windows Desktop Environment (versi 1.x hingga versi 3.x), Windows 9x (Windows 95, 98, dan Windows ME), dan Windows NT (Windows NT 3.x, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003, dan Windows Vista yang akan dirilis pada tahun 2007)).

Keluarga Unix yang menggunakan antarmuka sistem operasi POSIX, seperti SCO UNIX, keluarga BSD (Berkeley Software Distribution), GNU/Linux, MacOS/X (berbasis kernel BSD yang dimodifikasi, dan dikenal dengan nama Darwin) dan GNU/Hurd.

Mac OS, adalah sistem operasi untuk komputer keluaran Apple yang biasa disebut Mac atau Macintosh. Sistem operasi yang terbaru adalah Mac OS X versi 10.4 (Tiger). Awal tahun 2007 direncanakan peluncuran versi 10.5 (Leopard).

Sedangkan komputer Mainframe, dan Super komputer menggunakan banyak sekali sistem operasi yang berbeda-beda, umumnya merupakan turunan dari sistem operasi UNIX yang dikembangkan oleh vendor seperti IBM AIX, HP/UX, dll

Filesystem

Ketika kita mencoba untuk berpindah dari satu sistem operasi (SO) ke sistem operasi lainnya, hal yang paling mempengaruhi adalah perbedaan pada kedua tipe file system SO tersebut. Oleh karena itulah, mengenali file system bagi pengguna SO baru adalah hal yang relatif sangat penting. Seperti misalnya berpindah dari Microsoft Windows ke GNU/Linux. Awalnya, mungkin pengguna tersebut cukup canggung dengan perbedaan tanda pemisah direktori, dimana Windows menggunakan backslash ( \ ), sedangkan GNU/Linux menggunakan frontslash ( / ). Tidak hanya itu, masih ada beberapa hal lain juga yang harus dikenali oleh pengguna Windows yang ingin hijrah ke GNU/Linux

Layaknya UNIX, GNU/Linux memakai hirarki tunggal untuk filesystem-nya. Direktori yang tertinggi adalah “ / ” (simbol frontslash tanpa tanda petik-disebut juga dengan "root directory"), baru kemudian ada direktori-direktori lain dibawahnya. Dalam Windows, kita mengenal drive C, D, dan E menjadi hirarki tertingginya. Sementara dalam GNU/Linux, drive disembunyikan kenampakannya. Kita bisa me-mount (mengaitkan) suatu partisi hard disk ke direktori kosong manapun (jika kita punya akses root). Bagi pengguna, pemakaian tampilan tunggal akan lebih memudahkan untuk pengorganisasiannya. Pengguna akan melihat hirarki tunggal saja, walaupun pada kenyataannya terdapat banyak hard disk di dalam sistem komputernya. Hasilnya adalah keamanan dan perlindungan yang lebih terhadap risiko crash dan kehilangan data.

Direktori

Dalam SO Windows, umumnya program pengguna ataupun aplikasi bawaan Windows diletakkan dengan format seperti ini:

C:\Program Files\[nama program]

Dalam GNU/Linux, file-file dari suatu program tidak diletakkan dalam satu direktori, tapi tersebar di antara direktori-direktori yang lain. Memang awalnya membingungkan bagi pengguna, tapi lebih memudahkan bagi para administrator sistem yang sering bekerja dengan jaringan. Keamanan juga menjadi lebih terjamin.

Berikut ini adalah penjelasan singkat dari direktori-direktori di bawah root directory (/) di GNU/Linux sesuai dengan FHS (Filesystem Hierarchy Standard).

/bin

merupakan direktori khusus yang berisi program-program binari. Tidak ada subdirektori di sini. Semua yang ada di sini semuanya bisa dieksekusi (executable). Semua file yang vital untuk proses boot ada di sini. Begitu juga file-file binari yang penting dalam single-user mode. Misalnya yang dibutuhkan ketika terjadi kerusakan pada sistem. Direktori ini dapat diakses oleh semua pengguna dan biasanya ada dalam variabel path masing-masing pengguna.

/sbin

Sama seperti /bin, hanya saja digunakan khusus oleh sysadmin (pengguna dengan akses root). Fsck (untuk mengecek filesystem), init (induk dari semua proses yang berjalan), ifconfig (konfigurasi jaringan), dan mount (pengait filesystem) ada di direktori ini. Ini adalah direktori paling vital di GNU/Linux. Jadi hati-hati!

/lib

Di dalam direktori ini terdapat file-file library yang dibutuhkan oleh program-program yang ada di /bin maupun /sbin. Modul kernel juga terletak di direktori ini. Biasanya di direktori /lib/modules.

/usr/bin

Sama seperti /bin, tapi untuk program-program lain yang tidak terlalu vital atau program aplikasi biasa. Contohnya XMMS, Scribus, The GIMP, dsb.

/usr/sbin

Sama seperti /sbin, di dalamnya terdapat program-program yang hanya digunakan oleh sysadmin namun program tersebut bertindak sebagai daemon (service). Direktori ini adalah lokasi program-program yang hanya boleh dijalankan oleh sysadmin untuk mengatur sistem.

/usr/lib

Sama seperti /lib, tapi untuk file-file yang ada di direktori /usr/bin dan /usr/sbin.

/etc

Direktori ini berisi file-file setelan (setting) untuk suatu program. Jika suatu program bisa diatur konfigurasinya, maka letak hasil konfigurasinya akan berada di sini. Kita membutuhkan root untuk mengakses direktori ini karena hasil konfigurasi yang dikerjakan akan berpengaruh untuk seluruh sistem. Para pengguna GNU/Linux yang berpengalaman umumnya sangat mengenal isi direktori ini. Mengapa? Karena semua setting agar GNU/Linux dapat berjalan sesuai dengan apa yang mereka inginkan ada di sini.

/var

Direktori sibuk. Isi direktori ini selalu mengalami perubahan sangat cepat, dan biasanya tanpa intervensi pengguna sama sekali. Termasuklah didalamnya file log sistem dan web server.

/home

Ini adalah satu-satunya direktori yang perlu diketahui sekaligus dipahami oleh pengguna biasa. Isinya adalah dokumen, musik dan data pribadi pengguna, serta setting khusus untuk pengguna tersebut. Jika nama pengguna adalah ABC, maka direktori /home pengguna tersebut adalah /home/ABC. Di dalam /home/ABC inilah sang pengguna berkuasa sepenuhnya. Tapi sayangnya, sang root masih memiliki kekuasaan untuk menembusnya.

/usr/share/doc, /usr/share/man

Kata share menunjukkan bahwa sesuatu yang berada di dalamnya boleh dilihat oleh semua pengguna. Hal ini juga berarti bahwa isinya tidak tergantung pada platform hardware tertentu (i386, ALPHA, dll). Disinilah letak dokumentasi program (usr/share/doc) dan manual dari program (usr/share/man) yang akan menjadi pemandu pasif anda di dalam sistem operasi berlogo penguin ini.

/tmp

Ini adalah rumah untuk file-file sementara, misalnya file yang akan segera berubah atau terhapus ketika sistem dimatikan atau tempat menulis sementara untuk program-program yang sedang berjalan.

/mnt

Ini adalah tempat untuk mengaitkan partisi hard disk atau filesystem yang lain, bahkan terkadang juga sebagai media penyimpanan yang bisa dipindahkan seperti cdrom atau floppy disk. Pada distro Fedora, cdrom dan floppy ada di /media sedangkan pada distro Mandriva ada di /mnt.

/media

Selain di /mnt, beberapa distro juga menaruh titik-kait (mount point) untuk media penyimpanan yang bisa dipindahkan seperti cdrom, floppy disk, flash disk, ZIP drive, dsb..

/proc

Segala sesuatu yang berhubungan dengan proses yang sedang berjalan ada di sini. Di Windows mungkin akan disebut sebagai task manager.

/opt

Kepanjangan dari opt adalah optional. Maksudnya, terkadang ada pembuat software yang menginginkan software-nya ter-install dalam satu direktori, tidak tersebar di antara direktori-direktori yang lain. Pembuat software jenis ini bisa meletakkan software-nya di direktori ini. Sebenarnya, meng-install software ke dalam satu direktori saja tidak disarankan bagi para pemaket software, karena hal ini akan membuat pekerjaan sysadmin menjadi lebih susah.

Pembagian direktori seperti di atas merupakan salah satu acuan bagi para pembuat distribusi GNU/Linux (dan atau UNIX) untuk mengatur letak file-file sebagaimana umumnya. Jadi, hal ini bukanlah suatu dogma mutlak yang harus dipatuhi dalam ranah SO rintisan Linus Torvalds ini. Kadang, akan ada sedikit perbedaan antara GNU/Linux satu dengan yang lainnya mengenai pembagian direktori ini. Namun, semuanya tetap mengacu pada standar yang sudah ada. Bukan standarnya yang bermasalah, tetapi memang ada direktori yang opsional, misalnya direktori /home. Maklum, karena memang ada pengembang salah satu distro yang menaruh file khusus user (pengguna) di direktori /var sementara yang lain tidak.

Sebagai penutup, pesan terakhir dari redaksi. Untuk mengubah setting secara global penguin anda, sebaiknya anda menggunakan tool administrasi yang sudah tersedia GUI-nya saja di GNU/Linux. Hal ini relatif lebih baik dan aman ketimbang mengutak-atik direktori /etc secara langsung.

Tidak ada komentar: