Laporan Praktikum 3 Operasi File dan Struktur Direktori
LAPORAN PRAKTIKUM 3
OPERASI FILE DAN STRUKTUR
DIREKTORI
Aulia Wahyuni (1903421035)
BM-5B
BROADBAND
MULTIMEDIA
TEKNIK
ELEKTRO
POLITEKNIK
NEGERI JAKARTA
TAHUN
AJARAN 2021/2022
POKOK BAHASAN
- Operasi File pada Sistem Operasi Linux
- Struktur Direktori pada Sistem Operasi Linux
TUJUAN BELAJAR
Tujuan mempelajari materi ini, diharapkan mahasiswa mampu:
- Memahami organisasi file dan direktori pada sistem operasi Linux
- Menciptakan dan manipulasi direktori
- Memahami konsep link dan symbolic link
DASAR TEORI
1. ORGANISASI
FILE
Sistem file pada Linux menyerupai pepohonan (tree),
yatu dimulai dari root, kemudian direktori dan sub direktori. Sistem file pada
Linux diatur secara hirarkhikal, yaitu dimulai dari root dengan symbol “/”
seperti Gambar dibawah.
Kita dapat menciptakan Dile dan Direktori mulai dari root ke bawah. Direktori dalah file khusus, yang berisi nama file dan INODE (pointer yang menunjukkan ke data / isi file tersebut). Secara logika, Direktori dapat berisi File dan Direktori lagi (disebut juuga Subdirektori).
2. DIREKTOR
STANDARD
Setelah
proses instalasi, Linux menciptakan system file yang baku, terdiri atas
ditektori sebagai berikut :
Direktori |
Deskripsi |
/etc |
Berisi
file administrasi (konfiguasi 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 membuat administrasi sistem) |
/usr/sbin |
Berisi
utilitas sistem dan program aplikasi level tinggi |
/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
intruksi (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 tempat 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/XII |
Symbolic
link ke /usr/XIIR6/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 direktori ini. Subdirektori yang sering
diakses pada direktori /etc
anatar lain :
·
httpd, apache web server
·
ppp, point to point protocol untuk koneksi jaringan
·
rc.d atau init.d, inisialisasi (starup) dan terminasi (shutdown)
prosis di Linux dengan konsep runlevel
·
cron.d, rincian proses yang dieksekusi dengan
menggunakan jadwal (time dependent process).
·
FILES, file security dan konfigurasi meliputi : passwd, 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 Linus adalah memperlakukan peralatan hardware sama
seperti penanganan file. Setiap alat mempunyai nama file yang disimpan pada
ditektori /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/scdl IDE : /dev/gscd,
/dev/sonycd Universal
: /dev/cdrom (link
dari actual 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 dibuat atas 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 seirektori tersebut 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 blok
(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 : mementukan group
yang memiliki fil ini
·
Jumlah
karakter : menentukan ukuran file
dalam byte
·
Waktuu
karakte : 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
6. SIMBOLIC
LINK
Link
merupakan sebuah teknik untuk memberikan lebih dari satu nama file dengan data
yang sama. Format dari link adalah :
ln
file Asli fileDuplikat
fileDuplikat
disebut hard link dimana kedua file akan muncul identik bila fileAsli atau
fileDuplikat diubah perubahan akan terjadi pada file lainnya. Symbloic Link
diperlukan jika file tersebut di
"link" dengan direktori /file yang
berada pada partisi yang berbeda. Format
ln
-s /FULLPATH/fileAsli /FULLPATH/fileDuplikat
Pilihan
-s (shortcut) merupakan soft link dimana jumlah link count pada file asal tidak
akan berubah.
7. MELIHAT
ISI FILE
Format
yang digunakan adalah :
file
filename(s)
8. MENCARI
FILE
Untuk
melihat pohon direktori dapat menggunakan perintah :
-
find akan melihat file yang bernama target file
-
which untuk mengetahui letak system utility
-
locate untuk mencari file pada semua directory dengan lebih cepat dan
menampilkan path dengan penuh
9. MENCARI
TEXT PADA FILE
Perintah
grep dapat digunakan untuk mencari text pada file dengan format :
grep
option pattern files
Grep
akan mencari file yang bernama sesuai pattern yang diberikan dan akan
menampilkan baris yang sesuai.
TUGAS PENDAHULUAN
1. Apa yang dimaksud perintah-perintah direktori : pwd, cd, mkdir, rmdir?
- $ pwd : Perintah yang digunakan untuk menampilkan direktori yang sedang digunakan/ aktif.
- $ cd : perintah yang digunakan untuk pindah direktori atau mengubah lokasi direktori.
- $ mkdir : perintah yang digunakan untuk membuat direktori baru.
- $ rmdir : perintah yang digunakan untuk menghapus direktori.
2. Apa yang dimaksud perintah-perintah manipulasi file : cp, mv, dan rm (sertakan format yang digunakan)?
- $ cp : digunakan untuk menyalin seluruh direktori atau file. Contoh menyalin atau mengcopy file contoh1 menjadi contoh2.
format : $ cp contoh1 contoh 2
- $ mv : digunakan untuk memindahkan file dari satu loksi ke lokasi yang lain.
format : $ mv contoh1 contoh 2
- $ rm: berfungsi untuk menghapus file.
format : $ rm contoh1
3. Jelaskan perbedan Symbolic link menggunakan hard link (direct) dan soft link (indirect)!
- Hard link (direct) tidak dapat dilakukan symbolic link pada file yang tidak ada. Hard link memiliki link terbatas pada partisi link yang sama.
- Soft link (indirect), symbolic link dapat dibentuk melalui media disk atau partisi yang berbeda dan dapat dilakukan pada file yang tidak ada.
4. Tuliskan maksud perintah-perintah : file, find, which, locate, dan grep!
- file : untuk melihat isi dari suatu file.
- find : untuk mencari file dalam pohon direktori.
- which : menampilkan alamat atau letak lengkap suatu perintah.
- locate : mencari path file atau direktori.
- grep : mencari baris-baris yang mengandung teks dengan kriteria yang telah ditentukan pada file yang diberikan.
PERCOBAAN DAN HASIL SERTA ANALISA
Percobaan
Percobaan 1 :
Direktori
1.
Melihat direktori HOME
$ pwd
$ echo $HOME
Untuk melihat direktori HOME, mengunakan perintah pwd yang berfungsi untuk melihat direktori yang digunakan/aktif. Bisa juga dengan perintah $ echo (nama direktori) untuk langsung menuju direktori yang ingin dilihat.
2.
Melihat direktori aktual dan
parent direktori
$ pwd
$ cd
.
$ pwd
$ cd
..
$ pwd
$ cd
Untuk melihat direktori secara aktual dan parent direktori dengan menggunakan perintah $ pwd yang berfungsi untuk melihat direktori yang aktif. Sedangkan perintah $ cd untuk berpindah direktori.
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
Untuk membuat sebuah direktori baru gunakan perintah $ mkdir (nama). Untuk membuat sebuah direktori dengan sub direktori gunakan $ mkdir (nama) (nama)/(apa). Dapat dilihat pada gambar telah terbuat direktoria A berisi subdirektori D dan E. Untuk memastikan apakah sudah terbuat direktori, bisa menggunakan perintah ls - l (direktori) untuk melihat list direktori yang berada di direktori tersebut.
Pohon dari struktur file dan direktori:
$
tree
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
Perintah yang digunakan untuk menghapus direktori adalah $ rmdir. Jika dilihat pada gambar diatas, terjadi kesalahan/error saat menjalankan $ rmdir B, hal itu terjadi disebabkan direktori tersebut berisi satu direktori. Sehingga untuk menghapus direktori B, perlu dilakukan penghapusan direktori sekaligus dengan isinya dengan menggunakan $ rmdir B/F B. Ketika dijalankan perintah $ ls - B, maka terjadi error karena direktori tersebut tidak dapat dilihat karena direktori B sudah terhapus berserta isinya.
5.
Navigasi direktori dengan
instruksi cd untuk pindah daari satu direktori ke direktori lain.
$ pwd
$ ls
-l
$ cd
A
$ pwd
$ cd
..
$ cd
/home/<user>/C
$ pwd
$ cd /<user>/C
Perintah $ cd digunakan untuk melakukan perpindahan dari direktori ke direktori lainnya. Jika dilihat terdapat sebuah error ketika ingin berpindah ke direktori /aulia/C, dikarenakan posisi user sudah berada di /aulia/C dan didirektori tersebut tidak ada direktori C.
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
Percobaan ini menjalankan perintah $ cp untuk mengcopy/menyalin file yang telah dibuat. Kemudia, untuk memastikan file tersebut telah tersalin di direktori yang diinginkan dapat menggunakan perintah ls -l.
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
Perintah $ mv digunakan untuk melakukan perpindahan file dari direktori ke direktori lainnya. Dapat dilihat perpindahan file contoh menjadi contoh2. Untuk memastikan apakah file tersebut sudah dipindahkan dengan benar, 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 ini menjalankan perintah $ rm untuk menghapus file yang telah dibuat. Dapat dilihat terjadi error ketika menjalankan rm -i contoh, itu disebabkan file contoh tidak ada di direktori Home. Kemudian, untuk memastikan file tersebut telah terhapus di direktori dapat menggunakan perintah 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
Pada percobaan ini yang dilakukan pertama adalah membuat file halo.txt dengan perintah echo dengan di dalam file tersebut berisi kalimat "Halo apa khabar". Kemudian, membuat link dengan hard link file halo.txt ke file z dengan menggunakan perintah $ ln. Kemudian membuat direktor mydir dan membuat link dari file z ke file halo.juga yang berada di dlaam direktori mydir. Lalu, membuat link dengan softlink dari file ke bye.txt. Untuk menampilkan isi file tersebut menggunakan perintaah $ cat (nama file).
Percobaan 4 :
Melihat Isi File
$ ls
-l
$ file
halo.txt
$ file bye.txt
Percobaan menggunakan perintah $ file dapat melihat dan mengetahui isi dari file dan tipe file tersebut ASCII atau simbolik.
Percobaan 5:
Mencari File
1. Perintah find
$ find /home -name “*.txt” -print > myerror.txt
$ cat myerror.txt
$ find . -name “*.txt” -exec wc -l ‘{}’ ‘;’
Untuk mencari letak file sesuai dengan ekstensi inputan menggunakan perintah $ find. Contoh pada gambar diatas adalah mencari file dengan format *.txt.
2. Perintah which
$ which ls
Menggunakan perintah $ which untuk mengetahui letak sistem utiliti.
3. Perintah locate
$ locate “*.txt”
Untuk mengetahui direktori mana saja yang terdapat ls menggunakan perintah $ locate. Perintah tersebut digunakan untuk mencari file pada semua direktori dengan lebih cepat dan ditampilkan dengan path yang penuh.
Percobaan 6 :
Mencari text pada file
$ grep Hallo *.txt
Untuk mencari sebuah kata secara spesifik menggunakan perintah $ prep. Pada gambar diatas, mencari kata Hallo dengan formar file *.txt. Didapatkan kata Hallo pada file bye.txt dan hallo.txt.
Latihan
- Cobalah urutan perintah berikut :
$ cd
$ pwd
$ ls
-al
$ cd
.
$ pwd
$ cd
..
$ pwd
$ ls
-al
$ cd
..
$ pwd
$ ls
-al
$ cd
/etc
$ ls
-al | more
$ cat
psswd
$ cd
–
$ pwd
Perintah di atas berfungsi untuk mencari direktori $ cd. Untuk melihat direktori yang sedang aktif menggunakan $ pwd. Setiap pindah direktori baru dengan perintah $ cd, maka hasil ketika menjalankan perintah $ pwd berubah sesuai dengan direktori saat ini yang digunakan. Untuk melihat isi direktori secara keseluruhan menggunakan perintah ls.
2. Lanjutkan penelusuran pohon pada system file menggunakan cd, ls, pwd dan cat. Telusuri direktori /bin, /usr/bin, /sbin, /tmp dan /boot.
/bin
/tmp |
/boot Untuk melakukan perpindahan dari satu direktori ke direktori yang digunakandengan menggunakan perintah $ cd. Perintah $ pwd untuk melihat direktori yang digunakan user saat ini secara aktual. Perintah $ cat untuk menampilkan suatu tipe misalkan tipe direktori.
3. Telusuri direktori /dev. Identifikasi perangkat yang tersedia. Identifikasi tty (terminal) And (ketik who am i); siapa pemilih tty Anda (gunakan ls -l).
Ketika menjalankan tty dapat dilihat diatas menunjukan terminal yang aktif digunakan adalah 1, namun jika menjalakan jendela terminal sebanyak 2 buah maka pada terminal kedua akan menampilkan angka 1. Kemudian, perintah whoami untuk melihat user yang aktif. Lalu, untuk mengidentifikasi tty menggunakan ls -l.
4. Telusuri direktori /proc/ Tampilkan isi file interrupts, devices, cpuinfo, meminfo, dan uptime menggunakan perintah cat. Dapatkah anda melihat mengapa direktory /proc disebut pseudo-filsystem yang memungkinkan akses ke struktur data kernel?
Untuk melihat isi file menggunakan perintah $ cat. Jika dilihat isi file :
- interrupts adalah proses yang sedang dilakukan saat ini.
- devices adalah perangkat yang sedang aktif.
- cpuinfo berisi info cpu dan proses yang sedang berlangsung.
- meminfo berisi info memori dan proses yang sedang berlangsung.
- uptime berisi durasi sistem berjalan saat terakhir kali direboot atau dimatikan.
5. Ubahlah direktory home ke user lain secara langsung menggunakan cd ~username.
Pada percobaan seperti digambar, untuk berpindah ke direktori username menggunakan $ cd. Dapat dilihat perubahan direktori yang awalnya berada di /proc menjadi berada di /aulia.
6. Ubah kembali direktory home anda.
Untuk mengubah direktori dari /aulia menjadi /home menggunakan format perintah $ cd .. . titik dua tersebut sebagai direktori utama yang berada di atas /aulia.
7. Buat subdirektory work dan play.
Untuk membuat subdirektori berada di home menggunakan $ mkdir work play. Maka, akan muncul direktori baru work dan play.
8. Hapus subdirektory work.
Untuk menghapus direktori work dengan menggunakan perintah $ rmdir work.
9. Copy file /etc/passwd ke direktory home anda.
Untuk menyalin file dapat menggunakan perintah $ cp <nama file yang dicopy> <direktori tujuan>.
10. Pindahkan ke subdirektory play.
Untuk memindahkan file dapat menggunakan perintah $ mv. Kemudian kita menjalankan perintah $ ls untuk memastikan bahswa file passwd sudah pindah ke subdirektori 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?
Jika melakukan hard link maka akan terjadi error karena tty merupakan file system. Sehingga dilakukan softlink dan perintah berhasil.
12. Buatlah file bernama hello.txt yang berisi kata “hello world”. Dapatkah anda menggunakan “cp” menggunakan “terminal” sebagai file asal untuk menghasilkan efek yang sama?
Untuk Membuat file hello.txt yang berisikan "hello world" menggunakan perintah echo. Kemudian menggunakan perintah $ cp, saat menggunakan perintah $ cp hasilnya sama seperti melakukan perintah $ cat pada file hello.txt.
13. Copy hello.txt ke terminal. Apa yang terjadi?
Failed access terjadi dikarenakan terlalu banyak untuk melakukan link ke direktori yang ada.
14. Masih direktory home, copy keseluruhan direktory play ke direktory bernama work menggunakan symbolic link.
Untuk menyalin seluruh direktori ke direktori tujuan menggunakan symbolic link.
15. Hapus direktory work dan isinya dengan satu perintah.
Untuk menghapus direktori dapat menggunakan perintah $ rm -rf <direktori yang ingin dihapus >.
KESIMPULAN
Pada praktikum kali ini, untuk menggunakan perintah-perintah untuk memanipulasi file atau membuat shortcut, menyali, memindahkan, dan menampilkan isi file menggunakan format perintah yang berbeda-beda tergantung kondisi penggunannya. Untuk menghindari terjadinya error, dapat dilakukan lebih pemahaman bagaimana cara kerja format perintah yang akan digunakan. Direktori pada sistem operasi linux dapat diakses dan diperbarui secara keseluruhan ketika berada di root tanpa ada akses yang diblokir.
REFERENSI
Comments
Post a Comment