Ayo kita Kenalan
dengan Susunan Directory di Linux Di dalam Linux, menggunakan filesystem 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;
D:\Folder\tempat\menyimpan\file.txt
DI lingkungan
Linux, untuk menunjukkan sebuah lokasi file, berupa seperti berikut;
$
/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 dan
system.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 macam librari 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
dalama 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
device-device 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 ini untuk menyimpan paket yang tidak 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
DI 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 di bagikan 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 terpisah dikarenan
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 gamblang 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 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 difungsikan sebagai 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 terkecoh 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 sama sekali. 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 berhasil di recover saat sistem crash. Dengan
melihat kedalam /lost+found mungkin kita dapat menemukan file yang hilang.
Post a Comment