Jumat, 05 Agustus 2011

OPERASI FILE DAN STRUKTUR DIREKTORI LINUX

OPRASI FILE DAN STRUKTUR DIREKTORI LINUX

Pokok Bahasan :
- Operasi File pada Sistem Operasi Linux
- Struktur Direktory pada Sistem Operasi Linux

Tujuan Belajar
Setelah mempelajari materi dalam bab ini, mahasiswa diharapkan mampu :
- Memahami organisasi file dan direktory pada sistem operasi Linux
- Menciptakan dan manipulasi direktory
- Memahami konsep link dan symblolik link

DASAR TEORI :
1. ORGANISASI FILE

Sistem file pada Linux menyerupai pepohonan (tree), yaitu dimulai dari root, kemudian direktory dan sub direktory. Sistem file pada Linux diatur secara hierarkikal, yaitu dimulai dari root dengan symbol “/” seperti Gambar 3.1

Kita dapat menciptakan File dan Direktori mulai dari root ke bawah. Direktori adalah file khusus, yang berisi nama file dan INODE (Pointer yang menunjuk ke data / isi file tersebut). Secara logika, direktori dapat berisi File dan Direktori lagi (disebut juga Subdirektori).

Materi Selengkapnya downLoad disini
atau



2. DIREKTORI STANDAR

Setelah proses instalasi, Linux menciptakan system file yang baku, terdiri atas direktory sebagai berikut :


Direktori /etc
Berisi file yang berhubungan dengan administrasi system, maintanance script, konfigurasi, security dll. Hanya superuser yang boleh memodifikasi file yang berada di direktori ini. Subdirektori yang sering diakses pada direktori /etc antaran lain :
• Httpd, apache web server.
• Ppp, point to point protocol untuk koneksi ke internet.
• rc.d atau init.d , inisialisasi (startup) dan terminasi (shutdown) proses di Linux dengan konsep runlevel.
• cron.d rincian proses yang dieksekusi dengan menggunakan jadwal ( time dependent process)
• FILES, file security dan konfigurasi meliputi : passwd, hosts, shadow, ftpaccess, inetd.conf, lilo.conf, motd, printcap, profile, resolv.conf, sendmail.cf, syslog.conf, dhcp.conf, smb.conf, fstab.

Direktori /dev
Konsep Unix dan Linux adalah memperlakukan peralatan hardware sama seperti penanganan file. Setiap alat mempunyai nama file yang disimpan pada direktori /dev.



Direktori /proc
Direktori /proc adalah direktori yang dibuat diatas RAM (Random Access Memory) dengan system file yang diatur oleh kernel. /proc berisi nomor proses dari system dan nama driver yang aktif di system. Semua direktori berukuran 0 (kosong) kecuali file kcore dan self. Setiap nomor yang ada pada direktori tsb merepresentasikan PID (proses ID).


3. TIPE FILE

Pada Linux terdapat 6 buah tipe file yaitu :
• Ordinary file
• Direktori
• Block Device ( Peralatan I/O )
Merupakan representasi dari peralatan hardware yang menggunakan transmisi data per block (misalnya 1 KB block), seperti disk, floppy, tape.

• Character Device (Peralatan I/O)
Merupakan representasi dari peralatan hardware yang menggunakan transmisi data karakter per karakter, seperti terminal, modem, plotter dll.

• Named Pipe (FIFO)
File yang digunakan secara intern oleh system operasi untuk komunikasi antar proses.
• Link File

4. PROPERTI FILE
File mempunyai beberapa atribut, antara lain :
• Tipe file : menentukan tipe dari file, yaitu :


• Ijin akses : menentukan hak user terhadap file ini.
• Jumlah link : jumlah link untuk file ini.
• Pemilik (owner) : menentukan siapa pemilik file ini
• Group : menentukan grup yang memiliki file ini
• Jumlah karakter : menentukan ukuran file dalam byte
• Waktu Pembuatan : menentukan kapan file terakhir dimodifikasi
• Nama File : menentukan nama file yang dimaksud

Contoh
-rw-rw-r-- 1 bin auth 1639 oct 16 13:00 /etc/passwd
Penjelasan
- : merupakan tipe
rw-rw-r-- : merupakan ijin akses
1 : jumlah link
bin : pemilik
auth : group
1639 : jumlah karakter
Oct 16 13:00 : waktu
/etc/passwd : Nama file

5. NAMA FILE
Nama file maksimal terdiri dari 255 karakter berupa alfanumerik dan beberapa karakter spesial yaitu garis bawah, titik, koma dan lainnya kecuali spasi dan karakter-karakter berikut :
“&” , “,”, “|” , “?” , “ ’ ” , “ “ “ , “(“ , “)” , “[“ , “]” , “$” , “<” , “>” , “{“ , “}” , “^” , “#” , “\” , “/”.
Linux membedakan huruf kecil dengan huruf besar (case sensitif),
Contoh nama file yang benar :
Abcde5434
3
Prog.txt
PROG.txt
Prog.txt, old
report_1-1, v2.0.1
5-01.web.html

6. SIMBOLIC LINK
Link adalah teknik untuk memberikan lebih dari satu nama file dengan data yang sama. Bila file asli dihapus, maka data yang baru juga terhapus. Format dari Link : ln fileAsli fileDuplikat

File duplikat disebut hard link dimana kedua file akan muncul identik (link count=2) Bila fileAsli atau fileDuplikat diubah, maka perubahan akan terjadi pada file lainnya.
Simbolic link diperlukan bila file tersebut di “Link” dengan direktori /file yang berada pada partisi yang berbeda. Tipe file menjadi 1 (link) dan file tersebut menunjuk ke tempat asal. Format :
ln –s /fullpath/fileAsli /FullPath/FileDuplikat
Pilihan –s (shortcut) merupakan bentuk soft link, simbolic link dapat dilakukan pada file yang tidak ada, sedangkan pada hard link tidak dimungkinkan. Perbedaan lain, simbolic link dapat dibentuk melalui media disk atau partisi yang berbeda dengan soft link, tetapi pada hard link terbatas pada partisi disk yang sama.

7. MELIHAT ISI FILE
Untuk melihat jenis file menggunakan format :
file filename(s)
isi file akan dilaporkan dengan deskripsi level tinggi seperti contoh berikut :
# file myprog.c letter.txt webpage.html
myproc.c : C program text
letter.txt : ASCII text
webpage.html : HTML document text

perintah ini dapat digunakan secara luas untuk file yang kadang membingungkan, misalnya antara kode C++ dan java.


8. MENCARI FILE
Jika ingin melihat bagaimana pohon direktori dapat digunakan perintah
• Find
Format : find directory_name targetfile –print
Akan melihat file yang bernama targetfile (bisa berupa karakter wildcard)

• Which
Format : which command
Untuk mengetahui letak system utility

• Locate
Format : locate string
Akan mencari file pada semua direktori dengan lebih cepat dan ditampilkan dengan path yang penuh.


9. MENCARI TEXT PADA FILE
Untuk mencari text pada file digunakan perintah grep (General Regular Expression Print) dengan format perintah :
grep option pattern files
Grep akan mencari file yang bernama sesuai pattern yang diberikan dan akan menampilkan baris yang sesuai.

PERCOBAAN :
1. Login sebagai user
2. Bukalah Console Terminal (open terminal) dan lakukan percobaan-percobaan dibawah ini, dan perhatikan dan catat hasilnya.
3. selesaikan soal-soal latihan

Percobaan 1 : Direktori
1. Melihat direktori Home
# pwd
# echo #home

2. Melihat direktori aktual dan parent direktori
# pwd
# cd .
# pwd
# cd ..
# pwd
# cd

3. Membuat satu direktori, lebih dari satu direktori atau sub direktori
# pwd
# mkdir A B C A/D A/E B/F A/D/A
# ls –l
# ls –l A
# ls –l A/D

4. Menghapus satu atau lebih direktori hanya dapat dilakukan pada direktori kosong dan hanya dapat dihapus oleh pemiliknya kecuali bila diberikan ijin aksesnya.
# rmdir B ( Terdapat pesan error, mengapa ? )
# ls –l B
# rmdir B/F B
# ls –l B ( Terdapat pesan error, mengapa ? )

5. Navigasi direktori dengan instruksi cd untuk pindah dari satu direktori ke direktori lainnya.
# pwd
# ls –l
# cd A
# pwd
# cd /home/

Percobaan 2 : Manipulasi File
1. perintah cp untuk mengkopi file atau seluruh direktori
# cat > contoh
Membuat sebuah file
[Ctrl+d]
# cp contoh contoh1
# ls –l
# cp contoh A
# ls –l A
# cp contoh contoh1 A/D
# ls –l A/D

2. perintah mv untuk memindahkan file
# mv contoh contoh2
# ls –l
# mv contoh1 contoh2 A/D
# mv contoh contoh1 C
# ls –l C

3. perintah rm untuk menghapus file
# rm contoh2
# ls –l
# rm –i contoh
# rm –rf A C
# ls –l

Percobaan 3 : Symbolic Link
1. Membuat shortcut (file link)
# echo “ Halo Apa kabar “ > halo.txt
# ls –l
# ln halo.txt z
# ls –l
# cat z
# mkdir mydir
# ln z mydir /halo.juga
# cat mydir /halo.juga
# ln –s z bye.txt
# ls –l bye.txt
# cat bye.txt

Percobaan 4 : Melihat isi file
# ls –l
# file halo.txt
# file bye.txt

Percobaan 5 : Mencari file
1. perintah find
# find /home –name “*.txt” –print > myerror.txt
# cat myerror.txt
# find . –name “*.txt” –exec wc –l ‘{}’ ‘;’

2. Perintah which
# which ls

3. Perintah locate
# locate “*.txt”

Percobaan 6 : Mencari text pada file
# grep Hallo *.txt


LATIHAN
1. Cobalah urutan perintah berikut :
# cd
# pwd
# ls –al
# cd .
# pwd
# cd ..
# pwd
# ls –al
# cd ..
# pwd
# ls -al
# cd /etc
# ls –al | more
# cat passwd
# cd –
# pwd

2. Lanjutkan penelusuran pohon pada sistem file menggunakan cd, ls, pwd dan cat.
Telusuri direktori /bin, /usr/bin, /sbin, /tmp dan /boot. {jangan melakukan perubahan isi direktori tsb.}

3. Telusuri direktori /dev. Identifikasi perangkat yang tersedia. Identifikasi tty (terminal) Anda (ketik who am i). siapa pemilik tty Anda ( gunakan ls –l).

4. Telusuri direktori /proc. Tampilkan isi file interrupts, devices, cpuinfo, meminfo dan uptime menggunakan perintah cat. Dapatkah Anda melihat ? mengapa direktori /proc disebut pseudo-file system yang memungkinkan akses ke struktur data kernel ?

5. Ubahlah direktori home ke user lain secara langsung menggunakan cd ~username
6. Ubah kembali ke direktori home anda
7. Buat subdirektori work dan play
8. Hapus subdirektori work
9. Copy file /etc/passwd ke direktori home anda
10. Pindahkan ke subdirektori play
11. Ubahlah ke subdirektori play dan buat symbolic link dengan nama terminal yang menunjuk ke perangkat tty. Apa yang terjadi jika melakukan hard link ke perangkat tty ?
12. Buatlah file bernama hello.txt yang berisi kata “hello word”. Dapatkah Anda gunakan “cp” menggunkan “terminal” sebagai file asal untuk menghasilkan efek yang sama ?
13. Copy hello.txt ke terminal. Apa yang salah ?
14. Masih direktori home, copy keseluruhan direktori play ke direktori bernama work menggunakan symbolic link.
15. Hapus direktori work dan isinya dengan satu perintah.

LAPORAN { DiKumpulkan langsung ke Asisten }

1.Analisa hasil percobaan yang Anda telah lakukan
a.Analisa setiap hasil tampilannya
b.Pada percobaan 1 point 3 buatlah pohon dari struktur file dan direktori
c.Bila terdapat pesan error, jelaskan penyebabnya

2.Kerjakan latihan diatas dan analisa hasil tampilannya
3.Berikan kesimpulan dari praktikum ini





3^CU3"U124