OPERASI FILE & STRUKTUR DIRECTORY Prakt 3 SISTEM OPERASI
Pokok Bahasan Operasi File pada sistem operasi Linux Struktur directory 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 directory Memahami konsep link dan symbolic link
EVERYTHING IN UNIX/LINUX IS A FILE
KATAGORI FILE File membagi semua devais menjadi 3 kelas : Block Devices Character Devices Network Devices
BLOCK DEVICES Divais yang termasuk block device : Hard Disks, Floppy Disks, CD-ROMs dan Flash Memory. Divais ini dapat diakses secara random Sesuai namanya, dibaca perblok Ditandai huruf b pada awal file listing (ls –l) Contoh : /dev/hda,/dev/hdb,dll
CHARACTER DEVICES Divais yang termasuk character device : Console, Mouse, serial ports, keyboards, dll Divais ini diakses skuensial atau serial Data dibaca per karakter satu persatu Ditandai oleh huruf c di awal file list (ls –l) Contoh : text console (/dev/console), serial ports (/dev/ttyS0)
NETWORK DEVICES Merupakan interface untuk mengirim dan menerima paket data Divais yang termasuk network device : Modem, loopback, ethernet card User tidak dapat mentransfer data langsung ke devais jaringan, namun membuka koneksi ke sub-sistem jaringan dari kernel Contoh : eth0,wlan0, dll
Direktori di linux : /
Direktori di Linux : / ss
Isi directory(1) /etc : Berisi file administrative (konfigrasi dll) dan file executable atau script yang berguna untuk administrasi system. /dev : Berisi file khusus yang merepresentasikan peralatan hardware seperti memori, disk, printer, tape, floppy, jaringan dll. /bin : Berisi utilitas sistem level rendah (binary) . /sbin : Berisi utilitas sistem untuk superuser (untuk membentuk administrasi sistem).
Isi directory(2) /usr/sbin dan /usr/bin : Berisi utilitas sistem dan program aplikasi level tinggi. /usr/lib : Berisi program library yang diperlukan untuk kompilasi program (misalnya C). Berisi instruksi (command) misalnya untuk Print Spooler (lpadmin) dll. /proc : Berisi informasi tentang kernel Linux, proses dan virtual system file.
Isi directory(3) /var : Direktori variable, artinya tempat penyimpanan LOG (catatan hasil output program), file ini dapat membengkak dan perlu dimonitor perkembangannya. /home : Berisi direktori untuk pemakai Linux (pada SCO diletakkan pada /usr) /tmp : Berisi file sementara, yang pada saat Bootstrap akan dihapus (dapat digunakan oleh sembarang user). /boot : Berisi file yang sangat penting untuk proses bootstrap. Kernel vmlinuz disimpan di direktori ini.
Isi directory(4) /mnt : Direktori untuk mounting system file /root : Home direktori untuk superuser (root) /usr/bin/X11 : Symbolic link ke /usr/X11R6/bin, program untuk X-Window /usr/src : Source code untuk Linux /opt : Option, direktori ini biasanya berisi aplikasi tambahan (“add-on”) seperti Netscape Navigator, kde, gnome, applix dll.
Format file Hasil output ls –l : - menunjukkan file ordinary rwxr-xr-x : hak/ijin akses user,group dan other 1 : jumlah link/directory dalam direktori ini Root : user Root : group Juli 09 2009 : tanggal file dibuat /home/file : tempat dan nama file
Tipe File(1) Ordinary file, ditunjukkan notasi - Direktori, ditunjukkan notasi d Block Device (Peralatan I/O) ditunjukkan notasi b Merupakan representasi dari peralatan hardware yang menggunakan transmisi data per block (misalnya 1 KB block), seperti disk, floppy, tape. Character Device (Peralatan I/O) ditunjukkan notasi c Merupakan representasi dari peralatan hardware yang menggunakan transmisi data karakter per karakter, seperti terminal, modem, plotter dll
Tipe File(2) Named Pipe (FIFO) ditunjukkan notasi p File yang digunakan secara intern oleh system operasi untuk komunikasi antar proses Link File ditunjukkan l Local domain socket ditunjukkan oleh notasi s
Ijin Akses Ditunjukkan oleh : -rwx-rwx-rwx Dimana : r : read -> nilainya 4 w : write -> nilainya 2 x : excutable -> nilainya 1 rwx pertama adalah untuk user, diikuti grup dan terakhir others Dapat diubah dengan perintah chmod #chmod <ijinakses> <namafile>
Misalkan ditulis hak akses 745 : 7 : user : r+w+x=4+2+1=7 4 : grup : r=4 5 : other : r+x=4+1=5 Jika hak akses 771, bagaimana?
File ownership Ditunjukkan oleh dari perintah ls –l Pada contoh diatas, user adalah auth dan group adalah 1639 Menunjukkan ownership untuk user dan group Dapat diubah dengan menggunakan perintah chown # chown <ownerbaru> <namafile>
Link file Terdiri atas : hard link dan soft link Tujuan adalah untuk meningkatkan penggunaan sharefile antara file-file di linux
Inode Inode : Index node Inode adalah bilangan integer yg merupakan metadata yang menyimpan semua informasi tipe file, file ownership, akses mode, jumlah link, kecuali isi datadan nama file Nomor inode ini digunakan untuk indexing tabel inode. Cek inode dg ls - i
Ls –i dan stat
Hard Link vs Symbolic Link(1) Ada dua macam link file : hard link dan soft link(atau symbolic link) Membuat file Pada hardlink dapat dilakukan dengan ln <fileasli> <filelink> Pada softlink dapat dilakukan dengan ln -s <fileasli> <filelink> Jika dilakukan ls -al Pada hardlink, hak akses sama dg file asal, jika hak akses file asal dirubah, maka hak akses file hardlink juga berubah. Pada softlink, ada tambahan l pada awal hak akses dan ada tanda -> yg merujuk pada file asal. Hak akses pada softlink berbeda dengan file asal(lrwx-rwx-rwx)
Hard Link vs Symbolic Link(2) Nomor inode (cek dg ls –i) : Pada hard-link, sama dengan file asal Pada softlink, no inode berbeda Jika dihapus file asli: pada hardlink, file tetap dapat diakses Pada softlink, saat dilakukan ls, file tersebut nampak, namun file tersebut tidak dapat dibuka.
mkdir Membuat beberapa direktory di dalam direktory sekaligus $ mkdir F S W W/A Peintah ini akan membuat direktory F,S,W,W/A.
cp dan mv $ cp A Q C AW/AW1 $ mv A Q C AW/AW1 Artinya : kopikan file A,Q dan C ke direktory AW/AW1 $ mv A Q C AW/AW1 Artinya : pindahkan file A,Q dan C ke direktory AW/AW1
Menghapus direktory yang tidak kosong (ada filenya) rmdir digunakan untuk menghapus direktory. Jika direktory berisi file, maka rmdir gagal # rm –rf <namadirektory> # rm –r <namadirektory> r -> menghapus direktory dan isinya seluruhnya f : force -> tidak perlu bertanya (prompt user)
Find $ find ./test : melisting semua file pada /test $ find ./test -name "abc.txt“ : mencari file abc.txt pada /test $ find ./test -name "*.php“ : mencari semua file *.php pada /test $ find . -exec ls -ld {} \; : pada direktory yang ada, lakukan listing untuk direktory dan file-file dalam direktory tersebut
$ find /tmp -type f -name "*.txt" -exec rm -f {} \; pada /tmp, cari semua file *.txt, hapus file *.txt
Perintah Pwd Echo Cd Mkdir Ls Rm Rmdir
Cp Mv Echo Cat Ln File Find Which
Pustaka http://www.xml.com/ldd/chapter/book/ch14.html