Advertisement

Mengenal Sistem Operasi LINUX Part I

Linux merupakan sebuah sistem operasi dengan kemampuan multiuser dan multitasking yang bersifat free. Free disini bukan diartikan sebagai gratis tetapi berarti kebebasan seperti yang tertuang dalam lisensi yang dimiliki oleh Linux yaitu GNU GPL (GNU is Not Unix General Public License). Perangkat lunak yang mempunyai lisensi GNU GPL akan menjamin 3 (tiga) kebebasan bagi para penggunanya, yaitu :

  1. Kebebasan untuk menjalankan perangkat lunak tersebut dengan tujuan apapun.
  2. Kebebasan untuk mengubah perangkat lunak tersebut agar sesuai dengan kebutuhan. Hal ini mengharuskan prasyarat tersedianya source code perangkat lunak tersebut.
  3. Kebebasan untuk mendistribusikan salinannya, baik secara gratis maupun dengan biaya.
Sebagai sistem dalam rumpun UNIX, GNU/Linux mewarisi sifat-sifat yang menyerupai UNIX misalnya multiuser, multitasking, line/text command based, secure, ready for network, development tool support. Dalam pengembangannya GNU/Linux sendiri dikembangkan terpisah misalnya kernel Linux dibuat oleh Linus Benedict Tolvalds pada tahun 1991, Donal Knuth membuat standar formatter (Tex), Bob Schefler
mengembangkan X Window dan sebagainya.


Pada dasarnya GNU/Linux adalah sebuah kernel, paket lainnya yang melengkapi misalnya aplikasi, compiler, window manager, redhat paket manager dan sebagainya disebut sebagai distribusi, di mana saat ini distribusi GNU/Linux banyak sekali. Seperti yang telah disebutkan di atas bahwa Linux pada dasarnya adalah sebuah kernel, dimana kernel menjembatani antara user level hardware dan aplikasi-aplikasi yang menerjemahkan bahasa sofware sehingga mampu dipahami oleh hardware kemudian hardware memprosesnya sesuai dengan kebutuhan.

Sejarah Linux

Pembuat sekaligus pemegang hak cipta Linux adalah Linus Bennedict Torvalds. Beliau pada saat itu adalah mahasiswa Universitas Helsinki, Finlandia yang terinspirasi oleh sebuah sistem operasi sejenis unix yang dinamakan Minix. Walaupun pada awalnya pembuatan Linux dianggap suatu hobi tetapi setelah dilepas ke internet ternyata mendapat tanggapan yang luar biasa dari programmer di seluruh dunia yang tergabung dalam suatu newsgroup. Selanjutnya Linux dikembangkan oleh Linus di bantu oleh programmer dari
seluruh dunia melalui internet. 
Nama Linux merupakan kombinasi unik antara nama penciptanya dan nama sistem operasi yang menjadi targetnya (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 bebasdan gratis.
Pada Oktober 5 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 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 feature, sepertim 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 dijeaskan sebagai “seekor penguin yang menggemaskan dan ramah, yang kekenyangan setelah makan banyak ikan hering”. 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 dan saling berinteroperasi. Saat ini ada tujuh distribusi Linux paling terkenal, yaitu :
1. RedHat Linux, distributor paling populer di AS dan salah satu yang paling mudah digunakan.
2. Mandrake Linux, distributor yang menambahkan update dan patch untuk RedHat Linux.
3. Caldera Open Linux, distibrusi Linux dengan instalasi dan lingkungan pengguna berbasis grafis yang bagus.
4. Suse Linux, distribusi Linux paling populer di Eropa yang juga menyediakan perangkat instalasi dan panduan berbahasa Indonesia. 
5. Slackware Linux.
6. Debian GNU/Linux.
7. TurboLinux, distribusi Linux paling populer di Asia yang menyediakan dukungan untuk set karakter khusus Asia.

Kemampuan LINUX

-Multiuser
-Multiprocessor
-Multitasking, memungkinkannya program-program berjalan bersamaan (background)
-MultiThreading, dapat menciptakan subproses dengan cara efisien
-Pembelokkan I/O, Pipe dan Filter
-Local dan Network File System
-Security, login dengan password, ownership, group
-X-Window System

Susunan Direktori LinuxSeperti yang sudah dijelaskan sebelumnya, Di dalam Linux, menggunakan file system
dimana directory akan tersusun ke dalam hirarkis tunggal. Berbeda dengan struktur di windows dimana susunan directory ditentukan dengan kondisi partisi dan harddisk. 
Bentuk drive di windows merupakan representasi dari partisi dimana huruf C diberikan untuk partisi pertama di harddisk pertama. Di Linux tidak mengenal konsep drive.
Berbagai macam partisi dapat di mount kedalam direktori yang berada di dalah struktur direktori linux. Di Windows, untuk menunjukkan lokasi sebuah file, kita menuliskan seperti ini;
1| D:\Folder\tempat\menyimpan\file.txt
Di lingkungan Linux, untuk menunjukkan sebuah lokasi file, berupa seperti berikut;
1| /Folder/tempat/menyimpan/file.txt
Dari kedua perbedaan diatas, kita dapat mudah melihat perbedaan penggunaan slash di Linux versus backslashes di Windows. Danjuga tidak adanya nama drive (C:, D:, E: dll). Pada saat komputer booting, 'partisi root' akan di mount di / dan seluruh file, direktori dan device akan di mount dibawah /. Perlu juga diingat bahwa penamaan file dan direktori di Linux adalah case-sensitive, yaitu huruf besar dan huruf kecil merupakan karakter yang berbeda. /Folder/tempat/file.txt beda dengan /folder/Tempat/file.TXT
Struktur direktori Linux mengikuti standart “Filesystem Hierarchy Structure (FHS)” yang di pegang oleh Free Standart Group walaupun kebanyakan distribusi memodifikasi standart tersebut.

/ (root)

Struktur direktori di Linux secara umum diawali dengan root filesystem “/” dan tentu juga merupakan root atau akar dari seluruh direktori global. Partisi dimana di letakkan /(root system) akan menjadi direktori sistem atau partisi pokok.

/boot

Direktori boot tesimpan file-file boot loader diantaranya grub atau lilo. Kernel, initrd dansystem.map juga terletak didalam /boot. Jika system yang digunakan menggunakan partisi LVM ataupun partisi dalam jaringan. Maka ada baiknya dibuatkan partisi kecil tersendiri untuk meletakkan /boot di harddisk dengan filesystem konvensional. /boot ini umumnya sangat jarang sekali berubah isinya, kecuali memang kita sering bermain-main dengan kernel.

/sys

Berisi informasi yang berkaitan dengan kernel, device dan firmware. Untuk memudahkan mengingat, direktori ini dianggap kependekan dari 'system'.

/sbin

Berisi file-file biner yang esensinya untuk sistem dan mengendalikan sistem. File-file biner atau bisa dianggap aplikasi sistem ini jika dioperasikan secara tidak tepat bisa berpotensi merusak. Untuk memudahkan mengingat, direktori ini dianggap kependekan dari 'super binary'

/bin

Berisi file-file binari atau aplikasi yang lebih umum dan dapat digunakan oleh semua user. Untuk memudahkan mengingat, direktori ini dianggap kependekan dari 'binary'

/lib

Berisi file-file library atau pustaka dari semua aplikasi binari yang tersimpan dalam direktori /sbin dan /bin. Di direktori ini juga tersimpan berbagai macamlibrari yang digunakan untuk aplikasi lain. Konsep penggunaan librari bersama ini membuat aplikasi di linux dapat menghemat ukuran. Untuk memudahkan mengingat, direktori ini dianggap kependekan dari 'library'

/dev

Merupakan pseudo filesystem, atau directory yang isinya sebenarnya bukan benar-benar berisi file. Isi dari /dev ini berkaitan dengan perangkat-perangkat yang terdapat pada system. Misalkan untuk informasi port serial, port printer, dapat di berlakukan seperti membaca file. Misalkan perangkat serial terletak di /dev/tty01, kemudian partisi dalam harddisk di sebut sebagai /dev/sda7. dan lain sebagainya. Untuk memudahkan mengingat, direktori ini dianggap kependekan dari 'device'

/etc

Direktori /etc berisi file-file konfigurasi sistem. Mayoritas aplikasi dan layanan konfigurasinya tersimpan di direktori /etc termasuk diantaranya /etc/hosts, /etc/resolv.conf dan lain sebagainya. Di direktori /etc/init.d tersimpan konfigurasi bagaimana sebuah layanan dijalankan. Di direktori /etc/rc*.d tersimpan konfigurasi untuk menentukan service yang dijalankan untuk tiap-tiap sesi init.

/home

Semua direktori home dari pengguna tersimpan di direktori ini dengan nama user masing-masing sebagai pengelompokannya. Untuk beberapa sistem linux yang di spesifikasikan untuk server, direktori pengguna masih dikelompokkan lagi kedalam /home/users. Di dalam direktori /home/nama-user tersimpan konfigurasi-konfigurasi yang spesifik terhadap user tersebut. Oleh karena itu, berbeda user, walaupun berada di sistem yang sama bisa mendapat lingkungan dan tampilan yang sama sekali berbeda. Direktori /home merupakan direktori yang paling 'dekat' dengan user. Direktori /home ini bisa berisi dari dokumen-dokumen pekerjaan user hingga file-file hiburan seperti mp3 dan film juga termasuk foto-foto yang dimiliki oleh user. Oleh karena itu, untuk membatasi agar file-file di pengguna tidak mendesak file-file system, sangat umum untuk meletakkan direktori /home di partisi yang terpisah. Hal ini dapat menahan file-file yang disimpan user hingga total ukuran tertentu tanpa mengganggu ruang gerak system.

/media

Merupakan direktori untuk menyimpan direktori-direktori mount point. CD-ROM, DVD, flash disk, bahkan floppy disk juga akan termount di direktori ini. Pada distro-distro modern, sudah memberikan fasilitas untuk menampilkan devicedevice yang dimount ke depan Desktop. Sehingga pengguna tidak perlu susah dan repot menuju ke /media untuk dapat mengakses flash disk-nya tapi cukup lihat ke desktop-nya dan masuk ke direktori yang teerbuat baru di sana. Untuk workstation yang terintegrasi dengan jaringan, pada umumnya untuk melakukan mounting storage network juga diletakkan di /media. Dengan dikelompokkan seperti itu maka mudah untuk mengenali bahwa semua yang berada di dalam /media merupakan media penyimpan.

/mnt

Pada Linux yang masih umum menggunakan kernel 2.4.x. Untuk tempat mengumpulkan mount point berada di /mnt. Dikarenakan pada sistem berbasis kernel 2.6.x sudah menggunakan /media, maka /mnt ini umumnya kosong. /mnt bisa juga dijadikan mount point pada saat system rescue atau troubleshooting. Untuk memudahkan mengingat, direktori ini dianggap kependekan dari 'mount'

/opt

Direktori /opt saat ini jarang digunakan. Beberapa paket software terpisah menggunakan direktori untuk menyimpan paket yang menuju ke lokasi manapun. Untuk memudahkan mengingat, direktori ini dianggap kependekan dari 'optional'

/usr

Sebuah sub-hirarki dari root filesistem di simpan didalam /usr. Didalam /usr tersimpan aplikasi dan utiliti yang spesifik dengan user. Jika kita melihat kedalam direktori /usr maka kita juga akan menemukan direktori yang mirip dengan di /yaitu bin, sbin dan lib. Hanya saja, aplikasi dan librari yang terletak /usr tidak terlalu kritikal untuk sistem. Untuk istilah mudahnya, /usr merupakan tempat dimana user menginstall aplikasi sendiri yang bukan official dari distro. Misalkan menginstall melalui tar-ball, atau paket yang dibuat sendiri. Jika pengguna termasuk orang yang sering menambah-nambah aplikasi sendiri diluar bawaan paket yang disediakan untuk distro itu, maka direktori /usr sudah dipastikan akan cepat sekali membengkak. Ada baiknya untuk sistem yang penggunanya seperti itu, /usr di berikan partisi sendiri. Untuk aplikasi yang bisa langsung dijalankan,
sistem linux akan membaca secara bersamaan yang ada di /bin dan di /usr/bin begitu juga untuk /sbin dan /usr/sbin. Untuk memudahkan mengingat, direktori ini dianggap kependekan dari 'user'

/usr/share

Merupakan tempat didalam /usr yang digunakan untuk menyimpan data-data yang bisa dibagikan dan tidak terikat dengan platform. Misalnya seperti wallpaper yang bisa dan boleh digunakan oleh semua user akan diletakkan didalam /usr/share. Lalu ada juga fonts, dan sound theme yang berkaitan dengan tampilan.

/usr/doc

Merupakan tempat untuk menyimpan dokumentasi dan catatan yang berkaitan dengan aplikasi. Apabila aplikasi third-party yang digunakan merupakan aplikasi yang dikembangkan dengan baik, maka tentunya juga menyediakan file dokumentasi yang dapat dibaca di dalam /usr/doc

/usr/src

Merupakan tempat untuk menyimpan source code dari aplikasi sistem. Yang paling umum tersimpan disini adalah source code dari kernel linux. Source code ini sangat bermanfaat untuk melakukan kompilasi ulang atau melakukan optimasi di tingkat kernel dengan dasar kernel sebelumnya.

/usr/include

Di direktori /usr/include tersimpan file-file header dari compiler C. File header ini mendefinisikan struktur dan konstanta yang dibutuhkan untuk membangun sebuah aplikasi yang standart. Direktori didalam /usr/include tersimpan header untuk compiler C++.

/usr/X11R6

Menyimpan sistem X-Window dan hal-hal yang berkaitan dengan X-Window. Subdirectories dibawah /usr/X11R6 tersimpan binari X itu sendiri dan juga dokumentasi, file header, config. icon. sounf, dan sebagainya yang berkaitan dengan grafis.

/usr/local

Disini tersimpan aplikasi yang terinstall dan file yang yang digunakan di local machine. Jika komputer yang digunakan merupakan bagian dari sebuah jaringan besar, terus direktori /usr lokasi fisiknya terletak di komputer yang berbeda dan dibagikan kedalam jaringan untuk di mount kedalam /usr. Pada jaringan seperti ini, direktori /usr/local akan berisi barang-barang yang hendaknya tidak digunakan di banyak mesin dan hanya di gunakan di local machine saja. Karena kebanyakan komputer tidak memanfaatkan bentuk jaringan seperti yang disebutkan tadi, bukan berarti /usr/local menjadi tidak berguna. Jika kita menemukan aplikasi yang menarik dan secara official tidak tersedia dan bukan bagian dari distro yang digunakan, hendaknya kita
menginstallnya kedalam /usr/local. Sebagai contoh, jika aplikasi tambahan yang umum akan tersimpan kedalam /usr/bin, maka aplikasi tambahan yang sifatnya lebih custom hendaknya di simpan di /usr/local/bin. Dengan cara ini maka dapat menghindarkan kebingungan dalam jenis aplikasi yang tersedia dan menjaga sistem tetap bersih dan rapi.

/root

Merupakan direktori home-nya superuser (root). Harap jangan bingung dengan direktori root (/). Walaupun cara menyebutnya sama, tapi sama sekali berfungsi sangat berbeda. 

/var

Direktori /var merupakan direktori yang isinya sangat dinamis. Jika digunakan didalam server. Sangat dianjurkan /var ini untuk diletakkan di partisi terpisahdikarenan direktori /var dapat membengkak dengan sangat cepat. Selain itu juga, dengan direktori /var dibuat partisinya sendiri atau secara fisik ditentukan lokasinya, maka dapat mencegah internal fragmentasi, dan proses pencarian file tidak terlalu jauh, hanya seputar cylinder itu-itu saja. Untuk memudahkan mengingat, direktori ini dianggap kependekan dari 'variative'

/var/log

Merupakan direktori untuk menyimpan berbagai macam log atau catatan yang berkaitan dengan sistem. Isi dari /var/log ini terus terupdate selama sistem berjalan. Oleh karena itu, /var/log merupakan alasan dan penyebab utama direktori /var dapat membengkak dengan gila-gilaan. Walaupun di linux sendiri tersendiri tersedia aplikasi logrotate untuk meredam percepatan pembengkakan direktori /var, tapi tetap juga jika tidak disiapkan ruang tersendiri, ukuran log ini dapat menghantam ruang kosong di sistem. 
Direktori /var/log ini hendaknya menjadi tempat pertama kita lari apabila di sistem terjadi keanehan. System log linux baik kok, keanehan pun akan di tuliskan dengan gambling kedalam log. Misalkan pada webserver, /var/log/httpd/access.log akan mencatat siapa saja yang mengakses web yang terpasang dan menuju ke mana. Apabila banyak sekali yang mengunjungi web itu, maka file /var/log/httpd/access.log pun akan terupdate dengan kecepatan luar biasa yang susah untuk diikuti oleh pandangan manusia biasa. Misalkan juga /var/log/syslog, disana tersimpan log yang berkaitan dengan system. Misalkan kita colokkan flash disk, maka dengan mengamati /var/log/syslog kita bisa mengetahui apakah sistem bisa mengenali flashdisk itu dan melakukan auto mount, atau memberikan pesan yang lain. Dari /var/log/syslog juga misalnya kita bisa melihat apakan rule crontab yang kita buat berjalan sesuai waktunya atau tidak. Semakin banyak kejadian baik yang buruk atau yang baik terjadi di system, maka /var/log pun akan semakin membengkak.

/var/mail

Merupakan direktori untuk menyimpan email masuk dan keluar. Direktori /var/mail ini akan sangat terasa fungsinya jika kita membuat mail server menggunakan postfix,sendmail atau qmail. Sebenarnya tanpa menggunakan mailserver itu, kita juga dapat mengirim email, hanya saja terbatas hanya dalam lingkup mesin kita dan user yang terdapat didalamnya. Apabila mesin yang kita gunakan hanya kita sendiri usernya, tentu
saja tidak seru, maka perlu dibuatkan mail server yang sesungguhnya agar aktivitas kirim-mengirim email dapat seheboh dengan mail.yahoo.com ataupun mail.ugm.ac.id. 
Direktori /var/mail merupakan penyebab kedua yang membuat direktori /var dapat membengkak tidak karuan. Aktivitas dan lalulintas saling kirim email yang tinggi, ditambah lagi dengan attachment yang tidak masuk akal ukurannya, menyebabkan /var/mail bertanggung jawab penuh atas membengkaknya /var. Dengan di berikannya direktori /var sebuah partisi tersendiri, maka apabila direktori /var mentok ke total ukuran partisi, 'hanya' menyebabkan mailserver-nya macet. tapi sistem linux itu sendiri masih bisa berjalan dengan nyaman untuk mengatasi 'kekacauan' di /var. Ada juga cara agar direktori /var tidak segera penuh, dengan menerpakan quota di mail server.

/var/spool

Direktori /var/spool merupakan direktori untuk menyimpan file-file yang spooling atau yang sedang mengantri untuk diproses. Yang umum berada didalam /var/spool ini adalah operasi printing. Apabila linux yang dibangun difungsikansebagai prnter server, atau sharing printer, maka /var/spool ini juga perlu diperhatikan apabila yang menggunakan printer tersebut orangnya sangat banyak.

/var/run

Di direktori ini tersimpan PID (Process ID) dari layanan-layanan yang berjalan. PID yang tercatat didalam /var/run ini nantinya akan digunakan oleh script didalam /etc/init.d/* untuk mengendalikan layanan yang tersedia di linux.

/proc

Direktori /proc juga merupakan pseudo filesystem yang mirip dengan /dev. Bedanya, /proc ini murni hanya berkaitan dengan sistem dan tidak menyangkut pada device. Jika kita melakukan pengecekan ukuran penggunaan space, jangan terkceoh dengan direktori /proc yang tercatat menunjukkan memakan space sangat besar. Segala macam space yang tertulis disitu sama sekali tidak terdapat di dalam media penyimpanan harddisk. Jadi direktori /proc sebenarnya tidak ada samasekali. Isi dari /proc ini adalah infomasi dari sistem, tetapi jika kita mengubah isi informasi dari beberapa file /proc juga dapat mengubah sifat jalannya sistem. Jangan takut apabila sistem berubah menjadi aneh tatkala kita mengubah isi /proc. Selama pengubahan isi hanya menggunakan echo, maka dengan merestart system, maka isi /proc pun akan langsung kembali ke semula. Misalkan kita ingin melakukan forwarding network, maka informasi pada
/proc/sys/net/ipv4/ip_forward yang semula berisi 0 tinggal di ubah menjadi 1. Misalkan kita melihat informasi processor, maka kita dapat melihat dalam /proc/cpuinfo. Tapi jangan harap dengan mengedit /proc/cpuinfo maka kita akan mendapat cpu yang bekerja dengan clock cycle yang lebih menakjubkan.

/tmp

Merupakan file sistem yang menyimpan file-file sementara. Beberapa distro akan otomatis membersihkan isi dari /tmp sewaktu reboot. Direktori /tmp memiliki mode yang sangat terbuka sehingga mudah untuk ditulisi oleh siapa saja. Didalam /var/tmp juga digunakan sebagai penyimpanan file-file sementara, bedanya /var/tmp dengan /tmp yaitu /var/tmp tidak akan dibersihkan saat system reboot. Untuk memudahkan mengingat,
direktori ini dianggap kependekan dari 'temporary'.

/lost+found

Di direktori ini linux menyimpan file-file yang berasil di recover saat sistem crash. Dengan melihat kedalam /lost+found mungkin kita sapat menemukan file yang hilang.

Posting Komentar

0 Komentar