Praktikum 3 - Operasi File dan Struktur Direktory
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 directory
ü Memahami konsep link dan symbolic
link
DASAR TEORI:
1 ORGANISASI FILE
Sistem file pada Linux menyerupai
pepohonan (tree), yaitu dimulai dari root, kemudian
direktori dan sub dirrektori. Sistem
file pada Linux diatur secara hirarkhikal, 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).
2 DIREKTORY STANDAR
Setelah proses instalasi, Linux menciptakan system
file yang baku, terdiri atas direktori sebagai
berikut :
Direktori |
Deskripsi |
/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). |
/usr/sbin /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. |
/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. |
/proc |
Berisi informasi tentang
kernel Linux, proses dan virtual
system file. |
/var |
Direktori variable, artinya
tempan penyimpanan LOG (catatan hasil output program), file ini dapat membengkak dan perlu dimonitor perkembangannya. |
/home /mnt |
Berisi direktori untuk
pemakai Linux (pada
SCO diletakkan pada /usr) 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. |
Direktori /etc
Berisi file yang berhubungan dengan
administrasi system, maintenance script, konfigurasi,
security dll. Hanya superuser yang
boleh memodifikasi file yang berada di drektori ini. Subdirektori yang sering diakses
pada direktori /etc
antara 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.
Peralatan |
Direktori |
Floppy |
/dev/fd0 |
Harddisk |
IDE : /dev/had,
/dev/hdb, /dev/hdc, /dev/hdd SCSI : /dev/sda, /dev/sdb, /dev/sdc |
CDROM |
SCSI : /dev/scd0, /dev/scd1 IDE : /dev/gscd,
/dev/sonycd Universal : /dev/cdrom (link dari actual cdrom
ide atau scsi) |
Mouse |
PS2 : /dev/lp0 Universal : /dev/mouse |
Parallel Port |
LPT1 : /dev/lp0 LPT2 : /dev/lp1 |
Serial Port |
COM1 : /dev/ttyS0 COM2 : /dev/ttyS1 Universal : /dev/modem (link dari S0 atau S1) |
Direktori /proc
Direktori /proc adalah direktori yang dibuat diatas RAM (Random Access Memory) dengan system file yang diatur olehkernel. /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 (Process 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 :
Karakter |
Arti |
- |
File biasa |
d |
Direktori |
l |
Symbolic link |
b |
Block special file |
c |
Character special file |
s |
Socket link |
p |
FIFO |
·
Ijin akses : menentukan hak user terhadap
file ini.
·
Jumlah link : jumlah link untuk file ini.
·
Pemilik (Owner) : menentukan
siapa pemilik file ini
·
Group : menentukan group yang memiliki
file ini
·
Jumlah karakter : menentukan ukuran file dalam byte
·
Waktu pembuatan : menentukan
kapan file terakhir
dimodifikasi
Nama file maksimal terdiri dari 255
karakter berupa alfanumerik dan beberapa karakter spesial
yaitu garis bawah,
titik, koma dan lainnya kecuali
spasi dan karakter
“&”, “;”, “|”, “?”, “`”, “””, “’”, “[“, “]”, “(“, “)”, “$”, “<”,
“>”, “{“, “}”, “^”, “#”, “\”,
“/”. Linux
membedakan huruf kecil dengan huruf besar (case sensitive). Contoh nama file yang benar :
Abcde5434 3
prog.txt
PROG.txt Prog.txt,old report_101,v2.0.1 5-01.web.html
Link
adalah sebuah 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 :
fileDuplikat disebut
hard link dimana kedua file akan
muncul identik (link count = 2) Bila fileAsli atau ileDuplikat diubah perubahan akan
terjadi pada file lainna.
Symbolic Link diperlukan bila file
tersebut di “link” dengan direktori
/file yang berada pada partisi yang berbeda. Tipe file menjadi
l (link) dan file tersebut
menunjuk ke tempat asal. Format :
ln –s /FULLPATH/fileAsli /FULLPATH/fileDuplikat
Pilihan –s (shortcut) merupakan bentuk soft link dimana jumlah link count pada file asal tidak akan berubah. Pada bentuk soft link, symbolic link dapat dilakukan pada file yang tidak ada, sedangkan pada hard link tidak dimungkinkan. Perbedaan lain, symbolic link dapat dibentuk melalui media disk atau partisi yang berbeda dengan soft link, tetapi pada hard link terbatas pada partisi disk yang sama
Untuk melihat
jenis file menggunakan format :
file filename(s)
Isi file akan dilaporkan
dengan deskripsi level tinggin seperti contoh berikut
$ file myprog.c letter.txt webpage.html myprog.c: C programtext
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.
- find
- which
Format : which command
Untuk mengetahui
letak system utility
- locate
Format : locate string
Akan me ncari file pada semua directori dengan lebih cepat dan ditampilkan dengan path yang penuh.
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.
1. Melihat direktori HOME
$ pwd
$ echo $HOME
2. Melihat direktori aktual dan parent direktori
$ pwd
$ cd .
$ pwd
$ cd ..
$ pwd
$ cd
Analisa : Pada percobaan ini kita mencoba perintah untuk melihat actual directory dan parental directory, dgn menggunakan perintah cd yang berfungsi untuk berpindah dan pwd yang berfungsi untuk melihat direktori yang sedang aktif.
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
Analisa : Pada percobaan ini kita mencoba untuk membuat satu dan sub direktori, membuat suatu direktori kita gunakan perintah mkdir, dan disini kita membuat direktori dan sub direktorinya, lalu ditampilkan segala informasinya dengan menggunakan perintah ls, dan didalam direktori A terdapat sb direktori D dan E.
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
$ ls -l B
$ rmdir B/F B
$ ls -l B
Analisa : Pada percobaan ini kita mencoba untuk menghapus direktori dengan menggunakan perintah rmdir, tapi pada rmdir B terdapat pesan eror, itu karena direktori B tidak kosong dan kita tidak memiliki ijin akses. kita diperbolehkan menghapus direktori apabila direktori tersebut kosong dan kita memiliki ijin akses terhadap direktori tersebut.
5. Navigasi direktori
dengan instruksi cd untuk pindah
dari satu direktori ke direktori lain.
$ pwd
$ ls -l
$ cd A
$ pwd
$ cd ..
$ pwd
$ cd /home/<user>/C
$ pwd
$ cd /<user/C (Terdapat pesan error, mengapa ?)
$ pwd
Analisa : Pada percobaan ini kita mencoba untuk berpindah dari satu direktori ke direktori yang lain dengan menggunakan perintah cd.
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
Analisa : Pada percobaan ini digunakan untuk mengcopy file, jadi di buat dulu sebuah file lalu file tersebut di copy dan ditampilkan seluruh informasinya menggunakan perintah $ ls -l
Perintah $ cat > contoh terbentuk file “contoh”
Perintah $ cp contoh contoh1 terbentuk file “contoh dan contoh1”
Perintah $ cp contoh A artinya meng-copy file “contoh” ke direktori
Perintah $ cp
2. Perintah mv untuk memindah file
$ mv contoh
contoh2
$ ls -l
$ mv contoh1 contoh2
A/D
$ ls –l A/D
$ mv contoh contoh1
C
$ ls –l C
Analisa : Pada Percobaan ini Memindahkan file dapat menggunakan perintah $ mv yang dimana untuk melihat informasinya dapat menggunakan perintah $ ls -l.
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 "Hallo apa khabar" > 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
Analisa : Percobaan ini untuk membuat shortcut pada file dengan menggunaka perintah ln, jadi kita membuat file dengan nama halo.txt yang berisi hallo apa kabar, lalu dilihat pada home, apa saja direktori yang sedang aktif, dan salah satunya adalah halo.txt itu, lalu kita membuat direktori dengan nama mydir, lalu melihat isi direktori mydir yaitu file halo.txt dan membuat link.
Percobaan 4 : Meliihat isi File
$ ls –l
$ file halo.txt
$ file bye.txt
Analisa : Disini kita menggunakan perintah ls -l yang berfungsi untuk melihat semua yang informasi keseluruhan yang ada didalam home. dan kemudian melihat informasi tentang file halo.txt dan 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”
Analisa : Pada percobaan ini perintah which digunakan untuk mengetahui letak system utility. Sedangkan perintah locate digunakan untuk mencari file pada semua directory dengan lebih cepat dan ditampilkan dengan path yang penuh
Percobaan 6 : Mencari Text pada File
$ grep Hallo
*.txt
Analisa : Perintah grep digunakan untuk melihat dimana saja isi file yang dituliskan berada. Dan juga Grep (general regular expression print) digunakan untuk mencari file yang bernama sesuai pattern yang diberikan dan akan menampilkan baris yang sesuai.
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
$ cd
$ pwd
$ ls –al
$ cd .
$ pwd
$ cd ..
$ pwd
$ ls -al
$ cd ..
$ pwd
$ ls -al
$ cd /etc
$ ls –al | more
$ cat passwd
$ cd –
$ pwd
Analisa : Perintah-perintah yang digunakan pada bagian ini yaitu :
· Perintah $ cd digunakan untuk pindah ke direktori lain.
· Perintah $ pwd digunakan untuk mengetahui posisi dari sebuah direktori yang sedang ditempati.
· Perintah $ ls -al digunakan untuk melihat semua file secara lengkap.
· Perintah $ cd .. digunakan untuk kembali ke direktori sebelumya.
· Perintah $ cat digunakan untuk melihat isi dari suatu file.
· Perintah $ la -al | more digunakan untuk melihat semua file pada satu layar penuh.
· Perintah $ cd – digunakan untuk Kembali ke root.
2. Lanjutkan penelusuran pohon pada sistem file menggunakan cd, ls, pwd dan cat.
Telusuri direktory /bin, /usr/bin, /sbin, /tmp dan /boot.
/bin
Analisa : Perintah $ cd / bin di gunakan untuk berpindah ke direktori yang bererisi file yang dapat dieksekusi/dijalankan dan $ pwd melihat direktori terkini dan $ ls menampilkan isi direkori binarry.
Analisa : Perintah $ cd /usr/bin untuk berpindah diektori ke direktori usr/bin lalu berpindah lagi ke direktori /sbin dengan perintah $ cd/sbin, $ pwd melihat direktori terkini pada /sbin lalu $ ls menampilkannya
/sbin
Analisa : $ cd / tmp berisi file-file untuk penyimpanan sementara, misalnya untuk file yang akan dihapus setelah bekerja $ cd /boot Direktori berisi file yang dieksekusi saat Linux booting.
/tmp
Analisa : $ cd / tmp berisi file-file untuk penyimpanan sementara, misalnya untuk file yang akan dihapus setelah bekerja $ cd /boot Direktori berisi file yang dieksekusi saat Linux booting.
/boot.
3. Telusuri direktory /dev. Identifikasi perangkat yang tersedia. Identifikasi tty (termninal) Anda (ketik who am i); siapa pemilih tty Anda (gunakan ls –l).
4. Telusuri derectory /proc. Tampilkan isi file interrupts, devices,
cpuinfo, meminfo dan uptime menggunakan
perintah cat.
Dapatkah Anda melihat mengapa
directory /proc disebut pseudo -filesystem yang memungkinkan akses ke struktur data kernel ?
Analisa : Perintah $ cat digunakan untuk melihat isi dari suatu file.
· File interrupts berisi tentang proses-proses yang terjadi saat ini.
· File devices berisi tentang device yang sedang aktif.
· File cpuinfo untuk melihat info cpu dan prosesnya saat berlangsung.
· File meminfo berisi info memory dan bagaimana prosesnya berlangsung.
· File uptime untuk mengetahui informasi tentang lamanya system yang berjalan setelah terakhir reboot atau mati
5. Ubahlah direktory home ke user lain secara langsung menggunakan cd ~username.
Analisa : Keadaan awal berada di direktori /proc/. Dilanjutkan dengan menjalakan perintah $ cd ~nabilahnova untuk pindah ke direktori lain. Perintah $ pwd digunakan untuk mengecek keadaan kita sedang berada di suatu direktori.
6. Ubah kembali ke direktory home Anda.
Analisa : Perintah $ cd digunakan untuk kembali ke direktori home.
7. Buat subdirektory work dan play.
8. Hapus subdirektory work.
Analisa : Pada bagian ini digunakan perintah $rmdir untuk menghapus subdirektori work pada direktori home. Untuk memastikan subdirektori tersebut sudah terhapus atau belum dapat dilakukan pengecekan dengan menggunakan perintah $ ls
9. Copy file /etc/passwd ke direktory home Anda.
Analisa : Perintah $ cp untuk mengcopy file passwd ke dalam direktori home yang digunakan.
10. Pindahkan ke subirectory play.
Analisa : Untuk memindahkan file dapat menggunakan perintah $ mv. Untuk memastikan bahwa file passwd sudah berpindah ke subdirektori play dengan menggunakan perintah $ls.
11. Ubahlah ke subdirektory play
dan buat symbolic
link dengan nama terminal yang menunjuk ke perangkat
tty. Apa yang terjadi jika melakukan hard link ke perangkat tty ?
Analisa : Ketika dilakuknnya hard link maka akan terjadi error karena tty merupakan file system sehingga dilakukan softlink dan perintah berhasil dan tidak terjadi file error.
12. Buatlah file bernama hello.txt
yang berisi kata ”hello word”. Dapatkah Anda gunakan ”cp” menggunakan
”terminal” sebagai file asal untuk menghasilkan efek yang sama ?
13. Copy hello.txt ke terminal. Apa yang terjadi ?
Analisa : Ketika seluruh direktori play di-copy ke directory Bernama work menggunakansymbolic link maka akan berhasil dengan munculnya “/home/nabilahnova/work” dengan menggunakan perintah $ ls.
14. Masih direktory home, copy keseluruhan direktory play ke direktory bernama work menggunakan symbolic link.
15. Hapus direktory work dan isinya dengan satu perintah
Analisa : Untuk menghapus direktori dapat menggunakan rm -rf <direktori yg ingin dihapus>
Pada percobaan 1 point tiga, buat pohon dari struktur file dan direktori
KESIMPULAN
Pada praktikum diatas bahwa sistem file yang terdapat pada linux menyerupai tree. Dimana bermula dari root direktori dan bagian subdirektori. Pada praktikum ini menggunakan perintah-perintah yang berbeda sesuai dengan fungsi yang diinginkan. Perintah-perintah yang digunakan pada praktikum ini seperti, perintah $ cp yang berfungsi untuk mengcopy, $mv yang berfungsi untuk memindahkan file, $ cd yang berfungsi untuk menggati direktori, $ ln yang berfungsi untuk untuk melakukan link, $ mk dir yang berfungsi untuk membuat direktori, dan $ rmdir yang berfungsi untuk menghapus direktori. Setiap hasil eksekusi perintah dapat bekerja dengan baik tanpa adanya kesalahan atau error ketika cara kerja dari perintah tersebut dapat dipahami.
Comments
Post a Comment