Oleh
Ihsan Dika
NIM : 1957301047
Kelas : TI 1 B
Program Studi : Teknik Informatika
Dosen Pembimbing : Hendrawaty . ST., MT
Nilai :
Keterangan :
Dosen Pembimbing,
Hendrawaty. SR., MT
Nip. 197002261998022001
ii
DAFTAR ISI
iii
Praktikum 1
Perintah Dasar Sistem Operasi
Linux
POKOK BAHASAN:
TUJUAN BELAJAR:
DASAR TEORI:
Setiap pemakai LINUX harus mempunyai nama login (user account) yang
sebelumnya harus didaftarkan pada administrator system. Nama login umumnya
dibatasi maksimum 8 karakter dan umumnya dalam huruf kecil. Prompt dari shell bash
pada LINUX menggunakan tanda “$”.
Sebuah sesi LINUX terdiri dari :
1. Login
2. Bekerja dengan Shell / menjalankan aplikasi
3. Logout
Tergantung atas shell yang digunakan, pada Linux bash maka pada proses login
akan mengeksekusi program /etc/profile (untuk semua pemakai) dan file .base_profile di
direktori awal (HOME) masing-masing.
1
Pada saat logout, maka program shell bash akan mengeksekusi script yang
bernama .bash_logout.
$ ls tanpa argumen
$ ls –a option adalah –a = all, tanpa argumen
$ ls /bin tanpa option, argumen adalah /bin
$ ls /bin /etc /usr ada 3 argumen
$ ls –l /usr 1 option dan 1 argumen l = long list
$ ls –la /bin /etc 2 option –l dan –a dan 2 argumen
2 MANUAL
2
Bab Isi
1 User commands
2 System calls
3 Library calls
4 Devices
5 File formats
6 Games
7 Miscellaneous
8 System commands
9 Kernel internals
N Tcl/Tk command
TUGAS PENDAHULUAN:
3
➔ what is : perintah untuk mencari pertintah yang tepat sama dengan kata kunci yang
dicari.
PERCOBAAN:
4
Percobaan 1 : Melihat identitas diri (nomor id dan group id)
$ id
2. Melihat kalender
$ cal 9 2002
$ cal -y
5
Percobaan 5 : Menggunakan manual
$ man ls
$ man man
$ man –k file
$ man 5 passwd
6
· Menampilkan semua file atau direktori dengan menandai : tanda (/) untuk
direktori, tanda asterik (*) untuk file yang bersifat executable, tanda (@) untuk
file symbolic link, tanda (=) untuk socket, tanda (%) untuk whiteout
dan tanda (|) untuk FIFO.
$ ls –F /etc
8. Menampilkan file atau direktori secara lengkap yaitu terdiri dari nama file,
ukuran, tanggal dimodifikasi, pemilik, group dan mode atau atributnya.
$ ls –l /etc
· Menampilkan semua file dan isi direktori. Argumen ini akan menyebabkan
proses berjalan agak lama, apabila proses akan dihentikan dapat
menggunakan ^c
$ ls –R /usr
1. Mengkopi suatu file. Berikan opsi –i untuk pertanyaan interaktif bila file sudah
ada.
$ cp /etc/group f1
$ ls –l
$ cp –i f1 f2
$ cp –i f1 f2
2. Mengkopi ke direktori
$ mkdir backup
$ cp f1 f3
$ cp f1 f2 f3 backup
$ ls backup
$ cd backup
$ ls
7
Percobaan 12 : Melihat isi file
1.Menggunakan instruksi mv
$ mv f1 prog.txt
$ ls
8
Perintah Dasar Sistem Operasi Linux
Analisa : id adalah utilitas baris perintah yang mencetak ID pengguna dan grup.
Analisa : Hostname adalah perintah untuk melihat identitas host linux ini, uname
adalah username linux ini, uname -a adalah menampilkan semua informasi
usernamenya.
9
• Percobaan 4 : Melihat siapa yang aktif
$w
$who
$whoami
Analisa : w adalah perintah untuk melihat user yang login lengkap dengan informasi
tentang penggunaannya. who adalah perintah untuk menampilkan user yang login,
whoami untuk menampilkan username.
$ chfn
Analisa : chfn merupakan untuk mengubah mengubah data atau informasi suatu
pengguna
$ finger
10
Analisa : man ls berfungsi untuk menampilkan semua syntak manual pada perintah ls
$ man man
$ man -k file
Analisa : man -k file berfungsi untuk menampilkan semua syntak manual pada
perintah man -k file.
11
• Percobaan 6 : Menghapus Layar
$ clear
12
$ apropos date
13
$ apropos telnet
$ whatis date
Analisa : whatis date adalah perintah untuk mencari deskripsi perintah date
$ ls
Analisa : perintah untuk menampilkan list folder yang ada beserta path
direktorinya dimulai dengan titik juga
$ ls -f
14
Analisa : ls -f adalah perintah untuk menampilkan list directory secara acak
tidak berurutan dan juga tidak berwarna
$ ls /usr
Analisa : ls -l /etc untuk melihat daftar lengkap dan format panjang semua file
konfigurasi, baik dari program maupun aplikasi.
$ ls -R /etc
Analisa : file adalah perintah yang berfungsi untuk melihat tipe-tipe file.
15
$ file *
Analisa : (file adalah menampilkan tipe tipe file yang ada pada semua direktori)
$ file bin/ls/
Analisa : file bin/ls/ adalah perintah untuk melihat tipe tipe file yang ada pada
folder bin
$ ls -1
$ mkdir backup
16
$ cp f1 f3
Analisa : cat f1 berfungsi membaca data dari file f1 dan memberikan isinya sebagai
output
$ more f1
Analisa : more f1 berfungsi membaca data yang lain lagidari file f1 dan memberikan
isinya sebagai output)
17
$ mkdir mydir
Analisa : grep root etc/passwd adalah mencari kata root pada user account
information
$ grep “0:0” etc/passwd
Analisa : grep “0:0” etc/passwd adalah mencari kata “0:0” pada user account
information
Analisa : grep student etc/passwd adalah mencari kata student pada user account
information
18
KESIMPULAN
User LINUX harus mempunyai nama login (user account) yang sebelumnya harus didaftarkan
pada administrator system. Nama login umumnya dibatasi maksimum 8 karakter dan
umumnya dalam huruf kecil. Prompt dari shell bash pada LINUX menggunakan tanda “$”.
Sebuah sesi LINUX terdiri dari: Login, Bekerja dengan Shell / menjalankan aplikasi, Logout.
19
LEMBAR PENGESAHAN
Nilai :
Keterangan :
Dosen Pembimbing,
Hendrawaty. SR., MT
Nip. 197002261998022001
i
DAFTAR ISI
ii
Praktikum 2
Operasi Input Output
POKOK BAHASAN:
✓ Pipeline
✓ Redirection
TUJUAN BELAJAR:
DASAR TEORI:
1 PROSES I/O
30
Dalam konteks Linux input/o utput adalah :
· Keyboard (input)
· Layar (output)
· Files
· Struktur data kernel
· Peralatan I/O lainnya (misalnya Network)
2 FILE DESCRIPTOR
1
Input Output
0 Proses
(keyboard) (monitor)
3 PEMBELOKAN (REDIRECTION)
Pembeloka dilakukan untuk standard input, output dan error, yaitu
n untuk
mengalihkan file descriptor dari 0, 1 dan 2. Simbol untuk pembelokan adalah :
0< atau < pengganti standard inp ut
1> atau > pengganti standard output
31
4 PIPA (PIPELINE)
Proses1 | Proses2
5 FILTER
Filter adalah utilitas Linux yang dapat memproses standard input (dari
keyboard) dan menampilkan hasilnya pada standard output (layar). Contoh filter
adalah cat, sort, grep, pr, head, tail, paste dan lainnya.
Pada sebuah rangkaian pipa :
P1 | P2 | P3 ……. | Pn-1 | Pn
Maka P2 sampai dengan Pn-1 mutlak harus utilitas Linux yang berfungsi
sebagai filter. P1 (awal) dan Pn (terakhir) boleh tidak filter. Utilitas yang bukan
filter misalnya who, ls, ps, lp, lpr, mail dan lainnya.
Beberapa perintah Linux yang digunakan untuk proses penyaringan antara
lain :
· Perintah grep
Digunakan untuk menyaring masukannya da n menampilkan baris-baris
yang hanya mengandung pola yang ditentukan. Pola ini disebut regular
expression.
· Perintah wc
Digunakan untuk menghitung jumlah baris, kata dan karakter dari baris-
baris masukan yang diberikan kepadanya. Untuk mengetahui berapa baris
gunakan option – l, untuk mengetahui berapa kata, gunakan option –w dan
untuk mengetahui berapa karakter, gunakan option –c. Jika salah satu option
tidak digunakan, maka tampilannya adalah jumlah baris, jumlah kata dan
jumlah karakter.
32
· Perintah sort
Digunakan untuk mengurutkan masukannya berdasarkan urutan nomor
ASCII dari karakter.
· Perintah cut
Digunakan untuk mengambil kolom tertentu dari baris-baris masukannya,
yang ditentukan pada option –c.
· Perintah uniq
Digunakan untuk menghilangkan baris-baris berurutan yang mengalami
duplikasi, biasanya digabungkan dalam pipeline dengan sort.
TUGAS PENDAHULUAN :
33
PERCOBAAN :
34
Percobaan 1 : File descriptor
1. Output ke layar (standar output), input dari system
(kernel) $ ps
4. Input nama direktori, output tidak ada (membuat direktori baru), bila terjadi
error maka tampilan error pada layar (standard error)
$ mkdir mydir
$ mkdir mydir (Terdapat pesan error)
2. Pembelokan standar input, yaitu input dibelokkan dari keyboard menjadi dari file
$ cat 0< myfile.txt
$ cat myfile.txt
35
4. Notasi 2>&1 : pembelokan standar error (2>) adalah identik dengan file
descriptor 1.
$ ls filebaru (Terdapat pesan error)
$ ls filebaru 2> out.txt
$ cat out.txt
$ ls filebaru 2> out.txt 2>&1
$ cat out.txt
5. Notasi 1>&2 (atau >&2) : pembelokan standar output adalah sama dengan
file descriptor 2 yaitu standar error
$ echo “mencoba menulis file” 1> baru
$ cat filebaru 2> baru 1>&2
$ cat baru
7. Notasi here document (<<++ …. ++) digunakan sebagai pembatas input dari
keyboard. Perhatikan bahwa tanda pembatas dapat digantikan dengan tanda
apa saja, namun harus sama dan tanda penutup harus diberikan pada awal
baris
$ cat <<++
Hallo, apa kabar ?
Baik-baik saja ?
Ok!
++
$ cat <<%%%
Hallo, apa kabar ?
Baik-baik saja ?
Ok!
%%%
36
9. Untuk membelokkan standart output ke file, digunakan operator >
$ echo hello
$ echo hello > output
$ cat output
ü Pembelokan standart input dan standart output dapat dikombinasikan tetapi tidak
boleh menggunakan nama file yang sama sebagai standart input dan output.
$ cat < output > out
$ cat out
$ cat < output >> out
$ cat out
$ cat < output > output
$ cat output
37
Percobaan 3 : Pipa (pipeline)
38
Percobaan 4 : Filter
· Pipa juga digunakan untuk mengkombinasikan utilitas sistem untuk
membentuk fungsi yang lebih kompleks
$ w –h | grep <user>
$ grep <user> /etc/passwd
$ ls /etc | wc
$ ls /etc | wc –l
$ cat > kelas1.txt
Badu
Zulkifli
Yulizir
Yudi
Ade
[Ctrl-d]
$ cat > kelas2.txt
Budi
Gama
Asep
Muchlis
[Ctrl-d]
$ cat kelas1.txt kelas2.txt | sort
$ cat kelas1.txt kelas2.txt > kelas.txt $ cat kelas.txt |
sort | uniq
42
Operasi Input Output pada Linux
4. Input nama direktori, output tidak ada (membuat direktori baru), bila terjadi error maka
tampilan error pada layar (standard error).
2.Pembelokan standar input, yaitu input dibelokkan dari keyboard menjadi dari
file
43
3. Pembelokan standar error untuk disimpan di file
4. Notasi 2>&1 : pembelokan standar error (2>) adalah identik dengan file descriptor 1.
5. Notasi 1>&2 (atau >&2) : pembelokan standar output adalah sama dengan file descriptor
2 yaitu standar error
7. Notasi here document (<<++ .... ++) digunakan sebagai pembatas input dari keyboard.
Perhatikan bahwa tanda pembatas dapat digantikan dengan tanda apa saja, namun harus
sama dan tanda penutup harus diberikan pada awal baris
44
8. Notasi – (input keyboard) adalah representan input dari keyboard. Artinya menampilkan
file 1, kemudian menampilkan input dari keyboard dan menampilkan file 2. Perhatikan
bahwa notasi “-“ berarti menyelipkan input dari keyboard.
45
12. Pembelokan standart input dan standart output dapat dikombinasikan tetapi tidak boleh
menggunakan nama file yang sama sebagai standart input dan output.
46
PERCOBAAN FILTER
47
KESIMPULAN
Proses input/output sangat diperlukan oleh Linux Ubuntu karena selalu membutuhkan
input dan menghasilkan output. Proses input/output terdiri dari file descriptor,pembelokkan,
saluran dan filter. Yang paling banyak berperan dalam proses input/output adalah keyboard
dan kernel. Dalam mengoperasikan serta memanage proses input dan output linux
menyediakan berbagai perintah yang bisa dijalankan pada terminal seperti ps, cat, echo, who,
sort, dll
48
LEMBAR PENGESAHAN
Nilai :
Keterangan :
Dosen Pembimbing,
Hendrawaty. SR., MT
Nip. 197002261998022001
i
DAFTAR ISI
ii
Praktikum 3
Operasi File dan Struktur Direktory
POKOK BAHASAN:
TUJUAN BELAJAR:
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).
52
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
Berisi file administrative (konfigrasi dll) dan file executable
/etc
atau script yang berguna untuk administrasi system.
Berisi file khusus yang merepresentasikan peralatan hardware
/dev
seperti memori, disk, printer, tape, floppy, jaringan dll.
/bin Berisi utilitas sistem level rendah (binary) .
Berisi utilitas sistem untuk superuser (untuk membentuk
/sbin
administrasi sistem).
/usr/sbin
Berisi utilitas sistem dan program aplikasi level tinggi.
/usr/bin
/usr/lib Berisi program library yang diperlukan untuk kompilasi
53
program (misalnya C). Berisi instruksi (command) misalnya
untuk Print Spooler (lpadmin) dll.
Berisi file sementara, yang pada saat Bootstrap akan dihapus
/tmp
(dapat digunakan oleh sembarang user).
Berisi file yang sangat penting untuk proses bootstrap. Kernel
/boot
vmlinuz disimpan di direktori ini.
Berisi informasi tentang kernel Linux, proses dan virtual system
/proc
file.
Direktori variable, artinya tempan penyimpanan LOG (catatan
/var hasil output program), file ini dapat membengkak dan perlu
dimonitor perkembangannya.
Berisi direktori untuk pemakai Linux (pada SCO diletakkan
/home
pada /usr)
/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
Option, direktori ini biasanya berisi aplikasi tambahan (“add-
/opt
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.
54
· 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
IDE : /dev/had, /dev/hdb, /dev/hdc, /dev/hdd
Harddisk
SCSI : /dev/sda, /dev/sdb, /dev/sdc
SCSI : /dev/scd0, /dev/scd1
CDROM IDE : /dev/gscd, /dev/sonycd
Universal : /dev/cdrom (link dari actual cdrom ide atau scsi)
PS2 : /dev/lp0
Mouse
Universal : /dev/mouse
LPT1 : /dev/lp0
Parallel Port
LPT2 : /dev/lp1
COM1 : /dev/ttyS0
Serial Port 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 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 (Process ID).
55
3 TIPE FILE
4 PROPERTI FILE
Karakter Arti
- File biasa
d Direktori
l Symbolic link
b Block special file
c Character special file
s Socket link
p FIFO
56
· 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 :
-rw-rw-r-- 1 bin auth 1639 Oct 31 20:19 /etc/passwd
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
6 SIMBOLIC LINK
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
57
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.
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
58
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.
TUGAS PENDAHULUAN :
59
4. Tuliskan maksud perintah-perintah : file, find, which, locate dan grep.
➔ file : perintah untuk melihat ekstensi suatu file
➔ find : perintah untuk berfungsi unutk mencari file pada komputer yang dimulai dari
direktori
➔ which : perintah untuk menunjukkan lokasi dari suatu perintah
➔ locate : perintah untuk mencari file pada direktori lain yang tidak sedang dikunjugi
➔ grep: perintah unutk mencari kata dalam suatu file
PERCOBAAN :
60
Percobaan 1 : Direktory
1. Melihat direktori HOME
$ pwd
$ echo $HOME
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. Menghap us 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, me ngapa ?)
61
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
62
Percobaan 4 : Melihat Isi File
$ ls –l
$ file halo.txt
$ file bye.txt
ü Perintah which
$ which ls
ü Perintah locate
$ locate “*.txt”
65
Operasi File dan Struktur Directory
PERCOBAAN 1 : Directory
Analisa : Istilah pwd adalah “Print Working Directory” artinya melihat directory yang
sedang bekerja/ berjalan. echo $HOME menampilkan baris text/string directory
pada $HOME
Analisa : Istilah pwd adalah “Print Working Directory” artinya melihat directory yang
sedang bekerja/ berjalan. cd . Merupakan memasuki laman pada direktori itu
sendiri atau bisa dibilang masih tetap. cd .. merupakan memasuki directory
kamar home. Jika cd kembali ke awal sekali.
66
3. Membuat satu direktori, lebih dari satu direktori atau sub direktori
Analisis : mkdir membuat directory. Mkdir A membuat directory “A” Mkdir B membuat
directory “B” Mkdir C membuat directory “C” . A/D maksudnya didalam
directory A ada directory D lagi. A/E juga sama. B/F juga sama. A/D/A juga
sama didalam directory A ada Directroy D, dan Didalam directory D ada
Directory A lagi.
4. Menghapus satu atau lebih direktori hanya dapat dilakukan pada direktorikosong
dan hanya dapat dihapus oleh pemiliknya kecuali bila diberikan ijin aksesnya
Analisis : rmdir B adalah menghapus directory B, tetapi gagal, karena didalam directory
ada isinya yaitu directory F. ls -l B adalah melihat list direktori B. rmdir B/F B
menghapus directory B beserta F nya juga.
67
Analisis : cd A adalah perintah untuk memasuki direktori A. cd .. adalah kembali ke kamar
awal, “..” maksudnya 2 kali kamar. cd /home/rijik/C adalah mamsuki direktori C
dari kamar home, kamar rijik.
Analisis : cat > contoh adalah, hanya untuk menulis kalimat saja sebagai penjelas. cp
contoh contoh1. Adalah mengkopi file contoh dan contoh1 ke direktory utama.
68
Kemudian untuk cp contoh A. yaitu mengkopi file contoh ke directory A.
Kemudian untuk contoh Contoh1 A/D yaitu mengkopi file contoh dan contoh1
ke dalam direkori D dari dalam direktori A
Analisis : mv contoh contoh2 adalah memindahkan file contoh dan contoh2 ke direktori
utama. Kemudian mv contoh1 contoh2 A/D adalah memindahkan file contoh1 dan
contoh2 ke dalam direktori D dari dalam direktori A karena (A/D). mv contoh
contoh C gagal memindahkan karena filenya sudah dipindah.
69
Analisis : rm contoh2 adalah menghapus file contoh2. Di gambar mengapa gagal karena saya
tidak masuk ke direktori dimana file itu berada. Kemudian rm -rf A C adalah
menghapus direktori A dan direktori C
Analisis : echo “Hallo apa kabar” > halo.txt adalah membuat file halo.txt dan isinya
berupa kalimat hallo apa kabar. Kemudian ln halo.txt z adalah membuat link
70
untuk z dan z tersebut merupakan halo.txt. ln z mydir/halo.juga adalah
membuat flie halo.juga didalam direktori mydir dengan link z tadi. ln -s z
bye.txt adalah membuat file bye.txt dengan simbolik link dari link utama. cat
bye.txt melihat isi dalam file bye.txt
Percobaan 4 : Melihat Isi File
71
Percobaan 5 : Mencari file
1. Perintah find
Analisis : find /home –name “*.txt” –print > myerror.txt adalah mencari kata .txt dari file
myerror.txt. cat myerror.txt adalah melihat dan mengkonfigurasi file myerror.txt
2. Perintah which
Analisis : Perintah which digunakan untuk mengidentifikasi lokasi File executable yang
diberikan ketika Anda mengetik perintah executable di terminal prompt.
3. Perintah locate
Analisis : locate “.txt” mencari lokasi ekstensi file “.txt” Percobaan 6 : Mencari text pada file
72
KESIMPULAN
Pada linux kita dapat mengoperasikan directory dan file melalui perintah pada terminal.
Mulai dari memanipulasi, menghapus, mengcopy dan memodifikasinya. Tentunya untuk
mewujudkan hal diatas kita membutuhkan perintah-perintah yang bersangkutan dengan keadaan
tersebut.
73
LEMBAR PENGESAHAN
Nilai :
Keterangan :
Dosen Pembimbing,
Hendrawaty. SR., MT
Nip. 197002261998022001
i
DAFTAR ISI
ii
Praktikum 4
A
Proses dan Manajemen
Proses
POKOK BAHASAN:
TUJUAN BELAJAR:
DASAR TEORI:
79
Proses yang diciptakan oleh pemakai langsung pada terminal (interaktif, dialog)
80
· Batch
Proses yang dikumpulkan dan dijalankan secara sekuensial (satu persatu). Prose
Batch tidak diasosiasikan (berinteraksi) dengan terminal.
· Daemon
Proses yang menunggu permintaan (request) dari proses lainnya dan menjalankan
tugas sesuai dengan permintaan tersebut. Bila tidak ada request, maka program ini
akan berada dalam kondisi “idle” dan tidak menggunakan waktu hitung CPU.
Umumnya nama proses daemon di UNIX berakhiran d, misalnya inetd, named, popd
dll
2 SINYAL
Proses dapat mengirim dan menerima sinyal dari dan ke proses lainnya. Proses
mengirim sinyal melalui instruksi “kill” dengan format
kill [-nomor sinyal] PID
Nomor sinyal : 1 s/d maksimum nomor sinyal yang didefinisikan system
Standar nomor sinyal yang terpenting adalah :
3 MENGIRIM SINYAL
Mengirim sinyal adalah satu alat komunikasi antar proses, yaitu
memberitahukan proses yang sedang berjalan bahwa ada sesuatu yang harus
dikendalikan. Berdasarkan sinyal yang dikirim ini maka proses dapat bereaksi dan
81
administrator/programmer dapat menentukan reaksi tersebut. Mengirim sinyal
menggunakan instruksi
kill [-nomor sinyal] PID
Sebelum mengirim sinyal PID proses yang akan dikirim harus diketahui
terlebih dahulu.
82
dengan proses yang berjalan ditampilkan dan secara terus-menerus di-refresh . Proses
ditampilkan secara terurut dari utilitas CPU. Kunci yang berguna pada top adalah
s – set update frequency
u – display proses dari satu user
k – kill proses (dengan PID)
q – quit
Utilitas untuk melakukan pengontrolan proses dapat ditemukan pada sistem
UNIX adalah perintah killall. Perintah ini akan menghentikan proses sesuai PID atau
job number proses.
TUGAS PENDAHULUAN :
83
➔ Sinyal adalah sesuatu yang karakterisitiknya melambangkan informasi. Untuk mengirim
sinyal menggunakan perintah kill[-nomor sinyal] PID
5. Apa yang dimaksud dengan proses foreground dan background pada job control ?
➔ Foreground, proses yang dibuat langsung pada terminal oleh user (interaktif, dialog).
➔ Background, proses yang dijalankan di latar belakang, biasanya tidak memerlukan
interaksi.
6. Apa yang dimaksud perintah-perintah penjadwalan prioritas :
top, nice, renice.
➔ top : perintah untuk menampilkan proses pada CPU.
➔ nice : perintah untuk melakukan modifikasi terhadap program sehingga program akan
mendapatkan prioritas penjadwalan proses.
➔ renice: perintah untuk memberikan prioritas pada proses yang sedang berjalan.
PERCOBAAN :
84
Percobaan 1 : Status Proses
9. Mencari proses yang spesifik pemakai. Proses diatas hanya terbatas pada
proses milik pemakai, dimana pemakai teresbut melakukan login
$ ps –u <user>
10. Mencari proses lainnya gunakan opsi a (all) dan au (all user)
$ ps –a
$ ps –au
85
12. Ketik ps –eH dan tekan Enter. Opsi e memilih semua proses dan opsi H
menghasilkan tampilan proses secara hierarki. Proses child muncul dibawah
proses parent. Proses child ditandai dengan awalan beberapa spasi.
$ ps -eH
13. Ketik ps –e f dan tekan Enter. Tampilan serupa dengan langkah 2. Opsi
–f akan menampilkan status proses dengan karakter grafis (\ dan _)
$ ps –e f
14. Ketik pstree dan tekan Enter. Akan ditampilkan semua proses pada sistem
dalam bentuk hirarki parent/child. Proses parent di sebelah kiri proses
child. Sebagai contoh proses init sebagai parent (ancestor) dari semua proses
pada sistem. Beberapa child dari init mempunyai child. Proses login
mempunya i proses bash sebagai child. Proses bash mempunyai proses child
startx. Proses startx mempunyai child xinit dan seterusnya.
$ pstree
15. Ketik pstree | grep mingetty dan tekan Enter. Akan menampilkan semua proses
mingetty yang berjalan pada system yang berupa console virtual. Selain menampikan
semua proses, proses dikelompokkan dalam satu
baris dengan suatu angka sebagai jumlah proses yang berjalan.
$ pstree | grep mingetty
16. Untuk melihat semua PID untuk proses gunakan opsi –p.
$ pstree –p
17. Untuk menampilk an proses dan ancestor yang tercetak tebal gunakan opsi
–h.
$ pstree –h
86
Percobaan 3 : Menampilkan Status Proses dengan Berbagai Format
Jika halaman penuh terlihat prompt --More-- di bagian bawah screen, tekan
q untuk kembali ke prompt perintah.
12. Ketik ps –e f | more dan tekan Enter. Opsi –e f akan menampilkan semua
proses dalam format daftar penuh.
$ ps ef | more
Jika halaman penuh terlihat prompt --More-- di bagian bawah screen, tekan
q untuk kembali ke prompt perintah.
13. Ketik ps –eo pid, cmd | more dan tekan Enter. Opsi –eo akan menampilkan semua
proses dalam format sesuai definisi user yaitu terdiri dari kolom PID
dan CMD.
$ ps –eo pid,cmd | more
Jika halaman penuh erlihat prompt --More-- di bagian bawah screen, tekan q
untuk kembali ke prompt perintah.
87
20. Ketik ps –eo pid,ppid,%mem,cmd | more dan tekan Enter. Akan
menampilkan kolom PID, PPID dan %MEM. PPID adalah proses ID dari
proses parent. %MEM menampilkan persentasi memory system yang
digunakan proses. Jika proses hanya menggunakan sedikit memory system
akan dita mpilkan 0.
$ ps –eo pid,ppid,%mem,cmd | more
88
7. Untuk menghentikan job, gunakan perintah kill diikuti job number atau PID
proses. Untuk identifikasi job number, diikuti prefix dengan karakter ”%”.
$ kill %<nomor job> contoh : kill %1
88
Proses Dan Manajemen Proses
1. Pindah ke command line terminal (tty2) dengan menekan Ctrl+Alt+F2 dan login ke
terminal sebagai user.
2. Instruksi ps (process status) digunakan untuk melihat kondisi proses yang ada. PID
adalah Nomor Identitas Proses, TTY adalah nama terminal dimana proses tersebut aktif,
STAT berisi S (Sleepin g) dan R (Running), COMMAND merupakan instruksi yang
digunakan.
$ ps
3. Instruksi ps (process status) digunakan untuk melihat kondisi proses yang ada. PID
adalah Nomor Identitas Proses, TTY adalah nama terminal dimana proses tersebut aktif,
STAT berisi S (Sleepin g) dan R (Running), COMMAND merupakan instruksi yang
digunakan.
$ ps -u
$ ps -u <user>
Analisa : sama seperti percobaan sebelumnya, hanya saja ditambah user. Proses diatas
hanya terbatas pada proses milik pengguna.
89
5. Mencari proses lainnya gunakan opsi a (all) dan au (all user)
$ ps –a
$ ps –au
Analisa : $ps – a adalah melihat semua proses (all) kondisi yang ada. $ps – au adalah
melihat semua proses user (all user) kondisi yang ada
PERCOBAAN 2 : Menampilkan Hubungan Proses Parent dan Child
1. Ketik ps –eH dan tekan Enter. Opsi e memilih semua proses dan opsi Hmenghasilkan
tampilan proses secara hierarki. Proses child muncul dibawah proses parent. Proses
child ditandai dengan awalan beberapa spasi.
$ ps -eH
Analisa : Opsi e memilih semua proses dan opsi H menghasilkan tampilan prose
secara hierarki.
90
2. Ketik ps –e f dan tekan Enter. Tampilan serupa dengan langkah 2. Opsi –f akan
menampilkan status proses dengan karakter grafis (\ dan _)
$ ps –e f
Analisa : Opsi –f akan menampilkan status proses dengan karakter grafis (\ dan _)
3. Ketik pstree dan tekan Enter . Akan ditampilkan semua proses padasistem dalam bentuk
hirarki parent/child. Proses parent di sebelah kiri proseschild. Sebagai contoh proses
init sebagai parent (ancestor) dari semua proses pada sistem. Beberapa child dari init
mempunyai child. Proses login mempunya i proses bash sebagai child. Proses bash
mempunyai proses child startx. Proses startx mempunyai child xinit dan seterusnya.
$ pstree
Analisa : Perintah $pstree Akan ditampilkan semua proses pada sistem dalam bentuk
hirarki parent/child. Proses parent di sebelah kiri proses child.
4. Ketik pstree | grep mingetty dan tekan Enter. Akan menampilkan semua proses mingetty
yang berjalan pada system yang berupa console virtual. Selain menampikan semua
proses, proses dikelompokkan dalam satu baris dengan suatu angka sebagai jumlah
proses yang berjalan.
$ pstree | grep mingetty
Analisa : maksudnya adalah menampilkan semua proses mingetty yang berjalan pada
system yang berupa console virtual. Selain menampikan semua proses, proses
dikelompokkan dalam satu baris dengan suatu angka sebagai jumlah proses yang
berjalan.
91
5. Untuk melihat semua PID untuk proses gunakan opsi –p.
$ pstree –p
Analisa : opsi –h untuk menampilkan proses dan ancestor yang tercetak tebal
PERCOBAAN 3 : Menampilkan Status Proses dengan Berbagai Format
1. Ketik ps –e | more dan tekan Enter. Opsi -e menampilkan semua proses dalam bentuk 4
kolom : PID, TTY, TIME dan CMD.
$ ps –e | more
Jika halaman penuh terlihat prompt --More-- di bagian bawah screen, tekan q untuk
kembali ke prompt perintah.
92
$ ps ax | more
Analisa : Opsi a akan menampilkan semua proses yang dihasilkan terminal (TTY). Opsi
x menampilkan semua proses yang tidak dihasilkan terminal.
3. Ketik ps –e f | more dan tekan Enter. Opsi –e f akan menampilkan semua proses dalam
format daftar penuh.
$ ps -e f | more
Jika halaman penuh terlihat prompt --More-- di bagian bawah screen, tekan q untuk
kembali ke prompt perintah.
Analisa : Opsi –e f akan menampilkan semua proses dalam format daftar penuh.
4. Ketik ps –eo pid, cmd | more dan tekan Enter. Opsi –eo akan menampilkan semua proses
dalam format sesuai definisi user yaitu terdiri dari kolom PID dan CMD.
$ ps –eo pid,cmd | more
Jika halaman penuh e t rlihat prompt --More-- di bagian bawah screen. tekan q untuk
kembali ke prompt perintah.
Analisa : Opsi –eo akan menampilkan semua proses dalam format sesuai definisi user
yaitu terdiri dari kolom PID dan CMD.
5. Ketik ps –eo pid,ppid,%mem,cmd | more dan tekan Enter. Akan enampilkan kolom PID,
PPID dan %MEM. PPID adalah proses ID dar proses parent %MEM menampilkan
persentasi memory system yan digunakan proses. Jika proses hanya menggunakan
sedikit memory syste akan dita mpilkan 0.
93
$ ps –eo pid,ppid,%mem,cmd | more
Analisa : %MEM menampilkan persentasi memory system yang digunakan proses. Jika
proses hanya menggunakan sedikit memory system akan dita mpilkan 0
PERCOBAAN 4 : Mengontrol proses pada shell
1. Gunakan perintah yes yang mengirim output y yang tidak pernah berhenti
$ yes
Untuk menghentikannya gunakan Ctrl-C.
Analisa : Perintah yes mengirim output y yang tidak pernah berhenti kecuali tekan ctrl + c
2. Belokkan standart output ke /dev/null
$ yes > /dev/null
Untuk menghentikannya gunakan Ctrl-C.
3. Salah satu cara agar perintah yes tetap dijalankan tetapi shell tetap digunakan untuk hal
yang lain dengan meletakkan proses pada background dengan menambahkan karakter &
pada akhir perintah.
$ yes > /dev/null &
Analisa : karakter & pada akhir perintah Salah satu cara agar perintah yes tetap dijalankan
tetapi shell tetap digunakan untuk hal yang lain dengan meletakkan proses pada
background. Angka dalam ”[ ]” merupakan job number diikuti PID.
94
4. Untuk melihat status proses gunakan perintah jobs .
$ jobs
$ jobs
Analisa : perintah kill diikuti job number atau PID proses, Untuk menghentikan job.
Untuk Identifikasi job number, diikuti prefix dengan karakter ”%”.
95
KESIMPULAN
Proses merupakan program yang dieksekusi. Ada beberapa tipe proses yaitu foreground,
batch, dan daemon. Untuk mengontrol suatu proses shell menyediakan fasilitas job control yang
memungkinkan mengontrol beberapa job atau proses yang sedang berjalan pada waktu yang sama.
Pada linux ada berbagai perintah yang dapat digunakan untuk menampilkan proses seperti ps,
pstree, dll.
96
LEMBAR PENGESAHAN
Nilai :
Keterangan :
Dosen Pembimbing,
Hendrawaty. SR., MT
Nip. 197002261998022001
i
DAFTAR ISI
ii
Praktikum 4
B
Proses dan Manajemen
Proses
POKOK BAHASAN:
TUJUAN BELAJAR:
DASAR TEORI:
106
· Batch
Proses yang dikumpulkan dan dijalankan secara sekuensial (satu persatu). Prose
Batch tidak diasosiasikan (berinteraksi) dengan terminal.
· Daemon
Proses yang menunggu permintaan (request) dari proses lainnya dan menjalankan
tugas sesuai dengan permintaan tersebut. Bila tidak ada request, maka program ini
akan berada dalam kondisi “idle” dan tidak menggunakan waktu hitung CPU.
Umumnya nama proses daemon di UNIX berakhiran d, misalnya inetd, named, popd
dll
2 SINYAL
Proses dapat mengirim dan menerima sinyal dari dan ke proses lainnya. Proses
mengirim sinyal melalui instruksi “kill” dengan format
kill [-nomor sinyal] PID
Nomor sinyal : 1 s/d maksimum nomor sinyal yang didefinisikan system
Standar nomor sinyal yang terpenting adalah :
3 MENGIRIM SINYAL
Mengirim sinyal adalah satu alat komunikasi antar proses, yaitu
memberitahukan proses yang sedang berjalan bahwa ada sesuatu yang harus
dikendalikan. Berdasarkan sinyal yang dikirim ini maka proses dapat bereaksi dan
107
administrator/programmer dapat menentukan reaksi tersebut. Mengirim sinyal
menggunakan instruksi
kill [-nomor sinyal] PID
Sebelum mengirim sinyal PID proses yang akan dikirim harus diketahui
terlebih dahulu.
108
dengan proses yang berjalan ditampilkan dan secara terus-menerus di-refresh . Proses
ditampilkan secara terurut dari utilitas CPU. Kunci yang berguna pada top adalah
s – set update frequency
u – display proses dari satu user
l – kill proses (dengan PID)
r – quit
Utilitas untuk melakukan pengontrolan proses dapat ditemukan pada sistem
UNIX adalah perintah killall. Perintah ini akan menghentikan proses sesuai PID atau
job number proses.
ü Cara lain meletakkan job pada background dengan memulai job secara
normal (pada foreground), stop job dan memulai lagi pada background
$ yes > /dev/null
Hentikan sementara job (suspend ), bukan menghentikannya (terminate ),
tetapi menghentikan sementara job sampai di restart. Untuk menghentikan
sementara job gunakan Ctrl-Z.
ü Untuk restart job pada foreground , gunakan perintah
fg. $ fg
Job tidak bisa dihentikan dengan Ctrl-Z karena job berada pada background.
Untuk menghentikannya, letakkan job pada foreground dengan fg dan
kemudian hentikan sementara dengan Ctrl-Z.
$ fg
109
· Job pada background dapat digunakan untuk menampilkan teks pada
terminal, dimana dapat diabaikan jika mencoba mengerjakan job lain.
$ yes &
110
6. Pada terminal keempat, ketik top dan tekan Enter. Maka program top
akan muncul. Ketik i. Top akan menampilkan proses yang aktif. Ketik
lmt. Top tidak lagi menampilkan informasi pada bagian atas dari screen.
Pada percobaan ini, terminal ke empat sebagai je ndela Top.
7. Pada terminal 1, bukalah program executable C++ dengan mengetik
program yes dan tekan Enter.
8. Ulangi langkah 7 untuk terminal 2.
9. Jendela Top akan menampilkan dua program yes sebagai proses yang
berjalan. Nilai %CPU sama pada keduanya. Hal ini berarti kedua proses
mengkonsumsi waktu proses yang sama dan berjalan sama cepat. PID
dari kedua proses akan berbeda, misalnya 3148 dan 3149. Kemudian
gunakan terminal 3 (yang tidak menjalankan primes maupun Jendela
Top) dan ketik renice 19 <PID terimnal 1> (contoh : renice 19 3148)
dan diikuti Enter. Hal ini berarti mengganti penjadwalan prioritas dari
proses ke 19.
10. Tunggu beberapa saat sampai program top berubah dan terlihat pada
jendela Top. Pada kolom STAT memperlihatkan N untuk proses 3148.
Hal ini berarti bahwa penjadwalan prioritas untuk proses 3148 lebih
besar (lebih lambat) dari 0. Proses 3149 berjalan lebih cepat.
11. Program top juga mempunyai fungsi yang sama dengan program renice.
Pilih Jendela Top dan tekan r. Program top terdapat prompt PID to
renice: tekan 3148 (ingat bahwa Anda harus mengganti 3148 dengan
PID Anda sendiri) dan tekan Enter. Program top memberikan prompt
Renice PID 3148 to value: tekan -19 dan tekan Enter.
12. Tunggu beberapa saat sampai top berubah dan lihat nilai %CPU pada
kedua proses. Sekarang proses 3148 lebih cepat dari proses 3149. Kolom
status menunjukkan < pada proses 3148 yang menunjukkan penjadwalan
prioritas lebih rendah (lebih cepat) dari nilai 0.
111
13. Pilih terminal 3 (yang sedang tidak menjalankan yes atau program top) dan
ketik nice –n -10 yes dan tekan Enter. Tunggu beberapa saat agar program top
berubah dan akan terlihat proses primes ketiga. Misalnya PID nya 4107. Opsi -
10 berada pada kolom NI (penjadwalan prioritas).
14. Jangan menggunakan mouse dan keyboard selama 10 detik. Program top
menampilkan proses yang aktif selain program yes. Maka akan terlihat proses
top terdaftar tetapi %CPU kecil (dibawah 1.0) dan konsisten. Juga terlihat
proses berhubungan dengan dekstop grafis seperti X, panel dll.
15. Pindahkan mouse sehingga kursor berubah pada screen dan lihat apa yang
terjadi dengan tampilan top. Proses tambahan akan muncul dan nilai %CPU
berubah sebagai bagian grafis yang bekerja. Satu alasan adalah bahwa proses
4107 berjalan pada penjadwalan prioritas tinggi. Pilih jendela Top, ketik r.
PID to renice : muncul prompt. Ketik 4107 (ubahlah 4107 dengan PID Anda)
dan tekan Enter. Renice PID 4107 to value: muncul prompt. Ketik 0 dan
tekan Enter. Sekarang pindahkan mouse ke sekeliling screen. Lihat
perubahannya.
16. Tutup semua terminal window.
112
Proses Dan Manajemen Proses (2)
1. Cara lain meletakkan job pada background dengan memulai job secara normal (pada
foreground), stop job dan memulai lagi pada background
$ yes > /dev/null
Hentikan sementara job (suspend ), bukan menghentikannya (terminate ),tetapi
menghentikan sementara job sampai di restart. Untuk menghentikan sementara job gunakan
Ctrl-Z
Analisa : yes > dev/null maksudnya yaitu memulai job pada background yaitu job yes
3. Shell akan menampilkan nama perintah yang diletakkan di foreground . Stop job lagi
dengan Ctrl-Z. Kemudian gunakan perintah bg untuk meletakkan Job pada background .
$ bg
Analisa : Perintah bg untuk meletakkan Job yes pada background . Job tidak bisa dihentikan
dengan Ctrl-Z karena job berada pada background. Untuk menghentikannya,
letakkan job pada foreground dengan fg dan kemudian hentikan sementara dengan
Ctrl-Z.
113
4. Job pada background dapat digunakan untuk menampilkan teks pada terminal, dimana
dapat diabaikan jika mencoba mengerjakan job lain.
$ yes &
5. Apabila ingin menjalankan banyak job dalam satu waktu, letakkan job pada foreground
atau background dengan memberikan job ID
$ fg %2
$ bg %2 atau $ %2
114
Menghasilkan Output yang sama yaitu yyyyyy….
Analisa : perintah fg %2 bg %2 dan %2 untuk melihat dan menjalankan banyak job dalam
satu waktu
Tekan fg kemudian enter biar ia berhenti. Kalo masih tidak bisa tekan Ctrl + c dulu
6. tekan fg dan tekan Enter, kemudian dilanjutkan dengan Ctrl -Z untuk menghentikan
sementara.
7. Lihat job dengan perintah ps -fae dan tekan Enter. Kemudian hentikanproses dengan
perintah kill.
115
$ ps -fae
$ kill -9 <NomorPID>
Analisa : Perintah $ ps -fae melihat job job, dan jika ingin ngekill jobnya ketik perintah
kill -9 (nomorPID)
116
KESIMPULAN
Proses merupakan program yang dieksekusi. Ada beberapa tipe proses yaitu foreground,
batch, dan daemon. Untuk mengontrol suatu proses shell menyediakan fasilitas job control yang
memungkinkan mengontrol beberapa job atau proses yang sedang berjalan pada waktu yang sama.
Pada linux ada berbagai perintah yang dapat digunakan untuk menampilkan proses seperti ps, pstree,
dll.
117