Praktikum 3 Operasi File dan Struktur Direktori
Praktikum 3
POKOK BAHASAN:
TUJUAN
BELAJAR:
ü 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).
Gambar 1.3 Struktur direktori pada Linux
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 : menentukan nama file yang dimaksud
Contoh :
![]()
![]()
![]()
![]()
![]()
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 “&”, “;”, “|”, “?”, “`”, “””, “’”, “[“, “]”, “(“, “)”, “$”, “<”, “>”, “{“, “}”, “^”, “#”, “\”,
“/”. 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 :
ln fileAsli fileDuplikat
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 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
me ncari file pada semua directori 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.
TUGAS PENDAHULUAN :
Jawablah pertanyaan-pertanyaan di bawah ini :
1. Apa yang dimaksud perintah-perintah direktory : pwd, cd, mkdir, rmdir.
|
Jawab: |
a. |
pwd : |
Perintah
yang digunakan untuk memberitahukan directory aktif kita. |
|
|
b. |
cd : |
Perintah
yang digunakan untuk berpindah directory. |
|
|
c. |
mkdir : |
Perintah
yang digunakan untuk membuat directory baru. |
|
|
d. |
rmdir : |
Perintah
yang digunakan untuk menghapus directory kosong. |
|
Jawab: |
a. |
cp : |
Perintah
yang digunakan untuk melakukan perintah copy atau menggandakan. Format
: # cp “nama file” “tujuan” |
|
|
b. |
mv : |
Perintah
yang digunakan untuk melakukan perintah move atau memindah. Format
: # mv “nama file” “tujuan” |
|
|
c. |
rm : |
Perintah
yang digunakan untuk menghapus file. Format
: # rm “nama file” |
|
Jawab: |
Perbedaan
Symbolic link yang menggunakan hard link (direct)
dan soft link (indirect): - Pada bentuk
soft link, symbolic link dapat dilakukan pada file yang tidak ada, sedangkan
pada hard link tidak dimungkinkan. |
|
|
- Symbolic link
dapat dibentuk melalui media disk atau partisi yang berbeda dengan soft link,
tetapi pada hard link terbatas pada partisi disk yang sama. |
|
Jawab: |
a. |
file : |
Perintah
yang digunakan untuk melakukan pengecekan terhadap sebuah argumen. |
|
|
b. |
find : |
Perintah
yang digunakan untuk melakukan pencarian file atau directory. |
|
|
c. |
which : |
Perintah
yang digunakan untuk mencari suatu perintah, sumber perintah, dan juga manual
page. |
|
|
d. |
locate : |
Perintah
yang digunakan untuk menampilkan lokasi dari file. |
|
|
e. |
grep : |
Perintah yang digunakan untuk menampilkan
string yang sesuai dengan input yang berasal dari perintah lainnya. |
PERCOBAAN:
1.
Login sebagai user.
2.
Bukalah Console Terminal dan
lakukan percobaan-percobaan di bawah ini. Perhatikan hasilnya.
3. Selesaikan soal-soal latihan
$ cd .
$ pwd
$ cd ..
$ pwd
$ cd
Analisa : Pada percobaan direktori untuk bagian melihat direktori aktual dan parent direktori, perintah yang digunakan adalah $ cd yang berfungsi untuk berpindah dan perintah $ pwd yang berfungsi untuk melihat direktori yang sedang aktif.
$ 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 direktori untuk bagian melihat direktori lebih dari satu, perintah yang digunakan $ mkdir. Perintah yang dimasukkan dalam program yaitu $ mkdir A B C yang digunakan untuk membentuk direktori baru : A , B dan C. Pada direktori A terbentuk direktori baru yaitu direktori D dan E. Di dalam direktori B terbentuk direktori baru yaitu direktori F. Di dalam direktori A terbentuk direktori D di dalam direktori D terbentuk direktori A
kosong
dan hanya dapat dihapus oleh pemiliknya kecuali bila diberikan ijin aksesnya
$ rmdir B
$ ls -l B
$
rmdir B/F B
$ ls -l B (Terdapat pesan error, me ngapa ?)
Analisa : Pada percobaan direktori untuk bagian menghapus direktori, perintah yang digunakan $ rmdir. Pada bagian ini memasukkan perintah $ rmdir B akan tetapi terdapat pesan error karena direktori B tidak kosong dan tidak mempunyai izin akses, diperbolehkan menghapus direktori apabila direktori tersebut kosong dan memiliki izin akses terhadap direktori tersebut, sehingga direktori tidak dapat di hapus Pada percobaan berikutnya menggunaan perintah $ ls -l B terdapat pesan error karena file atau direktori B sudah di hapus melalui perintah rmdir B/F B.
$ pwd
$ ls -l
$ cd A
$ pwd
$ cd ..
$ pwd
$ cd /home/<user>/C
$ pwd
$ cd /<user/C (Terdapat pesan error, mengapa ?)
$ pwd
Analisa :Pada percobaan direktori untuk bagian navigasi direktori, perintah yang digunakan $ cd. Perintah $ cd ini digunakan untuk memindahkan sebuah direktori ke direktori yang lain. Ketika ingin memindahkan direktori harus mengetahui alamat direktori tersebut terlebih dahulu dari file yang berada di bawah file root (test /home,/bin,/etc dll), dan juga berlaku untuk penulisannya harus di mulai dari alamat tersebut, jadi tidak boleh menulis langsung nama direktori dengan menggunakan perintah tersebut kecuali berada di dalam direktori sebelumnya. Percobaan cd /home/azizahazzahra/C terdapat pesan error dikarenakan user yang digunakan saat ini adalah user root
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
file yang sudah dibuat, menggunakan;
- 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 A
- Perintah $ cp contoh contoh1 A/D artinya meng-copy file “contoh” dan “contoh1” dari direktori A ke direktori D
$ mv contoh contoh2
$ ls -l
$ mv contoh1 contoh2
A/D
$
ls –l A/D
$ mv contoh contoh1 C
$ ls –l C
Analisa : Pada percobaan manipulasi file untuk bagian memindahkan file, perintah yang digunakan $ mv. Perintah $ mv digunakan untuk memindahkan suatu file/direktori ke folder lain. Dengan format penulisan $ mv file asal (spasi) ke tempat yang baru. Selain itu juga dapat memindahkan file/direktori lebih dari satu dengan alamat yang terakhir adalah alamat yang baru.
3.Perintah rm untuk menghapus file
$ rm
contoh2
$ ls -l
$ rm –i contoh
$
rm –rf A C
$ ls
-l
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 : Pada percobaan symbolic link untuk bagian membuat shortcut (file link), perintah yang digunakan $ ln halo.txt z. Perintah ini digunakan untuk memudahkan dalam membuat shortcut, perintah ini juga bertujuan untuk membuat duplikasi pada file halo.txt, untuk itu kita dapat membuat file helo.txt dalam file z dan tidak perlu membuka file asli yang telah dibuat.
- Perintah $ echo “Halo apa kabar?” > hallo.txt yang artinya membuat file baru yang didalamnya tertuliskan “ Halo apa kabar?”.
- Perintah $ ln halo.txt z artinya membuat short link suatu file (halo.txt) dengan nama file z .
- Perintah $ cat z artinya file z akan ditampilkan pada terminal. Selanjunya mkdir mydir artinya membuat direktori baru dengan nama mydir. Perintah $ ln z mydir/halo.juga artinya membuat short file z di dalam mydir dengan nama file halo.juga dengan isi file Hello apa kabar.
- Perintah $ ln –s z bye.txt artinya membuat short link file bye.txt
Percobaan 4 : Melihat Isi File
$
ls –l
$ file
halo.txt
$ file bye.txt
Analisa : Pada percobaan melihat isi file, perintah yang digunakan adalah $ ls -l. Perintah ini digunakan untuk melihat isi file yang ada, dan juga berfungsi untuk melihat informasi tentang file halo.txt dan byte.txt
Percobaan 5 : Mencari file
1. Perintah find
$ find /home –name
“*.txt” –print > myerror.txt
$ cat myerror.txt
$ find . –name “*.txt” –exec wc –l ‘{}’ ‘;’
Analisa : Pada percobaan mencari file untuk bagian membuat perintah find, perintah yang digunakan $ find. Perintah find digunakan untuk mencari file yang berekstensikan .txt pada direktori home dan output yang ditampilkan dibelokkan ke file myerror.txt
$ which
ls
Analisa : Pada percobaan mencari file untuk bagian membuat perintah which, perintah yang digunakan $ which ls. Perintah $ which ls berfungsi untuk mencari letak dari direktori ls. Letak system utility juga dapat diketahui letaknya menggunakan perintah $ which.
3. Perintah locate
$ locate “*.txt”
Analisa : Pada percobaan mencari file untuk bagian membuat perintah locate, perintah yang digunakan $ locate. Perintah $ locate digunakan untuk mencari semua file yang berekstensikan .txt pada setiap direktori yang ada.
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
Analisa : Perintah di atas di gunakan untuk dapat mengetahui folder home user dengan perintah $ pwd dan $ cd .. digunakan untuk berpindah 1 direktori di atas direktori dimana kita berada contoh berpindah dari direktori /user/local ke direktori /user, kita dapat juga pindah ke direktori lain secara langsung, misalnya perintah $ cd/etc. Perintah $ cd- sama dengan $ cd .. tapi dalam tampilan dan alamat foldernya seperti $ pwd.
2. Lanjutkan penelusuran pohon pada sistem file menggunakan cd, ls, pwd dan cat. Telusuri direktory /bin, /usr/bin, /sbin, /tmp
dan /boot.
/bin
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 ?
- File interrupts yang berisi tentang proses apa saja yang terjadi saat ini.
- File devices yang berisi tentang device yang sedang aktif.
- File cpuinfo digunakan untuk melihat info cpu dan prosesnya saat berlangsung.
- File meminfo yang berisi tentang info memory dan bagaimana prosesnya berlangsung.
- File uptime untuk mengetahui informasi tentang lama system yang berjalan setelah terakhir reboot atau mati.
6. Ubah kembali ke direktory home Anda.
7. Buat subdirektory work dan play.
8. Hapus subdirektory work.
9. Copy file /etc/passwd
ke direktory home
Anda.
10. Pindahkan ke subirectory play.
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 ?
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 ?
14. Masih direktory home, copy keseluruhan direktory play ke direktory bernama
work
menggunakan symbolic link.
15. Hapus direktory work dan isinya dengan satu perintah
KESIMPULAN
Dari semua praktikum y dapat dianalisa bahwa kita dapat menggunakan perintah- perintah yang dapat memanipulasi data atau membuat shortcut dan mencari file, setiap perintah menggunakan aturan atau format yang berbeda-beda tergantung pada penggunaannya. setiap pengolahan direktori dapat di organisir dengan baik ketika kita memahami untuk apa perintah tersebut dan bagaimana cara kerjanya, sehingga kejadian error perintah dapat di hindari. Dan apabila terjadi kesalahan atau error seperti yang saya lakukan kita dapat memeriksa kembali apakahg ada kesalahan penulisan dan tata letaknya, dan apabila terjadi error permision denied seperti tadi kita bisa meminta bantuan dengan perintah $ --help atau dapat mencari sosulisanya di Google. Semua direktori pada sistem linux dapat di perbaharui dan di akses tapi kita dapat melakukan semua hal tersebut hanya pada sistem root saja, ketika kita bermain di sistem user nya, hanya terdapat beberapa perintah yang dapat digunakan dan folder yang dimanipulasi. tapi jika kita masuk ke sistem root “#” kita dapat memanipulasi semua data yang ada tanpa ada akses yang di blokir atau tidak dibolehkan pada sistem user.
DAFTAR PUSTAKA
Hendriawan Koko . 2013. http://intheworld-it.blogspot.com/2014/11/analisa-dan-laporan-praktikum-3.html . Diakses pada 8 oktober 2021.
Rania Dwitry. 2020. Praktikum 3 Operasi File dan Struktur Direktori (raniadwitry.blogspot.com). Diakses 9 Oktober 2021.
Rinsky. 20202. Laporan Praktikum 3 Operasi File dan Struktur Directory (rinskyy.blogspot.com). Diakses 9 Oktober 2021













































Komentar
Posting Komentar