Anda di halaman 1dari 38

LAPORAN RESMI

PRAKTIKUM SISTEM OPERASI

Nama : Setyo Aryo Pangestu


Kelas : 1 D4 Teknik Informatika
NRP : 3120600022
PENDAHULUAN
1. Apa yang dimaksud dengan shell dan sebutkan shell yang ada di system operasi linux
• Shell adalah Command executive, artinya program yang menunggu intruksi dari
pemakai, memeriksa sintak dari instruksi yang diberikan, kemudian mengeksekusi
perintah terssebut.
• /bin/sh : Bourno shell, dirancang oleh Steve Bourne dari AT&T
• /bin/csh : Dikembangkan oleh UNIX Beerkeley yang dikenal dengan C –
Shell
• /bin/bash : Kompatibel dengan Bourne Shell dan juga mengadaptasi
kemampuan Kom-Shell.
2. Apa yang dimaksud dengan profile pada Bash Shell
• Profile pada bash shell merupakan profil untuk setiap pemakai pada home
directory.
3. Apa yang Anda ketahui mengenai file .bashrc
• File .bashrc adalah file yang akan dieksekusi untuk perpindahan dari satu shell ke
shell yang lain melalui intruksi su
4. Apa yang dimaksud dengan history pada Bash Shell. Apa kegunaan perintah history,
sebutkan cara-cara untuk mengetahui histori perintah-perintah yang pernah digunakan oleh
user
• History yaitu catatan dari semua intruksi yang sejauh ini telah dilakukan. History
memudahkan pemakai untuk mengedit kembali instruksi kompleks dan panjang,
terutama bila terjadi kesalahan pada penulisan instruksi maupun parameter
• ^P (Ctrl -P) melihat instruksi
• ^N (Ctrl -N) melihat instruksi berikutnya
• !! eksekusi kembali instruksi sebelumnya
• !! -3 3 instruksi sebelumnya akan diulang
• !!88 ulangi instruksi no 88
PERCOBAAN
1. Percobaan 1
a. $ls -a

Perintah ini digunakan untuk menampilkan seluruh isi directory home


termasuk file yang hidden/tersembunyi

b. $more .bash_profile

Ternyata tidak ada file nya. Ini terjadi untuk beberapa versi ubuntu. Namun
pada umumnya file ini berisi konfigurasi bash shell

c. $cat .bash_logout

Melihat isi .bash_logout. Yaitu perintah yang akan tereksekusi saat kita logout.
2. Percobaan 2
a. $cd, $ls -l /etc, $ls -l, $whoami, $who

Perintah di atas dijalankan untuk mengecek histroy pada sub percobaan berikutnya

b. $history

Perintah history digunakan untuk menampilkan history input yang pernah


kita masukkan ke terminal berupa input keyboard
c. $!<Nomor Perintah> Contoh : !780

Maksud dari perintah di atas adalah untuk memasukkan input yang sama
dengan nomor yang di tunjuk pada history.

d. $!?etc?

Perintah $!?etc? digunakan untuk mencari perintah yang ada hubungannya


dengan etc dan yang pernah kita gunakan. Untuk kondisi sekarang dikarenakan
beberapa percobaan sebelum ini kita pernah menggunakan $ls -l /etc maka perintah
itu pun yang berjalan karena sesuai dengan kondisi yang dibutuhkan dari perintah
$!?etc?

e. $history

Dapat terlihat bahwa meskipun kita memasukkan command $!?etc? tetapi


yang berada dalam history adalah $ls -l /etc karena yang command yang berjalan
adalah command $ls -l /etc. Dapat dikatakan bahwa $!?etc? bukanlah sebuah
command utama melainkan command yang digunakan untuk memancing command
utama seperti $ls -l /etc.

f. $!?wombat99?

Terdapat pesan error karena kita memsaukkan kata yang belum pernah
dimasukkan kedalam terminal
g. $!who & !whoa

Penambahan ! di depan sebuah comman adalah jika kita salah mengetikkan sebuah
command, maka komputer akan mencoba menebak command apa yang ingin kita
ketik-kan dan menjalankan command yang menurut komputer benar. Oleh karena
itu tanda ! pada command who tidak ada efek karena command yang kita masukkan
sudah benar berbeda dengan penambahan ! di depan whoa setelah ditambahkan !
command whoa berubah menjadi perintah whoami
h. $ cat /bin/bash | strings | grep shell | less

Perintah di atas digunakan untuk mencari kata shell dengan cara membaca /bin/bash
i. $^shell^alias^

Perintah diatas digunakan untuk mengganti kata shell pada perintah sebelumnya
dengan kata alias. Sehingga yang awalnya perintah cat /bin/bash | string | grep
shell | less menjadi cat /bin/bash | string | grep alias | less.
3. Percobaan 3
a. $cd

Perintah diatas digunakan untuk masuk ke directory

b. $tail .bash_history

+
Yang ditampilkan adalah perintah terakhir yang kita inputkan sebelum
komputer di restart / matikan.

c. $history

Perbedaan perintah history dengan tail .bash_history adalah jika perintah


history menampilkan perintah yang kita inputkan terakhir(paling baru). Perintah
tail .bash_history menampilkan perintah yang terkahir kita masukkan sebelum
komputer kita matikan atau restart.
d. $echo “Ini Perintah saya”

e. $history

Perintah echo terbaca di history

f. $tail .bash_history

Perintah echo juga muncul di tail .bash_history karena kita tadi merestart
komputer
g. $history | less

h. $wc -l .bash_history

Perintah wc -l digunakan untuk menampilkan jumlah perintah history pada file

i. $set | grep HISTSIZE

Digunakan untuk melihat limit perintah history yang disimpan bash


j. $echo “HISTSIZE=5000”>>.bashrcset

Digunakan untuk memperbesar limit penyimpanan perintah pada history


dari 1000 menjadi 5000

k. $set | grep HISTSIZE

Limit history berhasil diubah

l. $echo “HISTCONTROL=ignoredups”>>.bashrc

Kode di atas digunakan untuk mengontrol saat di cek history nanti tidak ada
command duplikat

m. $history

Dapat dilihat perintah history yang telah diinputkan berkali-kali hanya


muncul sekali di nomor 958
4. Percobaan 4
a. $PS1=”\t:”

Command diatas digunakan untuk mengganti promp menjadi waktu

b. $PS1=’\t:’

Tidak ada yang berubah

c. $PS1=”\w: ”

d. $cd /usr/sbin

Untuk melihat prompt /usr/sbin:

e. $PS1=”\W: “

Untuk melihat prompt sbin:

f. $echo “hello

Pada tanda > itu adalah PS2


g. $PS2=”Selesai Memasukkan perintah Anda: ”

Perintah diatas berfungsi mengubah prompt PS2 menjadi selesai


memasukkan perintah Anda

h. $echo “hello

Dapat dilihat bahwa PS2 sudah berubah dari > menjadi apa yang kita set

i. $ PS1=‟\033[0;34m\w\$ \033[0;37m‟

Perintah diatas dimaksud untuk mengganti warna promp bash

j. $PS1=‟\033[0;31m\w\$ \033[0;37m‟

k. $PS1=‟\033[0;31m\w\033[0;32m\$ \033[0;37m‟

l. $PS1=‟\033[1;34m\w\033[1;32m\$ \033[0;37m‟

Kita mengganti atribut dengan huruf 1 dengan maksud membuat warna


menjadi lebih terang
m. $PS1=‟\033[7;34m\w\033[7;32m\$ \033[0;37m‟

Mengganti atribut dengan 7 bermaksud membuat warna kebalikan

n. $PS1=‟\033[5;34m\w\033[5;32m\$ \033[0;37m‟

Mengganti atribut dengan 5 agar prompt berkedip-kedip

5. Percobaan 5
a. $cd ~

b. $ echo ‟sort ~/list > ~/r13; mv ~/r13 ~/list‟ > ~/sorter

Perintah diatas dimaksudkan untuk emngurutkan yang kita tuliskan dengan


echo “”

c. $chmod +x sorter

Perintah diatas dimaksudkan agar file sorter dapat dijalankan di linux

d. $PROMPT_COMMAND=~/sorter

Program kita, kita jalankan menggunakan echo

e. $echo ‟John Smith:13001‟>>list

Percobaan ini dimaksudkan untuk memasukkan john smith:13001 kedalam file list
f. $cat list

Membaca isi file list

g. $echo ‟Anita:13002‟>>list, $echo‟Samantha:13003‟>>list, $echo


‟Patrik:13004‟>>list, $echo ‟Sponse Bob:13005‟>>list, $echo
‟Lisa:13006‟>>list, $echo ‟Squid:13007‟>>list

Memasukkan nama nama kedalam file list

h. $PROMPT_COMMAND=

Menghentikan program sorter


6. Percobaan 6
a. $vi p1.sh

- Pertama kita membuat file p1.sh


- Untuk memasukkan suatu kata kita terlebih dahulu tekan huruf i
- Kemudian kita masukkan didalam echo “Progeam Bash Script”
- Kemudian untuk keluar kita tekan esc , kemudian tekan : , kemudia kita simpang
dengan mengetik wq! Dan enter.
b. $ls -l p1.sh
$chmod +x p1.sh
$ls -l p1.sh

- $ls -l p2.sh ➔ Menampilkan file p2.sh


- $chmod +x p2.sh ➔ membuat file p2.sh dapat dijalankan di linux

c. $bash p2.sh
$sh p2.sh
$. P2.sh
$./p2.sh

menjalankan file .sh dapat digunakan perintah bash, sh, ., dan ./


d. $vi p1.sh
#!/bin/bash

Kita membuat file p3.sh dan memasukkan perintah sesuai dengan perintah
diatas dengan cara yang sama dengan saat kita buat file p3.sh
7. Percobaan 7
a. $ps x

Mengecek proses foreground dengan menggunakan perintah ps x

b. $ps x > hasil &

Proses background menggunakan perintah ps x > hasil &, maka akan muncul output
jumlah semua proses yang sedang berjalan

c. $jobs

Untuk melihat jobs yang aktif


d. $vi plop.sh

Program tersebut bermaksud untuk, “setiap 10 detik maka diterminal akan


mencetak/print hello”. Program tersebut dapat di hentikan dengan menekan
ctlr+C

e. $chmod +x plop.sh

f. $./ploop.sh

Dapat dilihat pada gambar ./ploop.sh program yang kita buat dapat berjalan
dengan mencetak hallo setiap 10 detik

g. $./ploop.sh &
h. $jobs

i. $fg %1

j. $bg

8. Percobaan 8
a. $dirs

Perintah dirs digunakan untuk melihat stack directory dan menampilakn


directory home ~

b. $mkdir marketing sales support


c. $dirs

Perintah dirs digunakan untuk melihat stack directory dan menampilakn


directory home ~

d. $mkdir marketing sales support

Error karena kita sudah membuat direktori tersebut di Langkah sebelumnya

e. $pushd sales

f. $pushd /home/stD3XXYYY/support

g. $pushd ../marketing
h. $pushd

i. $pushd +2

j. $popd
$popd 2
$dirs

9. Percobaan 9
a. $alias

Perintah Alias digunakan untuk menampilkan perintah alias yang sudah ada
pada system atau bisa dibilang perintah alias default
b. $alias del=”rm -i”
$alias h=”history”

- Maksud perintah diatas adalah membuat alias yaitu mengganti perintah rm -i


dengan alias del
- Mengganti perintah history dengan alias h

c. $ls

Perintah ls untuk melihat direcroy hasil yang akan kita hapus

d. $del hasil

Kita menghapus directory hasil dengan del


e. $h | more

Kita melihat history dengan perintah h


f. $unalias del
$del r13

Kita menghapus perintah del dengan cara unalias del


Terdapat error karena kita sudah menghapus perintah del
LATIHAN
1. Eksekusi seluruh profile yang ada:
a. Edit file profile /etc/profile dan tampilkan pesan sebagai berikut :
echo ‟Profile dari /etc/profile‟

b. Asumsi nama anda student, maka edit semua profile yang ada yaitu :
/home/student/.bash_profile
c. Ganti nama /home/student dengan nama anda sendiri. Pada setiap file tersebut,
cantumkan instruksi echo, misalnya pada /home/student .bash_profile:

d. Lakukan hal yang sama untuk file lainnya, sesuaikan tampilan dengan nama file
yang bersangkutan.
2. Jalankan instruksi subtitue user, kemudian keluar dengan perintah exit sebagai berikut:
a. $su strudent
b. $exit

Kemudian gunakan opsi sebagai berikut


c. $su – student
d. $exit

Perbedaan dari 2 utilitas tersebut adalah Jika - (atau -l) ditentukan, su


mensimulasikan login nyata.

3. Logout
a. Edit file .bash_logout, tampilkan pesan dan tahan selama 5 detik, sebelum
eksekusi logout
b. Edit file .bash_logout, tampilkan pesan dan tahan selama 4 detik, sebelum eksekusi
logout

4. History
a. Ganti nilai HISTSIZE dari 1000 menjadi 20
b. Gunakan fasilitas history dengan mengedit instruksi baris ke 5 dari instruksi yang
terakhir dilakukan.

c. Ulangi instruksi yang terakhir. Gunakan juga ^P dan ^N untuk bernavigasi pada
history buffer

d. Ulaingi instruksi pada history buffer nomor tertentu, misalnya nomor 150
e. Ulangi instruksi dengan prefix “ls”

Perbedaan antara !ls dengan !?ls? adalah pada aturan regex, bisa apa saja,
misal pada kasus diatas, ?ls? Bisa saja sama dengan also atau olsa asal mengandung
kata ls, sedangkan !ls hanya akan mengeksekusi event dengan perintah ls.
5. Prompt String
a. Edit file .bash_profile, ganti prompt PS1 dengan ‘>’. Instruksi export diperlukan
dengan parameter nama variab le tersebut, agar perubahan variable PS1 dikenal
oleh semua shell

Eksperimen hasil PS1 :


$ PS1=“\! > “
69 > PS1=”\d > “
Mon Sep 23 > PS1=”\t > “
10:10:20 > PS1=”Saya=\u > “
Saya=stD02001 > PS1=”\w >”
~ > PS1=\h >”

b. Ubahlah warna shell prompt dengan warna biru dan berkedip.

6. Bash Script
a. Buat 3 buah script p1.sh, p2.sh, p3.sh dengan isi masing-masing :
b. Jalankan script tersebut sebagai berikut dan perhatikan hasilnya :
7. Jobs
a. Buat shell-script yang melakukan loop dengan nama pwaktu.sh, setiap 10 detik,
kemudian menyimpan tanggal dan jam pada file hasil.

b. Jalankan sebagai background; kemudian jalankan satu program (utilitas find) di


background sebagai berikut :

c. Jadikan program ke 1 sebagai foreground, tekan ^Z dan kembalikan program


tersebut ke background
d. Stop program background dengan utilitas kill

KESIMPULAN
Dari praktikum ini dapat disimpulakn bahwa penggunaan bash dan pemrograman
shell pada linux sangatlah mudah dan dapat mempermudah pekerjaan sehari hari, seperti
dalam daily task. Kita juga dapat membuat script shell yang nantinya akan berjalan secara
otomatis yang membuat kerja kita lebih efisien dan cepat. Pemrograman shell juga dapat
memudahkan dalam penggunaan linux

Anda mungkin juga menyukai