Anda di halaman 1dari 43

Laporan ke

Tanggal Dikumpul 02 Maret 2017


Paraf Dosen/Teknisi

SISTEM OPERASI
Bekerja Dengan File dan Direktori, Archive dan Compress, Pipes,
Redirection, And REGEX Di Command Line Linux

Disusun Oleh :
Nama : I Gede Arya Surya Gita
NPM : 16753024
Program Studi : Manajemen Informatika A

JURUSAN EKONOMI DAN BISNIS


POLITEKNIK NEGERI LAMPUNG
BANDAR LAMPUNG
2016/2017
BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah


Kegiatan praktikum merupakan kegiatan yang sangat penting dalam proses
belajar mengajar khususnya dalam ruang lingkup Politeknik Negeri Lampung.
Selain belajar teori mahasiswa juga harus mengikuti kegiatan praktikum,
kegiatan praktikum ini sendiri bertujuan untuk memantapkan teori yang telah
didapatkan oleh mahasiswa. Mahasiswa diwajibkan untuk membuat laporan
praktikum yang berisi apa saja yang telah dilakukan saat praktikum tersebut.
Pratikum kali ini membahas tentang bagaimana cara Bekerja Dengan File dan
Direktori, Archive dan Compress, Pipes, Redirection, And REGEX Di
Command Line Linux.
1.2 Tujuan
 Mahasiswa dapat lebih mengenal tentang Linux.
 Mahasiswa dapat memahami cara menggunakan Linux dengan
CLI/Command Line.
 Mahasiswa dapat melakukan achive dan comperss di Linux dengan CLI.
1.3 Rumusan Masalah
 Apa itu linux?
 Apa itu CLI/Terminal?
 Apa itu file dan direktori?
 Bagaimana cara archive dan compress file di Linux?
 Apa fungsi archive dan compress?
BAB II

LANDASAN TEORI

2.1 Pengertian Linux


Linux adalah Unix clone, kernel nya ditulis oleh Linus Torvalds dan
dikembangkan dengan bantuan programer dan hackers dari seluruh dunia.
Linux memiliki semua feature yang dimiliki oleh Unix, termasuk
multitasking, virtual memory, shared libraries, demand loading, shared copy-
on-write exexutables, proper memory management dan TCP/IP networking.

Dengan feature sekelas 'real operating system' tersebut tidak membuat Linux
menjadi mahal harganya, justru Linux dapat diperoleh secara gratis. Kalaupun
ada sedikit charge itu hanya sebagai ongkos distribusi atau pembelian cd
belaka. Linux di distribusikan dibawah GNU General Public License yaitu
suatu lisensi dimana pemilik program tetap memegang hak ciptanya tetapi
orang lain dimungkinkan menyebarkan, memodifikasi atau bahkan menjual
kembali program tersebut tapi dengan syarat source code asli harus tetap
disertakan dalam distribusinya.

2.2 Pengertian File dan Direktori


File adalah kumpulan berbagai informasi yang berhubungan dan juga
tersimpan di dalam secondary storage, secara konsep file memiliki beberapa
tipe ada yang bertipe Data terdiri dari numeric, character dan binary.
Direktori adalah file yang berisi kumpulan file. Kumpulan file dapat berupa
file biasa atau file khusus, bahkan dapat pula berisi direktori sehingga
memungkinkan direktori berisi direktori.

2.3 Pengertian CLI


CLI) adalah mekanisme interaksi dengan sistem operasi atau perangkat lunak
komputer dengan mengetikkan perintah untuk menjalankan tugas tertentu.
BAB III

PEMBAHASAN

Lab 6 File dan Direktori

1. File dan Direktori

Pada OS Linux, data disimpan dalam file sedangkan file disimpan


dalam direktori . Kita dapat menggunakan folder untuk menggambarkan
direktori. Direktori sebenarnya file, juga data yang telah dimasukkan ke
dalamnya bersama dengan nomor inode (nomor pengenal unik yang
diberikan untuk setiap file) pada data file yang ada pada disk

a. Langkah 1:

Ketik perintah pwd berikut untuk mencetak working directory :

sysadmin@localhost:~$ pwd
/home/sysadmin
sysadmin@localhost:~$

working directory/ current directory adalah direktori dimana posisi


terminal kita sekarang. Output dari perintah pwd
( /home/sysadmindalam contoh di atas) disebut path. Garis miring
pertama adalah direktori root direktori yang paling atas.

Untuk melihat path ke direktori home , dapat dilakukan dengan


menjalankan perintah echo $HOME untuk melihat nilai dari HOME :

sysadmin@localhost:~$ echo $HOME


/home/sysadmin
sysadmin@localhost:~$

b. Langkah 2
Gunakan perintah cd dengan path untuk berpindah ke direktori
tujuan. Contoh :

sysadmin@localhost:~$ cd /
sysadmin@localhost:/$ pwd
/
sysadmin@localhost:/$

c. Langkah 3

Untuk kembali ke direktori home Kita, gunakan perintah cd . Ubah


kembali ke direktori home Kita dan memverifikasi dengan
mengetikkan perintah berikut:

sysadmin@localhost:/$ cd
sysadmin@localhost:~$ pwd
/home/sysadmin
sysadmin@localhost:~$

d. Langkah 4

Perintah cd dapat dikombinasikan dengan path ke direktori tertentu


sebagai argumen contoh jika ingin ke home direktori:

sysadmin@localhost:~$ cd /home
sysadmin@localhost:/home$ pwd
/home
sysadmin@localhost:/home$

Path absolut adalah path yang diawali dengan slash “ / ” yang


merupakan direktori root lalu ke sub-direktori atau file.
e. Langkah 5
Untuk kembali ke direktori home dapat juga menggunakan cd ~ .
Contoh:

sysadmin@localhost:/home$ cd ~
sysadmin@localhost:~$ pwd
/home/sysadmin
sysadmin@localhost:~$
f. Langkah 6

perintah echo digunakan untuk menampilkan beberapa contoh lain


dari menggunakan tilde “~” contoh:

sysadmin@localhost:~$ echo ~ ~sysadmin ~root ~mail ~nobody


/home/sysadmin /home/sysadmin /root /var/mail /nonexistent
sysadmin@localhost:~$

g. Langkah 7

Untuk berpindah ke direktori home dari user root dengan perintah


berikut:

sysadmin@localhost:~$ cd ~root
-bash: cd: /root: Permission denied
sysadmin@localhost:~$

pesan kesalahan ; menunjukkan bahwa shell berusaha untuk


mengeksekusi cd /root, namun gagal karena izin ditolak.

h. Langkah 8

Menggunakan path absolut untuk berpindah ke /usr/bin direktori


contoh:

sysadmin@localhost:~$ cd /usr/bin
sysadmin@localhost:/usr/bin$ pwd
/usr/bin
sysadmin@localhost:/usr/bin$

i. Langkah 9

path absolut untuk berpindah ke /usr/share/doc direktori seperti di


bawah:

sysadmin@localhost:/usr$ cd /usr/share/doc
sysadmin@localhost:/usr/share/doc$ pwd
/usr/share/doc
sysadmin@localhost:/usr/share/doc$
2. Absolute dan Path Relatif

Misalkan Kita berada di /usr/share/doc direktori dan Kita ingin pergi ke


/usr/share/doc/bash direktori dengan cd /usr/share/doc/bash. Contoh
berikut menggunakan nama path relatif :

a. Langkah 10

Menggunakan path relatif untuk berpindah ke /usr/share/doc/bash


direktori dengan:

sysadmin@localhost:/usr/share/doc$ cd bash
sysadmin@localhost:/usr/share/doc/bash$ pwd
/usr/share/doc/bash
sysadmin@localhost:/usr/share/doc/bash$

b. Langkah 11

Gunakan path relatif untuk berpindah ke direktori di atas saat ini atau
direktori sebelumnya dengan cd ..:

sysadmin@localhost:/usr/share/doc/bash$ cd ..
sysadmin@localhost:/usr/share/doc$ pwd
/usr/share/doc
sysadmin@localhost:/usr/share/doc$

c. Langkah 13

Gunakan path relatif untuk naik ke direktori atas dari direktori saat ini
dan kemudian masuk ke direktori dict:

sysadmin@localhost:/usr/share/doc$ cd ../dict
sysadmin@localhost:/usr/share/dict$ pwd
/usr/share/dict
sysadmin@localhost:/usr/share/dict$

3. Menjelajahi File dan Direktori

Menjelajahi daftar file dan direktori.


a. Langkah 1
melihat daftar isi dari direktori saat ini, gunakan perintah ls contoh:

sysadmin@localhost:/usr/share/dict$ cd

sysadmin@localhost:~$ ls

Desktop Documents Downloads Music Pictures Public Templates Videos

sysadmin@localhost:~$

Tabel berikut menjelaskan beberapa warna saat kita menggunakan


peritah ls pada umum:

Warna Jenis File

Hitam atau file biasa


putih

Biru direktori file

Cyan File symbolic link (file yang menunjuk ke file lain)

Hijau file executable (AKA, program)

b. Langkah 2

Tidak semua file akan ditampilkan secara default. Ada file, disebut file
tersembunyi, yang tidak ditampilkan secara default. Untuk
menampilkan file tersembunyi, menggunakan ls -a:

sysadmin@localhost:~$ ls -a

. .bashrc .selected_editor Downloads Public

.. .cache Desktop Music Templates

.bash_logout .profile Documents Pictures Videos

sysadmin@localhost:~$

hidden file dimulai dengan periode (titik karakter).


Contoh, .bashrcfile.
c. Langkah 3

Dengan sendirinya, perintah ls hanya memberikan nama-nama file dan


direktori dalam direktori yang ditentukan atau sekarang. Jalankan
perintah ls dengan opsi –l memberikan informasi lebih lanjut tentang
file:

sysadmin@localhost:~$ ls -l /etc/hosts
-rw-r--r-- 1 root root 150 Jan 22 15:18 /etc/hosts
sysadmin@localhost:~$

Tabel berikut memberikan rincian singkat tentang hasil output ls –l:

- menunjukkan apa jenis "file" ini. Sebuah - karakter


file polos sementara d karakter menandakan
direktori.

rw-r--r-- Menunjukan hak akses file.

1 Ini merupakan sesuatu yang disebut count hard link


(dibahas nanti).

root User pemilik file.

root Group pemilik file tersebut.

150 Ukuran file dalam byte

Jan 22 Tanggal / waktu ketika file terakhir diubah.


15:18

d. Langkah 4

opsi –R pada perintah ls untuk melihat tidak hanya isi dari sebuah
direktori, tetapi juga isi dari subdirektori. -R singkatan dari "rekursif".:

sysadmin@localhost:~$ ls -R /etc/udev
/etc/udev:
rules.d udev.conf

/etc/udev/rules.d:
70-persistent-cd.rules README
sysadmin@localhost:~$

e. Langkah 5

Kita dapat menggunakan file globbing (wildcard) untuk membatasi


berkas atau direktori yang Kita lihat. contoh:

sysadmin@localhost:~$ ls -d /etc/s*

/etc/securetty /etc/sgml /etc/shells /etc/ssl /etc/sys


ctl.conf

/etc/security /etc/shadow /etc/skel /etc/sudoers /etc/sys


ctl.d

/etc/services /etc/shadow- /etc/ssh /etc/sudoers.d /etc/sys


temd

sysadmin@localhost:~$

opsi –d mencegah file dari subdirektori ditampilkan.

f. Langkah 6

Karakter ? dapat digunakan untuk mencocokkan jumlah karakter


dalam nama file. Contoh untuk menapilkan file dengan 4 karakter :

sysadmin@localhost:~$ ls -d /etc/????
/etc/bind /etc/init /etc/motd /etc/perl /etc/skel
/etc/dpkg /etc/ldap /etc/mtab /etc/sgml /etc/udev
sysadmin@localhost:~$

g. Langkah 7
Dengan menggunakan kurung siku [ ] Kita dapat menentukan beberapa
karakter untuk mencocokkan dari set karakter. contoh untuk
menampilkan semua file dalam /etcdirektori yang dimulai dengan
huruf a, b, c atau d:

sysadmin@localhost:~$ ls -d /etc/[abcd]*
/etc/adduser.conf /etc/blkid.conf /etc/cron.weekly
/etc/adjtime /etc/blkid.tab /etc/crontab
/etc/alternatives /etc/ca-certificates /etc/dbus-1
/etc/apparmor.d /etc/ca-certificates.conf /etc/debconf.conf
/etc/apt /etc/calendar /etc/debian_version
/etc/bash.bashrc /etc/cron.d /etc/default
/etc/bash_completion.d /etc/cron.daily /etc/deluser.conf
/etc/bind /etc/cron.hourly /etc/depmod.d
/etc/bindresvport.blacklist /etc/cron.monthly /etc/dpkg
sysadmin@localhost:~$

4. Menyalin, Memindahkan dan Mengganti Nama File dan Direktori


a. Langkah 1

Membuat salinan dari /etc/hostsberkas dan menempatkannya di


direktori saat ini. Contoh:

sysadmin@localhost:~$ ls
Desktop Documents Downloads Music Pictures Public Templat
es Videos
sysadmin@localhost:~$ cp /etc/hosts hosts
sysadmin@localhost:~$ ls
Desktop Downloads Pictures Templates hosts
Documents Music Public Videos
sysadmin@localhost:~$

b. Langkah 2

Selanjutnya Kita akan menghapus file, lalu salin lagi, tapi memiliki
sistem memberitahu Kita apa yang sedang dilakukan. Dapat
menggunakan -v atau –verbose pilihan. contoh:

rm digunakan untuk me remove.

sysadmin@localhost:~$ rm hosts

sysadmin@localhost:~$ ls

Desktop Documents Downloads Music Pictures Public Templates Videos

sysadmin@localhost:~$ cp -v /etc/hosts hosts

`/etc/hosts' -> `hosts'


sysadmin@localhost:~$ ls

Desktop Downloads Pictures Templates hosts

Documents Music Public Videos

sysadmin@localhost:~$

c. Langkah 3

Untuk menyalin /etc/hostsberkas, menggunakan periode “ . “ karakter


untuk menunjukkan direktori saat ini sebagai target:

sysadmin@localhost:~$ rm hosts
sysadmin@localhost:~$ ls
Desktop Documents Downloads Music Pictures Public T
emplates Videos
sysadmin@localhost:~$ cp -v /etc/hosts .
`/etc/hosts' -> `hosts'
sysadmin@localhost:~$ ls
Desktop Downloads Pictures Templates hosts
Documents Music Public Videos
sysadmin@localhost:~$

d. Langkah 4

Masukkan perintah cp -p untuk menyalin dari direktori source dan


melestarikan atribut berkas dengan menggunakan -p opsi:

sysadmin @ localhost : ~$ rm host


sysadmin @ localhost : ~ $ ls
Desktop Dokumen Download Musik Gambar Umum Template Video
sysadmin @ localhost : ~ $ cd /etc
sysadmin @ localhost : / etc $ ls-l host
-rw-r - r - 1 root root 150 22 Januari 15:18 host
sysadmin @ localhost : / etc $ cp -p host /home/sysadmin
sysadmin @ localhost : / etc $ cd
sysadmin @ localhost : ~ $ ls-l host

-rw-r -r-- 1 sysadmin sysadmin 150 22 Januari 15:18 host


sysadmin @ localhost : ~ $

e. Langkah 5

Ketik perintah berikut untuk menyalin menggunakan nama target yang


berbeda:
sysadmin@localhost:~$ rm hosts
sysadmin@localhost:~$ ls
Desktop Documents Downloads Music Pictures Public Templat
es Videos
sysadmin@localhost:~$ cp -p /etc/hosts ~
sysadmin@localhost:~$ cp hosts newname
sysadmin@localhost:~$ ls -l hosts newname
-rw-r--r-- 1 sysadmin sysadmin 150 Jan 22 15:18 hosts
-rw-r--r-- 1 sysadmin sysadmin 150 Jan 22 16:29 newname
sysadmin@localhost:~$ rm hosts newname

f. Langkah 6

Untuk menyalin semua file dalam sebuah direktori menggunakan -R


pilihan. Untuk tugas ini, contoh menyalin /etc/udev direktori dan
menampilkan isi dari direktori disalin:

sysadmin@localhost:~$ mkdir Myetc

sysadmin@localhost:~$ cp -R /etc/udev Myetc

sysadmin@localhost:~$ ls -l Myetc

total 0

drwxr-xr-x 1 sysadmin sysadmin 32 Jan 22 16:35 udev

sysadmin@localhost:~$ ls -lR Myetc

Myetc:

total 0

drwxr-xr-x 1 sysadmin sysadmin 32 Jan 22 16:35 udev

Myetc/udev:

total 4

drwxr-xr-x 1 sysadmin sysadmin 56 Jan 22 16:35 rules.d

-rw-r--r-- 1 sysadmin sysadmin 218 Jan 22 16:35 udev.conf

Myetc/udev/rules.d:

total 8

-rw-r--r-- 1 sysadmin sysadmin 306 Jan 22 16:35 70-persistent-cd.rules

-rw-r--r-- 1 sysadmin sysadmin 1157 Jan 22 16:35 README

sysadmin@localhost:~$

d. Langkah 7

Untuk menghapus direktori menggunakan -r opsi ke perintah rm:


sysadmin@localhost:~$ ls
Desktop Downloads Myetc Public Videos
Documents Music Pictures Templates
sysadmin@localhost:~$ rm -r Myetc
sysadmin@localhost:~$ ls
Desktop Documents Downloads Music Pictures Public Templat
es Videos
sysadmin@localhost:~$

Perhatikan bahwa perintah rmdir juga dapat digunakan untuk


menghapus direktori, tetapi hanya jika direktori kosong (jika tidak
berisi file). Juga perhatikan -r pilihan. Opsi ini menghapus direktori
dan isinya secara rekursif.
e. Langkah 8

Memindahkan file analog dengan "cut and paste". File ini "cut"
(dihapus) dari lokasi asli dan "disisipkan" ke tujuan
tertentu. Memindahkan file di direktori lokal dengan menjalankan
perintah berikut:

Command Linux Deskripsi

touch premove Membuat file baru kosong yang


disebut premove

mv premove postmove Perintah untuk memindahkan suatu


file

rm postmove menghapus postmovefile yang

sysadmin@localhost:~$ touch premove


sysadmin@localhost:~$ ls
Desktop Downloads Pictures Templates premove
Documents Music Public Videos
sysadmin@localhost:~$ mv premove postmove
sysadmin@localhost:~$ ls
Desktop Downloads Pictures Templates postmove
Documents Music Public Videos
sysadmin@localhost:~$

Lab 7: Pengarsipan dan Membatalkan pengarsipan Files

1. Perintah Pengarsipan

Disini menggunakan gzip, bzip2, tar dan zip/unzip untuk arsip dan
mengembalikan file. Perintah ini dirancang untuk baik menggabungkan
beberapa file menjadi satu file atau mengkompres file besar menjadi yang
lebih kecil.
Pengarsipan data penting karena beberapa alasan, sebagai berikut:
 file besar sulit untuk di transfer. Membuat file-file ini menjadi lebih
kecil membantu melakukan transfer lebih cepat.
 Mentransfer beberapa file dari satu sistem ke sistem lain akan sangat
membosankan saat ada banyak file. Menggabungkan mereka ke
dalam satu file membuat proses ini lebih mudah.
 File dengan cepat menghabiskan banyak ruang, terutama pada
removable media yang lebih kecil. Pengarsipan menangani masalah
ini.

a. Langkah 1
Menggunakan perintah tar untuk membuat arsip dari /etc/udev
direktori. Menyimpan cadangan dalam ~/mybackups direktori:

sysadmin@localhost:~$ cd
sysadmin@localhost:~$ mkdir mybackups
sysadmin@localhost:~$ tar -cvf mybackups/udev.tar /etc/udev
tar: Removing leading `/' from member names
/etc/udev/
/etc/udev/rules.d/
/etc/udev/rules.d/70-persistent-cd.rules
/etc/udev/rules.d/README
/etc/udev/udev.conf
sysadmin@localhost:~$ ls mybackups/
udev.tar
sysadmin@localhost:~$

Pilihan -c menceritakan perintah tar untuk membuat tar berkas. The -v


pilihan singkatan dari "verbose", yang menginstruksikan perintah tar
untuk menunjukkan apa yang dilakukannya. -f opsi digunakan untuk
menentukan nama file tar. Tar (Tape Archive).

b. Langkah 2

Menampilkan isi dari tar berkas ( t = daftar isi, v = verbose, f = nama


file):

sysadmin@localhost:~$ tar -tvf mybackups/udev.tar


drwxr-xr-x root/root 0 2015-01-28 16:32 etc/udev/
drwxr-xr-x root/root 0 2015-01-28 16:32 etc/udev/rules.d/
-rw-r--r-- root/root 306 2015-01-28 16:32 etc/udev/rules.d/70-per
sistent-cd.rules
-rw-r--r-- root/root 1157 2012-04-05 19:18 etc/udev/rules.d/README
-rw-r--r-- root/root 218 2012-04-05 19:18 etc/udev/udev.conf
sysadmin@localhost:~$

c. Langkah 3

Untuk membuat file tar yang dikompresi menggunakan -z opsi:

sysadmin@localhost:~$ tar -zcvf mybackups/udev.tar.gz /etc/udev


tar: Removing leading `/' from member names
/etc/udev/
/etc/udev/rules.d/
/etc/udev/rules.d/70-persistent-cd.rules
/etc/udev/rules.d/README
/etc/udev/udev.conf
sysadmin@localhost:~$ ls -lh mybackups/
total 16K
-rw-rw-r-- 1 sysadmin sysadmin 10K Jan 25 04:00 udev.tarf
-rw-rw-r-- 1 sysadmin sysadmin 1.2K Jan 25 04:34 udev.tar.gz

Perhatikan perbedaan ukuran; backup pertama (10 Kbytes) lebih besar


dari cadangan kedua (1,2 Kbytes).

d. Langkah 4

Ekstrak isi arsip. Data dikembalikan ke direktori saat secara default:


sysadmin@localhost:~$ cd mybackups
sysadmin@localhost:~/mybackups$ ls
udev.tar udev.tar.gz
sysadmin@localhost:~/mybackups$ tar -xvf udev.tar.gz
etc/udev/
etc/udev/rules.d/
etc/udev/rules.d/70-persistent-cd.rules
etc/udev/rules.d/README
etc/udev/udev.conf
sysadmin@localhost:~/mybackups$ ls
etc udev.tar udev.tar.gz
sysadmin@localhost:~/mybackups$ ls etc
udev
sysadmin@localhost:~/mybackups$ ls etc/udev
rules.d udev.conf
sysadmin@localhost:~/mybackups$ ls etc/udev/rules.d
70-persistent-cd.rules README
sysadmin@localhost:~/mybackups$

e. Langkah 5

Untuk menambahkan file ke arsip yang ada, gunakan opsi -r ke


perintah tar. Contoh :

sysadmin@localhost:~/mybackups$ tar -rvf udev.tar /etc/hosts


tar: Removing leading `/' from member names
/etc/hosts
sysadmin@localhost:~/mybackups$ tar -tvf udev.tar
drwxr-xr-x root/root 0 2015-01-28 16:32 etc/udev/
drwxr-xr-x root/root 0 2015-01-28 16:32 etc/udev/rules.
d/
-rw-r--r-- root/root 306 2015-01-28 16:32 etc/udev/rules.
d/70-persistent-c
d.rules
-rw-r--r-- root/root 1157 2012-04-05 19:18 etc/udev/rules.
d/README
-rw-r--r-- root/root 218 2012-04-05 19:18 etc/udev/udev.c
onf
sysadmin@localhost:~/mybackups$

f. Langkah 6
Dalam contoh berikut menggunakan gzip dan gunzip untuk kompres
dan uncompress file. Contoh :

sysadmin@localhost:~/mybackups$ cp /usr/share/dict/words .
sysadmin@localhost:~/mybackups$ ls -l words
-rw-r--r-- 1 sysadmin sysadmin 938848 Jan 25 07:39 words
sysadmin@localhost:~/mybackups$ gzip words
sysadmin@localhost:~/mybackups$ ls -l words.gz
-rw-r--r-- 1 sysadmin sysadmin 255996 Jan 25 07:39 words.gz
sysadmin@localhost:~/mybackups$

Perhatikan ukuran file zip ( 255996byte dalam contoh di atas) jauh lebih
kecil dari file asli ( 938848byte dalam contoh di atas).

h. Langkah 7

Jalankan perintah berikut untuk uncompress berkas words.gz:

ysadmin@localhost:~/mybackups$ ls -l words.gz
-rw-r--r-- 1 sysadmin sysadmin 255996 Jan 25 07:39 wor
ds.gz
sysadmin@localhost:~/mybackups$ gunzip words.gz
sysadmin@localhost:~/mybackups$ ls -l words
-rw-r--r-- 1 sysadmin sysadmin 938848 Jan 25 07:39 wor
ds
sysadmin@localhost:~/mybackups$

Linux menyediakan beberapa utilitas kompresi selain gzip/


gunzip. Masing-masing memiliki kompresi lebih cepat, tingkat
kompresi yang lebih baik, lebih fleksibel, lebih portabel, dekompresi
lebih cepat, dll.

i. Langkah 8

Menggunakan bzip2 dan bunzip2 untuk kompres dan uncompress file


sangat mirip dengan menggunakan gzip dan gunzip. File terkompresi
dibuat dengan ekstensi .bz2.

sysadmin@localhost:~/mybackups$ ls -l words
-rw-r--r-- 1 sysadmin sysadmin 938848 Jan 25 07:39 words
sysadmin@localhost:~/mybackups$ bzip2 words
sysadmin@localhost:~/mybackups$ ls -l words.bz2
-rw-r--r-- 1 sysadmin sysadmin 335405 Jan 25 07:39 words.
bz2
sysadmin@localhost:~/mybackups$

Jika membandingkan hasil .bz2 ukuran file ( 335405) untuk .gz ukuran
file ( 255996) dari Langkah # 7, Anda akan melihat bahwa gzip
melakukan pekerjaan yang lebih baik mengompresi file tertentu ini.

g. Langkah 9
Jalankan perintah berikut untuk uncompress words.bz2 berkas:

sysadmin@localhost:~/mybackups$ ls -l words.bz2
-rw-r--r-- 1 sysadmin sysadmin 335405 Jan 25 07:39 words.b
z2
sysadmin@localhost:~/mybackups$ bunzip2 words.bz2
sysadmin@localhost:~/mybackups$ ls -l words
-rw-r--r-- 1 sysadmin sysadmin 938848 Jan 25 07:39 words

Gzip dan bzip file arsip yang umum digunakan di Linux, zip jenis arsip
lebih sering digunakan oleh sistem operasi lain, seperti Windows.
Bahkan, aplikasi Windows Explorer telah built-in mendukung untuk
mengekstrak zip file arsip.

h. Langkah 10

Gunakan perintah zip untuk kompres kata-kata berkas:

sysadmin@localhost:~/mybackups$ zip words.zip words


adding: words (deflated 73%)
sysadmin@localhost:~/mybackups$ ls -l words.zip
-rw-rw-r-- 1 sysadmin sysadmin 256132 Jan 25 21:25 words.zip
sysadmin@localhost:~/mybackups$

i. Langkah 11

Kompres /etc/udev direktori dan isinya dengan zip kompresi:


sysadmin@localhost:~/mybackups$ zip words.zip words

adding: words (deflated 73%)


sysadmin@localhost:~/mybackups$ ls -l words.zip
-rw-rw-r-- 1 sysadmin sysadmin 256132 Jan 25 21:25 words.zip
sysadmin@localhost:~/mybackups$

j. Langkah 12

Untuk melihat isi dari arsip zip, gunakan dengan opsi -l dengan
perintah unzip:

sysadmin@localhost:~/mybackups$ unzip -l udev.zip


Archive: udev.zip
Length Date Time Name
--------- ---------- ----- ----
0 2015-01-28 16:32 etc/udev/
0 2015-01-28 16:32 etc/udev/rules.d/
306 2015-01-28 16:32 etc/udev/rules.d/70-pers
istent-cd.rules
1157 2012-04-05 19:18 etc/udev/rules.d/README
218 2012-04-05 19:18 etc/udev/udev.conf
--------- -------
1681 5 files
sysadmin@localhost:~/mybackups$

f. Langkah 13
Untuk mengekstrak zip arsip, gunakan unzip perintah tanpa opsi.
Dalam contoh ini kita harus terlebih dahulu menghapus file yang
dibuat di awal tar contoh:

sysadmin@localhost:~/mybackups$ rm -r etc
sysadmin@localhost:~/mybackups$ unzip udev.zip
Archive: udev.zip
creating: etc/udev/
creating: etc/udev/rules.d/
inflating: etc/udev/rules.d/70-persistent-cd.rules
inflating: etc/udev/rules.d/README
inflating: etc/udev/udev.conf
sysadmin@localhost:~/mybackups$

Ini Lab 8: Pipa, Redirection dan REGEX

1. Command Line Pipes and Redirection


Biasanya, ketika menjalankan sebuah perintah, output yang ditampilkan di
jendela terminal. Output ini (juga disebut saluran) disebut output standar,
dilambangkan dengan istilah stdout.
Standard error ( stderr) terjadi ketika ada kesalahan selama eksekusi perintah
Input standar, stdin biasanya disediakan oleh Anda untuk perintah dengan
mengetik pada keyboard.
a. Langkah 1
Menggunakan simbol redirection > untuk mengarahkan output dari output
normal stdout(terminal) ke sebuah file. Ketik berikut:

sysadmin@localhost:~$ echo "Hello World"


Hello World
sysadmin@localhost:~$ echo "Hello World" > mymessage
sysadmin@localhost:~$ cat mymessage
Hello World

b. Langkah 2
Bila Anda menggunakan >simbol untuk mengarahkan stdout, isi dari file
yang pertama hancur. Ketik perintah berikut untuk melihat demonstrasi:

sysadmin@localhost:~$ cat mymessage


Hello World
sysadmin@localhost:~$ echo Greetings > mymessage
sysadmin@localhost:~$ cat mymessage
Greetings
sysadmin@localhost:~$

Perhatikan bahwa menggunakan salah satu simbol redirection menimpa


file yang ada. Ini disebut "clobbering" file.

c. Langkah 3
Anda dapat menghindari clobbering file dengan menjalankan perintah
berikut:

sysadmin@localhost:~$ cat mymessage


Greetings
sysadmin@localhost:~$ echo "How are you?" >> mymessage
sysadmin@localhost:~$ cat mymessage
Greetings
How are you?
sysadmin@localhost:~$

d. Langkah 4
The find perintah perintah yang baik untuk menunjukkan
bagaimana stderr bekerja. Perintah ini akan mencari file system file
berdasarkan kriteria seperti nama file. Contoh :

sysadmin@localhost:~$ find /etc -name hosts


find: `/etc/ssl/private': Permission denied
/etc/hosts
sysadmin@localhost:~$

catatan : error terjadi karena hak akses file ditolak.

e. Langkah 5
Untuk mengarahkan stderr (pesan error) untuk masalah file perintah
berikut:

sysadmin@localhost:~$ find /etc -name hosts 2> err.txt


/etc/hosts
sysadmin@localhost:~$ cat err.txt
find: `/etc/ssl/private': Permission denied
sysadmin@localhost:~$

f. Langkah 6
Anda juga dapat mengarahkan stdout dan stderr menjadi dua file terpisah.

sysadmin@localhost:~$ find /etc -name hosts > std.out 2>


std.err
sysadmin@localhost:~$ cat std.err
find: `/etc/ssl/private': Permission denied
sysadmin@localhost:~$ cat std.out
/etc/hosts
sysadmin@localhost:~$

Perhatikan bahwa spasi diperbolehkan tetapi tidak diperlukan setelah


>simbol redirection.

g. Langkah 7
Untuk mengarahkan kedua output standar ( stdout) dan standard error
( stderr) untuk satu file, pertama redirect stdoutke file dan kemudian
mengarahkan stderrke file yang sama dengan menggunakan notasi 2>&1.

sysadmin@localhost:~$ find /etc -name hosts > find.out 2>&1


sysadmin@localhost:~$ cat find.out
find: `/etc/ssl/private': Permission denied
/etc/hosts
sysadmin@localhost:~$

2>&1 bagian dari sarana perintah mengirim stderr (saluran 2) ke tempat


yang sama di mana stdout (saluran 1) akan.

h. Langkah 8
Standar input ( stdin) juga bisa diarahkan. Biasanya stdin berasal dari
keyboard, tapi kadang-kadang Anda ingin dari sebuah file sebagai
gantinya. contoh:

sysadmin@localhost:~$ tr a-z A-Z


this is interesting
THIS IS INTERESTING
how do I stop this?
HOW DO I STOP THIS?
sysadmin@localhost:~$

Catatan: ^D melambangkan Kontrol + d

i. Langkah 9
The tr perintah menerima input keyboard ( stdin), menerjemahkan
karakter dan kemudian mengirimkan output ke stdout. Untuk membuat file
dari semua karakter huruf kecil, jalankan berikut:

sysadmin@localhost:~$ tr A-Z a-z > myfile


Wow, I SEE NOW
This WORKS!
sysadmin@localhost:~$

Tekan Enter kunci untuk memastikan kursor Anda pada baris di bawah
"ini bekerja!", Kemudian gunakan Control + d untuk menghentikan
masukan. Untuk memverifikasi Anda membuat file, jalankan perintah
berikut:

sysadmin@localhost:~$ cat myfile


wow, i see now
this works!
sysadmin@localhost:~$

j. Langkah 10
Jalankan perintah berikut untuk menggunakan tr perintah dengan
mengalihkan stdindari file:

sysadmin@localhost:~$ cat myfile


wow, i see now
this works!
sysadmin@localhost:~$ tr a-z A-Z < myfile
WOW, I SEE NOW
THIS WORKS!
sysadmin@localhost:~$

k. Langkah 11
Bentuk lain yang populer dari redirection adalah untuk mengambil output
dari satu perintah dan mengirimkannya ke perintah lain sebagai
masukan. Jalankan perintah berikut untuk mengambil output dari ls
perintah dan mengirimkannya ke dalam more perintah yang menampilkan
satu data pada satu waktu:

sysadmin@localhost:~$ ls -l /etc | more


total 372
-rw-r--r-- 1 root root 2981 Jan 28 2015 adduser.conf
-rw-r--r-- 1 root root 10 Jan 28 2015 adjtime
drwxr-xr-x 1 root root 900 Jan 29 2015 alternatives
drwxr-xr-x 1 root root 114 Jan 29 2015 apparmor.d
drwxr-xr-x 1 root root 168 Oct 1 2014 apt
-rw-r--r-- 1 root root 2076 Apr 3 2012 bash.bashrc
drwxr-xr-x 1 root root 72 Jan 28 2015
bash_completion.d
drwxr-sr-x 1 root bind 342 Jan 29 2015 bind
-rw-r--r-- 1 root root 356 Apr 19 2012
bindresvport.blacklist
-rw-r--r-- 1 root root 321 Mar 30 2012 blkid.conf
lrwxrwxrwx 1 root root 15 Jun 18 2014 blkid.tab ->
/dev/.blkid.tab
drwxr-xr-x 1 root root 16 Jan 29 2015 ca-
certificates
-rw-r--r-- 1 root root 7464 Jan 29 2015 ca-
certificates.conf
drwxr-xr-x 1 root root 14 Jan 29 2015 calendar
drwxr-xr-x 1 root root 24 Jan 29 2015 cron.d
drwxr-xr-x 1 root root 134 Jan 29 2015 cron.daily
drwxr-xr-x 1 root root 24 Jan 29 2015 cron.hourly
drwxr-xr-x 1 root root 24 Jan 29 2015 cron.monthly
-rw-r--r-- 1 root root 2969 Mar 15 2012 debconf.conf
--More--

Anda akan perlu untuk menekan spasi untuk melanjutkan atau Anda juga
dapat menekan CTRL + c untuk melarikan diri listing ini.

l. Langkah 12
Pada contoh berikut, Anda akan menggunakan perintah yang disebut cut
untuk mengekstrak semua username dari database yang disebut
/etc/passwd (file yang berisi informasi akun pengguna). Pertama, coba
jalankan perintah cut dengan sendirinya:

sysadmin@localhost:~$ cut -d: -f1 /etc/passwd


root
daemon
bin
sys
sync
games
man
lp
mail
news
uucp
proxy
www-data
backup
list
irc
gnats
nobody
libuuid
syslog
bind
sshd
operator

m. Langkah 13
Output pada contoh sebelumnya adalah unordered dan menggulir dari
layar. Pada langkah berikutnya Anda akan mengambil output dari cut
perintah dan mengirimkannya ke sort perintah untuk memberikan
beberapa untuk output:

sysadmin@localhost:~$ cut -d: -f1 /etc/passwd | sort


backup
bin
bind
daemon
games
gnats
irc
libuuid
list
lp
mail
man
news
nobody
operator
proxy
root
sshd
sync
sys

n. Langkah 14
Sekarang output diurutkan, tetapi masih gulungan dari layar. Kirim output
dari sort perintah ke more perintah untuk memecahkan masalah ini:

sysadmin@localhost:~$ cut -d: -f1 /etc/passwd | sort |


more
backup
bin
bind
daemon
games
gnats
irc
libuuid
list
lp
mail
man
news
nobody
operator
proxy
root
sshd
sync
sys
sysadmin
syslog
uucp
--More--

2. Menggunakan find Cari File

Menggunakan find perintah untuk mencari file. The find command adalah
perintah yang sangat fleksibel dengan sejumlah pilihan yang memungkinkan
pengguna untuk mencari file berdasarkan sejumlah kriteria seperti nama file,
ukuran, tanggal, jenis dan izin. Perintah membangun dasar adalah:
find <directory to start search> -criteria <argument for
criteria>
Perintah akan memulai pencarian di direktori yang ditentukan dan secara
rekursif mencari semua subdirektori.
a. Langkah 1
Mencari file yang dimulai di direktori home Anda yang berisi nama bash.

sysadmin@localhost:~$ find ~ -name "*bash*"


/home/sysadmin/.bash_logout
/home/sysadmin/.bashrc
sysadmin@localhost:~$

b. Langkah 2
Menemukan file yang dimodifikasi (atau dibuat) kurang dari 5 menit yang
lalu di direktori yang ditentukan dengan menggunakan perintah berikut:

sysadmin@localhost:~$ find ~/Music -mmin -5


sysadmin@localhost:~$ touch ~/Music/mysong
sysadmin@localhost:~$ find ~/Music -mmin -5
/home/sysadmin/Music
/home/sysadmin/Music/mysong
sysadmin@localhost:~$

c. Langkah 3
Jalankan perintah berikut untuk mencari file di /usr direktori yang lebih
besar dari 2MB dalam ukuran:

sysadmin@localhost:~$ find /usr -size +2M


/usr/bin/python2.7
/usr/lib/perl/5.14.2/auto/Encode/JP/JP.so
/usr/lib/perl/5.14.2/auto/Encode/KR/KR.so
/usr/share/GeoIP/GeoIPv6.dat
/usr/share/file/magic.mgc
sysadmin@localhost:~$
d. Langkah 4
Cari file jenis "direktori" di lokasi yang ditentukan.

sysadmin@localhost:~$ find /usr/share/bug -type d


/usr/share/bug
/usr/share/bug/apt
/usr/share/bug/gnupg
/usr/share/bug/initramfs-tools
/usr/share/bug/procps
/usr/share/bug/cron
/usr/share/bug/file
/usr/share/bug/libmagic1
/usr/share/bug/logrotate
/usr/share/bug/man-db
/usr/share/bug/vim-tiny
sysadmin@localhost:~$

e. Langkah 5
Untuk memverifikasi bahwa output display direktori, gunakan -ls
opsi. The find perintah menggunakan -print opsi default yang
menampilkan hanya nama file. The -ls opsi memberikan rincian file:

sysadmin@localhost:~$ find /usr/share/bug -type d -ls


2280 0 drwxr-xr-x 1 root root 138 Jan
29 2015 /usr/share/bug
2281 0 drwxr-xr-x 1 root root 12 Jan
28 2015 /usr/share/bu
g/apt
2283 0 drwxr-xr-x 1 root root 14 Jan
28 2015 /usr/share/bug/gnupg
2285 0 drwxr-xr-x 1 root root 12 Jan
28 2015 /usr/share/bug/initramfs-tools
2287 0 drwxr-xr-x 1 root root 14 Jan
28 2015 /usr/share/bug/procps
10784 0 drwxr-xr-x 1 root root 26 Jan
29 2015 /usr/share/bug/cron
10787 0 drwxr-xr-x 1 root root 28 Jan
29 2015 /usr/share/bug/file
10790 0 drwxr-xr-x 1 root root 28 Jan
29 2015 /usr/share/bug/libmagic1
10793 0 drwxr-xr-x 1 root root 12 Jan
29 2015 /usr/share/bug/logrotate
10795 0 drwxr-xr-x 1 root root 14 Jan
29 2015 /usr/share/bu
g/man-db
10797 0 drwxr-xr-x 1 root root 26 Jan
29 2015 /usr/share/bug/vim-tiny
sysadmin@localhost:~$

3. Melihat Teks Besar File


Meskipun file teks besar dapat dilihat dengan cat perintah, itu tidak cocok
untuk menggulir mundur ke arah atas dari file. Selain itu, file besar tidak dapat
ditampilkan dengan cara ini karena jendela terminal hanya menyimpan
sejumlah tertentu dari baris output dalam memori.
Penggunaan more atau less perintah memungkinkan bagi pengguna untuk
tampilan data "halaman" atau baris pada satu waktu. Ini "pager" perintah juga
mengizinkan bentuk lain dari navigasi dan pencarian.
Jika Anda tidak tertarik dalam melihat seluruh file atau output sebagai
perintah, maka ada banyak perintah yang mampu menyaring isi dari file atau
output. Pada bagian ini, Anda akan belajar penggunaan head dan tail perintah
untuk dapat mengekstrak informasi dari bagian atas atau bawah dari output
dari perintah atau isi file.

a. Langkah 1
/etc/passwd kemungkinan terlalu besar untuk ditampilkan pada layar tanpa
scrolling layar. Untuk melihat demonstrasi ini, gunakan cat perintah untuk
menampilkan seluruh isi dari /etc/passwd berkas:

daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System
(admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
syslog:x:101:103::/home/syslog:/bin/false
bind:x:102:105::/var/cache/bind:/bin/false
sshd:x:103:65534::/var/run/sshd:/usr/sbin/nologin
operator:x:1000:37::/root:/bin/sh
sysadmin:x:1001:1001:System
Administrator,,,,:/home/sysadmin:/bin/bash
sysadmin@localhost:~$

b. Langkah 2
Gunakan more perintah untuk menampilkan seluruh isi
dari /etc/passwdberkas:
more /etc/passwd

c. Langkah 3

Sementara Anda berada di more perintah, Anda dapat melihat layar bantuan
dengan menekan h kunci:

Most commands optionally preceded by integer argument k. Defaul


ts in brackets

Star (*) indicates argument becomes new default.

----------------------------------------------------------------
--------------
<space> Display next k lines of text [current sc
reen size]
z Display next k lines of text [current sc
reen size]*
<return> Display next k lines of text [1]*
d or ctrl-D Scroll k lines [current scroll size, ini
tially 11]*
q or Q or <interrupt> Exit from more
s Skip forward k lines of text [1]
f Skip forward k screenfuls of text [1]
b or ctrl-B Skip backwards k screenfuls of text [1]
' Go to place where previous search starte
d
= Display current line number
/<regular expression> Search for kth occurrence of regular exp
ression [1]
n Search for kth occurrence of last r.e [1
]
!<cmd> or :!<cmd> Execute <cmd> in a subshell
v Start up /usr/bin/vi at current line
ctrl-L Redraw screen
:n Go to kth next file [1]
:p Go to kth previous file [1]
:f Display current file name and line numbe
r
. Repeat previous command
----------------------------------------------------------------
--------------
--More--(92%)

d. Langkah 4

Tekan Spacebar untuk melihat sisa dokumen.

e. Langkah 5
Gunakan less perintah untuk menampilkan seluruh isi
dari /etc/passwdberkas. Kemudian mencari kata bin, gunakan n untuk
bergerak maju, dan N untuk bergerak mundur. Akhirnya, keluar dari less
pager dengan mengetik huruf q :
less /etc/passwd
Penting: Berbeda dengan more perintah yang secara otomatis keluar
ketika Anda mencapai akhir file, Anda harus menekan berhenti kunci
seperti q untuk keluar dari less Program.

f. Langkah 6

Anda dapat menggunakan head perintah untuk menampilkan bagian atas


file. Secara default, head perintah akan menampilkan sepuluh baris pertama
dari file:

sysadmin@localhost:~$ head /etc/passwd


root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh

g. Langkah 7

Gunakan tail perintah untuk menampilkan sepuluh baris terakhir


dari /etc/passwdberkas:

sysadmin@localhost:~$ tail /etc/passwd


list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/
gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
syslog:x:101:103::/home/syslog:/bin/false
bind:x:102:105::/var/cache/bind:/bin/false
sshd:x:103:65534::/var/run/sshd:/usr/sbin/nologin
operator:x:1000:37::/root:/bin/sh
sysadmin:x:1001:1001:System Administrator,,,,:/home/sysadm
in:/bin/bash
sysadmin@localhost:~$

h. Langkah 8
Gunakan head perintah untuk menampilkan dua baris pertama
dari /etc/passwd file yang:

sysadmin@localhost:~$ head -2 /etc/passwd

root:x:0:0:root:/root:/bin/bash

daemon:x:1:1:daemon:/usr/sbin:/bin/sh

sysadmin@localhost:~$

i. Langkah 9

Mengeksekusi baris perintah berikut untuk pipa output dari lsperintah


ke tail perintah, menampilkan lima nama file terakhir di /etcdirektori:

sysadmin @ localhost : ~ $ ls / etc | tail -5


update-motd.d
updatedb.conf
vim
wgetrc
xml

Seperti yang Anda lihat, baik head dan tail perintah keluaran sepuluh garis
secara default. Anda juga bisa menggunakan opsi -# (atau Anda dapat
menggunakan opsi -n #, di mana # adalah jumlah baris output). Kedua
perintah dapat digunakan untuk membaca input standar dari sebuah pipa
yang menerima keluaran dari perintah.

j. Langkah 10

Cara lain untuk menentukan berapa banyak baris output dengan head
perintah untuk menggunakan opsi -n -#, di mana # adalah jumlah baris
dihitung dari bawah output untuk mengecualikan. Contoh :

sysadmin@localhost:~$ head -n -20 /etc/passwd


root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sysadmin@localhost:~$

4. Mencari Teks Menggunakan Regular Expressions

Menggunakan keluaga grep perintah dengan ekspresi reguler untuk mencari


string tertentu dari karakter dalam aliran data (misalnya, file teks).

Perintah grep menggunakan ekspresi reguler dasar , karakter khusus seperti


wildcard yang cocok dengan pola dalam data. perintah grep mengembalikan
seluruh baris yang mengandung pola yang cocok.

Opsi -E untuk perintah grep dapat digunakan untuk melakukan pencarian


dengan ekspresi reguler diperpanjang , ekspresi reguler dasarnya lebih
kuat. Cara lain untuk menggunakan ekspresi reguler diperpanjang adalah
dengan menggunakan perintah egrep.

The Perintah fgrep ini digunakan untuk mencocokkan karakter literal,


mengabaikan makna khusus dari karakter ekspresi reguler.

a. Langkah 1

Penggunaan grep dalam bentuk yang paling sederhana adalah untuk


mencari suatu string karakter, seperti sshd dalam /etc/passwd
berkas. Perintah grep akan mencetak seluruh baris :

sysadmin @ localhost : ~ $ cd / etc

sysadmin @ localhost : / etc $ grep sshd passwd

sshd : x: 103: 65534 :: / var / run / sshd : / usr / sbin


/ Nologin

sysadmin @ localhost : / etc $

b. Langkah 2
Kalimat "greedy" dalam arti bahwa mereka akan cocok setiap satu contoh
dari pola yang telah ditentukan:

sysadmin@localhost:/etc$ grep root passwd


root:x:0:0:root:/root:/bin/bash
operator:x:1000:37::/root:/bin/sh
sysadmin@localhost:/etc$

c. Langkah 3
Untuk membatasi output, Anda dapat menggunakan ekspresi reguler untuk
menentukan pola yang lebih tepat. Misalnya, tanda sisipan ( ^ ) karakter
dapat digunakan untuk mencocokkan pola pada awal baris sehingga ketika
mengeksekusi baris perintah berikut, hanya baris yang dimulai dengan root
harus dicocokkan dan ditampilkan:

sysadmin @ localhost : / etc $ grep '^ root' passwd

akar : x: 0: 0: root: / root: / bin / bash

sysadmin @ localhost : / etc $

Perhatikan bahwa ada dua contoh tambahan dari kata roottapi hanya satu
yang muncul di awal baris yang cocok (ditampilkan dalam warna merah).

d. Langkah 4

Cocok dengan pola sync di mana saja pada baris:

sysadmin @ localhost : / etc $ grep 'sync' passwd

sync : x: 4: 65534: sync : / bin: / bin / sync

sysadmin @ localhost : / etc $

e. Langkah 5

Gunakan $ simbol untuk mencocokkan pola sync pada akhir baris:


sysadmin @ localhost : / etc $ grep 'sync $' passwd

sync: x: 4: 65534: sync: / bin: / bin / sync

sysadmin @ localhost : / etc $

f. Langkah 6

Gunakan periode karakter “.” untuk mencocokkan satu karakter


apapun. Misalnya, jalankan perintah berikut untuk mencocokkan karakter
apapun yang diikuti oleh ' y':

sysadmin@localhost:/etc$ grep '.y' passwd


sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
proxy:x:13:13:proxy:/bin:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
syslog:x:101:103::/home/syslog:/bin/false
sysadmin:x:1001:1001:System Administrator,,,,:/home/sysadmin:/bin/bash
sysadmin@localhost:/etc$

g. Langkah 7

Karakter pipes , “| “atau "pergantian operator", bertindak sebagai operator


"or". Misalnya, jalankan berikut untuk mencoba untuk mencocokkan baik
sshd, akar atau operator:

sysadmin@localhost:/etc$ grep 'sshd|root|operator' passwd


sysadmin@localhost:/etc$

h. Langkah 8

Gunakan -E saklar untuk memungkinkan grep untuk beroperasi dalam


mode extended untuk mengenali operator pergantian:

sysadmin@localhost:/etc$ grep -E 'sshd|root|operator' passwd


root:x:0:0:root:/root:/bin/bash
sshd:x:103:65534::/var/run/sshd:/usr/sbin/nologin
operator:x:1000:37::/root:/bin/sh
sysadmin@localhost:/etc$

i. Langkah 9

Gunakan ekspresi reguler lain, kali ini dengan egrep dengan pergantian
dalam kelompok untuk mencocokkan pola. :

sysadmin@localhost:/etc$ egrep 'no(b|n)' passwd


nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
sysadmin@localhost:/etc$

Catatan: kurung , ( ), digunakan untuk membatasi "ruang lingkup" dari |


karakter. Tanpa mereka, seperti nob|n, pola akan berarti "cocok dengan nob
atau n"

j. Langkah 10

The [ ] karakter juga dapat digunakan untuk mencocokkan satu karakter,


namun tidak seperti karakter periode ” .” , [ ] karakter yang digunakan untuk
menentukan apa yang karakter yang ingin di cocokkan :

sysadmin@localhost:/etc$ head passwd | grep '[0-9]'


root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
sysadmin@localhost:/etc$
Catatan: Perintah head ini digunakan untuk membatasi output dari
perintah grep.

k. Langkah 11

Anda dapat menggunakan { }karakter dengan nomor untuk


mengungkapkan bahwa Anda ingin mengulang pola jumlah tertentu
kali; misalnya: {3}Penggunaan kualifikasi numerik membutuhkan modus
diperpanjang grep:

sysadmin@localhost:/etc$ grep -E '[0-9]{3}' passwd


sync:x:4:65534:sync:/bin:/bin/sync
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
syslog:x:101:103::/home/syslog:/bin/false
bind:x:102:105::/var/cache/bind:/bin/false
sshd:x:103:65534::/var/run/sshd:/usr/sbin/nologin
operator:x:1000:37::/root:/bin/sh
sysadmin:x:1001:1001:System Administrator,,,,:/home/sysadm
in:/bin/bash
sysadmin@localhost:/etc$

Fungsi Direktori Utama di Linux

1. / – Root Directory
Ini merupakan direktori utama pada sistem operasi Linux, yang mana Root
Directory ini membawahi direktori lainnya seperti /home, /etc, dan lain-lain.
2. /bin – Essential User Binaries

Direktori /bin berisikan program binner yang harus ada bila sistem yang
dipasang dalam mode single-user. Aplikasi firefoc disimpan di direktori
/usr/bin, lalu program penting dan utilitas lainnya seperti shell bash terletak di
/bin.

3. /boot – Boot Files

Sesuai namanya, direktori /boot berisikan file-file yang dibutukan oleh sistem
untuk melakukan booting. File-file seperti GRUB boot loader dan kernel
Linux tersimpan di direktori ini.

4. /cdrom – Mount point for CDROMs

Merupakan lokasi sementara untuk CD-ROM yang dimasukan ke dalam


sistem. Namun, lokasi standar untuk media sementara berada di dalam
direktori /media. Direktori ini sebenarnya bukanlah bagian dari FHS
(Filesystem Hierarchy Standard), namun kamu tetap bisa menemukannya di
Ubuntu.

5. /dev

Pada sistem operasi Linux, setiap perangkat yang terhubung akan dianggap
sebagai files, dan di direktori /dev inilah file-file khusus yang
mempresentasikan perangkat tersebut disimpan. Biasanya sering ditampil
direktori seperti /dev/sda1 yang mewakili Drive SATA pertama dalam sistem.

Linux menghadapkan perangkat sebagai file, dan direktori / dev berisi


sejumlah file khusus yang merepresentasikan perangkat. Ini bukan file yang
sebenarnya seperti yang kita tahu mereka, tetapi mereka muncul sebagai file –
misalnya, / dev / sda merupakan SATA drive pertama dalam sistem. Jika Anda
ingin partisi itu, Anda bisa mulai editor partisi dan kirim ke mengedit / dev /
sda.
6. /etc – Configuration

Pada direktori inilah banyak tersimpan file-file konfigurasi yang pada


umumnya bisa kamu edit sendiri menggunakan text editor.

7. /home

Pada direktori ini berisi direktori untuk masing-masing user. Misal, nama user
kamu adalah “pintar”, maka kamu memiliki direktori di /home/pintar. Di
direktori tersebut umumnya berisi file data-data user dan file konfigurasi user
tertentu.Setiap user hanya memiliki hak akses atas direktorinya masing-
masing. Untuk bisa menggunakan direktori user lain, kamu harus login dahulu
sebagai super user (Root).

8. /lib

Berisi file-file penting yang dibutuhkan oleh file binari dalam direktori /bin
dan /sbin. Sedangkan kumpulan file pnenting yang dibutuhkan oleh binari
dalam folder /usr/bin terletak pada /usr/lib.

9. /lost+found – Recovery

Setiap distro linux memiliki direktori lost+found. Fungsinya adalah untuk


menempatkan file yang rusak, sehingga kamu dapat dengan mudah untuk
memulihkannya.

10. /media – Removable Media

Directory /media berisi subdirectory yang mewakili sebuah perangkat


removable yang dimasukkan ke komputer. Misalnya, ketika kamu memasukan
DVD ke komputer kamu, Linux otomatis akan membuat direktori baru di
dalam /media. Anda bisa mengakses DVD tersebut dengan masuk ke direktori
ini.

11. /mnt – Mount Point


Direktori /mnt merupakan tempat untuk kamu nge-mount filesystem untuk
menggunakannya sementara. Saya sering memanfaatkannya ketika melakukan
sharing file yang mengharuskan saya nge-mount terlebih dahulu filesystem
dari windows. Biasanya saya memberi nama /mnt/windows. Namun untuk
nge-mount filesystem tidak harus di direktori tersebut melainkan bisa dimana
saja.

12. /opt – Optional Packages

Direcktory ini biasanya berisi paket software yang kamu install sendiri.
Biasanya digunakan oleh software diluar repository distrotersebut.

13. /proc

Direktori ini hampir mirip dengan direktory /dev karena tidak berisi file-file
standar, melainkan berisi file-file khusus yang mempresentasikan siste dan
proses informasi.

14. /root – Root Home Directory

Direktori ini merupakan Home-nya user Root. Bukan terletak di /home/root,


melainkan folder tersendiri, yaitu di /root. Ingat ya, ini berbeda dengan /, yang
merupakan sistem directori utama.

15. /run

File yang berisi tentang system yang valid sampai system melakukan boot
selanjutnya.

16. /sbin

Direktori /sbin mirip dengan /bin. Namun file-file yang berada di dalam
direktori ini umum dioperasikan oleh Root.
17. /srv

Direktori yang dimaksudkan sebagai tempat data dari sebuah layanan yang
diberikan oleh sistem. Misal, jika kamu menggunakan server Apache untuk
service web, kamu bisa menyimpan file-file website tersebut di sebuah
direktori di dalam /srv.

18. /tmp

Tempat untuk menyimpan sementara file-file Linux. Biasanya file yang


disimpan dalam directory ini akan terhapus setiap kalu me-restart komputer.

19. /usr

Berisi aplikasi dan file yang digunakan oleh pengguna, sebagai lawan aplikasi
dan file yang digunakan oleh sistem. Misalnya, aplikasi non-essensial yang
terletak di dalam direktori /usr/bin bukan pada /bin.

20. /var

Biasanya berisi informasi seperti log yang berada dalam /var/log.

Anda mungkin juga menyukai