Kamis, 14 Februari 2008

pengertian root dll

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

Akhir kata penulis mengucapkan selamat mencoba, semoga tulisan ini berguna bagi para pembaca sekalian.

Tidak ada komentar: