Pada saat pertama kali kita menggunakan Linux pasti kita bertanya-tanya apa lagi pada saat kita mengeksplorasi direktory dan file-filenya, 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 file system di system operasi Windows. Oleh karena itu, modul ini memerlukan asumsi-asumsi 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 mengenai 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). 2. 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. File-file 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. 3. 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). 4. 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/andi /home/sabar / = root directory /home = direktori tempat user menaruh filenya. Jadi misalnya user andi akan memiliki direktori home sbb: /home/andi/ /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 periodic /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/hda = 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 Bingung? Ok! gak masalah..orang bijak berkata “bisa karena biasa!” Directory Linux Direktori root Linux memiliki beberapa direktori yang merupakan standar direktori pada banyak distro Linux. Direktori-direktori tersebut antara lain: bin Berisi file-file binary standar yang dapat digunakan oleh seluruh user baik user biasa maupun super user boot Berisi file-file yang digunakan untuk booting Linux termasuk kernel image dev Berisi file system khusus yang merupakan refleksi device hardware yang dikenali dan digunakan sistem etc Berisi file-file konfigurasi sistem, biasanya hanya boleh diakses oleh super user home Berisi direktori-direktori yang merupakan direktori home untuk user biasa dan aplikasi tertentu lib Berisi file-file library yang digunakan untuk mendukung kerja kernel Linux mnt Direktori khusus yang disediakan untuk mounting (mengaitkan) device disk storage ke sistem dalam bentuk direktori proc Berisi file system khusus yang menunjukkan data-data kernel setiap saat root Direktori home untuk user root (user khusus dengan priviledges hampir tak terbatas) sbin Sama seperti direktori bin, tetapi hanya root yang dapat menggunakan binary-binary tersebut tmp Berisi file-file sementara yang dibutuhkan sebuah aplikasi yang sedang berjalan usr Berisi library, binary, dokumentasi dan file lainnya hasil instalasi user. var Berisi file-file log, mailbox dan data-data aplikasi. Mengatur Hak Akses di Linux Tidak sedikit pengguna Linux pemula yang mengalami kebingungan karena tidak dapat mengoperasikan suatu program atau mengakses sebuah file atau direktori dikarenakan oleh hak akses yang ada pada setiap file dan direktori yang ada pada Linux. Linux mengenal hak akses yang mengatur setiap user sehingga tiap user hanya dapat mengakses file-file atau direktori tertentu saja, hal ini digunakan untuk kepentingan keamanan sistem. Dua perintah (program) dalam Linux yang digunakan untuk mengatur hak akses tersebut adalah chmod dan chown. Program chmod digunakan untuk mengubah hak akses suatu file, sedangkan chown digunakan untuk mengganti pemilik file tersebut. Hak Akses dalam Linux Sebelum melangkah lebih jauh mengenai penggunaan perintah diatas, sebelumnya perlu dijelaskan terlebih dahulu mengenai hak akses di dalam Linux. Setiap file dan direktori yang ada dalam sistem linux memiliki tiga buah hak akses, satu untuk user itu sendiri, kemudian untuk user dalam grup yang sama dengan pemilik file dan yang terakhir untuk user lainnya. Anda dapat melihat hak akses sebuah file dengan menggunakan perintah ls l, perhatikan contoh dibawah ini: -rw-rw-r– 1 postgres postgres 41527 Jul 12 2001 summary.pdf drwxrwxr-x 2 postgres postgres 4096 Sep 20 2002 Suse -rw-r–r– 1 root root 4935 Aug 23 2001 T123456.log -rw-r–r– 1 postgres postgres 13335 Apr 10 17:04 tchart2.java Karakter pertama menunjukkan jenisnya, jika berisi karakter d, berarti itu adalah direktori sedangkan jika kosong berarti file. Sembilan karakter berikutnya menunjukkan hak aksesnya, dengan tiga karakter pertama menunjukkan hak akses untuk user tersebut, tiga karakter berikutnya menunjukkan hak akses untuk grup nya dan tiga karakter terakhir menunjukkan hak akses untuk user lain. Masing-masing arti karakter tersebut dapat dilihat pada tabel berikut: Karakter Arti Nilai r (read) Hak akses untuk membaca 4 w (write) Hak akses untuk menulis 2 x (exec) Hak akses untuk menjalankan 1 Dengan mengkombinasikan nilai pada masing-masing hak akses tersebut, akan didapatkan hak akses masing-masing, perhatikan tabel berikut: Hak Akses Nilai Arti — 0 Tidak memiliki hak akses (tidak dapat di akses) r– 4 Dapat dibaca dan ditulis (diedit) rw- 6 Dapat dibaca dan ditulis (diedit) rwx 7 Dapat dibaca, ditulis dan dieksekusi (dijalankan) r-x 5 Dapat dibaca dan dijalankan, tetapi tidak dapat diedit –x 1 Hanya dapat dijalankan Berikut contoh penerapannya: Hak Akses Nilai Arti -rw——- 600 Pemilik memiliki hak akses baca dan tulis, sedangkan orang lain tidak memiliki hak akses apapun. Set dengan hak akses ini supaya file anda tidak dapat dibaca orang lain, biasanya digunakan untuk file-file dokumen -rw-r–r– 644 Pemilik memiliki hak akses baca dan tulis sedangkan orang lain hanya dapat membaca saja. Gunakan hak akses ini jika anda ingin orang lain dapat membaca file anda -rw-rw-rw- 666 Dengan hak akses ini, orang lain juga akan dapat membaca dan merubah file anda -rwx—— 700 Pemilik dapat membaca, menulis dan menjalankan file ini, hak akses ini yang biasanya digunakan untuk menjalankan program -rwxr-xr-x 755 Pemilik memiliki hak akses baca, tulis dan menjalankan file ini, sedangkan orang lain hanya dapat membaca dan menjalankan file tersebut drwx—— 700 Hanya pemilik yang dapat mengakses, membaca dan menulis pada direktori tersebut. Setiap direktori harus memiliki hak akses x untuk dapat diakses drwxr-xr-x 755 Isi direktori ini hanya dapat dirubah oleh pemilik, tetapi orang lain dapat membaca isi direktori tersebut Menggunakan Perintah chmod Untuk menggunakan chmod, perintahnya adalah: # chmod hakakses namafile misalnya: # chmod 644 coba.txt perintah tersebut akan mengubah hak akses file coba.txt menjadi seperti berikut: -rw-r–r– 1 postgres postgres 41527 Jul 12 2001 coba.txt Untuk mengganti hak akses sebuah direktori beserta dengan isinya, gunakan parameter R, dengan parameter tersebut, chmod akan dijalankan secara rekursif, misalnya seluruh file yang ada pada direktori /home/user/public_html akan dirubah hak aksesnya menjadi 755, maka perintahnya adalah sebagai berikut: # chmod R 755 /home/user/public_html Menggunakan Perintah chown Perintah chown digunakan untuk mengganti pemilik sebuah file, perintah ini hanya dapat digunakan oleh user root. Perintah ini hanya dapat digunakan oleh user root. Perintahnya adalah sebagai berikut: # chown namauser.namagrup namafile misalnya: # chown user.user coba.txt perintah chown juga dapat digunakan dengan menggunakan parameter R, contohnya adalah sebagai berikut: # chown R apache.apache /var/www/html Perintah chattr Seringkali secara tidak sengaja kita menghapus atau mengedit sebuah file penting, di dalam Linux tidak ada fasilitas undelete, jadi file yang telah terhapus tidak dapat dikembalikan lagi. Perintah (program) chattr digunakan untuk melindungi sebuah file sehingga tidak akan dapat dihapus ataupun dirubah dengan perintah apapun. Perintah chattr memberikan atribut i pada file yang dilindungi, perintahnya: # chattr +i namafile misal: # chattr +i penting.txt setelah perintah tersebut dijalankan, gunakan perintah ls l untuk melihat hasilnya: jika suatu ketika file ini akan diedit atau dihapus, terlebih dahulu atribut diatas harus dilepas, untuk melepasnya gunakan perintah berikut: # chattr i namafile semoga tulisan ini berguna buat agan SUMBER :