Professional Documents
Culture Documents
Scorvia CaPoeX Pake Ubuntu Yuk
Scorvia CaPoeX Pake Ubuntu Yuk
http://www.capoex.net
http://scorvia.capoex.net
iv
License:
Copyright (c) 2008, Yunifa Wirman, Scorvia
.dot. Net
Dedicated for:
My wonderful girlfriend Devita "Bunda" Denavia... Yang udah menjadi
sumber inspirasi buat aku, she has supported me more than I ever can
support her to any degree.
Dirimu adalah hal terbaik yang pernah terjadi sama aku. You're so special
girl to me. I hope I love you all my life.
Makasih Tuhan, udah menghadirkan dirinya dalam hidupku. I wish I
could make you just as happy as you make me. I MiSs U Bunda ^_^
vi
Thanks To:
Allah SWT (pemilik segalanya di alam ini), keluarga besarku (ayah,
ibu, kakak, adik, keponakanku) yang selalu mendukung setiap
langkahku, serta seluruh Komunitas Open Source
DAFTAR ISI
Cover
..........................................................................................................
Title
.........................................................................................................
iii
License
.........................................................................................................
iv
........................................................................................................
Thanks to
...............................................................................................................
vi
Daftar Isi
.........................................................................................................
vii
Dedication for
BAB 1
PENGANTAR GNU/LINUX
1.1 Apa itu sistem operasi
.....................................................
........................................................
............................
............................................................................
...................................
...........................................................
......................
........
11
...................................
14
..................
41
..............................................
41
.....................................................................
44
11
................................
47
..................
49
.........................
51
viii
.................................................
..
64
.......................................
68
...............
71
...............
72
............................
73
.....
78
.................................................
79
..............................................
81
4.1 Nautilus
...................................................................
81
...................................................................
90
...................................................................
98
.......................................................................................
102
61
4.4 Trash
BAB 5
X WINDOW SYSTEM
...............................................................
BAB 6
105
................................
113
.........................................................................
114
6.2 Background
.........................................................................
115
................................
116
.......................................................................................
119
.................................................
123
...........................................................
129
...........................................................
132
...........................................................
134
ix
BAB 7
...........................................................
136
...............................................................
138
...............................................................
141
................................
...............
145
..........................................
150
................................
153
7.4 APT
............................................................................
163
7.5 DPKG
............................................................................
172
............................................................................
176
.....
180
................................
187
..........................................
187
..........................................................................................
197
BAB 9
..................
201
..................................................................
201
.....
203
..................
208
....................................................
216
............................................................................
221
145
NETWORKING
.................................................
221
................................
231
..............................................
238
BAB 11
...........
243
........................................................
243
................................
BAB 13
...........
256
...................................................................
259
12.1 Printer
...................................................................
259
12.2 GIMP
...................................................................
262
............................
267
.................................................
267
.................................................
282
.................................................
288
.................................................
297
..........................................
304
....................................................................................
308
MULTIMEDIA
.........................................................................
311
14.1 Automatix2
.........................................................................
311
...........
316
.....................................................
326
....................................................................................
329
252
INTERNET
................................
333
....................................................................................
339
...............................................................
339
............................................................................
345
xi
.........................................................................
351
.......................................................................................
355
...............................................................
..........................................
359
.................................................
359
357
...............
402
................................................................................
411
....................................................................................
421
BAB 18
DHCP SERVER
............................................................................
.....................................................
427
........................................................
429
DNS SERVER
..........................................
433
................................................................................
441
...........................................................
LAMP SERVER
20.3 MYSQL 5
463
............................................................................
497
.................................................
497
....................................................................................
519
............................................................................
527
FTP SERVER
441
.........................
427
.................................................
549
................................................................................
561
xii
...............................................................
561
................................................................................
563
............................................................................
569
BAB 23
SSH Server
(Under Construction :-) )
BAB 25
MAIL SERVER
(Under Construction :-) )
LAMPIRAN A
...........
575
.....
575
.........................
585
........................................................
593
........................................................
597
LAMPIRAN B
.....
603
...........
603
...........
608
........................................................
609
.....................................................................
615
DOWNLOAD UBUNTU
..................
623
..........................................
633
.........................
633
..................
636
................................
639
xiii
LAMPIRAN D
DASAR-DASAR NETWORKING
(Under Construction :-) )
Bab 1
PENGANTAR GNU/LINUX
Bab pertama dari buku ini membahas:
1.1 Apa itu sistem operasi
1.2 GNU dan Free Software Foundation
1.3 GNU/Linux
1.4 Distribution (distro) GNU/Linux
1.5 GNU/Linux Ubuntu
GNU/Linux
Novel Netware
UNIX
Pengantar GNU/Linux
1.3 GNU/Linux
Linux secara teknis merupakan sebuah kernel yang menjalankan
komputer dalam mode low level. Secara umum saat ini Linux
merupakan gabungan kernel dan program-program tambahan lainnya
(kernel, driver, X Window, fonts, dan lain-lain) yang bersifat
multitasking, multiuser sehingga menjadi sebuah sistem operasi
lengkap.
Kernel Linux pada awalnya merupakan proyek hobi yang ditulis oleh
Linus Torvald pada tahun 1991, pada awalnya hanya bisa
menjalankan GNU Bourne Again Shell (bash) dan GNU C Compiler
(gcc). Pada 25 Agustus 1991, Linus Torvald mengirimkan email email
ke comp.os.minix yang isinya:
From: torvalds@klaava.Helsinki.FI
Torvalds)
(Linus
Benedict
Newsgroups: comp.os.minix
Subject: What would you like to see most in minix?
Summary: small poll for my new operating system
Message-ID:
<1991Aug25.205708.9541@klaava.Helsinki.FI>
Date: 25 Aug 91 20:57:08 GMT
Organization: University of Helsinki
Hello everybody out there using minix I'm doing a (free) operating system (just a hobby,
won't be big and professional like gnu) for
386(486) AT clones. This has been brewing
since
april, and is starting to get ready. I'd like any
feedback on things people like/dislike in minix, as
my OS resembles it somewhat (same physical layout
of the file-system (due to practical reasons) among
other things).
I've currently ported bash(1.08) and gcc(1.40), and
things seem to work. This implies that I'll get
something practical within a few months, and I'd
like to know what features most people would want.
Any suggestions are welcome, but I won't promise
I'll implement them :-)
Linus (torvalds@kruuna.helsinki.fi)
PS. Yes - it's free of any
multi-threaded fs. It is
task switching etc), and
support anything other
that's all I have :-(.
Pengantar GNU/Linux
Pengantar GNU/Linux
distro yang terkenal diantaranya adalah Red Hat, Fedora Core, SuSe,
Mandriva, Debian, Slackware, Gentoo dan Ubuntu. Kebanyakan dari
distro GNU/Linux ini bisa diperoleh dengan cara mendownload dari
website distro tersebut atau dari mirrornya tanpa dikenai biaya oleh
distro tersebut. Atau bisa juga membeli CD yang dibuat oleh distro
tersebut jika tidak memiliki bandwith yang cukup untuk
mendownload. Selain itu kita bisa juga meng-copynya dari teman.
Pengantar GNU/Linux
Ubuntu Studio
Nubuntu
dunia
Untuk
bisa
memperoleh
distro
Ubuntu,
bisa
dengan
mendownloadnya pada alamat http://www.ubuntu.com/download/, dan
memilih mirror yang terdekat dengan lokasi kita. Untuk Indonesia,
mirror dari Ubuntu bisa ditemukan di http://ubuntu.cbn.net.id/UbuntuRelease/ atau di http://kambing.vlsm.org/tuma/Ubuntu/, ftp://dl2.fossid.web.id/iso/ubuntu/. Gunakan download manager jika ingin
mendownloadnya, jika menggunakan Linux, program wget sudah
cukup handal untuk mendownloadnya. Selain itu kita juga bisa
meminta untuk dikirimkan distro Ubuntu dengan mengunjungi
website https://shipit.ubuntu.com/, pengiriman ini tidak dipungut biaya
sama sekali.
Untuk panduan cara mendownload dan memverifikasi md5sum, bisa
melihat pada Lampiran C dari buku ini.
Bab 2
MENGINSTALL GNU/LINUX
UBUNTU
2.1 Langkah-langkah persiapan menginstall Ubuntu
2.1 Menginstall GNU/Linux Ubuntu
2.1 Persiapan
Menginstall
GNU/Linux
Ubuntu
Menentukan versi Ubuntu yang akan digunakan:
untuk
hanya
12
RAM
Hard Drive
Tanpa Desktop
32 megabytes
400 megabytes
Dengan Desktop
128 megabytes
2 gigabytes
Server
128 megabytes
4 gigabytes
Tentunya akan lebih baik lagi jika kebutuhan hardware yang kita
miliki bisa melebihi kebutuhan minimum dari Ubuntu. Untuk melihat
kompatibilitas dari hardware yang kita miliki bisa mengunjungi
website http://www.tldp.org/HOWTO/Hardware-HOWTO.html
Untuk bisa menginstall Ubuntu, kita membutuhkan CD installer
Ubuntu baik itu Desktop, Alternate atau Server (sesuaikan dengan
kebutuhan)
yang
bisa
kita
download
di
http://www.ubuntu.com/download atau untuk mirror di Indonesia bisa
mengunjungi
http://ubuntu.cbn.net.id/Ubuntu-Release/
atau
http://kambing.vlsm.org/tuma/Ubuntu/, ftp://dl2.foss-id.web.id/iso/ubuntu/.
Selain itu kita bisa juga memperoleh CD Ubuntu dengan memintanya
pada website https://shipit.ubuntu.com/, tanpa dipungut biaya sama
sekali, cukup membuat account pada website tersebut dan kemudian
log in menggunakan account yang dibuat. Biasanya pengiriman ini
memakan waktu sampai 10 minggu paling lama.
13
ubuntu-6.10-
14
IP Gateway: 192.168.1.1
Hostname: scorvia.or.id
15
tombol INSERT, tergantung pada konfigurasi dari komputer masingmasing. Lihat gambar 2.1 dan 2.2 berikut ini.
16
keadaan terpilih. Pilih teks Install in text mode, tekan ENTER untuk
melanjutkan.
17
18
Akan muncul tampilan The origin of the keyboard, disini kita bisa
membiarkan pilihan defaultnya yaitu U.S. English.
Dari pilihan yang kita ambil tadi, kita diminta untuk menentukan
Keyboard layout, sama seperti sebelumnya, kita bisa membiarkan
pilihan defaultnya U.S English
19
20
Jika kita meng-cancel proses ini atau tidak terhubung dengan DHCP
Server,
maka
akan
muncul
pemberitahuan
Network
autoconfiguration failed, tekan ENTER untuk melanjutkan proses
konfigurasi network.
21
22
23
24
25
Maka akan muncul pertanyaan How to use this free space pilih
Create a new partition
26
Kemudian kita akan ditanyakan Type for the new partition, pilih
Primary untuk tipe partisi ini.
Sekarang tentukan Location for the new partition pilih Beginning dan
ENTER.
27
Mount point
: /
Mount Options
: defaults
Label
: none
Reserved block
: 5%
Typical usage
: standard
Bootable flag
: off
Setelah selesai, kemudian pilih Done setting up the partition dan kita
akan kembali dibawa ketampilan seperti pada gambar 2.22, tetapi
sekarang dengan ada tambahan baris
#1 primary 6.0 GB f ext3
28
Ketika muncul pertanyaan How to use this free space pilih Create a
new partition, kemudian pada tampilan untuk mengisi New partition
size isikan dengan nilai 2 GB. Saat ditanyakan Type for the new
partition, pilih Primary untuk tipe partisi swap ini. Tentukan
Location for the new partition pilih Beginning dan ENTER. Akan
muncul tampilan Partition settings:. Pilih Use as: dan tekan ENTER
untuk memunculkan menunya, dari menu How to use this partition:
yang muncul pilih swap area dan ENTER.
29
: swap area
Bootable flag
: off
30
Use as
Mount point
: /usr
Mount Options
: defaults
Label
: none
Reserved block
: 5%
Typical usage
: standard
Bootable flag
: off
31
tersedia). Saat ditanyakan Type for the new partition, pilih Logical
untuk tipe partisi ini.
32
33
34
35
Proses pengisian password ini akan terjadi sebanyak dua kali. Hal ini
berguna untuk memastikan bahwa password yang diketik tidak salah.
Ketika diminta Re-enter password to verify isikan kembali password
tersebut dan tekan ENTER.
Sekarang proses installasi akan dilanjutkan dengan menginstall
program-program yang diperlukan (base system) dan dilanjutkan
dengan proses mengkonfigurasi APT (Advanced Packaging Tools,
yang digunakan dalam proses menginstall program tambahan nanti).
Pada saat konfigurasi APT ini akan muncul tampilan yang meminta
kita untuk mengisi HTTP Proxy information (blank for none): kita
bisa tetap mengosongkan pilihan ini (pada umumnya HTTP Proxy ini
tidak perlu di isi), pilih Continue dan ENTER.
36
Proses installasi akan dilanjutkan dengan menginstall softwaresoftware lain yang diperlukan oleh Ubuntu, seperti software X
Window, Gnome, dan lainnya. Jika pada saat proses menginstall
software ini, muncul tampilan Video modes to be used by the X
server: pilih resolusi yang diinginkan (sesuaikan dengan kemampuan
monitor), gunakan tombol panah atas atau bawah untuk meng-scroll
dan tombol spasi untuk men-select atau deselect pilihan yang ada. Jika
sudah selesai, pilih Continue dan tekan ENTER.
37
Hal ini terjadi apabila kita tidak terhubung dengan internet, sedangkan
installer Ubuntu akan mencoba menghubungi website repository
Ubuntu, maka proses ini akan memakan waktu yang cukup lama,
karena installer akan mencoba menghubungi semua website yang
terdapat dalam file sources.list.
Untuk memastikan bahwa proses installasi tidak hang pada saat 85 %
tersebut, tekan tombol ALT + F4 (tombol ALT dan F4 secara
bersamaan) untuk pindah ke konsol sehingga kita bisa melihat proses
installasinya. Jika installer Ubuntu mencoba menghubungi website
yang ada dalam sources.list, sementara kita tidak terhubung
dengan internet, maka akan ada tulisan seperti Could not resolve
security.ubuntu.com, tampilan gambar 2.45 dan 2.46 ini penulis
ambil sewaktu melakukan installasi Ubuntu 7.04.
38
39
Bab 3
UBUNTU PADA PANDANGAN
PERTAMA
3.1 Booting dan Log in Ubuntu
3.2 Desktop Ubuntu
3.3 Menjalankan program di Ubuntu
3.4 Bagaimana memperoleh hak akses root
3.5 gnome-terminal, gedit dan file-roller
3.6 Mengkonfigurasi Jaringan
3.7 Mengkonfigurasi software repository dan up-to-date
3.8 Menginstall driver video card
3.9 Mematikan service yang tidak diperlukan
3.10 Membaca dokumentasi dalam Ubuntu
3.11 Beberapa Fitur Baru Ubuntu 7.10
3.12 Menangani permasalahan setelah proses installasi
3.13 Log out dan Shutdown
42
Untuk menampilkan menu dari GRUB tekan tombol ESC, maka akan
terlihat menu GRUB seperti gambar 3.2 (hal ini bisa jadi berbeda
dengan menu GRUB anda, terutama jika melakukan dual boot
dengan sistem operasi lainnya).
Untuk memilih menu dari GRUB gunakan tombol panah atas atau
bawah, dan tekan ENTER atau b untuk mem-boot. Pada menu
diatas, untuk booting Ubuntu secara normal pilih menu paling atas,
maka akan terlihat layar booting dalam mode grafik.
43
Jika semuanya berjalan dengan baik, maka kita akan bisa melihat
tampilan log in dari Ubuntu dalam mode grafik.
44
Untuk log in kedalam Ubuntu, isikan username dan password pada text
box yang tersedia. Tekan ENTER untuk setiap kali mengetikkan
username dan password. Jika username dan password yang dimasukkan
benar, akan muncul layar splash screen dari Gnome.
45
46
Panel ini lebih sederhana dibanding panel bagian atas. Pada panel
ini terdapat:
Show Desktop: button yang ada di bagian paling kiri dari
bottom panel, berfungsi untuk me-minimize programprogram yang ada pada desktop.
Workspace Switcher
: untuk berpindahpindah dari satu virtual desktop ke virtual desktop yang
lain (terdapat setelah bar window list)
47
48
49
50
Setelah kita memasukkan password username kita, maka isi dari file
/etc/shadow akan ditampilkan, seperti yang terlihat pada gambar
berikut.
Bisa bisa juga dengan menggunakan ALT + F2, dan ketik gksudo
gnome-terminal, program gnome-terminal yang akan dijalankan akan
menggunakan root shell. Pada saat menggunakan gksudo akan muncul
tampilan yang meminta kita untuk memasukkan password sebelum
kita bisa menjalankan program yang diinginkan, karena gksudo
merupakan perintah sudo dalam mode grafik. Jika kita ingin
menggunakan program file browser nautilus dalam mode root, tekan
ALT + F2, ketik gksudo nautilus. Penggunaan hak akses root tidak
disarankan dalam penggunaan sehari-hari.
51
Tampilan yang terlihat seperti pada gambar 3.15 akan terjadi bila kita
mengakses aplikasi yang ada pada menu System Administration,
karena aplikasi yang ada pada menu ini membutuhkan hak akses
sebagai root.
52
Klik button New untuk membuat profil baru. Isikan Profile name
dengan nama yang diinginkan, dan Based on pilih Default, kemudian
klik Create. Muncul tampilan untuk mengedit profil yang baru dibuat,
dimana terdapat tab seperti General, Title and Command, Color,
Effects, Scrolling dan lainnya. Klik pada tab Color karena kita akan
mencoba mengganti warna dari gnome-terminal. Pada check box Use
colors from system theme hilangkan tanda kemudian pada Built-in
schemes pilih warna yang diinginkan.
Kita juga bisa menambahkan grafik sebagai background dari gnometerminal, untuk itu klik tab Effects kemudian klik radio button
Background image dan cari file grafik yang diinginkan untuk menjadi
background bagi gnome-terminal.
53
Jika sudah selesai, klik Close untuk menutupnya, dan kita kembali ke
tampilan Profiles. Pada Profile used when launching a new terminal
pilih nama profil yang baru kita buat, kemudian klik Close
Tutup program gnome-terminal, kemudian jalankan kembali gnometerminal, maka sekarang tampilannya akan sesuai dengan profil yang
telah kita buat tadi. Pada gnome-terminal kita bisa membuka banyak
window dengan cara klik menu File Open Tab [Pilih profil
yang diinginkan]. Jika ingin mengganti profil dari gnome-terminal
yang sedang dibuka, klik menu Terminal Change Profile [Pilih
profil yang dinginkan].
Sebagai langkah pertama dalam menggunakan gnome-terminal untuk
perintah-perintah linux, jalankan perintah berikut ini:
$ mkdir list_packages
Perintah diatas membuat direktori bernama list_packages pada
home direktori kita, yang akan digunakan untuk menyimpan daftar
paket-paket program yang terinstall pada Ubuntu untuk pertama kali.
Sekarang pindah kedalam direktori tersebut dengan menggunakan
perintah
$ cd list_packages/
54
Beberapa perintah dasar linux lainnya seperti man, info, rm, rmdir,
passwd, whoami, mv, ls. Untuk mengetahui penggunaan dari
perintah ini, gunakan perintah man, contohnya kita ingin mengetahui
penggunaan dari perintah ls, maka jalankan perintah berikut
$ man ls
Untuk mengetahui id dari username log in kita, gunakan perintah
55
$ id
Melihat informasi mengenai distro yang digunakan
$ lsb_release -a
Melihat user yang sedang login dalam sistem
$ w
Mengganti password log in. Sesuaikan dengan username yang
digunakan.
$ passwd urangkayo
Melihat informasi mengenai cpu yang kita gunakan
$ cat /proc/cpuinfo
Melihat informasi dari versi kernel yang digunakan, cpu
$ uname -a
Jika kita ingin meng-copy teks yang ada pada gnome-terminal, select
teks tersebut dengan menggunakan mouse, kemudian tekan CTRL +
SHIFT + C, untuk melakukan paste gunakan CTRL + SHIFT + V.
56
Mengenai command line pada linux nantinya akan dibahas dalam bab
yang membahas mengenai shell dan command line.
gedit
gedit merupakan GUI teks editor yang ada pada Gnome. Pada Linux
ada banyak teks editor, seperti vi/vim serta emacs yang merupakan
teks editor yang memiliki fitur-fitur yag luar biasa. Untuk vim dan
emacs, akan dibahas pada bagian lain dari buku ini. Untuk saat ini kita
akan membahas mengenai gedit.
Jalankan program gedit dari menu Applications Accessories
Text Editor, bisa juga dengan menekan ALT + F2 kemudian ketik
gedit.
57
Untuk menyimpan file yang sudah selesai dibuat atau di edit, klik
menu File Save (CTRL + S) atau klik button yang ada tulisan Save,
muncul kotak dialog untuk menyimpan file yang diinginkan. Untuk
menyimpan pada direktori yang diinginkan, klik Browse for other
folders tentukan direktori yang diinginkan, dan klik Save. Anda bisa
bereksplorasi dengan gedit, seperti penggunaan syntax highlighting
sesuai dengan teks yang sedang kita edit.
Syntax Highlighting merupakan fitur yang akan memberi warna pada
teks sesuai dengan teks yang kita edit, misalnya jika kita mengedit file
PHP pada gedit, maka warna teks untuk perintah-perintah PHP dan
komentar akan dibedakan oleh gedit, hal ini akan membuat kita jadi
lebih mudah didalam mengedit sebuah file.
58
file-roller
Untuk menggunakan file-roller, tekan ALT + F2, kemudian ketik fileroller, akan terlihat tampilan dari program seperti yang terlihat pada
gambar berikut ini
Klik New untuk membuat archive file, akan muncul dialog untuk
membuat sebuah file archive. Isikan nama untuk file archive yang
akan dibuat. Save in folder merupakan tempat file archive disimpan.
Browse for other folders untuk mengganti direktori tempat
menyimpan file. Archive type digunakan untuk memilih tipe dari file
archive yang akan dibuat, bisa .tar.gz, .tar.bz2, .tar, .zip dan lain-lain.
Pada buku ini kita akan mencoba untuk membuat archive dengan
format .tar.gz, kemudian klik tombol New.
59
Akan terbuka sebuah kotak dialog untuk mencari file yang akan kita
tambahkan kedalam archive. Setelah file tersebut kita pilih maka klik
Add. Jika kita ingin menambahkan direktori kedalam file archive tadi,
klik Edit Add folder. Sama seperti halnya dengan menambah file,
akan muncul juga kotak dialog untuk menambah direktori kedalam
file archive tersebut. Cari direktori yang ingin ditambahkan, kemudian
klik Add
60
Maka file archive yang kita buat tadi sekarang berisikan file dan
direktori yang telah kita tambahkan barusan. Sekarang kita bisa
menutup program Archive Manager. Karena pada buku ini penulis
menyimpan
file
archive
tadi
pada
direktori
/home/urangkayo/latihan, maka bisa kita lihat pada direktori
tersebut sekarang sudah ada file dengan nama tes.tar.gz
Untuk meng-extract file yang sudah kita compress tadi, maka klik dua
kali pada file tersebut, disini penulis akan mengklik dua kali pada file
tes.tar.gz, maka akan terbuka program Archive Manager.
61
62
63
Perlu diingat adalah pada tab General isikan sesuai dengan data yang
anda peroleh dari ISP anda. Satu hal yang menjadi kesulitan bagi kita
adalah jika kita menggunakan hardware modem yang dikenal dengan
winmodem yaitu modem yang hanya bisa berjalan pada Windows. Jika
kita memiliki winmodem silahkan mengunjungi website
http://www.linmodems.org untuk mencari driver dari modem yang anda
64
miliki. Untuk mengetahui vendor dan tipe dari modem kita bisa
menggunakan perintah lspci untuk menampilkan informasi mengenai
card pci yang terpasang (modem biasanya dipasang di card pci). Jika
kita sudah mengetahui vendor dari winmodem yang digunakan,
maka cari drivernya pada http://www.linmodems.org. Beberapa website
lain yang berguna seperti http://www.linuxant.com jika menggunakan
chipset Connexant, untuk modem Lucent bisa melihat di
http://www.physcip.uni-stuttgart.de/heby/ltmodem/.
65
Sekarang klik tab Updates, dan berikan tanda pada check box didepan
Important security updates dan Recommended updates, untuk
Check for updates pilih Daily, serta tandai pilihan Only notify about
available updates lihat gambar berikut.
Jika telah selesai, klik button Close untuk menutupnya. Dan akan
kembali ketampilan program synaptic. Pada synaptic, sekarang klik
button Reload untuk meng-update indeks dari program-program yang
tersedia pada repository tersebut, kemudian tutup program synaptic.
Bagaimana jika kita tidak terhubung dengan internet, dan ingin
menggunakan media seperti CD/DVD untuk repository Ubuntu ini.
Pada Software Sources klik tab Third-Party Software, kemudian klik
button Add CD-ROM akan keluar kotak dialog yang meminta kita
memasukkan CD-ROM, masukkan CD-ROM yang akan digunakan
dan klik OK, sekarang kita akan diminta untuk mengisi nama untuk
CD-ROM yang digunakan, kita bisa mengisikan sembarang nama dan
klik OK, setelah prosesnya selesai klik Close untuk kembali ke
program synaptic dan jangan lupa untuk mengklik button Reload
yang ada pada synaptic.
66
67
Klik icon
pada system notification untuk memunculkan tampilan
software updates. Kita bisa memilih program apa saja yang ingin di
updates dengan memberi tanda pada check box yang ada. Tandai
semua pilihan, jika ingin menginstall semua updates yang tersedia.
Selanjutnya, klik button Install Updates untuk memulai proses ini.
Program-program yang dibutuhkan akan mulai didownload dan
setelah itu diinstall kedalam sistem. Setelah semua proses ini selesai
klik button Close untuk menutup tampilan Update Manager. Proses
updates program-program ini bisa berlangsung lama tergantung
koneksi internet yang digunakan.
68
69
Pilih nama VGA Card yang akan kita install driver nya. Disini penulis
ingin menginstall driver VGA card dengan chipset NVIDIA, kemudian
klik button Enable. Akan muncul kotak dialog yang menanyakan
Enable the driver? lanjutkan dengan mengklik Enable Driver
Setelah kita klik button Enable Driver akan muncul window untuk
menginstall driver yang dibutuhkan, untuk itu klik Apply.
70
Setelah program ini ditutup, pada notification area akan muncul tool tip
yang memberi tahukan agar kita merestart komputer.
71
Klik icon
yang terdapat pada notification area, akan muncul sebuah
window yang menanyakan apakan kita akan merestart komputer. Klik
button Restart Now untuk merestart. Setelah proses restart selesai, dan
log in kembali kedalam Ubuntu, maka driver yang telah diinstall sudah
berfungsi dengan baik. Untuk itu kita bisa mencoba kemampuan 3D
dari VGA tersebut, buka gnome-terminal, kemudian jalankan perintah
berikut. Untuk VGA dengan chipset NVIDIA
$ glxgears
Dan untuk VGA dengan chipset ATI, gunakan perintah berikut
$ fgl_glxgears
3.9 Mematikan
Service
yang
tidak
dibutuhkan
Pada saat kita menginstall Ubuntu, ada beberapa service yang aktif
secara default yang tidak terlalu dibutuhkan secara umum, misalnya
service untuk bluetooth, service ini hanya berguna jika kita memiliki
bluetooth, service atd yang tidak terlalu penting jika kita menggunakan
anacron. Kemudian hplip, service ini hanya berguna untuk yang
memiliki printer HP. Service apmd, berguna jika kita menggunakan
CPU model lama, saat ini CPU yang ada sudah menggunakan ACPI.
Untuk mempercepat proses booting dari Ubuntu, kita bisa mematikan
service-service yang tidak kita butuhkan ini. Service-service yang akan
dicoba untuk di non aktifkan ini adalah service-service yang berada
pada run level kita saat ini. Untuk itu klik menu System
Administration Services (services-admin).
72
73
74
75
Desktop Search
Applet ini pada Ubuntu 7.10 ditampilkan pada konfigurasi default,
begitu pertama kali memasuki desktop Ubuntu, akan terlihat icon
seperti
, untuk memunculkan desktop search, klik pada icon
tersebut, disini kita bisa menggunakannya untuk mencari content dari
komputer sendiri atau mencari menggunakan web search.
76
Pada gambar 3.50, jika kita ingin berpindah kepada user dengan nama
thinkerbels, maka klik usernamenya, dan akan dibawah ketampilan
login (lihat gambar 3.5, diawal bab ini), tetapi kita disini hanya diminta
untuk memasukkan password dari user thinkerbels, dan tidak perlu
memasukkan usernamenya. Setelah sukses login sebagai user
thinkerbels, dan untuk kembali ke user yang sebelumnya (user Yunifa
Wirman pada gambar 3.50), akan muncul tampilan seperti pada
gambar 3.51 yang meminta untuk memasukkan password dari user
yang bersangkutan, jika password yang dimasukkan benar, maka
akan kembali ke tampilan desktop dari user tersebut.
77
Firefox Plugins
Pada Ubuntu 7.10 kita bisa menggunakan installer Ubuntu
(Add/Remove Programs) untuk menginstall atau mencari plugins
untuk firefox, yang bisa dilihat pada gambar berikut
Untuk menampilkan aplikasi ini dari Mozilla Firefox, klik menu Tools
Add-ons, dari window Add-ons, klik link Get Ubuntu Addons.
78
NTSF Support
Ubuntu 7.10 secara default sudah mendukung proses read dan write
untuk partisi Windows yang memiliki format NTFS, dengan sudah
terinstallnya program ntfs-3g secara default pada Ubuntu 7.10. Dengan
dukungan penuh terhadap format NTFS, akan memudahkan kita jika
melakukan dual boot dengan system Windows seperti Windows XP
yang menggunakan format NTFS untuk partisinya. Kita bisa langsung
melakukan akses read dan write pada partisi tersebut setelah proses
installasi Ubuntu 7.10 selesai. Untuk mengetahui cara melakukan
mount pada file system bisa melihat pada Bab 9 dari buku ini.
Beberapa fitur lain seperti GNOME 2.20, Dynamic screen
configuration, GUI untuk mengkonfgurasi monitor dan graphic card
yang bisa diakses melalui menu System Administration Screens and
Graphics. Fitur lainnya yaitu proses install printer secara otomatis,
cukup dengan menghubungkannya ke PC dan nyalakan printernya.
Fitur-fitur lainnya untuk lebih lengkapnya bisa dilihat pada website
resmi Ubuntu di http://www.ubuntu.com/.
3.12 Menangani
Permasalah
Setelah
Installasi Ubuntu
Meskipun Linux merupakan sistem operasi yang lebih stabil
dibandingkan dengan sistem operasi seperti Windows, dimana kita
tidak akan pernah menemukan yang namanya BSOD Blue Screen of
Death, akan tetap ada kemungkinan sistem Linux yang kita gunakan
tidak bekerja dengan sempurna, seperti adanya modul yang tidal di
load oleh kernel, service yang tidak berjalan dengan semestinya.
Untuk melihat proses yang terjadi pada saat booting agar kita bisa
mengetahui permasalahan yang mungkin terjadi, maka gunakan
perintah dmesg, bisa juga kita menggunakan perintah ini agar
menyimpan outputnya pada file yang bisa dibuka dengan teks editor
seperti gedit. Buka gnome-terminal
$ dmesg > message_boot.txt
79
[
4.424000] eth1: RealTek RTL8139 at 0xd0848000,
00:02:2a:d4:71:6d, IRQ 16
[
4.424000] eth1:
'RTL-8139C'
[
[
22.396000] eth1: link up, 100Mbps, full-duplex,
lpa 0x45E1
[
23.500000] ADDRCONF(NETDEV_UP): eth0: link is
not ready
Seperti yang terlihat diatas, kita bisa mengetahui bahwa ethernet card
pertama (eth0) tidak aktif, hal ini bisa saja karena kabel yang belum
terpasang, swith atau hub yang terhubung dengan eth0 tidak aktif. Jika
kita melihat pesan error yang tidak bisa dipahami, maka kita bisa
menggunakan google untuk mencari tahu mengenai erroryang terjadi.
Copy paste pesan error nya pada http://www.google.com/, selain dengan
google,
kita
bisa
mengunjungi
website
seperti
http://www.ubuntuforums.org/.
80
Untuk log out dari sistem, kli button Log Out, maka kita akan dibawa
kembali ke tampilan log in dari Ubuntu. Dan untuk men-shutdown klik
button Shut Down. Dan button Lock Screen berguna untuk me-lock
desktop.
Selain menggunakan menu, kita juga bisa menggunakan command
line, seperti berikut:
sudo poweroff
sudo reboot
sudo telinit 0
sudo telinit 6
: merestart komputer
sudo telinit 1
Bab 4
NAUTILUS FILE MANAGER
4.1 Nautilus
4.2 File permission
4.3 Linux file sistem
4.4 Trash
4.1 Nautilus
Nautilus merupakan file manager pada Gnome. Jika kita mengenal
Windows Explorer pada Windows, maka pada Linux dengan X
Window Gnome, nautilus memiliki fungsi yang sama. Untuk
menjalankan nautilus klik menu Places Home Folder (nautilus)
82
Jika kita terbiasa menggunakan mode text-based bar, seperti yang kita
lihat, nautilus menggunakan mode tab, untuk menggantinya, tekan
CTRL + L, atau klik icon yang ada disebelah kiri dari button yang
menunjukkan lokasi kita, lihat gambar 4.3 berikut.
83
alamat yang dituju tadi yaitu /usr/local dan ENTER, maka kita
akan langsung berada pada /usr/local.
Disisi sebelah kiri nautilus terdapat bagian yang disebut side pane.
Secara default, side pane dari nautilus akan menampilkan Places, untuk
menggantinya klik pada kata Places, akan muncul pilihan seperti Tree,
History dan lain sebagainya.
84
Seperti yang terlihat pada gambar 4.2, jika kita ingin menuju ke
Desktop/, kita tinggal meng-klik icon yang ada tulisan Desktop. Side
pane dari nautilus juga akan menampilkan file system yang tidak di
mount, hal ini akan memudahkan kita didalam melakukan mount
terhadap sebuah partisi. Seperti yang terlihat, partisi dengan label
DATA, tidak di mount, sehingga untuk mengaksesnya kita harus
melakukan mount terlebih dahulu, caranya sangat mudah,
85
side pane. Misalkan kita saat ini berada pada /usr/local, dan ingin
membuat bookmarks, klik menu Bookmarks Add Bookmarks
(CTRL + D). Maka direktori yang kita bookmarks ini akan muncul
didalam pada side pane dari nautilus.
86
Pilih file atau direktori yang ingin di copy (jika lebih dari
satu gunakan tombol CTRL)
87
Untuk memindahkan file atau direktori klik Cut dari menu yang
muncul, kemudian Paste ke direktori tujuan. Kita juga bisa
menggunakan shortcut seperti CTRL + C untuk copy, CTRL + V untuk
paste, CTRL + X untuk cut.
Jika kita perhatikan gambar 4.9 dan 4.10 mungkin anda akan bertanya,
bagaimana jika kita ingin menghapus file atau direktori yang tidak
diinginkan. Untuk men-delete file atau direktori, klik kanan file atau
direktori tersebut, kemudian pilih Move to Trash. Trash berfungsi
sama dengan Recycle Bin pada Windows. Untuk menghapus secara
permanen, kita bisa menggunakan keyboard, klik file atau direktori
yang diinginkan, kemudian tekan tombol SHIFT + DELETE (tekan
SHIFT tahan dan tekan DELETE).
Untuk membuat archive dengan nautilus, pilih file dan direktori yang
ingin di buat archivenya, kemudian klik kanan dan pilih menu Create
Archive, akan muncul kotak dialog untuk membuat archive.
Tentukan nama dan tipe archive serta lokasi menyimpannya dan klik
Create. Untuk mengesktrak, prosesnya sama, klik kanan pada file
archive, dan pilih Extract Here
88
Keterangan
Emblem yang menunjukan simbolik link
File atau direktori tidak memiliki hak akses baca
File atau direktori tidak memiliki hak akses tulis
Tabel 4.1 Emblems file atau direktori
Jika kita ingin menambahkan emblems pada file atau direktori yang kita
buat, klik kanan pada file atau direktori tersebut, kemudian pilih
Properties, pada tampilan properties yang muncul, klik tab Emblems
dan berikan tanda didepan emblem yang diinginkan.
Pada file atau direktori yang telah ditambahkan emblem akan muncul
icon dari emblem yang telah ditambahkan .
89
Sekarang perhatikan gambar 4.13, selain tab Emblem, juga terdapat tab
seperti Basic, Permissions, Open With dan Notes. Tab Basic berisikan
informasi mengenai file atau direktori tersebut. Klik pada tab
Permissions, disini kita bisa mengganti permisi pada file atau direktori
seperti baca (read), tulis (write) dan eksekusi (execute). Mengenai
permisi pada file akan dibahas pada sub bab 4.2.
Tab Open With, berguna untuk mengganti program default yang akan
digunakan didalam membuka sebuah file. Klik tab Open With,
kemudian pilih program yang ingin digunakan sebagai program
default dalam membuka file tersebut. Untuk menambah program
yang diinginkan, klik button Add dan pilih program yang akan
digunakan.
90
Untuk menambahkan notes pada file atau direktori, klik tab Notes, dan
isikan notes yang diinginkan. Lihat pada gambar 4.14, dimana emblem
bagian atas menandakan file tersebut memilik notes.
Sekarang kita akan mencoba membuat templates untuk file yang sering
digunakan. Contohnya kita ingin membuat file dengan extension .php,
pada saat kita melakukan klik kanan pada bagian kosong nautilus atau
desktop dan memilih menu Create Document.
91
root
adm
2007-04-18
06:11
$ ls -l /dev/log
srw-rw-rw- 1 root root 0 2007-04-18 06:04 /dev/log
Output dari perintah ls ini akan dibaca dari kiri ke kanan:
1. Karakter pertama merepresentasikan tipe dari file. Pada contoh
berupa tanda - (dash) yang berarti file biasa, d digunakan untuk
direktori, c untuk character devices dan b untuk block devices, p
untuk pipe devices, s untuk socket devices.
2. Sembilan karakter setelah karakter pertama merepresentasikan
permission dari sebuah file atau direktori, dimana tiga yang
pertama untuk owner (pemilik file), tiga karakter berikutnya untuk
group dan tiga karakter terakhir untuk other.
3. Jumlah link terhadap file, pada contoh diatas bernilai 1
92
4. Owner (pemilik dari file), pada contoh diatas owner file ini adalah
urangkayo
5. Group, yaitu group dari user yang diizinkan untuk mengakses file
ini, pada contoh group file tersebut adalah urangkayo
6. Dua elemen terakhir merepresentasikan ukuran dari file serta
tanggal file dibuat atau dimodifikasi.
Ada tiga jenis permission yang bisa diberikan pada sebuah file:
read (baca): pada file berarti kita bisa melihat isi dari file
ini, untuk direktori permission ini berarti bisa melihat isi
dari direktori.
write (tulis): pada file kita bisa merubah isi file, pada
direktori berarti bisa menambah dan menghapus file
dalam direktori.
Dari jenis-jenis permission ini, maka ada tiga kategori user yang bisa
memiliki permission yang berbeda terhadap sebuah file
Sebuah file diberi owner dan group pada saat dibuat, dimana owner
biasanya user yang membuat file tersebut, dan group merupakan
group dari direktori tempat file tersebut dibuat.
Memberikan permission pada file dan direktori
Kita bisa memberikan permission pada file dan direktori secara
symbolic dan menggunakan angka. Karakter yang digunakan untuk
symbolic adalah
93
x : untuk excute
4 : untuk read
2 : untuk write
1 : untuk eksekusi
Berdasarkan file yang telah kita buat sebelumnya, maka kita akan
mencoba memodifikasi permissin dari file tersebut dengan
menggunakan perintah chmod.
Untuk menambah permissian execute bagi owner gunakan u+x dan
menghapus read permission dari group dan other gunakan go-r
$ chmod u+x,go-r latihan.txt
94
$ ls -l latihan.txt
-rwx------ 1 urangkayo urangkayo 0 2007-04-17 16:11
latihan.txt
Untu mereset permission dari sebuah file, gunakan tanda = dan diikuti
nama file
$ chmod = latihan.txt
$ ls -l latihan.txt
---------- 1 urangkayo urangkayo 0 2007-04-17 16:11
latihan.txt
Mengeset permission dengan menggunakan angka. Digit pertama
untuk owner (6 berarti 4+2= read, write), group (4 = read) dan other (4
= read)
$ chmod 644 latihan.txt
$ ls -l latihan.txt
-rwr--r-- 1 urangkayo urangkayo 0 2007-04-17 16:11
latihan.txt
Selain tiga jenis file permission diatas, sebuah file juga bisa memiliki bit
tertentu yang berpengaruh pada file-file executable dan direktori pada
beberapa sistem:
Set User ID (SUID): jika bit diset pada sebuah file, pada
saat file dijalankan akan menjadikan user yang
menjalankan program ini bertindak sebagai file owner.
Set Group ID (SGID): jika bit ini diset, pada saat file
dijalankan akan menjadikan user yang menjalankan
program ini bertindak sebagai group owner.
Contoh file yang memiliki SUID, SGID dan Sticky bit adalah
$ ls -l /usr/bin/chfn
-rwsr-xr-x 1
/usr/bin/chfn
root
95
root
32208
2006-12-20
03:35
$ ls -ld /tmp
drwxrwxrwt 11 root root 4096 2007-04-17 16:26 /tmp
Untuk memberikan SUID atau SGID dengan menggunakan karakter s
atau angka 4 untuk SUID dan angka 2 untuk SGID. Operator yang
digunakan sama dengan operator untuk permission yaitu + untuk
menambah dan - untuk menghapus.
$ chmod u+s latihan.txt
$ ls -l latihan.txt
-rwSr--r-- 1 urangkayo urangkayo 0 2007-04-17 16:11
latihan.txt
$ chmod 4644 latihan.txt
$ ls -l latihan.txt
-rwSr--r-- 1 urangkayo urangkayo 0 2007-04-17 16:11
latihan.txt
$ chmod u-s latihan.txt
$ ls -l latihan.txt
-rw-r--r-- 1 urangkayo urangkayo 0 2007-04-17 16:11
latihan.txt
Jika ingin memberikan bit sticky pada direktori, gunakan chmod +t,
contohnya
$ chmod +t latihan.txt
$ ls -l latihan.txt
-rw-r--r-T 1 urangkayo urangkayo 0 2007-04-17 16:11
latihan.txt
Sekarang kita akan melihat permission file menggunakan nautilus. Klik
kanan pada file yang ada di home direktori pada nautilus, dan klik
Properties, selanjutnya klik tab Permissions
96
Pada gambar 4.17 merupakan permission dari sebuah file. Akses yang
bisa diberikan untuk setiap owner, group dan others adalah:
97
Untuk setiap owner, group dan other, kita bisa menentukan metode
akses untuk direktori (Folder Access) dan file (File Access), dengan
mengklik menu drop-down yang ada. Metode akses yang ada pada
Folder Access adalah:
List file only: hanya bisa melihat isi dari sebuah direktori
Jika permission yang diset berlaku untuk semua file yang ada pada
direktori tersebut, set atribut untuk File Access dan Execute,
kemudian klik Apply permissions to enclosed files.
98
Keterangan
root direktori
/bin
99
/sbin
/boot
/dev
/etc
file-file
untuk
konfigurasi
ditempatkan pada direktori ini
/home
/initrd
/lib
/lost+found
/media
/mnt
/opt
/proc
/root
/srv
/sys
/tmp
temporary file
/usr
system
yang
100
/var
Kita sudah mengetahui hirarki dari file system pada Linux, sekarang
kita akan melihat jenis-jenis dari file system itu sendiri. Linux
mendukung banyak jenis file system, beberapa diantaranya adalah:
Reiser fs
/etc direktori
Direktori ini berisikan file-file konfigurasi dari sistem, karena itu
direktori ini tidak boleh berada pada partisi yang terpisah dari partisi
untuk root (/). Beberapa file-file konfigurasi penting dari direktori ini
adalah:
101
/proc direktori
Direktori ini hanya ada pada saat Linux digunakan (running). Isi dari
direktori ini merupakan informasi yang ada pada memori dan kernel.
Isi dari file-file pada direktori ini bisa dilihat dengan perintah cat.
Beberapa file-file yang biasa digunakan dalam mengetahui system
yang sedang berjalan adalah:
: 0
vendor_id
: AuthenticAMD
cpu family
: 6
model
: 7
102
4.4 Trash
Trash merupakan spesial direktori pada Linux disaat kita
menggunakan X Window. Jika kita menghapus file atau direktori
maka file atau direktori tersebut akan dipindahkan kedalam direktori
Trash. Hal ini hanya berlaku apabila kita menghapus file atau
direktori menggunakan program file browser seperti nautilus (dalam
mode grafik), jika kita menghapus file menggunakan command line
maka file yang dihapus akan benar-benar terhapus, tanpa
dipindahkan kedalam direktori Trash. Anda bisa bayangkan seperti
Recycle Bin pada Windows.
File atau direktori yang telah dihapus dan berada dalam Trash akan
membuat kapasitas dari harddisk kita berkurang sebesar ukuran file
yang ada. Hal ini bisa membuat harddisk penuh dengan file-file yang
tidak kita butuhkan. Untuk itu kita perlu menghapus isi dari Trash.
Untuk menghapus isi Trash, klik kanan pada icon trash yang ada di
103
pojok kanan bawah pada bottom panel, dari menu yang muncul klik
Empty Trash
Akan muncul dialog box yang menanyakan Empty all of the items
from the trash klik Empty Trash jika kita benar-benar yakin akan
menghapus isi dari Trash
Bagaimana jika kita ingin mengembalikan file yang ada pada direktori
Trash, pada menu yang ada di gambar 4.21, klik Open maka akan
terbuka direktori Trash menggunakan nautilus, sekarang pilih file
yang tidak jadi dihapus, kemudian klik kanan dan Copy, selanjutnya
Paste ke direktori yang diinginkan. Ingat hal ini hanya bisa dilakukan
jika isi dari Trash belum kita hapus dengan cara Empty Trash.
Bab 5
X WINDOW SYSTEM
X Window system merupakan graphical interface yang digunakan
oleh Linux sebagai dasar untuk menjalankan window manager dan
tool-tool grafis lainnya. Ubuntu menggunakan X Window yang di rilis
oleh X.Org foundation, yang bersifat open source.
Engine dasar dari X11 adalah X Protocol yang menyediakan sebuah
system dalam memanajemen tampilan display pada local dan remote
desktop. Protocol ini menggunakan model client/server. X Server
menyediakan client windows, dialog box, button yang sesuai dengan
hardware yang ada sebagai respon dari permintaan X Client.
Permintaan yang di respon oleh X Server sesuai dengan hardware
yang dimiliki oleh X Server. Sedangkan X Client melakukan request
tidak berdasarkan spesifikasi hardware tertentu.
Versi X Window yang digunakan oleh Ubuntu adalah X11R7.2 (Xorg
7.2) yang merupakan rilis ketiga dari X Windows system. Rilis terbaru
dari X11R7.2 ini datang dengan peningkatan stabilitas yang signifikan,
peningkatan kemampuan dalam autoconfiguration, mendukung GLbased seperti Compiz dan Beryl.
Sebagian besar program Xorg ditempatkan di /usr direktori seperti:
didalam
106
"Default Layout"
Screen
"Default Screen"
InputDevice
"Generic Keyboard"
InputDevice
"Configured Mouse"
InputDevice
"stylus" "SendCoreEvents"
InputDevice
"cursor" "SendCoreEvents"
InputDevice
"eraser" "SendCoreEvents"
EndSection
2. Files
Berisikan informasi session color, font atau port number yang akan
digunakan X font server.
Section "Files"
FontPath
"/usr/share/fonts/X11/misc"
FontPath
"/usr/share/fonts/X11/cyrillic"
X Window System
107
FontPath
"/usr/share/fonts/X11/100dpi/:unscaled"
FontPath
"/usr/share/fonts/X11/75dpi/:unscaled"
FontPath
"/usr/share/fonts/X11/Type1"
FontPath
"/usr/share/fonts/X11/100dpi"
FontPath
"/usr/share/fonts/X11/75dpi"
"i2c"
Load
"bitmap"
Load
"ddc"
Load
"extmod"
Load
"freetype"
Load
"int10"
Load
"vbe"
Load
"glx"
EndSection
108
4. InputDevice
Memuat informasi mengenai konfigurasi untuk input device seperti
keyboard, mouse, stylus dan input device lainnya. Berikut ini
merupakan layout dari InputDevice untuk keyboard dan mouse
Section "InputDevice"
Identifier
"Generic Keyboard"
Driver
"kbd"
Option
"CoreKeyboard"
Option
"XkbRules" "xorg"
Option
"XkbModel" "pc105"
Option
"XkbLayout" "us"
Option
"XkbOptions"
"lv3:ralt_switch"
EndSection
Section "InputDevice"
Identifier
"Configured Mouse"
Driver
"mouse"
Option
"CorePointer"
Option
"Device" "/dev/input/mice"
Option
Option
Option
"Emulate3Buttons" "true"
EndSection
5. Monitor
Konfigurasi yang digunakan untuk monitor. X server secara otomatis
akan mengkonfigurasi sesuai dengan kemampuan terbaik dari
monitor berdasarkan horizontal dan vertical sync.
Section "Monitor"
Identifier
"PHILIPS 105B"
X Window System
109
Option
"DPMS"
HorizSync
30-61
VertRefresh
50-160
EndSection
6. Device
Berisikan informasi tentang graphics card yang digunakan oleh
komputer. 'Driver' memberitahukan X Server untuk meload module
yang sesuai, pada contoh ini akan meload module nvidia
Section "Device"
Identifier
Driver
"nvidia"
BusID
"PCI:1:0:0"
EndSection
7. Screen
Berisikan informasi mengenai resolusi yang bisa digunakan, color
depth, dan juga menggabungkan informasi yang ada pada Device,
Monitor.
Section "Screen"
Identifier
"Default Screen"
Device
Monitor
"PHILIPS 105B"
DefaultDepth
24
SubSection "Display"
Depth
16
Modes
"1280x1024"
"1024x768"
"832x624" "800x600" "720x400" "640x480" "640x350"
EndSubSection
SubSection "Display"
110
Depth
24
Modes
"1280x1024"
"1024x768"
"832x624" "800x600" "720x400" "640x480" "640x350"
EndSubSection
EndSection
Untuk melakukan konfigurasi terhadap X, dimana hal ini hanya
dilakukan jika pada saat menginstall Ubuntu, hardware kita tidak di
deteksi dengan benar. Kita bisa dengan mengedit secara manual file
dari /etc/X11/xorg.conf menggunakan teks editor seperti gedit atau
vim. Tools lain yang bisa digunakan untuk melakukan konfigurasi
dari X adalah dpkg-reconfigure xserver-xorg
$ sudo dpkg-reconfigure xserver-xorg
Pada saat tampilan untuk melakukan reconfigure ini, kita bisa
mencoba memilih pilihan autodetect atau secara manual, untuk itu
kita memerlukan informasi seperti:
X Window System
111
Untuk itu hapus terlebih dahulu file /tmp/.X0-lock jika kita memang
ingin melakukan konfigurasi dari X
$ sudo rm /tmp/.X0-lock
$ sudo X -configure
X Window System Version 7.2.0
Release Date: 22 January 2007
X Protocol Version 11, Revision 0, Release 7.2
Build Operating System: Linux Ubuntu
Current Operating System: Linux scorvia 2.6.20-12generic #2 SMP Wed Mar 21 20:55:46 UTC 2007 i686
Build Date: 20 March 2007
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Module Loader present
Markers: (--) probed, (**) from config file, (==)
default setting, (++) from command line, (!!)
notice,
(II)
informational,(WW)
warning,
(EE)
error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Wed Apr
18
06:50:06
2007
(++)
Using
config
file:
"/home/urangkayo/xorg.conf.new"
Xorg detected your mouse at device /dev/input/mice.
Please check your config if the mouse is still not
operational, as by default Xorg tries to autodetect
the protocol.
Your xorg.conf file is
/home/urangkayo/xorg.conf.new
To test the server, run
'X -config /home/urangkayo/xorg.conf.new'
112
Maka sekarang akan ada file xorg.conf.new pada home direktori kita,
dan untuk mencoba konfigurasi ini kita bisa jalankan dengan perintah
$ sudo X config /home/urangkayo/xorg.conf.new
Jika kita mengedit file dari xorg.conf secara manual dan ingin agar
perubahan tersebut di update secara otomatis, maka jalankan perintah
berikut:
$ sudo dpkg-reconfigure -phigh xserver-xorg
Pada saat Ubuntu selesai di install, maka X Server akan langsung
dijalankan, karena mode default yang digunakan oleh Ubuntu adalah
mode grafis. Untuk menjalankan X pada saat berada dalam mode
konsol atau jika kita berada pada runlevel 1, bisa dengan
menggunakan perintah startx
$ startx
Sebelum melakukan modifikasi untuk file /etc/X11/xorg.conf,
sebaiknya backup terlebih dahulu file tersebut, karena hal ini akan
memudahkan kita apabila konfigurasi yang telah dimodifikasi
ternyata tidak berjalan dengan baik yang bisa mengakibatkan X
Window tidak bisa berjalan. Untuk membuat backup, bisa
menggunakan perintah cp
$ sudo cp /etc/X11/xorg.conf \
/etc/X11/xorg.conf-asli
Jika suatu saat file /etc/X11/xorg.conf yang telah diedit bermasalah,
maka kita bisa menimpanya dengan file /etc/X11/xorg.conf yang asli
yang telah diketahui berjalan dengan baik, bisa menggunakan
perintah berikut
$ sudo cp /etc/X11/xorg.conf-asli \
/etc/X11/xorg.conf
Bab 6
KUSTOMISASI DESKTOP
UBUNTU
Pada bab ini, akan membahas langkah-langkah dalam
mengkostumisasi tampilan dekstop Ubuntu, sehingga bisa sesuai
dengan yang kita inginkan.
6.1 Personal Info
6.2 Background
6.3 Screensaver dan Screen Resolution
6.4 Theme
6.5 Login dan Splash Screen
6.6 True Type Fonts
6.7 Membuat Launcher
6.8 Cursor Theme
6.9 Virtual Desktop
6.10 Menu dan Panel
6.11 Grub Menu
Untuk resources yang digunakan pada bab ini bisa didownload pada
website http://gnome-look.org/ dan http://art.gnome.org/ karena Ubuntu
menggunakan GNOME sebagai GUI nya. Pada kedua website tersebut
kita bisa mendownload theme, login screen, splash screen, background,
cursor, grub background. Dengan navigasi yang sangat baik, themetheme yang ada dikelompokkan dengan baik, sehingga kita tidak akan
kesulitan dalam mencari theme yang diinginkan.
114
115
116
117
118
Jika telah selesai, klik Apply maka resolusi akan diganti dengan
resolusi yang telah kita tentukan tadi. Akan muncul dialog box yang
akan menanyakan Do you want to keep this resolution, jika kita
sudah puas dengan resolusi yang digunakan klik button Keep
resolution, dan jika kita ingin mengganti kembali, klik button Use
previous resolution, dan kita akan dibawa kembali ketampilan seperti
pada gambar 6.6
119
Pada gambar 6.8, klik button Install, akan muncul tampilan untuk
mencari theme yang akan diinstall (biasanya theme ini dalam format
.tar.gz atau tar.bz2), disini penulis mencoba menginstall theme dengan
nama GTK2-AluminumAlloy-Smog.tar.gz. Setelah theme ini terinstall,
maka akan ada theme baru dengan nama AluminumAlloy-Smog
pada daftar theme yang ada, klik theme ini untuk menggunakannya.
Button Install ini digunakan untuk menginstall theme tidak hanya
120
untuk GTK, tapi juga Metacity, Icon theme, Cursor. Proses ini sedikit
berbeda dengan versi Ubuntu dibawah 7.10. Untuk menggunakan
theme yang telah diinstall tadi, klik pada nama themenya, yaitu
AluminumAlloy-Smog. Selanjutnya penulis juga menginstall theme
yang bernama GTK2-ClearLooksLemonGraphite.tar.gz. Sekarang kembali
ke tampilan pada gambar 6.8, klik button Customize, akan muncul
tampilan Customize Theme. Klik tab Controls, dari daftar yang ada
pada tab Controls, sekarang ada theme dengan nama ClearLooksLemonGraphite, klik theme tersebut.
Masih pada Customize Theme, klik tab Window Border, disini kita
bisa memilih theme yang ingin digunakan yang telah diinstall
sebelumnya. Theme untuk Window Border ini bisa didownload di
website yang telah disebutkan pada awal bab ini.
121
Sekarang kita akan menginstall icon yang akan digunakan, untuk itu
tutup window Customize Theme, sehingga kembali ketampilan
seperti gambar 6.8, klik button Install, disini penulis menginstall icon
theme yang bernama Buuf_gnome_1_6_r7_by_djnay.6-r7.tar.bz2. Jika
icons sudah selesai diinstall akan muncul tampilan seperti pada
gambar 6.12, klik Apply New Theme.
122
123
Kita bisa menyimpan theme yang telah kita atur ini dengan mengklik
button Save As pada Appearances Preferences, isikan nama untuk
theme tersebut dan desktripsi dari theme ini, beri tanda pada Save
background image, kemudian klik Save, maka akan ada theme
dengan nama yang telah kita buat ini.
124
Klik tab Local pada Login Window Preferences, disini terlihat login
screen default yang sudah terinstall pada Ubuntu. Login screen aktif
ditandai dengan adanya tanda titik kecil pada radio button (bulatan
kecil yang terdapat disebelah kiri gambar login screen). Sekarang kita
akan menginstall login screen yang baru,untuk itu klik button Add
untuk menginstall login window yang baru. Akan muncul tampilan
untuk mencari login window yang akan diinstall. Pada tulisan ini
penulis menginstall login theme yang bernama GDMLoginScanFusion.tar.gz.
125
126
127
128
129
130
Agar font-font yang digunakan bisa terlihat lebih halus, maka buat file
.fonts.conf pada home direktori kita, bisa menggunakan ALT + F2 dan
ketik gedit ~/.fonts.conf,
131
Font-font true type yang telah kita install ini secara otomatis juga akan
tersedia untuk aplikasi-aplikasi yang ada pada Ubuntu, seperti
OpenOffice.org, Mozilla Firefox dan aplikasi lainnya pada Ubuntu.
132
: Application
Name
133
Untuk memberi icon pada launcher yang akan dibuat, klik button yang
terdapat pada sisi kiri atas (terdapat diatas button Help) dari tampilan
Create Launcher, akan muncul tampilan untuk memilih icon yang
akan digunakan, kita bisa menggukan button Browse untuk mencari
direktori lain tempat menyimpan icon. Jika kita menginstall icon
seperti pada sub bab 6.4, maka icon tersebut akan disimpan di ~/.icons
134
135
136
Jika proses install telah selesai, untuk menggunakan cursor baru ini
klik pada button Customize untuk memunculkan window Customize
Theme, klik pada tab Pointer, disini akan muncul tampilan
bermacam-macam pointer yang telah kita install. Disini penulis
mencoba mengganti cursornya dengan theme ComixCursors-GreenSmall. Secara otomatis cursor yang digunakan akan langsung
berubah.
137
138
Hasil dari perubahan ini bisa terlihat seperti pada gambar berikut ini
Akan muncul tampilan untuk mengedit Main Menu. Disini kita bisa
menambahkan menu baru dengan mengklik pada button New Menu,
sedangkan button New Item digunakan untuk menambahkan item
atau launcher dari sebuah program. Button New Separator digunakan
untuk membuat garis batas antara menu satu dengan menu yang lain,
sebagai contoh, klik menu Places, maka antara menu Home Folder,
Desktop, dan Computer itu dipisahkan oleh sebuah garis. Jika kita
ingin membuat menu baru dengan mengklik pada button New Menu,
akan muncul seperti pada gambar 3.39 berikut
139
Jika kita membuat New Item pada menu yang telah kita buat diatas,
maka akan muncul tampilan seperti membuat launcher yang bisa
dilihat pada gambar 6.28
140
Akan muncul tampilan Panel Properties, pada tab General kita bisa
menentukan Orientation dari panel, seperti Left, maka top panel akan
berpindah ke sisi kiri dari desktop. Jika kita beri tanda pada
Autohide, pada saat mouse tidak berada pada panel, panel tersebut
akan tersembunyi. Pada tab Background jika bisa memberi
background yang diinginkan untuk top panel.
141
142
Perlu diingat, untuk bisa memindahkan item pada panel, tanda pada
Lock To Panel, harus dihilangkan terlebih dahulu, dengan cara
mengklik kanan pada item yang akan dipindahkan dan klik Lock To
Panel, jika telah selesai klik kanan kembali kemudian klik Move untuk
memindahkannya. Jika item dalam keadaan di lock maka pilihan menu
Move tidak aktif, lihat gambar 6.38
143
144
Gambar 6.46 adalah contoh dari desktop Ubuntu yang sudah penulis
modifikasi sesuai dengan keinginan. Semua resources yang
dibutuhkan didalam memodifikasi desktop tersebut bersifat free yang
bisa
diperoleh
pada
website
http://gnome-look.org/
dan
http://art.gnome.org/. Jika anda mau meluangkan waktu untuk mencari
resources seperti background, theme, login screen dan lain sebagainya
yang sesuai dengan keinginan anda, maka kedua website tersebut
merupakan hal yang wajib untuk dikunjungi. Perlu diingat resources
yang ada pada kedua website tersebut hanya untuk Linux yang
menggunakan Gnome sebagai Window Managernya.
Pada bab-bab selanjutnya kita akan lihat bagaimana menggunakan
Ubuntu untuk office, internet maupun untuk multimedia atau game.
Bab 7
MANAJEMEN SOFTWARE
UBUNTU
7.1 Dasar-dasar Manajemen Software di Ubuntu
7.2 Menggunakan Add/Remove
7.3 Synaptic Package Manager
7.4 APT
7.5 DPKG
7.6 Source Code
7.7 Membuat Repository Lokal dan Konversi Package
146
147
Main Distribution: repository yang berisikan packagepackage yang dibutuhkan dalam menginstall Ubuntu
(berada pada CD installer Ubuntu) dan tambahantambahan packages yang terdapat secara online.
148
Seperti yang telah kita ketahui pada BAB 3, agar bisa menggunakan
APT atau synaptic maka kita perlu mengkonfigurasi darftar repository
yang akan digunakan.Pada BAB 3 kita telah mengetahui bagaimana
cara mengaktifkan repository main, restricted, universe, multiverse
menggunakan synaptic. Bab ini akan membahas lebih jauh mengenai
cara menambahkan repository menggunakan synaptic atau langsung
mengedit file sources.list. Selain itu juga akan dibahas bagaimana cara
membuat repository lokal baik yang kita simpan di harddisk sendiri.
Jika kita tidak terhubung dengan internet, maka kita bisa mencari
package-package yang dibutuhkan beserta package dependenciesnya
pada website http://packages.ubuntu.com/. Gunakan fasilitas search yang
ada dan jangan lupa untuk menggunakan mirror yang terdekat
dengan kita agar proses download berjalan dengan cepat.
149
150
Pada bagian kiri dari Add/Remove... merupakan daftar dari kategorikategori dari sebuah program. Dimana didaftar paling atas adalah
kategori untuk semua program, kategori ini merupakan kategori yang
paling baik untuk dipilih jika kita menggunakan box search untuk
mencari program yang diinginkan. Pada bagian kanan dari
Add/Remove... terbagi atas dua bagian, bagian atas merupakan daftar
dari nama-nama program yang tersedia untuk kategori-kategori yang
kita pilih. Pada bagian bawah akan menampilkan keterangan dari
program yang kita pilih. Untuk mencari program tertentu, gunakan
search box yang terdapat pada sudut kiri atas dari Add/Remove. Pada
bagian kanan dari search box kita bisa menentukan program-program
151
yang ditampilkan dengan memilih pada menu drop down yang ada
seperti All available applications, All open source applications.
Button Preferences yang terdapat pada Add/Remove... berguna untuk
mengedit software source (repository) yang digunakan, jika kita klik
button ini akan muncul permintaan untuk memasukkan password.
Jika ingin menginstall program, berikan tanda pada check box yang
terdapat disebelah nama program yang akan diinstall, kemudian klik
Apply. Dan jika ingin mengunistall program, hilangkan tanda dari
check box kemudian klik Apply. Baik itu menginstall atau
menguninstall program, akan muncul permintaan untuk
memasukkan password.
Sekarang kita akan mencoba menginstall program bernama gnochm,
untuk itu pada search box ketik gnochm. Klik pada CHM Viewer dan
beri tanda pada check box (lihat gambar 7.2) dan klik button Apply
yang ada pada Add/Remove...
152
Jika program ini sudah selesai kita install, akan muncul pemberitahuan
dari Add/Remove.... Program ini bisa di jalankan melalui menu
Applications Accessories CHM Viewer.
Untuk menguninstall program yang telah diinstall, hilangkan tanda
pada check box yang terdapat pada nama program yang akan dihapus.
Tidak semua program bisa diuninstall menggunakan Add/Remove,
contohnya jika kita mencoba menguninstall program bernama xsane,
akan muncul pesan error dan kita diminta untuk menggunakan
synaptic. Untuk menutup Add/Remove... klik OK
153
feisty-
154
Klik tab Third-Party Software, kemudian klik button Add dan pada
APT Line: isikan baris diatas, jika telah selesai klik Add Source
155
156
157
Sekarang kita bisa lihat, program yang di mark bukan hanya program
g++, tapi juga program g++-4.1, libc6-dev, libstdc++6-4.1-dev, linuxlibc-dev.
158
Untuk memulai menginstall program yang telah kita mark ini, klik
button Apply yang ada pada synaptic
159
Menguninstall Program
160
Sekarang cari program yang akan di uninstall. Pada contoh buku ini
penulis menguninstall program bernama bluez-cups, bluez-pin,
bluez-utils, program ini hanya berguna jika kita menggunakan
perangkat keras bluetooth. Klik kanan pada nama program tersebut,
kemudian klik Mark for Complete Removal.
161
162
163
164
dengan
165
deb http://id.archive.ubuntu.com/ubuntu/ \
feisty-backports main restricted \
universe multiverse
deb-src http://id.archive.ubuntu.com/ubuntu/ \
feisty-backports main restricted \
universe multiverse
deb http://security.ubuntu.com/ubuntu \
feisty-security main restricted
deb-src http://security.ubuntu.com/ubuntu \
feisty-security main restricted
deb http://security.ubuntu.com/ubuntu \
feisty-security universe
deb-src http://security.ubuntu.com/ubuntu \
feisty-security universe
deb http://security.ubuntu.com/ubuntu \
feisty-security multiverse
deb-src http://security.ubuntu.com/ubuntu \
feisty-security multiverse
## -------------- Third Party Repository -------## PLF REPOSITORY (Unsupported.
deb http://medibuntu.sos-sts.com/repo/ \
feisty free non-free
deb-src http://medibuntu.sos-sts.com/repo/ \
feisty free non-free
## CANONICAL COMMERCIAL REPOSITORY
deb http://archive.canonical.com/ubuntu \
feisty-commercial main
1024D/0C5A2783 2006-11-23
The Medibuntu Team <medibuntu@sos-sts.com>
2048g/16C7105A 2006-11-23
166
167
168
/var/cache/apt/archives/partial
/var/cache/apt/archives/
169
170
171
Mencari Program
Untuk mencari program kita bisa menggunakan perintah apt-cache.
perintah apt-cache untuk mencari package yang diinginkan adalah
apt-cache search, perintah berikut akan mencari package bernama
xmms atau package dengan yang memiliki kata xmms pada
deskripsinya.
$ apt-cache search xmms
libflac7 - Free Lossless Audio Codec - runtime C
library
pulseaudio - PulseAudio sound server
xmms-arts - aRts Output plugin for xmms
xmms-wma - WMA input plugin for XMMS
xmms - Versatile X audio player
xmms-midi - MIDI plugin for XMMS
Output dari perintah diatas sudah dipotong. Tergantung dengan
repositories yang digunakan, output dari perintah apt-cache search
bisa sangat banyak. Untuk membatasi pencarian hanya berdasarkan
nama package saja, gunakan perintah apt-cache search -n
$ apt-cache search -n xmms
xmms-arts - aRts Output plugin for xmms
xmms-wma - WMA input plugin for XMMS
xmms - Versatile X audio player
Jika kita ingin menampilkan informasi sebuah package yang kita
inginkan, gunakan perintah apt-cache showpkg (biasanya digunakan
untuk package yang belum terinstall pada system)
$ apt-cache showpkg xmms
Untuk menampilkan informasi dari package yang telah terinstall
gunakan perintah
$ apt-cache show xmms
Untuk mengetahu sebuah package tergantung dengan package apa
saja, maka gunakan perintah apt-cache depends
$ apt-cache depends libchm1
172
libchm1
Depends: libc6
Conflicts: xchm
Replaces: <chmlib>
Dan untuk mengetahui package tersebut dibutuhkan oleh program
apa saja, gunakan perintah apt-cache rdepends
$ apt-cache rdepends libchm1
libchm1
Reverse Depends:
python-chm
kchmviewer-nokde
xchm
kchmviewer
Selain digunakan untuk menginstall, menguninstall, mencari package,
apt juga bisa digunakan untuk sekedar bersenang-senang, ketikkan
perintah berikut ini
$ apt-get moo
7.5 DPKG
Debian Package Manager atau lebih dikenal dengan nama dpkg,
merupakan salah satu tool yang dapat digunakan untuk melakukan
173
174
problems,
but
removing
175
176
$ dpkg -l bash
||/ Name
ii bash
Version
3.2-0ubuntu6
Description
The GNU Bourne Again Shell
Jika kita melihat sebuah program, dan ingin mengetahui dari package
mana program tersebut berasal, gunakan perintah dpkg -S. Contoh
berikut untuk mengetahui package dari file /usr/bin/calendar.
$ dpkg -S /usr/bin/calendar
bsdmainutils: /usr/bin/calendar
Dari hasil perintah diatas, kita bisa mengetahui kalau perintah
/usr/bin/calendar berasal dari package bsdmainutils.
177
178
checking
checking
a.out
checking
checking
checking
Jika tidak ada pessan error yang muncul, dan proses ./configure
berjalan dengan baik, maka lanjutkan dengan perintah berikutnya,
yaitu make
$ make
g++ -MM -Ilibdnet-stripped/include -Ilibpcre -g -O2
-Wall
-fno-strict-aliasing -Ilibpcap -Inbase Insock/include
-DHAVE_CONFIG_H
DNMAP_VERSION=\"4.20\"
-DNMAP_NAME=\"Nmap\"
DNMAP_URL=\"http://insecure.org\"
Proses make bisa berlangsung lama untuk program-program besar
seperti ketika kita mengcompile kernel. Tunggu sampai selesai dan
tidak ada pesan error yang muncul, maka lanjutkan dengan proses
menginstall nmap. Perintah make install membutuhkan hak akses
root.
$ sudo make install
Compiling libpcap
make[1]:
Entering
`/home/urangkayo/repo/nmap-4.20/libpcap'
make[1]: Nothing to be done for `all'.
directory
179
$ /usr/local/bin/nmap -v -A localhost
Starting Nmap 4.20 ( http://insecure.org ) at 200704-22 10:26 WIT
Warning: File ./nmap-services exists, but Nmap is
using
/usr/local/share/nmap/nmap-services
for
security and consistency reasons. set NMAPDIR=. to
give priority to files in your local directory (may
affect the other data files too).
mass_dns: warning: Unable to determine any DNS
servers. Reverse DNS is disabled. Try using -system-dns or specify valid servers with -dns_servers
Initiating Connect() Scan at 10:26
Scanning localhost (127.0.0.1) [1697 ports]
Discovered open port 631/tcp on 127.0.0.1
Completed Connect() Scan at 10:26, 0.09s elapsed
(1697 total ports)
Initiating Service scan at 10:26
Scanning 1 service on localhost (127.0.0.1)
Completed Service scan at 10:26, 6.25s elapsed (1
service on 1 host)
Host localhost (127.0.0.1) appears to be up ...
good.
Interesting ports on localhost (127.0.0.1):
Not shown: 1696 closed ports
PORT
STATE SERVICE VERSION
631/tcp open ipp
CUPS 1.2
Service detection performed. Please report any
incorrect
results
at
http://insecure.org/nmap/submit/ .
Nmap finished: 1 IP address (1 host up) scanned in
6.553 seconds
Beberapa opsi lain yang dapat digunakan bersama perintah make
adalah
make clean
180
Perintah ini berguna jika ternyata proses make gagal, sebelum kita
melakukan perintah configure lagi, jalankan perintah ini terlebih
dahulu.
sudo make uninstall
Perintah ini digunakan untuk menghapus program yang telah diinstall
sebelumnya.
Sekarang kita sudah mampu untuk melakukan manajemen terhadap
software di Ubuntu, baik itu dengan menggunakan GUI seperti
Add/Remove, Synaptic Package Manager atau melalui command line
dengan perintah apt, dpkg serta dari source code program yang
bersangkutan. Seperti pepatah bilang Banyak jalan menuju Roma
begitu juga pada Linux, bisa kita bilang Banyak jalan untuk
menginstall program. Dari sini kita bisa merasakan keindahan dari
dunia open source karena kita tidak terpaku hanya dengan satu cara
dalam melakukan sesuatu, tetapi bisa ada banyak cara untuk
melakukan suatu pekerjaan dimana tujuan akhir dari pekerjaan
tersebut adalah sama.
Path
lengkap
dari
/home/urangkayo/repo/feisty
repository
ini
adalah
181
182
183
Program alien juga bisa mengkonversi .deb kedalam bentuk .rpm. Jika
kita ingin menginstall package .deb pada distro linux seperti Fedora
Core atau Red Hat. Untuk itu gunakan perintah alien -c --to-rpm.
Sebagai contoh penulis mengkonversi program bernama
gcursor_0.061-ubuntu4_i386.deb
$ sudo alien -c --to-rpm \
184
gcursor_0.061-ubuntu4_i386.deb
gcursor-0.061-1.i386.rpm generated
$ ls | grep gcursor
gcursor-0.061-1.i386.rpm
gcursor_0.061-ubuntu4_i386.deb
Dan program gcursor bisa diinstall pada program yang berbasikan
rpm package manager.
Bab 8
ADMINISTRASI USER dan
GROUP
8.1 Manajemen user dan group
8.2 Sudo
186
mengerjakan
tugas-tugas
administratif,
dengan
menggunakan perintah sudo. Pada Ubuntu, reguler user
tersebut harus tergabung dalam group admin (user yang
dibuat pada waktu menginstall Ubuntu secara otomatis
akan tergabung dalam group admin dan bisa
menggunakan sudo untuk memperoleh hak akses sebagai
root) atau user tersebut dicantumkan pada file
/etc/sudoers untuk menjalankan perintah-perintah
yang bersifat administrator.
Setiap user pada Linux tergabung dengan satu atau lebih group.
Biasanya jika kita membuat user tanpa menyebutkan groupnya, maka
secara otomatis group dari user tersebut akan sama nama user yang
dibuat. Linux menggunakan file /etc/passwd serta /etc/shadow
dalam memanjemen user dan /etc/group serta /etc/gshadow
untuk menajemen group. Jalankan perintah berikut untuk mencoba
melihat isi dari file /etc/passwd dan /etc/group
$ cat /etc/passwd
$ cat /etc/group
Group pada linux dapat memudahkan kita dalam melakukan
manajemen user terutama dalam memberikan hak akses terhadap
sebuah file atau direktori kepada banyak user. Kita tinggal
memasukkan user yang diinginkan untuk tergabung dalam group
tersebut. Contoh kasusnya seperti, jika pada sebuah organisasi
memiliki sebuah direktori /source-code yang berisikan source code
program yang sedang dibuat, dengan gorup ownership nya bernama
programmer yang hanya bisa diakses oleh pemilik dari direktori
187
Manage Groups:
menghapus group.
untuk
membuat,
mengedit
atau
188
189
190
Jika telah selesai membuat user baru, tutup tampilan Users settings.
Sekarang buka gnome-terminal, kita akan melihat apakah user dan
group yang telah dibuat sudah ada pada /etc/passwd, etc/shadow
dan /etc/group, jalankan perintah berikut
$ cat /etc/passwd | grep thinkerbels
thinkerbels:x:1001:1001:Himawari,JoGja,,,:/home/thi
nkerbels:/bin/bash
Format umum dari file /etc/passwd adalah
username:password:uid:gid:gecos:homedir:shell
191
thinkerbels:$1$S5e3Y$fYOo8.rj/SHVJwh0nHJn./:13625:0
:99999:7:::
Keterangan field-field ini dimulai dari kiri ke kanan adalah:
Jika kita ingin mencoba login menggunakan user yang baru dibuat ini
tanpa harus keluar dari session kita sendiri, gunakan perintah sudo i u
$ sudo -i -u thinkerbels
Password:
Catatan: password yang diminta diatas bukan password dari user thinkerbels, tapi
password dari urangkayo (password dari user yang menjalankan perintah sudo).
$ pwd
/home/thinkerbels
$ id
192
uid=1001(thinkerbels)
gid=1001(thinkerbels)
groups=4(adm),20(dialout),21(fax),24(cdrom),25(flop
py),26(tape),29(audio),30(dip),46(plugdev),114(scan
ner),118(fuse),1001(thinkerbels)
$ touch latihan
$ ls -l latihan
-rw-r--r-- 1 thinkerbels thinkerbels 0 2007-04-22
19:11 latihan
Jika ingin kembali ke shell username kita dari username thinkerbels,
tekan CTRL + D.
Menggunakan command line
Dengan command line, perintah yang bisa digunakan untuk membuat
user baru adalah adduser. Buka program gnome-terminal jika
menggunakan Gnome.
$ sudo adduser liverpoolfc
Adding user `liverpoolfc' ...
Adding new group `liverpoolfc' (1003) ...
Adding new user `liverpoolfc' (1003) with group
`liverpoolfc' ...
Creating home directory `/home/liverpoolfc' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for liverpoolfc
Enter the new value, or press ENTER for the default
Full Name []: Liverpool Football Club
Room Number []:
Work Phone []: 123456789
Home Phone []: 987654321
Other []:
Is the information correct? [y/N] y
193
194
$ ls -l /home
total 20
drwxr-xr-x 2 liverpoolfc
22 18:47 liverpoolfc
drwxr-xr-x 2 scorvia
22 18:51 scorvia
drwxr-xr-x 2 thinkerbels
22 18:32 thinkerbels
drwxr-xr-x 51 urangkayo
22 18:48 urangkayo
4096 2007-04-
4096 2007-04-
195
196
Jika ingin melihat informasi dari user, kita bisa menggunakan perintah
finger
$ finger urangkayo
Login: urangkayo
Name: Yunifa Wirman
Directory: /home/urangkayo
Shell: /bin/bash
On since Mon Apr 23 07:25 (WIT) on :0 (messages
off)
On since Mon Apr 23 07:30 (WIT) on pts/0 from :0.0
No mail.
No Plan.
Untuk menambahkan user pada sebuah group dengan menggunakan
command line, gunakan perintah usermod.
$ sudo usermod -G capoex thinkerbels
Perintah diatas akan menambahkan user thinkerbels kedalam group
capoex. Untuk melihatnya gunakan perintah berikut
$ cat /etc/group | grep capoex
capoex:x:1002:thinkerbels
Untuk merubah ownership sebuah group gunakan perintah chgrp
sedangkan untuk merubah ownership file atau direktori gunakan
perintah chown. Misalkan penulis memiliki direktori pada
/home/urangkayo/latihan, dan ingin memberikan ownership untuk
group thinkerbels,
$ sudo chgrp thinkerbels /home/urangkayo/latihan
$ ls -l /home/urangkayo | grep latihan
drwxr-xr-x 2 urangkayo thinkerbels
02-04 21:01 latihan
1024 2007-
197
1024 2007-
1024 2007-
8.2 Sudo
Seperti yang telah dijelaskan sebelumnya, bahwa user biasa bisa
memperoleh hak akses sebagai root dengan menggunakan perintah
sudo. Akan tetapi untuk bisa memperoleh hak akses sebagai root
dengan menggunakan sudo, user tersebut harus tergabung dengan
group admin atau tercantum untuk menjalankan perintah-perintah
administrator pada file /etc/sudoers.
$ cat /etc/group | grep admin
198
admin:x:114:urangkayo
Username urangkayo merupakan username yang penulis buat waktu
proses install Ubuntu, dan secara otomatis username tersebut akan
tergabung dengan group admin sehingga kita bisa menggunakan
perintah sudo. Misalkan pada username yang telah kita buat
sebelumnya, kita ingin agar user thinkerbels dapat menggunakan
perintah sudo untuk memperoleh hak akses root, maka kita bisa
menggunakan perintah berikut untuk menambahkan thinkerbels
kedalam group admin
$ sudo usermod G admin thinkerbels
Kita juga bisa menambahkan user atau group yang kita inginkan
untuk bisa memperoleh hak akses sebagai root dengan menambahkan
user tersebut pada file /etc/sudoers, untuk mengedit file
/etc/sudoers maka kita akan menggunakan perintah visudo.
$ sudo visudo
# /etc/sudoers
#
# This file MUST be edited with the 'visudo'
# command as root.
#
# See the man page for details on how to write a
# sudoers file.
# Host alias specification
# User alias specification
# Cmnd alias specification
# Defaults
Defaults
!lecture,tty_tickets,!fqdn
# User privilege specification
root
ALL=(ALL) ALL
# Members of the admin group may gain root
# privileges
%admin ALL=(ALL) ALL
thinkerbels localhost=(ALL) ALL
Tampilan diatas adalah isi dari file /etc/sudoers pada komputer
penulis, dimana pada baris terakhir penulis menambahkan
199
200
Bab 9
HARDWARE dan MOUNTING
FILE SYSTEM
Sistem Operasi GNU/Linux pada saat ini mampu mendeteksi
hardware dengan baik, kemampuan Linux dalam mendeteksi
hardware sudah sangat bagus jika dibandingkan dengan masa-masa
awal GNU/Linux. Untuk mengetahui mengenai hardware bisa dlihat
pada http://www.tldp.org/HOWTO/Hardware-HOWTO/, selain itu kita
juga bisa membaca spesifikasi hardware yang didukung oleh distro
yang kita gunakan dengan mengunjungi website dari distro tersebut
atau membaca file RELEASE NOTES yang selalu disertakan dalam CD
installer dari distro yang digunakan, contohnya pada Ubuntu bisa
mengunjungi alamat http://www.ubuntu.com/download/releasenotes/.
Pada bab ini kita akan melihat bagaimana cara mengetahui informasi
hardware yang ada pada system yang digunakan.
9.1 Device Manager
9.2 Melihat informasi hardware dengan command line
9.3 Mounting dan Manajemen File System
9.4 Memanajemen Modules
202
Jika kita memiliki perangkat USB seperti USB Flash Disk, maka Linux
Ubuntu juga sudah mendukung plug and play artinya begitu
perangkat USB tersebut kita pasang, maka Ubuntu akan segera
mengenalinya, dan melakukan auto mount terhadap USB Flash Disk
ini. Pada desktop akan muncul icon dari USB Flash Disk tersebut atau
bisa juga di lihat pada menu Places
203
Seperti yang terlihat pada gambar 9.2, flash disk penulis dikenal
dengan nama URANGKAYO, kita bisa mengklik icon tersebut dan
melakukan operasi-operasi seperti menyimpan, mengcopy dan
operasi lainnya yang biasa kita lakukan pada Windows. Untuk
hardware seperti harddisk, pada linux dikenal dengan nama hd untuk
harddisk IDE. Untuk harddisk SCSI dikenal dengan nama sd.
Penamaan untuk harddisk seperti hda merupakan harddisk primary,
hda1 untuk partisi primary pertama pada harddisk primary pertama.
Untuk SCSI juga sama, diberi nama sda, sda1 dan seterusnya. Jika kita
terbiasa dengan partisi pada Windows, mungkin akan sedikit
mengalami masalah dengan penamaan harddisk ini pada awalnya.
Tetapi untuk selanjutnya kita akan terbiasa dengan penamaan
harddisk pada Linux. Mengetahui penamaan harddisk ini sangat
penting dalam sistem linux, terutama saat melakukan proses mount.
204
205
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINVVGASnoop- ParErr- Stepping- SERR- FastB2BStatus:
Cap+
66MHz+
UDFFastB2BParErrDEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR<PERRLatency: 0
Region 0: Memory at e0000000 (32-bit, prefetchable)
[size=64M]
Capabilities: [a0] AGP version 2.0
Status: RQ=32 Iso- ArqSz=0 Cal=0 SBA+ ITACohGART64- HTrans- 64bit- FW- AGP3- Rate=x1,x2,x4
Command: RQ=1 ArqSz=0 Cal=0 SBA- AGP+ GART6464bit- FW- Rate=x4
Capabilities: [c0] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PMEUntuk mengetahui hardware yang menggunakan port USB, bisa
menggunakan perintah lsub
$ lsusb
Gunakan perintah dmesg untuk melihat hardware yang dikenali oleh
system pada saat booting.
$ dmesg
Jika digabungkan dengan perintah grep kita bisa mencari hardware
tertentu saja, misalnya dmesg | grep i usb, perintah ini akan mencari
string usb pada dmesg.
$ dmesg | grep -i usb
[25.161904]
usbcore:
registered
new
interface
driver usbfs
[25.162000]
usbcore:
registered
new
interface
driver hub
[25.162094] usbcore: registered new device driver
usb
[25.163792] USB Universal Host Controller Interface
driver v3.0
206
:
:
:
:
:
:
:
0
AuthenticAMD
6
7
AMD Duron(tm) processor
1
1200.126
207
208
209
Kita juga bisa dengan menjalankan perintah dmesg pada shell. Pada
gambar dibawah ini merupakan potongan output dari dmesg yang
menampilkan informasi tentang device yang terpasang
210
7131
2007-01-28
08:16
232
2007-01-19
11:05
2006-07-21
13:59
16384
Jika telah selesai kita gunakan, kita bisa melakukan perintah umount
[mount point] untuk melepaskan device tersebut dari sistem,
$ sudo umount /mnt/data
$ ls -l /mnt/data
total 0
Untuk mengetahui lebih jauh mengenai opsi-opsi yang bisa digunakan
ketika melakukan perintah mount bisa melihat pada manual dari
perintah tersebut. Beberapa opsi yang umum dipakai yaitu
Jika kita ingin agar suatu device langsung di mount pada waktu
booting, maka kita perlu mencantumkannya pada file /etc/fstab
karena Linux membaca file ini ketika proses booting berlangsung
untuk melakukan mount terhadap sebuah device. Berikut ini
merupakan isi dari file /etc/fstab di Linux Ubuntu penulis
211
Jika kita ingin agar /dev/hda2 di mount pada /mnt/data pada saat
booting sehingga saat kita login filesystem ini bisa langsung
digunakan, maka kita harus tambahkan baris berikut pada file
212
/etc/fstab. Buka file /etc/fstab dengan teks editor seperti gedit (kita
harus mengeditnya sebagai root).
$ sudo gedit /etc/fstab
Isikan baris berikut pada /etc/fstab
/dev/hda2
/mnt/data
vfat
ro
0 2
213
pada /mnt/data. Jika pada contoh sebelumnya file system ini belum
dimounting, umount terlebih dahulu
$ sudo umount /mnt/data
$ sudo mount /dev/hda2 /mnt/data -t vfat \
-o iocharset=utf8,umask=000
Setelah menjalankan perintah diatas, maka kita tidak harus
menggunakan perintah sudo jika ingin mengakses /mnt/data untuk
melakukan penulisan pada mount point tersebut.
Jika ingin file system ini dimount pada saat system kita jalankan ,
maka kita harus menambahkan baris berikut ini pada /etc/fstab
(ingat, jika file /etc/fstab telah dimodifikasi seperti pada contoh
sebelumnya, hapus terlebih dahulu baris /dev/hda2 /mnt/data
vfat ro 0 2 yang digunakan pada contoh sebelumnya). Buka file
/etc/fstab dengan teks editor
$ sudo gedit /etc/fstab
Tambahkan baris berikut ini pada /etc/fstab, dan simpan hasilnya.
/dev/hda2
/mnt/data vfat
iocharset=utf8,umask=000
Bagaimana jika kita menggunakan tipe NTFS? Untuk tipe NTFS, pada
saat kita menjalankan perintah berikut ini
$ sudo mount /dev/hda1 /mnt/windows/ -t ntfs
Perintah diatas akan membuat partisi /dev/hda1 dengan file system
NTFS dimount pada /mnt/windows, dan hanya bisa di akses dengan
menggunakan hak akses root, jika kita mencoba mengakses tanpa
menggunakan hak akses root, maka akan ditolak oleh system. Untuk
melakukan mount NTFS agar bisa di akses oleh user biasa, maka
gunakan perintah berikut (dengan asumsi partisi NTFS ada pada
/dev/hda1 dan di mount pada /mnt/windows)
$ sudo mount /dev/hda1 /mnt -t ntfs \
-o nls=utf8,umask=0222
214
Jika kita ingin agar bisa mempunyai hak akses read dan write pada file
system NTFS, maka harus menginstall terlebih dahulu program
dengan nama ntfs-3g (install melalui synaptic atau apt). Mulai Ubuntu
7.10, ntfs-3g sudah terinstall secara default. Untuk itu anda bisa
memeriksa apakah ntfs-3g sudah terinstall atau tidak pada system
Ubuntu anda dengan perintah
$ dpkg l |grep ntfs-3g
Jika belum terinstall, install ntfs-3g dengan perintah berikut
$ sudo apt-get install ntfs-3g
$ sudo mount /dev/hda1 /mnt -t ntfs-3g -o nls=utf8
Agar bisa dimount pada saat booting, tambahkan baris berikut pada
/etc/fstab
/dev/hda1 /mnt/windows \
ntfs-3g
defaults,locale=en_US.utf8
215
216
1K-blocks
Used
/dev/hdb4
12855564
10801472 1401052
89%
/dev/hda2
14059192
9278776
66%
/mnt
4780416
Size
/dev/hdb4
13G
11G
1.4G
89%
/dev/hda2
14G
8.9G 4.6G
66%
/mnt
217
Size
Used by
nls_iso8859_1
5120
nls_cp437
6784
vfat
14208
fat
53916
1 vfat
218
/lib/modules/2.6.20-16-generic/kernel/sound/core/snd.ko
alias:
char-major-116-*
license:
GPL
description:
author:
srcversion:
3BE4E61EB0303AD5846B8A6
depends:
soundcore
vermagic:
parm:
parm:
219
lp
fuse
Pada saat ini bisa dibilang sangat jarang diperlukan bagi kita untuk
bekerja dengan module secara langsung. Umumnya module yang
dibutuhkan sudah terload secara otomatis. Namun apabila suatu saat
kita diharuskan untuk bekerja dengan module secara langsung, maka
perintah-perintah diatas dapat digunakan dalam bekerja dengan
modules pada Ubuntu.
Bab 10
NETWORKING
10.1 Networking di Ubuntu
10.2 Koneksi Internet Dengan ADSL
10.3 Berbagi Koneksi Internet
192
168
11000000
10101000
00000000
00000001
222
Alamat Awal
Alamat Akhir
Netmask Default
0.0.0.0
127.255.255.255
255.0.0.0
128.0.0.0
191.255.255.255
255.255.0
192.0.0.0
223.255.255.255
255.255.255.0
224.0.0.0
239.255.255.255
240.0.0.0
255.255.255.255
Tabel 10.1 Kelas IP Address
NETWORKING
223
224
NETWORKING
225
226
NETWORKING
227
228
NETWORKING
229
Link encap:Ethernet
HWaddr 00:50:FC:3A:83:D2
inet addr:192.168.0.1
Bcast:192.168.0.255
Mask:255.255.255.0
MTU:1500
Metric:1
lo
Mask:255.0.0.0
MTU:16436
Metric:1
230
NETWORKING
231
Gateway
Genmask
Flags
192.168.0.0
0.0.0.0
255.255.255.0
0.0.0.0
192.168.0.1
0.0.0.0
UG
MSS Window
0
0
0
0
irtt Iface
0 eth0
0 eth0
$ route -n
Kernel IP routing table
Destination
Gateway
Genmask
192.168.0.0
0.0.0.0
255.255.255.0
Use Iface
0 eth0
0.0.0.0
192.168.0.1
0.0.0.0
UG
0 eth0
232
NETWORKING
233
Setelah itu kita akan diminta untuk memasukkan username yang kita
peroleh ketika kita mendaftarkan untuk menggunakan layanan ADSL.
Setelah memasukkan username, kita akan diminta memasukkan
password yang akan digunakan untuk melakukan koneksi ke ISP
yang kita gunakan. Sebaiknya kita mengganti password default dari
ISP dengan password sendiri, biasanya bisa dilakukan melalui website
dari ISP tempat kita berlangganan.
234
Pada pilihan Use Peer DNS, pilih YES, begitu juga dengan pilihan
untuk Limited MSS Problem, biarkan nilai default nya dan pilih YES.
NETWORKING
235
Pada proses selanjutnya klik OK, sekarang koneksi ADSL nya sudah
berjalan dengan baik, untuk itu pada gnome-terminal kita bisa
mengetikkan perintah ifconfig
236
auto dsl-provider
iface dsl-provider inet ppp
provider dsl-provider
Simpan hasil perubahan tersebut, kemudian restart network dengan
perintah
$ sudo /etc/init.d/networking restart
Sekarang coba test koneksi yang udah berjalan dengan melakukan
perintah ping ke dns, nslookup, atau dengan perintah dig ke internet
(contoh ke website capoex.net), jika sukses akan terlihat tampilan
seperti gambar berikut ini. Sekarang internet ADSL nya sudah bisa
digunakan untuk browsing. Untuk melakukan test speed bisa
mengunjungi website www.speedtest.net atau www.2wire.net, disini kita
bisa mengetahui speed yang diperoleh.
NETWORKING
237
Jika anda tidak ingin menjadikan modem sebagai bridge, tapi sebagai
pppoe client, maka modem yang digunakan harus disetting sebagai
pppoe client, kemudian tentukan nilai vpi dan vci yang sesuai
(tanyakan sama ISP), selanjutnya isikan username dan password dari
ISP kedalam modem, simpan hasil perubahan ini, dan tunggu
beberapa saat, jika settingan benar, maka modem akan terkoneksi
dengan server.
238
NETWORKING
239
ADSL nya terhubung dengan port USB. Seperti yang telah dijelaskan
pada sub bab 10.2, modem ADSL terhubung pada port eth0
Langkah pertama yang kita lakukan adalah, aktifkan ip forwarding
pada linux Ubuntu yang akan digunakan sebagai gateway dengan
perintah
$ sudo su c \
echo 1 > /proc/sys/net/ipv4/ip_forward
Restart network dengan menggunakan perintah
$ sudo /etc/init.d/networking restart
Langkah selanjutnya adalah mengaktifkan NAT untuk memasquerade ip lokal dengan perintah IPTABLES. Dengan melakukan
masquerade ip lokal, maka dengan satu ip yang kita peroleh dari ISP,
kita bisa membuat komputer-komputer yang ada dijaringan kita dapat
mengakses internet, dimana oleh jaringan luar (internet) ip yang
terlihat adalah ip yang kita peroleh dari ISP.
$ sudo iptables -t nat A POSTROUTING -o ppp0 \
-s 192.168.1.0/24 -j MASQUERADE
Jika kita tidak menggunakan modem sebagai bridge, tapi sebagai
pppoe client, atau jika menggunakan koneksi internet yang langsung
terhubung dengan eth0, maka ganti -o ppp0 dengan interface yang
terhubung ke internet, contohnya adalah -o eth0. Disini diasumsikan
alamat jaringan yang digunakan adalah 192.168.1.0/24, jika anda
menggunakan alamat jaringan yang lain, sesuaikan alamat jaringan
yang digunakan untuk source, misalkan alamat jaringan anda
192.168.100.0/24, maka akan berubah menjadi -s 192.168.100.0/24.
Sekarang pada client, ganti ip nya menjadi satu network dengan ip
server Ubuntunya, jika Linux Ubuntunya menggunakan ip 192.168.1.1
pada eth1 yang terhubung kejaringan lokal., maka clientnya bisa
menggunakan ip 192.168.1.2 - 192.168.1.254, untuk mengganti ip pada
client yang menggunakan Windows XP, klik menu Start Control
Panel Network and Internet Connections
Network
Connections Klik kanan pada Local Area Connection Klik
240
NETWORKING
241
Bab 11
OPTIMALISASI, MONITORING,
CRONTAB
11.1 Optimalisasi system
11.2 Melakukan monitoring system
11.3 Menggunakan crontab untuk otomatisasi
244
245
service pada runlevel S yang tidak kita perlukan sehingga sistem bisa
berjalan dengan lebih cepat. Untuk menginstall program ini pada
terminal ketikan baris berikut
$ sudo apt-get install sysv-rc-conf
Setelah proses installasi selesai, pada gnome-terminal ketikkan
perintah berikut ini
$ sudo sysv-rc-conf
Keterangan
246
acpi-support
acpid
alsa
alsa-utils
anacron
apmd
atd
avahi-daemon
bluez-utils
247
bootlogd
cron
cupsys
dbus
dns-clean
evms
fetchmail
gdm
halt
hdparm
248
hotkey-setup
hotplug
hotplug-net
hplip
ifrename
ifupdown
ifupdownclean
klogd
linuxrestrictedmodulescommon
lvm
makedev
249
inetd
mdadm
module-inittools
networking
ntpdate
pcmcia
powernowd
ppp
ppp-dns
readahead
reboot
rmnologin
250
rsync
single
stop-botlogd
sudo
sysklogd
udev
udev-mtab
umountfs
urandom
usplash
vbesave
xorg-common
Jika sudah selesai mengedit runlevel ini, jangan lupa untuk mencatat
service yang dimatikan pada semua run level (service yang tidak
memiliki tanda X pada runlevel 0 6 serta runlevel S), karena
251
15
2007-01-18
20:15
252
Pada tampilan System Monitor kita bisa melihat proses yang sedang
berjalan pada sistem dengan mengklik pada tab Processes. Untuk
melihat informasi terhadap resources dari sistem seperti cpu, memori,
dan network klik tab Resources, dan tab File System untuk
melihat informasi tentang filesystem. Jika ingin memonitor sistem
dengan command line, kita bisa menggunakan perintah seperti ps,
who, free dan lainnya.
253
254
255
256
$ tail -n 5 /var/log/messages
File log lain yang bisa berguna adalah /var/log/messages,
/var/log/daemon.log yang bisa digunakan untuk mengetahui
informasi sistem mulai dari booting, proses pengenalan hardware,
atau bisa juga dengan mengetikkan dmesg pada shell.
11.3 Crontab
Cron merupakan service yang digunakan untuk menjalankan
program secara berulang dengan jadwal yang tetap. Misal kita ingin
menjalankan perintah /bin/date setiap jam 8.16 setiap hari maka kita
bisa menggunakan cron. Program yang dijalankan melalui cron
disebut dengan cron job. Untuk membuat cron job maka kita harus
mengisi file crontab dengan perintah yang ingin dijalankan. Untuk
membuat cron job untuk username kita gunakan perintah crontab -e.
Crontab memiliki dua jenis tipe job yaitu system job dan user job.
System job disimpan dalam file /etc/crontab dan hanya bisa diedit
dengan hak akses sebagai root. Sedangkan user job adalah job yang
dibuat oleh user dengan menggunakan perintah crontab e. Isi dari file
/etc/crontab pada sistem Ubuntu penulis bisa terlihat dibawah ini
257
command
root
run-parts --report
25 6
* * *
root
test -x /usr/sbin/anacron
|| run-parts --report /etc/cron.daily
47 6
* * 7
root
test -x /usr/sbin/anacron
|| run-parts --report /etc/cron.weekly
52 6
1 * *
root
test -x /usr/sbin/anacron
|| run-parts --report /etc/cron.monthly
Baris pertama mendefenisikan shell yang akan digunakan, pada baris
kedua path yang digunakan untuk mencari perintah-perintah yang
akan dijalankan oleh cron. Tanda "#" digunakan untuk memberikan
komentar dan akan diabaikan oleh cron. Baris selanjutnya merupakan
perintah yang akan dijalankan oleh cron.
Format penulisan untuk membuat job pada crontab adalah (dimulai
dari kolom pertama dari sebelah kiri)
258
Jika kolom untuk menit, jam, tanggal, bulan, hari diberi nilai *
(bintang) hal ini berarti perintah akan berjalan pada setiap menit,
setiap jam dan seterusnya. Misalkan kita ingin menjalankan perintah ls
l /home/urangkayo pada jam 20.30 setiap harinya, maka pada file
crontab kita isikan
30 20 * * * urangkayo ls -l /home/urangkayo
Untuk dapat mengisikan baris seperti diatas, pada shell jalankan
perintah berikut ini
$ crontab e
Akan muncul tampilan dari editor untuk menambahkan job pada
crontab. Editor yang digunakan bisa vi, nano tergantung dari
environment variable shell kita. Jika sudah selesai, simpan file tersebut,
maka job tersebut akan berjalan pada waktu yang telah ditetapkan.
File crontab yang telah kita buat tadi, oleh crontab ditempatkan pada
direktori /var/spool/cron/crontabs, sesuai dengan nama user login
kita.
$ sudo ls -l /var/spool/cron/crontabs
-rw------- 1 urangkayo crontab 290 2007-02-05 20:29
urangkayo
$ sudo cat /var/spool/cron/crontabs/urangkayo
Perintah diatas akan menampilkan isi dari file crontab yang telah kita
buat tadi. File pada /var/spool/cron/crontabs tidak bisa di edit oleh
user biasa. Dan meskipun kita bisa menggunakan perintah sudo untuk
mengedit file ini, hal itu tidak di sarankan, gunakan kembali perintah
crontab e jika ingin mengeditnya. Untuk menampilkan cron job
gunakan perintah crontab -l dan untuk menghapus cron job gunakan
perintah crontab r.
Bab 12
PRINTER dan GIMP
12.1 Printer
12.2 GIMP
12.1 Printer
Printer pada saat ini sudah merupakan sebuah kebutuhan bagi
penggunan komputer baik itu untuk personal atau untuk corporate.
Apalagi saat ini printer bisa diperoleh dengan harga yang murah.
Untuk itu sebelum melakukan konfigurasi pada printer, pastikan
service cups sudah berjalan, gunakan perintah berikut untuk
mengaktifkan cups
$ /etc/init.d/cups start
Untuk mengkonfigurasi printer pada Ubuntu klik menu System
Preferences Printing (gnome-cups-manager).
260
Double klik pada icon New Printer, maka akan muncul tampilan
untuk menginstall printer pada Ubuntu. Pada langkah yang pertama
pilih tipe printer yang digunakan Local Printer atau Network Printer.
Jika printer kita bisa dideteksi secara otomatis oleh Ubuntu, maka pilih
jenis printer yang terdapat pada Use a detected printer, jika kita
kurang beruntung dengan printer yang dimiliki, klik Use another
printer by specifying a port dan pilih port yang digunakan untuk
menghubungkan komputer dengan printer pada list box Printer Port.
Kemudian klik button Forward.
Pada langkah kedua ini, pilih Manufacture dari printer, kemudian
pilih juga Model dari printer yang digunakan. Maka secara otomatis
Ubuntu akan menampilkan driver yang bisa digunakan pada list box
Driver. Atau jika kita memiliki driver untuk linux dari printer yang
digunakan, maka klik button Install Driver untuk menginstall driver
tersebut. Kemudian klik Forward untuk melanjutkan proses ini.
261
262
12.2 GIMP
GIMP merupakan program yang digunakan untuk melakukan photo
editing, desain grafis atau bisa juga dibilang sebagai Photosopnya
Linux. Program ini memiliki banyak plug-ins yang siap pakai. GIMP
digunakan untuk membuat images, theme, wallpaper, button yang
digunakan untuk Linux. Salah satu hasil GIMP yang sangat terkenal
adalah logo Linux yang bernama TUX. Untuk menggunakan GIMP,
klik menu Applications Graphics GIMP Image Editor (gimp).
Tampilan dari GIMP bisa dilihat seperti pada gambar dibawah ini,
dimana ada dua window yang muncul yaitu window GIMP itu
sendiri dan window Layer, Channel serta Paths.
263
Sekarang muncul tampilan dari Script-Fu: Neon, pada text box Text
isikan dengan teks yang ingin dijadikan logo, kemudian kita bisa
mengatur pilihan font yang akan digunakan dengan mengklik button
Font. Jika telah selesai mengaturnya klik OK.
264
Hasil dari script Unsharp Mask ini akan muncul pada window baru.
Sekarang kita akan memberi efek untuk logo yang telah kita Unsharp
265
Mask tadi. Pada window logo tersebut, klik menu Filters EdgeDetect Neon, pada tampilan dari Neon Detection isikan nilai yang
diinginkan.
Hasil dari efek yang kita gunakan ini bisa terlihat seperti pada gambar
dibawah ini
Jika kita sudah selesai, maka untuk menyimpan hasilnya klik menu
File Save, untuk menyimpannya. Kita bisa langsung mengetikkan
ekstension dari image yang kita ingin simpan, atau dengan memilih
ekstension yang ada dengan mengklik pada Select File Type,
kemudian klik button Save. Jika ingin membuka file image dengan
266
GIMP, klik menu File Open, dan cari file yang ingin dibuka
tersebut.
Bab 13
MENGGUNAKAN APLIKASI
OFFICE
13.1 OpenOffice.org Writer
13.2 OpenOffice.org Calc
13.3 OpenOffice.org Impress
13.4 OpenOffice.org Base
13.5 Evince dan Acrobat Reader
13.6 XCHM
OpenOffice.org merupakan sekumpulan program (suite) yang terdiri
atas word processor (openoffice.org writer), spreadsheet
(openoffice.org calc), database (openoffice.org base), presentation
(openoffice.org impress). OpenOffice.org merupakan free version dari
StarOffice. Jika kita sudah terbiasa dalam menggunakan Microsoft
Office Suite, maka kita juga tidak akan mengalami kesulitan dalam
menggunakan OpenOffice.org. Pada bab ini penulis hanya akan
menjelaskan dasar-dasar dalam menggunakan OpenOffice.org. Untuk
lebih memperdalam dalam penggunaan dari OpenOffice.org bisa
mengunjungi
website
resmi
dari
OpenOffice.org
di
http://www.openoffice.org dan http://documentation.openoffice.org yang
merupakan website untuk dokumentasi dari openoffice.org.
268
Writer terbuka, kita akan bisa melihat tampilannya yang mirip dengan
tampilan Microsoft Word, sehingga jika kita sudah terbiasa
menggunakan Microsoft Word maka akan cepat juga terbiasa dalam
menggunakan program ini.
269
270
271
272
273
Akan muncul toolbar dari Styles and Formatting, Pada bagian atas
terdapat icon-icon yang memiliki fungsi yang berbeda-beda. Sekarang
klik icon ke-empat dari kiri (jika kita meletakkan mouse diatasnya,
maka akan muncul tool tips dengan tulisan Page Styles). Setelah kita
mengklik Page Style kemudian klik icon paling kanan untuk membuat
Styles baru, lihat gambar berikut untuk lebih jelasnya.
274
Ketika kita mengklik New Styles from Selection maka akan muncul
kotak dialog Create Style yang meminta kita untuk memasukkan
nama dari style yang akan kita buat ini, disini penulis mengisi nama
style dengan nama urangkayo, kemudian klik OK. Sekarang pada
toolbar Styles and Formatting bagian Page Styles akan muncul nama
style yang baru ini. Klik kanan pada sytle tersebut, kemudian dari
menu yang muncul, klik Modify.
275
276
Pada tab Alignment kita bisa mengedit align dari paragraph (rata kiri,
kanan, tengah atau rata kiri kanan). Pada tab Font, kita bisa memilih
font yang akan digunakan oleh OpenOffice.org Writer. Tekan tombol
OK jika kita sudah selesai mengedit paragraph styles yang kita
inginkan.
Sekarang kita bisa mengetik kata atau kalimat yang ingin diketikkan
menggunakan OpenOffice.org Writer pada workspace yang tersedia
yang bisa dilihat pada gambar 13.15. Kenapa penulis memilih terlebih
dahulu untuk mengedit Options maupun Styles and Formatting
dibanding dengan mengetik baru memformatnya, karena menurut
hemat penulis akan lebih mudah dalam merawat dokument yang kita
buat (bayangkan jika kita mengetik ratusan halaman, kemudian
setelah selesai baru memformatnya).
277
278
279
280
Sekarang pada direktori yang kita tentukan tadi, akan ada file dengan
extension .pdf yang bisa dibuka dengan menggunakan PDF reader.
Perlu diketahui juga, program OpenOffice.org Writer ini mampu
membuka file dengan format Microsoft Word tanpa harus kita rubah
terlebih dahulu kedalam format OpenDocument Text. Jika kita ingin
merubah format Microsoft Office Word kedalam format
OpenDocument Text, klik menu File Wizards Document
Converter, maka akan muncul tampilan untuk meng-convert dokumen
tersebut. Tentukan tipe dokumen yang akan dirubah, apakah format
StarOffice atau Microsoft Office (Word, PowerPoint, Excel), lihat pada
gambar berikut, kemudian klik NEXT.
281
Setelah itu, klik button Convert untuk merubah dokumen yang ingin
dirubah.
282
283
Icon yang ada pada standar toolbar, memiliki fungsi yang sama
dengan OpenOffice.org Writer, seperti icon untuk save, open, cut,
paste, copy dan lain sebagainya. Formatting toolbar digunakan untuk
memformat dokumen seperti mengatur style untuk font, font size, frame
border, decimal, percentage dan lainnya. Formula bar merupakan bar
yang menampilkan sel kerja kita (tempat cursor aktif), bisa juga
digunakan untuk memasukkan formula, berpindah dari satu sel ke sel
yang lain.
Sekarang kita akan mencoba menggunakan workspace pada
OpenOffice.org Calc untuk membuat sebuah perhitungan yang
sederhana. Klik sel A1, kemudian ketik Perhitungan Sederhana
Menggunakan Spreadsheet pada sel A1 tersebut. Kemudian semua
kata yang diketika tadi dan klik icon Merge and Center Cells yang
terdapat di formatting toolbar.
284
285
Pada tampilan AutoFormat Chart klik tombol NEXT. Disini kita bisa
memilih tipe dari chart yang akan kita gunakan, pilih tipe chart yang
di inginkan dengan mengklik pada chart tipe yang tersedia.
286
tombol NEXT, pada bagian ini kita bisa menentukan judul untuk chart
yang kita bikin.
Setelah itu, klik Create, maka sekarang chart tersebut akan muncul
pada workspace kita di OpenOffice.org Calc, hasil chart yang dibuat
bisa dilihat pada gambar 13.30 berikut ini.
287
Sejauh ini kita sudah bisa menggunakan OpenOffice.org Calc baik itu
menggunakan fungsi nya, membuat chart. Sekarang kita akan
mencoba mengedit border untuk sel dari yang kita buat tadi. Blok sel
A3:C5, kemudian klik menu Insert Cells. Pada tampilan Format
Cells, pilih tab Border untuk mengedit border yang akan kita
tampilkan pada sel yang telah kita pilih. Pilih line arrangement, line
style yang sesuai dengan keinginan kita, kemudian klik OK untuk
menutup tampilan Format Cells. Sekarang kita bisa melihat hasil dari
border sel yang telah kita edit tadi.
Sekarang simpan hasil kerja kita ini dengan cara mengklik menu File
Save atau bisa juga dengan menekan tombol CTRL + S pada
keyboard. Pada kotak dialog save yang muncul, tentukan nama dari
file yang akan disimpan, kemudian untuk file tipe pilih
OpenDocument Spreadsheet atau .ods, kemudian klik tombol Save
untuk menyimpannya.
288
289
Pada langkah ketiga kita diminta untuk memilih efek dan kecepatan
dari efek yang kita gunakan pada presentasi. Hasilnya bisa kita lihar
pada jendela preview dari Presentation Wizard. Klik Create untuk
memulai menggunakan OpenOffice.org Impress.
290
291
Sekarang pilih lay out untuk halaman pertama dari presentasi yang
akan kita buat, maka pada akan muncul lay out yang kita pilih tersebut
pada workspace.
292
293
Seperti terlihat pada gambar 13.39 berikut ini, halaman presentasi yang
kita buat sudah disisipi dengan gambar yang kita pilih tadi.
Selanjutnya, jika masih ingin menambahkan halaman lain untuk
presentasi kita, maka langkah nya sama dengan langkah-langkah
sebelumnya. Klik icon Slide kemudian pilih lay out yang diinginkan
untuk halaman tersebut.
Jika kita sudah selesai membuat presentasi sesuai dengan yang kita
inginkan, sekarang kita tentu ingin melihat bagaimana tampilan
presentasi yang kita buat tersebut mulai dari awal sampai akhir, untuk
melihat tampilan presentasi kita klik menu Slide Show Slide Show
294
Atau bisa juga dengan menekan tombol F5 pada keyboard kita. Untuk
presentasi yang kita buat pada buku ini, tampilan nya akan terlihat
seperti ini
295
Pada kotak dialog Export, pilih format Macromedia Flash (SWF) untuk
tipe file yang akan kita simpan, kemudian tentukan nama dari file
296
297
Akan muncul tampilan database wizard, pada bagian ini pilih Create a
new database karena kita ingin membuat database baru, kemudian
klik button Next untuk masuk ke langkah berikutnya.
Pada langkah yang kedua tandai pilihan Yes, register the database for
me serta pilihan Open the database for editing kemudian klik button
FINISH, maka akan muncul kotak dialog yang meminta kita untuk
menyimpan database tersebut, dan klik Save.
298
299
Pada tampilan table wizard yang muncul, pilih kategori yang ingin
digunakan, serta field-field yang akan dipakai.
300
301
inginkan pada tabel ini, jangan lupa untuk menyimpannya jika telah
selesai.
302
303
Maka akan muncul tampilan seperti yang terlihat pada gambar 13.58,
selanjutnya pilih table yang telah kita buat dengan OpenOffice.org
Base tadi. Untuk memasukkan data yang ada pada tabel, pilih data
yang ada pada tabel kemudian blok data tersebut dengan
menggunakan cursor, kemudian pada toolbar Data Sources klik icon
Data to Fields, lihat gambar 13.8 untuk lebih jelasnya lagi. Jika sudah
selesai dengan memasukkan data ke labels, kita bisa mencetak label
tersebut atau menyimpannya. Apa yang kita lakukan ini bisa kita
modifikasi misalnya untuk membuat alamat undangan.
304
Bisa kita bayangkan kemudahan yang akan kita peroleh jika kita ingin
membuat daftar alamat untuk undangan, kita tinggal membuat
database dari alamat tersebut, dan menggunakannya untuk membuat
alamat undangan, sehingga kita tidak perlu melakukan secara manual.
Pada bab ini, penulis hanya memperkenalkan dasar-dasar dari
penggunaan program-program OpenOffice.org. Untuk pembaca yang
selama ini terbiasa menggunakan Microsoft Office, bisa mencoba
OpenOffice.org. Karena program ini tidak kalah dengan Microsoft
Office baik itu dari segi fitur, tampilan maupun kemampuan yang
ditawarkan. Satu hal lagi yang sangat mendasar adalah dengan
kemampuan yang tidak kalah dengan Microsoft Office, kita bisa
memperoleh OpenOffice.org secara bebas. Untuk mempelajari lebih
jauh tentang Openoffice bisa membaca menu help atau website
OpenOffice.org
305
akan terbuka. Applikasi ini secara default tidak ada pada panel menu.
Untuk menampilkan aplikasi ini pada panel menu, klik kanan pada
panel menu, kemudian pilih Edit Menus
Akan muncul tampilan Menu Layout, pada bagian sebelah kiri klik
Applications Graphics, maka akan muncul item-item yang
ditampilkan dan yang tidak ditampilkan jika kita mengklik menu
Applications Graphics, sekarang berikan tanda pada kolom
Show disebelah kiri Document Viewer
306
Selain dengan Evince, kita juga bisa membuka file pdf dengan
menggunakan program Acrobat Reader, untuk menginstall
menggunakan apt, jalankan perintah berikut
$ sudo apt-get install acroread \
mozilla-acroread acroread-plugins
Maka Acrobat Reader akan bisa dijalankan dengan mengklik menu
Applications Office Acrobat Reader. Pada saat program ini
pertama kali dijalankan, maka akan muncul window Adobe Reader
License Agreement klik button Accept untuk bisa menjalankan
program ini. Untuk membuat file-file pdf yang kita punya jika di
double klik pada file tersebut bisa langsung dibuka oleh Acrobat
Reader, bukan oleh Evince, maka klik kanan pada salah satu file pdf
yang ada, kemudian klik Properties. Sekarang klik pada tab Open
With, selanjutnya klik button Add untuk menambahkan Acrobat
Reader, pilih program Acrobat Reader dari daftar tersebut, kemudian
klik Add, sekarang pada tampilan Add Application, klik radio button
disebelah Acrobat Reader, kemudian klik Close.
307
Sekarang jika kita double klik file pdf, maka akan dibuka oleh Acrobat
Reader.
308
13.6 xCHM
xCHM adalah program yang digunakan untuk membuka file-file
dengan format .chm (Compiled HTML Help) yang umum digunakan
pada Windows. File file dalam format CHM seperti e-book, manual
sebuah program, file-file help. Jika kita ingin membukanya pada Linux
maka kita membutuhkan sebuah program yang bisa untuk membuka
file dengan format ini. Program untuk membaca file CHM pada Linux
seperti xCHM, Gnochm, KCHMViewer. Untuk menginstall XCHM,
gunakan perintah berikut ini
$ sudo apt-get install xchm
Maka program ini akan dapat diakses dari menu
Applications Graphics xCHM, atau tekan ALT + F2, ketikkan
xchm
309
Agar file-file chm ini jika di double klik langsung dibuka oleh xCHM,
maka klik kanan salah satu file chm yang ada, dari menu yang muncul
pilih Properties., sekarang klik pada tab Open With
310
Maka sekarang pada tab Open With akan terdapat program bernama
xCHM. Sekarang klik Close untuk menutup tampilan dialog tersebut.
Lakukan double klik pada file chm yang ada, maka sekarang file
tersebut akan langsung dibuka oleh program xCHM. Selain
menggunakan xCHM, untuk membuka file-file dengan chm kita juga
bisa menggunakan program GnoCHM atau KCHMViewer, yang bisa
diinstall melalui perintah apt-get atau lewat synaptic.
BAB 14
MULTIMEDIA
Saat ini Linux tidak lagi menjadi sistem operasi yang membosankan
seperti diawal-awal Linux pertama kali hadir. Untuk pengguna
komputer desktop selain bisa untuk menjalankan program-program
seperti word processor, email tapi juga harus bisa digunakan untuk
mendengarkan musik, menonton film, ripping cd audio, digital imaging
dan lainnya. Saat ini hal-hal tersebut sudah merupakan hal yang
umum dilakukan di Linux, sehingga bisa dikatakan Linux bukan lagi
sistem operasi yang hanya digunakan buat server, tapi bisa digunakan
untuk kebutuhan sehari-hari dalam menggunakan komputer. Pada
Bab ini akan dijelaskan mengenai penggunaan
14.1 Automatix2
14.2 Rhythmbox, Totem, Sound Juicer, Serpentine
14.3 XMMS, Mplayer, VLC
14.4 Game
14.5 gtk-recordMyDesktop, EasyTAG
14.1 Automatix2
Automatix2 merupakan program yang ditujukan untuk
mempermudah kita didalam menginstall program-program seperti
multimedia codecs, media player dan program lainnya. Program yang
sama dengan Automatix2 adalah EasyUbuntu. Pada buku ini penulis
hanya akan membahas mengenai Automatix2. Untuk mendownload
Automatix2, lihat http://www.getautomatix.com/, sesuaikan dengan versi
Ubuntu yang digunakan. Jika anda menggunakan Ubuntu 7.10 i386,
maka download Automatix2 untuk versi Ubuntu 7.10 i386. Setelah
anda mendownload file Automatix2, misalnya untuk Ubuntu 7.10,
312
yang
bernama
automatix2_2.0.5-7.10gutsy_i386.deb,
untuk
menginstallnya bisa dengan melakukan doubel klik pada file tersebut
untuk menginstall menggunakan gdebi. Jika ingin menggunakan
dpkg, perintah nya adalah
$ sudo dpkg -i automatix2_2.0.5-7.10gutsy_i386.deb
Jika anda lebih memilih untuk menginstall dengan menggunakan
APT, maka ikuti langkah-langkah berikut ini:
Edit file /etc/source.list, bisa menggunakan editor favorit anda
$ sudo vi /etc/sources.list
Isikan baris berikut pada file sources.list (sesuaikan dengan rilis yang
digunakan, jika feisty, ganti gutsy dengan feisty)
deb http://www.getautomatix.com/apt gutsy main
Kemudian simpan hasil perubahan tersebut. Selanjutnya, download
key yang akan digunakan untuk signature
$ wget \
http://www.getautomatix.com/keys/automatix2.key
Install dengan gpg, menggunakan perintah berikut:
$ gpg --import automatix2.key
$ gpg --export --armor E23C5FC3 | \
sudo apt-key add Setelah selesai, update indeks dari repository dengan menjalankan
perintah berikut:
$ sudo apt-get update
Install Automatix2 dari command line dengan perintah berikut
$ sudo apt-get install automatix2
Sekarang Automatix2 sudah terinstall pada Ubuntu yang digunakan,
untuk menjalankannya bisa melalui Applications System Tools,
atau melalui command line dengan mengetikkan automatix2. Pada
buku ini penulis menggunakan Automatix2 untuk menginstall
Multimedia
313
314
Multimedia
315
316
Multimedia
317
gstreamer0.10-plugins-bad-multiverse \
gstreamer0.10-plugins-ugly \
gstreamer0.10-plugins-ugly-multiverse \
libxine-extracodecs w32codecs lame libdvdcss2
Kita bisa saja mendownload terlebih dahulu file-file yang dibutuhkan
dan menginstallnya dengan menggunakan perintah dpkg i, akan
tetapi perlu diingat, kita juga harus menginstall satu persatu file-file
dependencies nya. Contohnya jika ingin menginstal gstreamer0.10plugins-ugly_0.10.4-0ubuntu3_i386.deb kita harus menginstall packages
liba52-0.7.4_0.7.4-3_i386.deb,
libdvdread3_0.9.6-3ubuntu1_i386.deb,
libid3tag0_0.15.1b-8_i386.deb, libmad0_0.15.1b-2.1_i386.deb, libmpeg24_0.4.0b-4ubuntu1_i386.deb,
libsidplay1_1.36.59-4_i386.deb
terlebih
dahulu. Jika ingin menginstall secara manual bisa mencari packages
tersebut pada http://packages.ubuntu.com/. Setelah semua codec yang kita
butuhkan terinstall, maka kita akan bisa menggunakan nya untuk
menjalankan file-file yang menggunakan codec tersebut.
Rhythmbox
Rhythmbox adalah program musik untuk memainkan music, klik
menu Applications Sound & Video Rhythmbox Music Player,
atau tekan ALT + F2, (rhythmbox). Pada saat pertama kali dijalankan
akan muncul kotak dialog untuk melakukan konfigurasi Music library,
tentukan direktori dimana kita akan menyimpan file-file musik
tersebut.
318
Untuk membuat playlist dari file music yang ada pada library, klik
menu Music Playlist New Playlist, dan untuk menambahkan
file musik pada library kedalam playlist yang telah kita buat, pilih file
yang diinginkan, kemudian klik kanan dan pilih menu Add to Playlist
[nama_playlist], lihat pada gambar 14.5. Untuk mengatur konfigurasi
dari Rhythmbox, klik menu Edit Preferences. Jika ingin
menambahkan file atau direktori yang berisikan file musik kedalam
library, klik pada menu Music Import File / Import Folder.
Totem Player
Totem dapat digunakan untuk memutar file musik dan film. Untuk
menjalankan totem klik menu Applications Sound & Video
Movie Player, atau tekan ALT + F2, dan ketik (totem). Untuk
menambahkan file musik atau film klik button dengan gambar +
maka akan muncul kotak dialog untuk mencari file musik atau film
yang ingin kita tambahkan tersebut. Interface program ini sangat
sederhana sehingga kita tidak akan mengalami kesulitan didalam
menggunakannya. Totem bisa digunakan untuk memainkan file-file
seperti .mp3, .avi, .wmv, .wma, dan format lainnya, jika codecs yang
dibutuhkan sudah terinstall dengan baik.
Multimedia
319
Sound Juicer
Sound Juicer adalah program yang dapat digunakan untuk memutar
CD Audio, serta untuk meripping CD Audio tersebut. Klik menu
Applications Sound & Video Sound Juicer CD Extractor .
Program ini juga otomatis akan terbuka jika kita memasukkan CD
Audio kedalam drive CD/DVDRom. Ripping merupakan proses
mengumpulkan lagu-lagu dari CD Audio kemudian menyimpannya
kedalam format digital seperti MP3, Ogg. Tampilan dari program
Sound Juicer dapat dilihat pada gambar berikut ini
320
File hasil ekstrak ini akan secara default disimpan dengan format
/home/user_name/artist_name/album_name/track_title.ogg. Pada gambar
14.9 bisa adalah file dari hasil ripping pada CD Audio yang penulis
lakukan, file dapat dimainkan dengan Rhythmbox atau dengan
Totem.
Jika ingin melakukan ripping kedalam format MP3, maka kita harus
mengedit terlebih dahulu Preferences dari Sound Juicer. Klik menu
Edit Preferences.
Multimedia
321
Kembali lagi pada tampilan Edit Gnome Audio Profiles klik nama
profil yang telah kita buat tadi, kemudian klik button Edit, akan
muncul tampilan untuk mengedit profil. Bagian yang terpenting
adalah pada GStreamer Pipeline, isikan baris berikut ini pada text box
didepannya:
audio/x-raw-int,rate=44100,channels=2 ! \
lame name=enc
Catatan: ingat konvensi penulisan yang digunakan, tanda \ berarti anda harus menulis
dalam satu baris, dimana baris diatas harus ditulis:
audio/x-raw-int,rate=44100,channels=2 ! lame name=enc
Dan tandai dengan pada pilihan didepan check box Active. Lihat
gambar 14.12 berikut ini untuk lebih jelasnya
322
Jika telah selesai klik OK, kemudian tutup program Sound Juicer
terlebih dahulu agar bisa menggunakan profil yang baru dibuat tadi.
Jalankan lagi program Sound Juicer, klik Edit Preferences, dan pada
Output Format pilih profile yang telah dibuat tadi. Setelah itu kita bisa
menggunakan Sound Juicer untuk melakukan ripping CD Audio
kedalam format MP3. Cara melakukan ripping sama dengan waktu
meripping dengan format .ogg akan tetapi sekarang formatnya adalah
.mp3.
Serpentine
Serpentine digunakan untuk membuat CD Audio, program ini dapat
langsung mem-burning file musik kedalam CD sehingga menjadi CD
Audio. Jika kita memasukkan Blank CD kedalam CD Writer, maka
akan muncul kotak dialog berikut ini
Multimedia
323
Klik button Make Audio CD, maka akan muncul tampilan dari
program Serpentine. Kita juga bisa menjalankan program Serpentine
dengan cara mengklik menu Applications Sound & Video
Serpentine Audio CD Creator. Untuk menambahkan file audio
seperti mp3, ogg, klik button Add, jika telah selesai untuk mem-burning
ke Blank CD klik button Write to Disc.
Setelah kita mengklik button Write to Disc, akan muncul kotak dialog
yang menanyakan kepada kita Do you want to record your music klik
Write to Disc untuk memulai proses penulisan ke CD, seperti terlihat
pada gambar 14.16 berikut ini
324
Multimedia
325
buka program nautilus satu lagi, kemudian pilih file atau direktori
yang ingin di burning, kemudian drag dan drop di window Burn:///. Jika
anda tidak terbiasa dengan tampilan ini, maka bisa mencoba untuk
menggunakan program seperti GnomeBaker, yang bisa diinstall
melalui apt, synaptic atau menggunakan Automatix2. Program ini
mampu untuk membuat CD Data, Audio CD, Video CD serta bisa
juga digunakan untuk mem-burning DVD. Jika ingin membuat CD
image pada di linux, maka langkah pertama yang harus dilakukan
adalah membuat iso images dari file atau direktori yang diinginkan dan
kemudian file iso tersebut di burning pada media CD. Untuk membuat
iso gunakan perintah mkisofs, format umumnya adalah mkisofs -o
[nama_file.iso] [path_file/direktori_sumber]. Contoh nya pada
gambar dibawah ini akan membuat file dengan nama mp3.iso dari
direktori /home/urangkayo/mp3.
Sekarang buka nautilus file browser, dan cari direktori tempat kita
menyimpan file iso tersebut, kemudian klik kanan pada file iso
tersebut, dan dari menu yang muncul klik Write to Disc
326
Multimedia
327
328
Selain MPlayer, kita juga bisa menggunakan VLC atau Amarok untuk
memainkan file-file multimedia pada Linux. Untuk itu silahkan install
media player tersebut menggunakan Automatix2, APT, atau Synaptic.
Multimedia
329
14.4 Games
Mungkin adakalanya kita merasa jenuh menggunakan programprogram seperti openoffice.org, gimp, dan lainnya. Untuk mengusir
kejenuhan tersebut kita bisa memainkan game yang ada pada Ubuntu.
330
Multimedia
331
Game lain yang ditujukan untuk linux adalah Super Tux Kart, pada
game ini kita memainkan karakter penguin juga didalam balap mobil,
seperti yang terlihat pada gambar 14.26. Game-game ini
membutuhkan kemampuan 3D pada VGA Card yang dimiliki untuk
bisa berjalan dengan baik. Sedangkan game-game 3D yang populer
pada Windows, dan sekarang juga bisa berjalan di Linux, seperti game
DOOM 3, Unreal Tournament 2004, Quake 4. Kita juga bisa
memainkan game-game 3D pada Windows yang belum tersedia
untuk Linux dengan menggunakan program yang bernama wine
(program ini bisa diinstall menggunakan repository Ubuntu),
sedangkan versi non-free dari wine adalah Cedega bisa dilihat pada
http://www.transgaming.com, (program ini khusus untuk
menjalankan game-game Windows pada Linux, dan merupakan
program non-free, tidak bisa diakses pada synaptic atau apt-get).
Jika disaat menggunakan game-game 3D ini, driver VGA yang
digunakan bermasalah, meskipun sudah menggunakan driver yang
tersedia pada repository Ubuntu, untuk itu anda bisa mencoba
menginstall driver yang langsung berasal dari vendor chipsetnya
332
seperti
NVIDIA,
bisa
didownload
pada
website
http://www.nvidia.com/object/linux.html dan http://www.ati.com/ untuk
ATI (Sekarang ATI sudah di ambil alih oleh AMD, http://ati.amd.com).
Setelah proses install driver ini selesai (biasanya proses install driver
yang berasal dari vendor ini membutuhkan packages kernel-header
yang sesuai dengan kernel yang digunakan, pastikan terlebih dahulu
bahwa package kernel-header sudah terinstall dengan baik), sebaiknya
anda merestart komputer yang digunakan agar driver yang telah
diinstal tersebut di load oleh Linux. Satu hal yang penting dalam
menginstall driver VGA adalah jangan lupa untuk membaca file
readme yang disertakan pada driver tersebut. Karena dalam file
tersebut terdapat informasi-informasi penting seperti cara menginstall
driver, melakukan konfigurasi serta cara menangani masalah-masalah
yang mungkin timbul pada saat menginstall driver dari VGA card ini.
Umumnya VGA dengan chipset NVIDIA tidak terlalu rumit untuk
diinstall, hal ini berbeda dengan chipset ATI.
Multimedia
333
334
Untuk menghentikan proses record klik kiri pada icon berwarna putih
di system notification area, maka akan muncul window yang
melakukan encoding video yang direcord. Ingat, jangan mengklik
Cancel, yang akan membuat video yang direcord tadi tidak jadi
disimpan.
Multimedia
335
336
Untuk mengedit informasi pada ID Tag lihat pada frame ID3 Tag.
Disini ada dua tab yaitu Common dan Pictures. Pada tab Common
kita bisa mengganti informasi seperti Title, Artis, Album, Track dan
sebagainya, dan pada tab Pictures kita bisa memasukkan gambar
kedalam file MP3 ini dengan mengklik button
tab Pictures. Setelah selesai mengedit tag dan pictures, klik button
untuk menyimpan hasil perubahan ini, pada saat button Save di klik,
akan muncul dialog box untuk konfirmasi penulisan tag.
Jika kita juga merubah nama file, maka akan muncul dialog box
konfirmasi untuk merubah nama file setelah proses penulisan ID tag
selesai.
Sekarang, file MP3 yang telah kita edit dengan EasyTAG ini jika di
mainkan dengan program MP3 player seperti XMMS akan
menampilkan informasi lagu yang benar pada XMMS. Tag pada file
MP3 bisa disebut sebagai informasi yang menjadi bagian dari file
tersebut. Tag tidak hanya terdapat pada file-file MP3, tapi juga pada
file Ogg Vorbis, WMV, AAC. Tag pada MP3 disebut dengan ID3
(IDentify an MP3). Dari pertama kali ditemukan sampai sekarang ini
ID3 tag sudah mengalami beberapa versi yaitu:
Multimedia
337
Informasi
3 byte
30 byte
30 byte
Artis
30 byte
Album
4 byte
Tahun
30 byte
Field Komentar
1 byte
Genre/Jenis musik
Tabel 14.1 ID3v1
Bersifat fleksibel
338
BAB 15
INTERNET
15.1 Mozilla Firefox
15.2 Evolution
15.3 Gaim, Gyach
15.4 Xchat
15.5 Torrent dan Wget
Sama halnya dengan menggunakan Microsoft Windows, kita juga bisa
mengakses internet dengan menggunakan Ubuntu, selama kita
memiliki account untuk mengakses internet (jika menggunakan dial up
seperti telkomnet instan, bisa juga secara wireless). Kita bisa browsing
menggunakan Mozilla Firefox, chat di messenger dengan GAIM,
Gyach, Pidgins, aMSN atau dengan menggunakan XCHAT, mengirim
dan meneriman email dengan menggunakan Evolution atau
Thunderbird, selain untuk email, Evolution juga bisa digunakan untuk
membuat memo, kalender, alamat kontak dan lainnya. Disini penulis
mengasumsikan pembaca sudah membaca bab yang menjelaskan
cara-cara terkoneksi dengan internet.
340
Atau dengan mengklik icon firefox pada quick launch di panel Ubuntu.
Sekarang akan muncul tampilan dari browser firefox. Untuk
mengkostumisasi firefox, pada firefox klik menu Edit Preferences,
akan muncul tampilan untuk mengedit Preferences dari firefox. Disini
terdapat tab-tab seperti tab Main, Tabs, Content, Feeds, Privacy,
Security, Advandced yang berguna untuk mengkostumisasi firefox.
Pada tab Main kita bisa mengatur halaman yang diload saat firefox
dibuka, mengatur direktori untuk menyimpan hasil download file.
Pada tab Security kita bisa mengatur history, cookies, private data.
Internet
341
Jika disaat kita membuka sebuah website, kita merasa website tersebut
berguna dan ingin kita buka di kemudian hari, maka kita bisa membookmark website tersebut. Untuk membuat bookmark klik menu
Bookmarks Bookmarks This Page.
342
Untuk mengakses bookmarks yang telah kita pilih ini, klik menu
Bookmarks [Nama_Kategori] [Nama Bookmarks], lihat gambar
berikut ini
Jika ingin membersihkan cookie, history, private data (hal ini berguna jika
kita menggunakan komputer secara bersama atau di warnet) klik
menu Tools Clear Private Data
Internet
343
344
Lakukan hal yang sama untuk addons yang ingin anda install,
misalnya adblock plus yang berguna untuk memblock iklan dan pop
up. Setelah menginstall dua addons ini, anda bisa mencoba membuka
website yang memiliki iklan yang banyak seperti salah satu portal
berita terbesar di Indonesia, maka iklan diwebsite tersebut tidak akan
tampil sama sekali. Jika ada iklan yang tidak terblock, klik kanan pada
iklan tersebut kemudian klik Adblock Image atau Adblock Frame
untuk memblocknya.
Addons lain yang mungkin berguna seperti addons translator, dimana
addons ini menggunakan google translator didalam melakukan
translate suatu bahasa sehingga kita tidak perlu membuat website
google translate, tapi cukup klik kanan pada website yang ingin
ditranslate, dan pilih menu translator. Kita juga bisa mengganti
theme firefox sesuai dengan yang diinginkan yang bisa dicari pada
alamat yang sama. Setelah diinstall, klik menu Tools Add-ons,
kemudian klik Theme, pilih theme yang telah diinstall dan klik button
Use Theme. Lihat gambar 15.10 berikut
Internet
345
Pada Bab 3 telah dijelaskan juga mengenai fitur baru Ubuntu 7.10 yang
memudahkan kita didalam menginstall plugins untuk Firefox, untuk
itu silahkan dilihat kembali pada Bab 3 dari buku ini.
15.2 Evolution
Evolution merupakan sebuah program email client yang mampu
menerima berbagai macam tipe protokol yang digunakan dalam email
sever. Evolution tidak hanya bisa digunakan untuk mengirim dan
menerima email, tapi juga bisa digunakan dalam membuat memo,
kalender dan lainnya. Untuk menggunakan Evolution sebagai email
client kita harus memiliki informasi mengenai email yang kita miliki,
seperti alamat email, tipe server untuk mengirim dan menerima email
(bisa POP3, SMTP dan lainnya). Informasi ini bisa anda tanyakan pada
ISP anda berlangganan akses internet atau pada sistem administrator
anda di kantor. Untuk bisa menggunakan Evolution, klik menu
Applications Internet Evolution Mail
Jika kita menggunakan Evolution untuk pertama kalinya, maka akan
muncul kotak dialog untuk mengkonfigurasi Evolution. Klik button
Forward pada kotak dialog yang muncul untuk melanjutkan proses
tersebut.
346
Internet
347
348
Internet
349
Untuk mendownload email dari server yang telah kita konfigurasi tadi
klik button Send and Receive, maka Evolution akan segera
mendownload email dari server. Sesuai dengan konfigurasi yang telah
di tetapkan sebelumnya.
Untuk mengirim email, kita bisa mengklik button New atau melalui
menu dari Evolution. Sekarang klik button New, maka akan muncul
tampilan untuk mengirim email. Pada tampilan ini terdapat button
Send untuk mengirimkan email yang telah kita buat, Save Draft
untuk menyimpan email yang dibuat sebagai sebuah draft, Attach
untuk menambahkan file kedalam email kita, dan button lainnya.
350
Internet
351
Untuk melihat memo yang telah dibuat, klik tab Memos pada
tampilan Evolution, kemudian klik nama memo yang ingin dibuka.
352
Sekarang akan muncul tampilan dari Gaim. Karena kita baru pertama
kalinya menjalankan Gaim, maka pada tampilan ini belum terdapat
account untuk messenger.
Sekarang klik pada button Add untuk membuat account. Disini penulis
akan membuat account untuk Yahoo! Messenger. Akan muncul
tampilan Add Account.
Internet
353
Pada protocol pilih Yahoo!, untuk screen name isikan dengan nick atau id
kita di Yahoo!. Kemudian isikan password serta alias untuk account
tersebut. Kita juga bisa menandai pilihan Remember Password jika
komputer tersebut hanya dipakai oleh anda sendiri, kemudian klik
button Save. Sekarang pada tampilan account dari Gaim akan ada
account yang telah kita buat. Untuk login menggunakan account yang
telah dibuat, klik pada check box Online.
Maka akan muncul tampilan untuk account kita. Disini kita bisa
menambah buddy (teman), chat, atau join ke chat room. Untuk
menambah buddy pada account Yahoo! Messenger kita, klik menu
Buddies Add Buddy atau dengan menekan CTRL + B. Isikan nick
buddy yang akan kita add, dan screen name, alias, group, kemudian klik
button Add. Jika teman yang kita add tersebut login, maka pada account
nya akan muncul kotak dialog yang memberitahukan ada yang ingin
memasukkannya kedalam buddy list.
Gyach
Selain menggunakan GAIM, kita bisa menggunakan program yang
bernama Gyach untuk Yahoo! Messenger. Untuk menginstall
Gyach,bisa lewat synaptic atau apt. Sama seperti GAIM, kita hanya
bisa menggunakan account Yahoo! yang telah diregistrasi sebelumnya.
Berikut ini bisa dilihat tampilan dari Gyach yang penulis gunakan
354
Setelah sukses login, klik tab Buddies untuk melihat daftar buddy
yang ada di account Yahoo!. Untuk chat, tinggal klik buddy yang
online akan muncul sebuah window baru untuk chat.
Internet
355
Program lain yang bisa digunakan adalah aMSN yang khusus untuk
MSN Messenger. Kemudian Pidgins Internet Messenger, untuk
Pidgins, program ini sudah terinstall secara default pada Ubuntu 7.10
(Gutsy). Program mana yang terbaik? Semuanya itu tergantung pada
anda sendiri, silahkan mencoba satu persatu program tersebut dan
merasakan kelebihan dan kekurangannya sehingga anda bisa
menemukan program messenger yang cocok dengan kebutuhan anda
sendiri.
15.4 XChat
Internet Relay Chat atau IRC memungkinkan kita untuk bisa
berkomunikasi dengan orang lain secara real time. Untuk bisa
berkomunikasi kita harus terhubung dengan IRC Server yang
menyediakan channel tempat berkomunikasi. Untuk bisa terhubung
dengan IRC Server kita membutuhkan IRC client. Salah satu IRC client
yang populer pada Linux adalah XChat. Jika belum terinstall install
terlebih dahulu menggunakan synaptic atau apt.
$ sudo apt-get install xchat
Selanjutnya klik menu Applications Internet XChat IRC
356
Internet
357
/help
/nick nick_baru
358
] 1,431,360
34.15K/s
ETA 3:55:23
BAB 16
SHELL dan COMMAND LINE
Pada Bab ini akan dijelaskan mengenai:
16.1 Linux Shell (Bash Shell)
16.2 Perintah Linux yang umum digunakan
16.3 Vi/Vim
16.4 Emacs
360
games
include
lib
man
sbin
share
src
$ /usr/bin/whoami
urangkayo
Pada saat pertama kali kita buka gnome-terminal kita akan
dihadapkan dengan shell prompt (tanda $ menandakan user biasa pada
bash shell, dan % pada C shell, dan tanda # menandakan login sebagai
root). Tanda $ yang diikuti dengan kedip-kedip pada kursor
menandakan shell tersebut sedang menanti command yang akan
diketikkan. Pembahasan mengenai shell pada bab ini khusus
mengenai BASH Shell, karena merupakan default shell yang
digunakan oleh Ubuntu. Bentuk umum dari shell prompt pada
Ubuntu,
urangkayo@capoex:~$
urangkayo
capoex
~
: melambangkan home direktori dari username
(~ berarti /home/urangkayo (karena nama username nya
disini adalah urangkayo))
$
: menandakan bahwa user yang login adalah
user biasa, untuk root biasanya dilambangkan dengan tanda #
Ketika kita mengetikkan sebuah command pada shell, maka shell akan
mencari program tersebut sesuai dengan nama yang kita ketikkan
pada direktori yang sesuai dengan isi dari PATH. Ketika program
361
362
$ export PATH=$PATH:~/latihan/script
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/
sbin:/bin:/usr/bin/X11:/usr/games:/home/urangkayo/b
in:/home/urangkayo/latihan/script
Sekarang jalankan lagi file latihan.sh
$ latihan.sh
Lagi Belajar Linux Ubuntu
Good Luck!
Yang perlu diingat adalah perubahan ini hanya bersifat sementara, jika
kita keluar dari session login, menutup terminal maka isi dari $PATH
akan kembali seperti semula. Jika ingin perubahan tersebut bersifat
permanen, kita harus mengedit file .profile yang terdapat dalam home
direktori. Buka file .profile dengan text editor kemudian tambahkan
baris berikut ini pada file .profile
PATH=$PATH:~/latihan/script
Simpan file tersebut, dan sekarang perubahannya telah bersifat
permanen walaupun kita keluar dari terminal atau session maupun
merestart OS nya. Untuk melihat efeknya, keluar dari session login
kemudian login kembali dengan username yang sama dan gunakan
perintah echo $PATH untuk melihat hasilnya. Jika kita meragukan
sebuah command berasal dari PATH yang seharusnya atau berasal dari
PATH yang tidak dipercaya, misalnya system yang digunakan sudah
dimasuki penyusup, dan mengganti sebuah command seperti ls
dengan ls miliknya sendiri, untuk itu kita bisa menggunakan command
built-in type untuk melihat command ls berasal dari mana. Pada
perintah dibawah terlihat bahwa PATH nya ada di /bin/ls. Jika PATH
nya ternyata bukan di /bin/ls bisa jadi system yang digunakan sudah
dimasuki penyusup.
$ type -a ls
ls is /bin/ls
363
Satu hal lagi yang perlu diingat ketika bekerja dengan shell adalah,
shell hanya akan menjalankan program yang memiliki hak akses
eksekusi, contoh berikut memperlihatkan output ketika kita
memanggil program yang tidak memiliki hak akses eksekusi. Sebagai
contoh buat script dengan nama test yang disimpan pada direktori
latihan, file ini dijalankan dari direktori tempat disimpannya
#!/bin/bash
uname -a
$ test
bash: test: Permission denied
Ada dua alternatif didalam menjalan script test yang dibuat,
$ sh test
atau dengan melakukan chmod pada file tersebut
$ chmod 755 latihan/test
$ ./test
Shell pada *NIX sudah ada sebelum GUI ada, meskipun sekarang ini
bisa dibilang sistem operasi *NIX sudah berbasiskan GUI, akan tetapi
shell tetap menawarkan sesuatu yang lebih dibandingkan GUI.
Dengan mengenal shell, berarti kita mampu untuk bekerja lebih cepat,
contohnya jika kita ingin mendelete file-file yang terdapat pada home
direktori kita yang memiliki ekstension .tmp. Pada GUI mungkin kita
akan membuka nautilus, melakukan search untuk .tmp, men-select
satu-satu file tersebut, kemudian mendeletenya. Dengan shell, cukup
jalankan perintah berikut
$ rm *.tmp
Shell menterjemahkan command yang kita input, menjalankan sebuah
program atau lebih untuk setiap command yang kita input. Gabungan
dari command- command yang di tempatkan dalam sebuah file disebut
dengan shell script. Command yang terdapat pada shell script
dijalankan secara berurutan. Dengan shell kita bisa:
364
365
366
$ man ls
$ info ls
Untuk mengetahui tipe shell yang sedang kita gunakan, pada shell
prompt ketik perintah berikut ini
$ /bin/echo $SHELL
/bin/bash
Ubuntu menggunakan bash sebagai shell defaultnya. Pada Ubuntu
yang penulis gunakan hanya terinstall satu jenis shell yaitu bash. Jika
pada sistem yang digunakan terinstall banyak shell, kita bisa
berpindah dari satu shell ke shell yang lain dengan menjalankan
command berikut ini:
$ /usr/bin/chsh -s /bin/zsh urangkayo
Password:
Perintah diatas akan mengganti default shell dari user urangkayo
menjadi zsh shell. Hasilnya akan kelihatan ketika kita log out dari
session yang sekarang dan login lagi, maka shell yang muncul adalah
zsh. Untuk berganti shell langsung, kita bisa mengetikkan nama shell
yang telah terinstall sebelumnya. Sekarang penulis akan mencoba
menginstall zsh shell
$ sudo apt-get install zsh
Setelah proses installasi selesai, maka untuk menggunakan shell ini
ketik pada gnome-terminal command berikut
$ /bin/zsh
Lihat tampilan prompt nya sudah berbeda dibandingkan dengan bash,
untuk lebih pastinya, jalankan lagi command echo $SHELL untuk
memastikan bahwa kita sudah pindah ke shell yang diinginkan.
Beberapa fitur penting yang mungkin berguna saat kita menjalankan
sebuah command dalam bash shell adalah:
1. Kemampuan untuk mengulang command terakhir yang
dijalankan. Jika command terakhir yang kita ketik adalah
367
368
$ cd /usr/l
lib/
lsb_release -a
uname -a
route -n
Dari output diatas, jika kita ingin mengulang command yang telah
kita ketikkan sebelumnya, contoh penulis ingin mengulang
command route -n, maka cukup dengan mengetikkan tanda !
diikuti dengan nomor command dari history
$ !5
route -n
369
/usr/lib/libz.so.1.2.3.3
370
No
such
file
or
$ ls /usr/lib/lib[!A-Z]*
/usr/lib/libapt-inst-libc6.6-6.so.1.1
/usr/lib/libapt-pkg-libc6.6-6.so.4.5.0
/usr/lib/libasprintf.so.0
Selain penggunaan tanda [...], kita juga bisa menggunakan {...}.
Contoh penggunaannya adalah
$ echo urang{kayo,miskin}
urangkayo urangmiskin
$ echo h{a{lo,low,luw},i} urangkayo
halo halow haluw hi urangkayo
$ echo h{a{lo,low,luw},i}
halo halow haluw hi
$ echo h{a{lo,low,luw},i}urangkayo
halourangkayo
hiurangkayo
halowurangkayo
haluwurangkayo
Dari output pada contoh untuk {...} diatas penulis yakin anda bisa
mengambil kesimpulan mengenai cara kerjanya. Disini kita lihat
bahwa kata yang ada didalam tanda {} akan digabungkan dengan
kata diluar dari tanda {}.
371
on
$ shopt -o vi
vi
off
372
373
$ stty -a
speed 38400 baud; rows 24; columns 80; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof
= ^D; eol = <undef>;
eol2 = <undef>; swtch = <undef>; start = ^Q;
stop = ^S; susp = ^Z; rprnt = ^R;
werase = ^W; lnext = ^V; flush = ^O; min = 1;
time = 0;
Selain itu kita bisa melihat kombinasi keyboard pada manual
page dari bash shell dibagian Readline. Tombol kontrol yang
memiliki arti yang umum beberapa diantaranya adalah:
Control Key
Stty Name
Function Description
CTRL + C
intr
Menghentikan command
CTRL + D
eof
CTRL + S
stop
CTRL + Q
DEL or CTRL +?
erase
CTRL + U
kill
CTRL + Z
susp
Suspend command
Multiple command
Pada linux, kita bisa menjalankan banyak command dalam satu baris,
dimana perintah tersebut dieksekusi berdasarkan symbol yang
digunakan untuk memisahkannya. Jika command dipisahkan oleh
tanda ; (semicolon), maka command akan di jalankan secara
berurutan, mulai dari yang pertama sampai terakhir
$ printf "%s\n" "Pertama" ; printf "%s\n" "Kedua"
374
Pertama
Kedua
Jika command dipisahkan oleh dua && (double ampersand),
command berikutnya akan dijalankan jika command sebelumnya
sukses di eksekusi. Jika gagal maka command yang berikutnya tidak
akan dieksekusi. Perhatikan contoh dibawah ini
$ date && printf "%s\n" "Command date sukses"
Tue Nov 13 14:45:08 WIT 2007
Command date sukses
$ date1 && printf "%s\n" "Command date"
-bash: date1: command not found
Hal ini umum dilakukan didalam mengcompile program dari source
code, dimana kita bisa menggabungkan configure dan make.
$ ./configure --prefix=xxx && make
Proses make hanya di eksekusi apabila proses ./configure sukses.
Jika command dipisahkan oleh dua || (double vertical bar), command
kedua akan dijalankan apabila command pertama gagal.
$ date || printf "%s\n" "command kedua"
Tue Nov 13 14:55:06 WIT 2007
$ date1 || printf "%s\n" "command kedua"
-bash: date1: command not found
command kedua
Selain multiple command, shell juga bisa menerima baris command
lebih dari satu baris, misalkan kita mengetik sebuah command yang
panjang dan karena lebar screen yang terbatas, kita bisa memecahnya
menjadi beberapa baris dengan menggunakan tanda \ (backslash) di
setiap akhir baris, dimana nanti akan muncul tanda >
Sebagai contoh kita ingin menampilkan string "baris pertama baris
kedua baris ketiga", untuk itu pada prompt ketik echo baris pertama \
375
376
Selain standar input dan standar output, ada juga standar error,
standar error memiliki stream ID 2, sedangkan stream ID 1 dimiliki
377
message.error
output.list
shell_script
$ cat message.error
ls: file.doc: No such file or directory
Untuk meredirect standar output dan standar error kedalam satu file
yang sama, gunakan command berikut. Ingat antara angka 2, >, & dan
angka 1 tidak boleh ada spasi.
$ ls -l file.txt file > output_message 2>&1
$ cat < output_message
ls: file: No such file or directory
-rw-r--r-- 1 urangkayo
20:03 file.txt
urangkayo
43
2007-04-06
378
Pipeline
Pipeline akan mengirimkan output sebuah command menjadi input
bagi command berikutnya. Contohnya, pada command dibawah ini,
command ls akan menghasilkan daftar file yang ada pada pada
direktori /usr/bin kepada command grep, kemudian grep akan
menampilkan output dari ls tersebut hanya yang sesuai dengan
expression yang ada pada grep, disini adalah zsh.
$ ls -l /usr/bin | grep zsh
lrwxrwxrwx 1 root
root
28 2007-11-12
06:41 zsh -> /etc/alternatives/zsh-usrbin
Dengan pipeline kita bisa menggabungkan banyak command, lihat
contoh berikut ini. Pada command pertama, output ls di kirim ke
command sort, dimana sort akan mengurutkan output dari ls tersebut,
kemudian hasilnya dikirim ke command less, yang berguna apabila
hasil sort, ternyata lebih dari satu layar, maka setiap tampilan satu
layar, output tersebut akan di pause sampai kita tekan tombol SPACE.
$ ls -l /usr/lib/ | sort -n | less
$ cut -d: -f1 < /etc/passwd | sort
backup
bin
Perintah cut diatas akan menampilkan kolom pertama dari file
/etc/passwd dan mengurutkannya.
Background jobs
Umumnya pada shell untuk bisa menjalankan perintah yang lain, kita
harus menunggu perintah sebelumnya selesai. Contohnya jika kita
mengekstrak file kernel dalam bentuk .tar.bz2
$ tar xjvf file_kernel.tar.bz2
Sebelum proses ini selesai, maka kita tidak bisa menjalankan perintah
yang lain. Agar kita bisa menjalankan perintah lain pada waktu
perintah yang sebelumnya masih berjalan, maka tambahkan tanda &
didepan perintah tersebut, yang membuat perintah tersebut berjalan
379
Running
Done
Jangan pernah menggunakan background jobs untuk perintahperintah yang bersifat interaktif, karena hal ini tidak akan bertindak
seperti yang diinginkan, seperti menggunakan perintah useradd pada
background jobs. Untuk mengatur prioritas sebuah background jobs
gunakan perintah nice.
Seperti yang sudah diketahui, pada linux untuk mengetahui manual
atau informasi dari sebuah perintah bisa menggunakan man atau info.
Bash shell sendiri memiliki built-in help command untuk
menampilkan informasi mengenai built-in command dari bash shell,
seperti perintah cd berikut,dimana perintah ini tidak memiliki man,
karena merupakan perintah built-in pada bash shell
$ man cd
No manual entry for cd
$ help cd
cd: cd [-L|-P] [dir]
380
macro
packages
dan
381
Shell Alias
Shell alias digunakan untuk mempersingkat sebuah command.
Misalkan kita sering menggunakan perintah ls -lah dalam melihat isi
sebuah direktori, dengan alias kita bisa mempersingkatnya, misalkan
dengan ll
$ alias ll='ls -lah'
$ ll
Setelah kita mengetikkan alias diatas, output dari perintah ls -lah akan
sama dengan output saat kita mengetikkan ll pada prompt shell. Agar
alias tersebut bisa permanen, kita harus menambahkannya pada file
.bashrc di home direktori kita.
Mengkostumisasi Prompt
Seperti yang telah kita lihat, prompt dari bash shell untuk user biasa
adalah $ dan # untuk root, yang diikuti dengan informasi seperti nama
user, working direktori, hostname. Tampilan ini bisa kita modifikasi
dengan memodifikasi isi variable PS1 (prompt string 1) yang
digunakan oleh bash sebagai prompt utama. Sekarang kita lihat isi dari
variable PS1 terlebih dahulu
$ echo $PS1
${debian_chroot:+($debian_chroot)}\u@\h:\w\$
Contohnya kita ingin menampilkan nama shell setelah hostname
$ export PS1="\u@\h using->\s:\w\$ "
urangkayo@gateway using->-bash:~$ echo $PS1
\u@\h using->\s:\w$
Terlihat diatas, begitu perintah export selesai, prompt shell kita juga
ikut berubah. Escape karakter yang bisa digunakan dalam
memodifikasi shell prompt pada bash bisa dilihat pada tabel 16.2
dibawah ini. Anda bisa menggunakan daftar yang ada pada tabel ini
didalam melakukan kustomisasi shell prompt sesuai yang diinginkan:
382
\a
\A
\d
\D{s}
\e
\h
Hostname
\H
\j
\l
tty device
\n
New line
\r
carriage return
\s
Nama shell
\t
\T
\@
\u
Username
\v
Bash version
\V
Bash release
\w
\W
\!
\#
\$
\nnn
383
\\
Backslash
\[
\]
Hash table
Hash table digunakan untuk melihat lokasi dari perintah yang pernah
kita gunakan. Seperti yang sudah diketahui setiap kali kita
menjalankan sebuah command tanpa path lengkap, maka shell akan
mencari command tersebut pada direktori yang ada di variable PATH.
Ketika command tersebut ditemukan, shell akan menempatkan
command tersebut pada hash table, sehingga jika kita menjalankan
command yang sama lagi maka shell akan melihat hash table terlebih
dahulu. Untuk melihat hash table gunakan perintah builtin shell
$ hash
hits
command
16
/bin/date
19
/usr/bin/man
4
15
/bin/ls
/usr/bin/clear
Spesial karakter
Bash shell memiliki spesial karakter yang memiliki arti khusus bagi
shell itu sendiri, spesial karakter ini memiliki arti khusus bagi bash
shell didalam kita menjalanakan sebuah perintah atau shell script,
beberapa diantaranya adalah:
384
Character
Meaning
Home directory
Comment
Variable expression
&
Background job
String wildcard
Start subshell
End subshell
Pipe
'
Strong quote
"
Weak quote
<
Input redirect
>
Output redirect
385
Single-character wildcard
386
urangkayo book's
Perintah echo yang ini menampilkan string yang ingin kita tampilkan.
Bagaimana hal ini terjadi, sekarang perhatikan 'urangkayo book' akan
dianggap sebagai satu string, kemudian \' dianggap sebagai escape
karakter untuk menampilkan tanda ' (single quote) dan selanjutnya 's'
akan menampilkan karakter s, sehingga keseluruhan baris tersebut
akan menampilkan string urangkayo book's. Hal ini akan berbeda jika
kita menggunakan perintah printf. Anda bisa mencoba sendiri dengan
mengganti echo menjadi printf pada tiga perintah diatas.
Shell options
Bash shell mempunyai beberapa options yang bisa kita atur, beberapa
diantaranya telah disebutkan seperti options untuk emacs mode, vi
mode. Untuk melakukan modifikasi sebuah options pada bash shell
kita bisa menggunakan perintah set -o options_name, seperti set -o
emacs untuk merubah mode editing menjadi emacs mode. Beberapa
options lain seperti
ignoreeof : tidak mengizinkan penggunaan CTRL + D untuk log out
$ set -o ignoreeof
Sekarang tekan tombol CTRL + D berbarengan maka akan muncul
seperti dibawah ini
$ Use "logout" to leave the shell.
noclobber : tidak mengizinkan penggunaan output redirection (>)
untuk meng-overwrite file yang sudah ada. Contoh jika options ini
tidak diset, dan kita mempunyai file dengan nama document1.txt,
pada saat kita menggunakan perintah cat > document1.txt, maka file
yang lama akan dioverwrite oleh file yang baru. Jika option ini diset
$ set -o noclobber
$ touch test
$ cat > test
-bash: test: cannot overwrite existing file
noglob : tidak mengizinkan penggunaan wildcard expansion * dan ?
387
$ set -o noglob
$ ls -l /usr/local/sbin/a*
ls: /usr/local/sbin/a*: No such file or directory
Terlihat options noglob akan menganggap a* sebagai sebuah file
bukan sebagai wilcard untuk karakter apapun, sehingga ketika kita
melakukan perintah ls, akan muncul error No such file or directory.
nounset : memunculkan pesan error jika kita menggunakan variable
yang tidak terdefenisi. Contoh buat sebuah variable
$ NICKNAME=urangkayo
$ echo $NICKNAME
urangkayo
$ unset -v NICKNAME
$ echo $NICKNAME
Untuk perintah diatas, yang pertama kita mendefenisikan variable
NICKNAME dengan value urangkayo, selanjutnya kita panggil
variable tersebut menggunakan echo $NICKNAME yang
memunculkan urangkayo pada screen. Perintah ketiga meng-unset
atau menghapus variable NICKNAME, kemudian kita coba panggil
lagi dengan echo, dimana hanya akan memunculkan baris kosong
pada screen. Sekarang aktifkan options nounset pada shell
$ set -o nounset
$ echo $NICKNAME
-bash: NICKNAME: unbound variable
Pada perintah yang kedua, kita panggil variable yang sebelumnya
telah dihapus, sehingga akan muncul error seperti diatas. Untuk
melihat options shell apa saja yang aktif atau non aktif gunakan
perintah dibawah ini, options yang aktif ditandai dengan on dan
yang tidak aktif ditandai dengan off
$ set -o
388
389
$ logout
Modifikasi seperti merubah prompt shell secara permanen, mode
editing yang digunakan oleh shell bisa ditempatkan pada file .profile.
Untuk interaktif session yang bukan login session, maka bash akan
melihat pada file /etc/bash.bashrc dan .bashrc. Pada .bashrc,
umumnya digunakan untuk menempatkan sebuah fungsi alias bagi
sebuah command, misalnya alias ls=ls qF. Pada distro Ubuntu, file
.bashrc ini juga dijalankan pada waktu login session, hal ini bisa dilihat
pada file .profile di Ubuntu terdapat baris berikut
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
fi
.bash_logout merupakan file yang dijalankan pada saat kita logout
dari session bash shell. Jika kita ingin menghapus isi direktori tertentu
pada saat logout, maka perintah tersebut harus ditempatkan pada file
.bash_logout. Sedangkan .bash_history berisikan command-command
yang pernah kita input pada shell.
dot File pada Linux
Linux biasanya menyimpan file-file konfigurasi dari user, sistem, shell
dalam bentuk file yang diawali dengan tanda . (titik) didepan nama
filenya. Contohnya .bash_history, .bashrc, .bash_logout. File-file ini
dinamakan dengan nama dot file, yang berisikan konfigurasi dari
program atau shell. Umumnya file-file ini terdapat pada home
direktori dari user, dan file ini merupakan file yang dihidden
(tersembunyi jika di lihat dengan perintah ls -a, untuk melihatnya
gunakan argument -a, ls -la). Tidak semua file dengan tanda . (titik)
merupakan dot file. Jika ingin membuat file atau direktori yang
390
dihidden awali nama file atau direktori tersebut dengan tanda . (titik),
contoh
$ mkdir .hidden
$ touch .hidden_file
Untuk melihatnya gunakan perintah ls dengan options -a.
$ ls -la
Tanda . (titik) selain berarti hidden file, juga memiliki arti khusus bagi
shell. Sekarang buat direktori kosong dengan menggunakan perintah
berikut
$ mkdir direktori_kosong
$ cd direktori kosong
$ ls -la
. ..
Hasil dari ls -la pada direktori ini berupa tanda . (titik satu kali) dan ..
(titik dua kali). Tanda titik satu kali disini berarti current direktori
(merujuk pada direktori kita aktif sekarang) sedangkan tanda titik dua
kali berarti parent direktori (merujuk pada satu direktori diatas
direktori sekarang. Contoh penggunaannya
$ cd ..
Perintah diatas berarti , pindah (change direktori) satu tingkat keatas
dari direktori aktif sekarang, jika direktori aktif kita adalah
/home/urangkayo/direktori_kosong, maka perintah cd .. diatas akan
membawa kita ke direktori /home/urangkayo. Yang perlu diingat
adalah ketika kita bekerja dengan file seperti membuat file atau
direktori, pemberian tanda titik berarti hidden file atau direktori pada
Linux.
Permisions pada File dan Direktori
Pada Linux, permisi file (file permission) dan direktori sangat berperan
penting untuk memproteksi file dan direktori dari akses yang tidak
sah. Pada shell kita bisa menggunakan perintah ls l untuk melihat
391
User
Groups
Others
rwx
-xr
--x
test
rw-
r--
r--
file1
: karakter device
: pipe devices
: socket device
392
Permisi file yang dilambangkan diatas bisa ditulis dengan angka yang
disebut dengan absolute mode, dimana
4
Jika ada file dengan permisi rwx, bisa disimbolkan dengan angka 7 (4
+ 2 + 1). Perintah-perintah yang berhubungan dengan file permission ini
adalah chmod (untuk merubah permisi file), chown (merubah pemilik
file) dan chgrp (merubah group file).
Simbol-simbol yang biasa digunakan dalam merubah permisi dari file
adalah :
u
: group files
: others
$ chmod = file2
$ ls -l file2
---------- 1 urangkayo urangkayo
393
Symbolic Links
Symbolic link merupakan file yang merujuk kepada file lain, seperti
halnya shortcut pada MS Windows. Pada output dari ls -l dibawah ini
terlihat bahwa file umask_file2 merupakan symbolic link dari file
umask_file, hal ini ditandai dengan tanda -> yang merujuk kepada file
aslinya. Penggunaan symbolic links tidak menghabiskan ruang pada
harddisk, hal ini berbeda dengan penggunaan hard links.
$ ls -l
total 4
drwxr-x--x 2 urangkayo urangkayo 4096 2007-11-14
09:26 umask_dir
-rw-r----- 1 urangkayo urangkayo
09:26 umask_file
0 2007-11-14
10 2007-11-15
394
Hal sebaliknya adalah jika kita men-delete file symbolic links, maka
tidak akan memiliki pengaruh apapun terhadap file aslinya. Untuk
membuktikan file symbolicnya menjadi rusak linknya, perhatikan
error yang muncul disaat penulis melakukan perintah cat pada file
symbolic link yang telah didelete file aslinya
$ cat umask_file2
cat: umask_file2: No such file or direktory
Hal ini sama persis seperti shortcut pada MS Windows, dimana jika
file aslinya dihapus, maka shortcut tersebut tidak akan bekerja.
395
396
dot
Net'
dot
Net"
$ echo $MYVAR2
CaPoeX dot Net
$ echo "$MYVAR2"
CaPoeX
dot
Net
$ MYVAR3="CaPoeX
$ echo $MYVAR3
397
dot
Net
398
399
Selain environment variable yang sudah ada dalam sistem itu sendiri,
kita juga bisa mendefenisikan sendiri environment variable. Misalkan
kita ingin membuat environment variable untuk X yang menunjuk
kepada direktori /home/urangkayo/latihan/temp/sampah sehingga
kalau kita ketik cd $X pada shell akan langsung menuju ke
/home/urangkayo/latihan/temp/sampah.
$ X=/home/urangkayo/latihan/temp/sampah
$ export X
$ cd $X
Jika kita ingin menghapus isi dari variable X, gunakan perintah unset.
$ unset X
Umask
Umask digunakan untuk menentukan hak akses default untuk file
yang dibuat oleh user. Pada Ubuntu nilai umask default adalah 022,
yang bisa dilihat dengan mengetikkan perintah umask pada shell.
Untuk mengetahui cara kerja umask, kita harus mengetahui mengenai
file permission pada Linux, seperti yang sudah dibahas diatas. Umask
menggunakan absolute mode permission dari chmod. Seperti yang
telah kita ketahui, hak akses terdiri atas owner,groups, others, dimana
bisa dilihat seperti pada gambar berikut
400
memiliki hak akses read, execute (5), others memiliki hak akses execute
(2), yang bisa dilihat pada tabel berikut
Owner
Groups
Others
Read
Write
Execute
Read
Write
Execute
Read
Write
Execute
0 2007-11-14
Disini dapat kita lihat bahwa meskipun hak akses default yang diset
adalah 751, tapi ketika kita membuat sebuah file, hak akses yang
diberikan adalah 640, hal ini umum pada penggunaan umask untuk
401
402
16.2 Perintah
Linux
yang
umum
digunakan
Pada sub bab ini akan ditampilkan beberapa perintah-perintah dasar
yang umum digunakan ketika kita bekerja dengan command line.
Untuk melihat lebih lengkap lagi dari daftar perintah-perintah linux,
bisa melihat pada lampiran E dari buku ini.
man
Digunakan untuk melihat manual perintah. Sintak dari perintah ini
adalah man [nama_perintah], contohnya
$ man ls
$ man man
Perintah yang pertama akan menampilkan manual dari perintah ls,
dan perintah yang kedua menampilkan manual dari man itu sendiri.
Biasakan untuk melihat manual sebuah perintah untuk mengetahui
parameter apa saja yang bisa dilewatkan pada perintah tersebut, yang
berguna ketika kita menjalankan sebuah perintah.
info
Digunakan untuk melihat kegunaan sebuah perintah pada Linux
(sama dengan perintah man). Sintak perintah ini adalah info
[nama_perintah], contohnya
$ info ls
$ info mkdir
ls
Digunakan untuk menampilkan isi dari sebuah direktori, parameter
yang sering digunakan dalam perintah ls adalah l (menampilkan
dalam long format), -a (menampilkan hidden files). Sintaknya adalah
ls [nama_direktori], contohnya
$ ls
admin
linux
programming
server
shell_editor
403
$ ls -l
total 10
drwxr-xr-x 2 urangkayo urangkayo 2048 2006-12-17
04:47 admin
$ ls -la
total 17
drwxr-xr-x
04:49 .
cp
Perintah untuk men-copy sebuah file atau direktori. Sintak dari
perintah ini adalah cp [file1] [file2] atau cp [file1] [file2] [file]
[direktori_tujuan], contoh penggunaannya, perintah berikut akan
meng-copy file latihan1 dengan nama latihan2
$ cp latihan1 latihan2
Meng-copy file latihan1 latihan2 ke direktori temp
$ cp latihan1 latihan2 temp/
Untuk meng-copy direktori, gunakan option -r pada perintah cp.
$ cp -r direktori1 direktori2
mv
Perintah untuk me-rename atau untuk memindahkan sebuah file atau
direktori. Sintak perintah ini adalah mv [file1] [file2] atau mv [file1
file2...] [direktori_tujuan] atau mv [direktori] [direktori], contoh
penggunaannya, me-rename file latihan1 menjadi latihan3
$ mv latihan1 latihan3
Memindahkan file latihan3 ke direktori temp
404
$ mv latihan3 temp/
Me-rename direktori temp menjadi sampah
$ mv temp sampah
rm
Untuk menghapus file. Jika ingin menggunakannya untuk menghapus
direktori tambahkan parameter r didepan perintah rm. Sintaknya rm
[nama_file/nama_direktori], contoh penggunaannya, menghapus file
dengan nama latihan2
$ rm latihan2
Menghapus sebuah direktori yang bernama temp
$ rm -r temp
Yang perlu diingat dalam menggunakan perintah rm adalah ketika
menggunakan argument -f, bila kita berada sebagai user root dan
mengetikkan perintah rm -rf / , maka hal itu akan menghapus semua
direktori dan file pada root file sistem tanpa adanya konfirmasi. Untuk
itu kita perlu hati-hati dalam menjalankan sebuah perintah pada shell.
Untuk menghindari hal ini, kita bisa memberikan alias pada perintah
rm agar bekerja dalam mode interaktif ketika kita menggunakan rm,
alias ini bisa menggunakan perintah alias atau pada file .bashrc agar
perubahannya permanen
$ alias rm=rm -i
$ echo "alias rm='rm -i'" >> ~/.bashrc
Sekarang jika kita melakukan perintah rm, akan terlihat seperti ini
$ rm file2.txt
rm: remove regular file `file2.txt'? y
ln
Untuk membuat link dari sebuah file atau direktori. Sintaknya adalah
ln [file_target] [nama_link], contoh penggunaannya,
$ ln s latihan latihan.link
405
touch
Perintah ini digunakan untuk membuat file kosong. Jika file tersebut
sudah ada, maka perintah ini akan mengganti time stamp dari file
tersebut. Sintaknya touch [nama_file], contohnya
$ touch latihan1
$ ls l
-rw-r--r-- 1 urangkayo urangkayo 0 2006-12-18 20:55
latihan1
Sekarang jalankan lagi perintah touch untuk membuat file yang sama.
$ touch latihan1
$ ls -l
-rw-r--r-- 1 urangkayo urangkayo 0 2006-12-18 21:02
latihan1
Bandingkan time stamp latihan1 pertama dengan latihan1 kedua.
echo
Perintah untuk menampilkan standar output pada shell. Sintak dari
perintah ini adalah echo [argument], contoh penggunaannya
$ echo Lagi Belajar Ubuntu Ne..
Lagi Belajar Ubuntu Ne..
pwd
pwd atau print working directory berguna untuk mengetahui direktori
aktif kita, jika kita lupa dengan direktori kita bekerja. Sintaknya pwd,
contoh penggunaannya
$ pwd
/home/urangkayo
cd
cd atau change direktory, perintah yang digunakan untuk berpindahpindah ke suatu direktori. Sintak dari perintah ini adalah cd [path],
contoh penggunaannya
406
$ cd temp
$ pwd
/home/urangkayo/latihan/temp
$ cd ..
$ pwd
/home/urangkayo/latihan
$ cd
$ pwd
/home/urangkayo
mkdir
Digunakan untuk membuat direktori baru. Sintaknya mkdir
[nama_direktori]. Dalam membuat direktori, yang perlu diingat
adalah, nama direktori tidak boleh sama dengan nama file (berbeda
dengan Windows, yang nama direktori bisa sama dengan nama file,
pada Linux kita tidak bisa melakukan hal ini). Contoh penggunaannya
$ mkdir test
$ mkdir satu dua tiga
$ mkdir -p coba/coba1
Pada perintah yang kedua, kita membuat banyak direktori dengan
mengetikkan satu kali perintah mkdir, sedangkan pada perintah yang
ketiga, kita membuat parent directory beserta sub direktorinya.
rmdir
Perintah yang digunakan untuk menghapus direktori. Direktori yang
akan dihapus harus berada dalam keadaan kosong. Sintak dari
perintah ini adalah rmdir [nama_direktori], contoh penggunaannya
$ rmdir dua
Jika direktori yang akan dihapus tidak berada dalam keadaan yang
kosong, maka akan muncul pesan error ketika kita mencoba
menghapus direktori tersebut
407
$ rmdir coba
rmdir: coba: Directory not empty
useradd
Perintah untuk membuat user baru dalam sistem Linux. Sintaknya
adalah useradd [nama_user], contoh penggunaannya
$ sudo useradd anif
Password:
Pada perintah diatas kita menggunakan sudo sebelum perintah
useradd, karena pada Ubuntu, defaultnya root account tidak
diaktifkan, sehingga untuk bisa menggunakan hak setara root kita
menggunakan sudo pada perintah diatas.
userdel
Perintah ini digunakan untuk menghapus user dari sistem Linux, dan
biasanya juga menghapus home direktori dari user yang
bersangkutan. Sintaknya userdel [nama_user], contohnya
$ sudo userdel anif
passwd
Perintah untuk mengubah atau memberikan password kepada user.
Sintaknya passwd, contoh penggunaannya
$ passwd
Changing password for urangkayo
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Pada contoh diatas, mengganti password dari user yang sedang aktif.
Untuk mengganti password user lain, contohnya adalah
$ sudo passwd anif
408
409
410
Perintah diatas akan meng-extract isi dari file test.tar kedalam direktori
test.
gzip dan bzip2
Perintah gzip dan bzip2 digunakan untuk mengkompres file. Biasanya
file yang dikompres adalah file yang sudah di arsip terlebih dahulu
dengan menggunakan perintah tar, contohnya
$ gzip test.tar
Perintah ini akan mengkompres file test.tar menjadi test.tar.gz. Untuk
meng-extract file test.tar.gz, kita bisa menggunakan perintah berikut
ini
$ tar xzvf test.tar.gz
Untuk membuat file terkompres dengan menggunakan bzip2, pada
shell ketikkan perintah berikut ini
$ bzip2 test.tar
Hasilnya adalah file dengan nama test.tar.bz2. Untuk meng-extract
gunakan perintah berikut ini
$ tar xjvf test.tar.gz
df
Untuk melihat free space dari harddisk yang ada pada sistem.
Gunakan flag H untuk memudahkan dalam memahami outputnya
$ df H
Filesystem
Size
Used
/dev/hda1
6.0G
410M
8% /
top
Menampilkan informasi dari sistem, proses yang sedang berjalan dan
resources dari sistem, disini kita bisa mengetahui lama waktu up dari
system yang digunakan, perintah ini sangat berguna didalam melihat
informasi mengenai system pada saat running
$ top
411
uname
Perintah ini berguna untuk mengetahui sistem yang kita gunakan,
termasuk kernel, tipe processor. Gunakan flag a untuk menampilkan
informasi mengenai sistem.
$ uname -a
lsb_release
Perintah ini digunakan untuk mengetahui rilis dari Linux yang kita
gunakan, gunakan dengan flag a
$ lsb_release -a
Untuk perintah-perintah lain yang bisa digunakan pada Linux bisa
dilihat pada http://linuxcommand.org dan http://www.tdlp.org serta
lampiran E dari buku ini, karena Linux memiliki banyak perintah
yang bisa digunakan.
16.3 Vi/Vim
vi merupakan teks editor yang pertama kalinya dibuat untuk UNIX,
dimana teks editor ini sangat sederhana, memiliki ukuran yang kecil
tapi mempunyai fungsionalitas yang besar. Saat ini banyak versi dari
vi yang ada seperti nvi, vim, vile, elvis. Pada GNU/Linux umumnya
menggunakan vim yang diciptakan oleh Bram Moolenar's
berdasarkan vi. Pada Ubuntu saat kita mengetikkan vi atau vim pada
shell, maka program yang dijalankan adalah sama yaitu vim. VIM
merupakan singkatan dari VI Improved, dimana vim memiliki fitur
seperti multiple undo yang tidak terdapat pada vi versi lama. Untuk
memulai vi/vim pada shell (jika menggunakan GUI, jalankan gnometerminal) bisa dengan cara
vi
vi options file
vi options +num file
Jika kita hanya mengetikkan perintah vi tanda options apapun, akan
muncul tampilan seperti pada gambar berikut
412
Pada buku ini jika penulis menyebut vi berarti merujuk kepada vim.
Ketika kita membuka vi tanpa options atau membuka file dengan vi,
maka kita akan berada pada mode command, pada mode ini kita bisa
menekan tombol keyboard tertentu untuk masuk ke insert mode (bisa
tombol i, a, o), menjalankan command untuk editing teks,
memindahkan cursor pada file, memunculkan command untuk
masuk kedalam shell, menyimpan file, keluar dari vi. Pada mode
insert, sama seperti teks editor lainnya, kita bisa mengetikkan teks
dengan menggunakan keyboard. Sekarang kita akan mencoba untuk
keluar dari vi, untuk itu bisa dengan mengetikkan salah satu dari
perintah ini
ketik titik dua dan diikuti oleh x, untuk save dan keluar dari vi
:x
keluar tanpa menyimpan file
:q!
keluar dari vi, jika file yang dimodifikasi belum disimpan, vi akan
menolak untuk keluar, seperti terlihat pada gambar 16.6 berikut
:q
413
Gambar 16.6
Perhatikan bagian bawah dari vi ini, terlihat pada bagian kiri dari
terdapat tulisan lat_vim00.txt [New File], yang merupakan nama file
yang kita gunakan ketika menjalankan perintah vi. File ini belum
disimpan sama sekali pada harddisk. Kemudian bagian bagian lain
terdapat 0.0-1 yang menunjukkan jumlah baris dan karakter pada file
tersebut, sedangkan kata All menunjukkan bahwa semua teks
ditampilkan pada screen. Sekarang tekan tombol keyboard i untuk
masuk kedalam mode insert, mode insert ditandai dengan tulisan
INSERT dibagian bawah vi
Gambar 16.8 vi saat berada di mode insert
414
415
tekan tombol y dan kemudian tekan tombol w) pada kata yang ingin
dicopy. Sebagai contoh, kita akan mengcopy kata Lagi dan akan
ditempatkan di bawah baris pertama, untuk itu tempatkan cursor
diatas huruf L, tekan yw, kemudian tekan o (huruf o kecil) sehingga
muncul baris baru dibawah baris pertama (menekan o membawa kita
kedalam mode insert), lanjutkan dengan menekan ESC agar kembali
ke mode command dan tekan p untuk melakukan paste kata Lagi.
Untuk meng-cut karakter bisa menggunakan x kemudian tempatkan
cursor pada baris yang ingin dipastekan dan tekan p, untuk meng-cut
kata gunakan dw dan tekan p untuk mempaste. Untuk meng-cut satu
baris penuh, gunakan dd dan tekan p maka baris tersebut akan
dipastekan dibawah cursor.
Cara belajar VIM yang paling efektif adalah dengan langsung
menjalankan vim dan mempraktekkan shortcut pada command mode
atau insert mode. Untuk bisa mempelajari vim dengan efektif, kita bisa
menggunakan vimtutor yang merupakan bagian dari packages vimruntime, selain itu vim-runtime juga dibutuhkan jika kita ingin
menggunakan menu help pada vim, GNU/Linux Ubuntu secara
default menggunakan vim-tiny dimana packages ini sangat minimalis
sekali, hal ini bisa dilihat dengan mengetikkan perintah :help pada
vim, yang akan terlihat bahwa help tersebut tidak tersedia.
416
417
$ cp -r /usr/share/vim/vim70/doc/ ~/vim_doc
$ cd vim_doc/
$ perl vim2html.pl tags *.txt
Processing tags...
Processing arabic.txt...
...
Processing workshop.txt...
Writing stylesheet...
done.
Setelah proses konversi selesai, maka akan terdapat file-file dengan
ekstensi .html pada direktori vim_doc yang bisa dibuka dengan
browser, sekarang buka file usr_toc.html dengan browser untuk
melihat daftar isi dari dokumentasi vim, untuk mempelajari sebuah
topik yang ada di usr_toc tersebut, klik pada link yang sesuai
418
Keterangan
CTRL + F
CTRL + B
gg
:num
CTRL + G
Jika kita mengedit file yang memiliki permission read only bagi
username kita, maka pada saat mengedit atau menyimpan file tersebut
akan muncul peringatan dari vi seperti terlihat pada gambar 16.12 dan
16.13 berikut. Command yang digunakan untuk menyimpan serta
keluar dari program vi bisa dilihat pada tabel 16.7
419
Key
Keterangan
:q
:q!
:w
Menyimpan file
:wq
ZZ
:x
:w file
Key
Keterangan
420
dw
dd
d$
yy
cw
cc
421
16.4 Emacs
Emacs merupakan teks editor yang umum digunakan pada system
operasi Linux selain teks editor vi. Merupakan acronym dari Editor
MACroS. Emacs merupakan teks editor yang diciptakan oleh Richard
M. Stallman. Teks editor ini menggunakan CTRL dan meta key (ALT
atau ESC) dalam editing teks. Jika menggunakan emacs pada X11,
maka yang muncul adalah emacs dalam mode GUI. Untuk
menggunakan emacs pada terminal kita harus menggunakan -nw
$ emacs -nw nama_file
Pada emacs, penggunaan tombol CTRL dilambangkan dengan C-,
misalnya C-x berarti tekan CTRL dan x secara bersamaan. Jika ada
penulisan C-x, C-s berarti tekan CTRL dan x bersamaan, lepaskan
kemudian dilanjutkan dengan penekanan CTRL dan s bersamaan. C-x,
C-s digunakan untuk menyimpan hasil teks yang ditulis kedalam
sebuah file, dimana pada bagian bawah dari layar emacs akan terdapat
tulisan "Wrote /home/urangkayo/latihan/latihan00.txt", tentunya untuk
422
path dan nama dari file tidak akan sama dengan komputer yang anda
gunakan.
Meta keys pada emacs, yang diberi simbol M- berarti penekanan ALT
atau ESC dengan tombol lainnya. Jika kita menggunakan ESC sebagai
meta key, contohnya M-w meta key untuk mengcopy teks, M-w
berarti tekan ESC kemudian lepaskan dan lanjutkan dengan
penekanan tombol w. Hal yang berbeda apabila kita menggunakan
ALT sebagai meta key, dimana M-w berarti tekan ALT dan w secara
bersamaan. Jika menjalankan emacs pada gnome-terminal, maka meta
key yang digunakan adalah ESC.
menggunakan
menggunakan
CTRL
423
atau
meta
key
untuk
navigasi,
bisa
424
dari
layar
emacs
tulisan
Save
file
/home/urangkayo/emacs_lat/latihan01.txt? (y, n, !,
., q, C-r or C-h)
Sekarang kita akan membuat file baru untuk itu tekan C-x, C-f, akan
ada tulisan Find file dan diikuti direktori aktif ketika kita memanggil
emacs.
Find file: ~/latihan/
Ketikkan nama file yang ingin dibuat, kemudian tekan ENTER. Jika
kita ingin membuka file yang sudah disimpan, bisa menggunakan C-x,
C-f kemudian tekan TAB sebanyak dua kali untuk melihat daftar file
yang ada pada direktori tersebut. Jika kita membuka file baru dan file
yang lama tidak ditutup, maka untuk kembali kepada file yang lama
gunakan C-x, b.
425
Sama seperti halnya vi, emacs juga memiliki tutorial yang bisa
dipelajari, untuk itu ketika berada dalam emacs tekan C-h, t (tekan
CTRL + h, kemudian tekan t), akan muncul tutorial dari emacs. Untuk
mempelajari lebih jauh mengenai emacs, anda bisa mengikuti tutorial
yang terdapat pada emacs, karena mempelajari teks editor seperti vi
dan emacs jauh lebih cepat dimengerti dengan langsung melakukan
praktek daripada hanya membaca manualnya saja.
Berikut ini merupakan tabel dari beberapa key yang umum digunakan
ketika bekerja dengan emacs.
426
Key
Keterangan
C-x, i
C-z
Suspend emacs
C-x, C-w
C-x, C-c
C-x, C-s
Menyimpan file
C-g
Abort
C-x, u
Melakukan undo
C-h, t
C-d
Men-delete karakter
C-k
Men-delete baris
C-h
C-b
C-n
C-p
C-f
C-w
Kill region
C-y
Yank/Paste
M-w
Copy region
C-x, C-p
BAB 18
DHCP SERVER
Pada Bab ini akan dijelaskan mengenai:
18.1 Apa itu DHCP Server
18.2 Option dhcpd.conf
18.3 Menjalankan DHCP Server
428
DHCP Server
429
430
DHCP Server
431
432
local7.*
/var/log/dhcpd.log
host-name ;
Memberikan host name untuk client, jika client dikonfigurasi tanpa
hostname.
hardware <type> <address> ;
Menspesifikasikan alamat hardware address, yang umum digunakan
seperti MAC address pada ethernet. Untuk type disini bisa ethernet
atau token-ring.
fixed-address <ip_address> ;
Memberikan IP address tertentu untuk host tertentu. Umumnya
digunakan bersama MAC address.
ddns-update-style interim | none ;
Membuat DHCP server melakukan update DNS server secara
otomatis untuk client yang mendapat ip atau merelease ip address.
Ganti interim dengan none untuk menonaktifkannya.
authoritative ;
Options yang digunakan untuk memberitahukan DHCP server
sebagai official DHCP Server pada LAN
option ip-forwarding off | on ;
Jika diaktifkan maka DHCP server akan menjadi router yang akan
melewatkan packet untuk jaringan yang lain.
Untuk mengetahui option-option lain yang terdapat pada dhcpd.conf
lihat manual dari dhcpd.conf dan dhcp-options dengan perintah
berikut ini
$ man dhcp-options
$ man dhcpd.conf
Pada sub bab selanjutnya akan diperlihatkan bagaimana cara
mengkonfigurasi dhcpd.conf agar bisa digunakan oleh client.
DHCP Server
433
434
[ OK ]
Ss
-pf
-cf
DHCP Server
435
436
[ OK ]
[ OK ]
[ OK ]
DHCP Server
437
438
DHCP Server
439
/var/log/dhcpd.log
Buat file kosong dengan nama dhcpd.log pada direktori /var/log dan
rubah ownershipnya menjadi dhcpd, gunakan perintah berikut
$ sudo touch /var/log/dhcpd.log
$ sudo chown -R dhcpd.dhcpd /var/log/dhcpd.log
Sekarang restart daemon sysklogd dengan perintah
$ sudo /etc/init.d/sysklogd restart
* Restarting system log daemon...
[ OK ]
[ OK ]
[ OK ]
440
on
on
BAB 18
DNS SERVER
Pada Bab ini akan dijelaskan mengenai:
18.1 Dasar-Dasar DNS
18.2 Menginstall dan Konfigurasi BIND
442
DNS Server
443
444
User domain DNS ini bisa berupa ISP, perusahaan web hosting,
dimana minimal harus ada dua name server untuk sebuah domain
name. Pada saat sebuah name server tidak bisa menjawab request dari
resolver, maka name server ini akan menghubungi root name server,
dimana nanti nya akan memberikan referral untuk TLD yang sesuai.
Perhatikan contoh berikut, jika kita ingin menghubungi google.com,
maka proses nya adalah:
1. client mengetikkan pada browser www.google.com, selanjutnya
resolver akan menghubungi name server yang diberikan pada
settingan networking dari system tersebut. Ketika name server
meneriman permintaan ini, name server akan membaca secara
terbalik mulai dari level tertinggi (www.google.com memiliki
FQDN www.google.com. (memiliki tanda titik setelah com),
untuk itu name server akan menghubungi root name server
untuk menanyakan TLDs dari domain ini yaitu com, root name
DNS Server
445
446
DNS Server
447
; serial number
12h
; refresh
15m
; retry
3w
; expiry
2h
; minimum
)
; name server RR untuk domain scorvia.or.id
IN
NS
ns1.scorvia.or.id.
NS
ns2.scorvia.or.id.
MX 10
mail.scorvia.or.id.
IN
NS serta MX records
IN
192.168.0.253
ns1
IN
192.168.0.253
ns2
IN
192.168.0.252
IN
192.168.0.251
ftp
IN
192.168.0.250
www
IN
CNAME
ns1.scorvia.or.id.
Format waktu yang digunakan pada zona file pada RFC 1035
menggunakan detik, akan tetapi kita bisa menggunakan format menit,
jam, hari, minggu, tahun yang digunakan oleh BIND. Untuk mengatur
spasi pada zona file biasanya digunakan TAB. Isi dari sebuah zona file
adalah:
$TTL direktif (Time To Live), merupakan nilai untuk zona atau
domain, waktu yang terdapat pada direktif ini akan menjadi lama
448
hostmaster.scorvia.or.id.
; serial number
12h
; refresh
15m
; retry
3w
; expiry
DNS Server
449
2h
; minimum
)
Catatan: Pada penulisan diatas baris @ IN SOA ns1.scorvia.or.id.
hostmaster.scorvia.or.id. ( seperti ditulis dalam dua baris karena keterbatasan lebar
buku ini, pada penulisan yang sebenarnya harus ditulis dalam satu baris.
ttl, karena tidak didefenisikan akan menggunakan nilai yang ada pada
direktif dari $TTL
class disini digunakan IN untuk Internet.
name_server mendefenisikan primary master dari name server untuk
zona tersebut. Pada contoh adalah ns1.scorvia.or.id. , dimana ns1
adalah nama host tempat name server ini dijalankan.
email, untuk alamat administrasi email dari zona. Biasanya digunakan
hostmaster, root. Pada contoh ditulis hostmaster.scorvia.or.id.
serial_number, digunakan pada saat transfer zona. Serial number ini
harus di update setiap kali ada perubahan pada domain, agar slave
name server bisa mengetahui perubahan yang terjadi dan melakukan
transfer zona file. Format umum nya adalah YYYYMMDDSS (YYYY
untuk tahun, MM untuk bulan, DD untuk tanggal, SS untuk nomor
urut sebuah zona file dirubah, bisa juga menggunakan nilai jam)
refresh, waktu yang digunakan oleh slave name server untuk mencoba
membaca SOA RR pada master name server.
retry, selang waktu yang digunakan oleh slave server untuk
menghubungi master name server jika pada waktu refresh yang
ditentukan slave server gagal menghubungi master name server.
expiry, jangka waktu yang menentukan sebuah zona records menjadi
tidak valid
450
NS
ns1.scorvia.or.id.
IN
NS
ns2.scorvia.or.id.
Pada contoh diatas, field untuk name kosong, yang berarti akan
digantikan oleh nilai dari name field dari nilai saat ini, disini
merupakan nilai dari SOA RR. Jika ingin ditulis lengkap bisa seperti ini
scorvia.or.id.
IN
NS
ns1.scorvia.or.id.
scorvia.or.id.
IN
NS
ns2.scorvia.or.id.
IN
MX 10
mail.scorvia.or.id.
DNS Server
451
IN
192.168.0.252
name, bisa menggunakan FQDN atau nama host, pada contoh diatas
bisa ditulis ns2.scorvia.or.id. IN A 192.168.0.252
ttl, karena tidak didefenisikan akan menggunakan direktif $TTL
class, menggunakan IN untuk Internet
ipv4, IP address dari host, disini IP address dari host ns2 yaitu
192.168.0.252
Nama yang didefenisikan pada records NS dan MX RR harus
memiliki korespondensi dengan A RR, pada contoh paling atas adalah
ns1, ns2 dan mail harus memiliki A RR.
CNAME RR. Mendefenisikan alias RR, sehingga satu host atau service
bisa didefenisikan untuk menjadi nama alias bagi host yang lain.
Bersifat opsional. Format: name ttl class rr canonical-name
Contohnya
www
IN
CNAME
ns1.scorvia.or.id.
452
IN
NS
ns1.scorvia.or.id.
IN
CNAME
www.scorvia.or.id.
IN
192.168.0.253
NS
ns1.scorvia.or.id.
ns1
IN
192.168.0.253
www
IN
CNAME
ns1.scorvia.or.id.
IN
PTR
ns1.scorvia.or.id.
252
IN
PTR
ns2.scorvia.or.id.
name, berupa angka untuk alamat IP, disini ditulis 253 dalam bentuk
non FQDN, jika ingin ditulis dalam format FQDN format akan
menjadi 253.0.168.192.IN-ADDR.ARPA.
ttl, karena tidak didefenisikan, akan menggunakan nilai dari $TTL
class, menggunakan IN untuk Internet
rr, menggunakan adalah PTR (pointer)
name, mendefenisikan nama dari alamat IP. Jika ada query untuk
192.168.0.253, akan memberikan alamat ns1.scorvia.or.id. Nama yang
ditulis harus dalam bentuk FQDN
Hanya boleh satu IPv4 yang dimapping kedalam host name
menggunakan PTR RR. Contohnya, dari zona file
DNS Server
453
ns1
IN
192.168.0.253
www
IN
CNAME
ns1.scorvia.or.id.
ns1
IN
192.168.0.253
www
IN
192.168.0.253
atau
hanya boleh ditulis salah satu dari host tersebut untuk alamat IP nya
pada PTR, berikut ini merupakan contoh penulisan yang salah
253
IN
PTR
ns1.scorvia.or.id.
253
IN
PTR
www.scorvia.or.id.
IN
PTR
ns1.scorvia.or.id.
IN
PTR
www.scorvia.or.id.
atau
253
Penulisan PTR ini harus diperhatikan terutama untuk mail server. Jika
host yang digunakan untuk mail server juga digunakan untuk web
server dengan menggunakan CNAME, maka pada PTR RR yang
harus didefenisikan adalah mail server bukan CNAME nya. Contoh
nya
mail
IN
192.168.0.253
www
IN
CNAME
mail.scorvia.or.id.
IN
192.168.0.253
www
IN
192.168.0.253
atau
IN
PTR
mail.scorvia.or.id.
Text (TXT RR), untuk mendefenisikan text yang pada zona file.
scorvia.or.id
IN
TXT
454
DNS Server
455
456
Reverse Mapping
Reverse mapping yaitu pemetaan alamat IP kedalam sebuah nama,
seperti melakukan trace terhadap sebuah IP spammer, cracker. Dan
juga mail system menggunakan reverse mapping didalam
menyediakan authentication yang sederhana menggunakan DNS
lookup untuk mengkonfirmasi bahwa IP tersebut memang
merepresentasikan host yang bersangkutan. Query DNS reverse
mapping dilakukan dengan cara recursive atau iterative query
menggunakan spesial domain name yang disebut dengan INADDR.ARPA (gTLD nya adalah .ARPA dan SLD .IN-ADDR, disini
ARPA singkatan dari Address and Routing Parameter Area). Seperti
yang telah diketahui, domain ditulis dari kiri ke kanan dari yang
terendah sampai yang tertinggi
www.scorvia.or.id.
Pada potongan zona file sebelumnya, kita sudah mengetahui IP dari
www.scorvia.or.id adalah 192.168.0.253, agar IP ini bisa digunakan
operasi query DNS maka harus di rubah kedalam nama.
192.168.0.253
Berbeda dengan domain name, untuk IP level tertinggi nya adalah
bagian kiri dan level terendah ada di bagian kanan. Pada contoh ini
level tertinggi adalah 192, dengan nomor host 253. Untuk bisa
merubah IP ini jadi sebuah nama, maka kita harus membuat domain
name dengan menggunakan urutan yang terbalik (reverse) dan
DNS Server
457
458
Type-Type DNS
Master Name Server
Dikenal juga dengan nama Primary Name Server. DNS yang
dikonfigurasi menjadi master name server mengandung satu atau
lebih zona file dimana DNS ini menjadi authoritative untuk zona
tersebut. File konfigurasi ini dibaca oleh name server dari lokal file
system. File konfigurasi zona untuk master name server berada pada
lokal system dimana name server tersebut berjalan. Pada BIND
menggunakan keyword master didalam menentukan apakah name
server tersebut akan menjadi master atau tidak, yang dideklarasikan
pada named.conf atau named.conf.local pada Ubuntu, contohnya
zone "scorvia.or.id" in {
type master ;
file "/etc/bind/db.scorvia.or.id" ;
allow-transfer { 192.168.0.252 ; } ;
allow-update { none ; } ;
} ;
Pada potongan diatas juga terlihat bahwa name server ini hanya
mengizinkan transfer zona kepada IP 192.168.0.252 yang menjadi slave
name server. Suatu name server yang dikonfigurasi sebagai master
untuk zona authoritative nya apabila menerima query untuk zona
dimana dia tidak menjadi master atau slave, name server ini akan
melakukan tindakan sesuai dengan konfigurasi dari name server
tersebut,yaitu
DNS Server
459
keyword masters diatas menentukan dari name server mana zona file
akan ditransfer.
Caching Name Server
Pada caching name server akan menjawab query dari user dengan
melihat isi dari cache yang dimilikinya. Cache pada sebuah name
server memiliki TTL sesuai dengan TTL pada name server yang
authoritative terhadap zona yang ditanyakan oleh caching name
server. Perhatikan hasil nslookup dibawah ini, dimana name server ini
mengambil data dari cache nya yang ditandai dengan Nonauthoritative answer:
$ nslookup www.google.com
Server:
192.168.0.253
Address:
192.168.0.253#53
Non-authoritative answer:
www.google.com
Name:
www.l.google.com
460
Address: 66.249.89.99
Name:
www.l.google.com
Address: 66.249.89.104
Name:
www.l.google.com
Address: 66.249.89.147
Jika data yang direquest tidak ada pada cache maka caching name
server akan melakukan request secara langsung pada DNS
authoritative untuk domain tersebut, dimana outputnya tidak terdapat
Non-authoritative answer. Jika user melakukan request lagi untuk
yang kedua dan seterusnya sampai TTL dari cache tersebut expire,
caching name server akan mengambil jawaban dari cache nya yang
ditandai dengan Non-authoritative answer. BIND defaultnya akan
meng-cache RR, karena options recursion aktif secara default, jika kita
tidak mendeklarasikannya secara spesifik pada named.conf
Forwarding Name Server
Forwarding atau Proxy name server akan memforward seluruh query
dari client kepada DNS lain yang di sebutkan pada file konfigurasi
dari name server ini. BIND menggunakan keyword forwarders untuk
forwarding name server
forwarders {
202.134.0.155;
202.134.2.5;
};
DNS Server
461
Zona Maintenance
proses zona maintenance dapat berupa transfer zona file dimana satu
zona file digunakan untuk mengupdate banyak server. Fitur-fitur yang
digunakan dalam zona maintenance adalah
Full Zona Transfer (AXFR)
Proses full zona transfer kan dilakukan oleh slave name server SOA
RR serial number pada master name server lebih besar daripada SOA
RR serial number pada slave name server. Jika ini terjadi, slave name
server akan melakukan request untuk full zona transfer. Hal ini bisa
dilihat dari file log name server baik itu log dari master name server
atau slave name server. AXFR menggunakan TCP port 53 dalam
proses transfernya. Log dibawah merupakan log pada master name
server
Nov
18
13:18:22
ns1
named[4117]:
client
192.168.0.252#54251: transfer of 'scorvia.or.id/IN': AXFR
started
Nov
18
13:18:22
ns1
named[4117]:
client
192.168.0.252#54251: transfer of 'scorvia.or.id/IN': AXFR
ended
462
akan dilakukan, jika tidak maka proses AXFR yang akan dilakukan.
IXFR menggunakan port TCP 53.
NOTIFY
Fitur ini digunakan oleh master name server untuk memberitahu slave
name server jika terjadi perubahan dari file zona pada master name
server. Pada saat slave name server menerima notify, maka slave name
server akan meminta SOA RR dari master name server, jika serial
number dari SOA RR lebih besar dari yang dimiliki oleh slave, proses
transfer akan dilakukan (bisa dengan AXFR atau IXFR).
Dynamic Update
Dengan metode ini zona records bisa di update dari satu atau lebih
sumber eksternal, akan tetapi domain baru atau zona tidak bisa
ditambah atau didelete secara dynamic, karena SOA RR sangat
essensial dalam penambahan atau penghapusan zona. Dynamic
update pada BIND menggunakan keyword allow-update.
DNS Server
463
[ OK ]
[ OK ]
hostname ke dalam IP
464
Keterangan
/etc/bind/
File zona akan ditempatkan pada
/etc/bind/zones/{master
atau
slave}
Untuk
IN-ADDR.ARPA
ditempatkan pada /etc/bind/zones
DNS Server
465
Domain Name
scorvia.or.id
IP Master DNS
192.168.0.253
IP Slave DNS
192.168.0.252
ns1.scorvia.or.id
ns2.scorvia.or.id
Service lainnya
mail.scorvia.or.id : 192.168.0.251
www.scorvia.or.id : 192.168.0.253
(CNAME ns1.scorvia.or.id)
ftp.scorvia.or.id : 192.168.0.250
ldap.scorvia.or.id: 192.168.0.249
(CNAME FileServer.scorvia.or.id)
Log File
/var/log/bind/scorvia.log
Tabel 19.1 Konfigurasi Umum
466
DNS Server
467
file "/etc/bind/zones/db.192.168.0" ;
allow-transfer { 192.168.0.252 ;} ;
allow-update { none ; } ;
} ;
include "/etc/bind/zones.rfc1918" ;
468
penjelasan pada sub bab 19.1 mengenai reverse mapping INADDR.ARPA). Statement yang lain sama dengan statement pada zona
scorvia.or.id, kecuali nama file zona yang ditempatkan pada
/etc/bind/zones/db.192.168.0. Baris terakhir dari named.conf.local,
kita meng-include file zones.rfc1918 yang berisikan daftar IP non
routable. Sekarang kita perlu mengedit isi file /etc/bind/zones.rfc1918
ini, dengan meghapus baris yang berisikan IP untuk network yang kita
gunakan, contohnya network yang digunakan pada buku ini adalah
192.168.0/24, untuk itu buka file /etc/bind/zones.rfc1918 dengan teks
editor
$ sudo vi zones.rfc1918
Hapus satu baris berikut ini pada file tersebut, karena kita
menggunakan jaringan 192.168
zone
"168.192.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
Isi lengkap dari file zone.rfc1918 yang telah dimodifikasi akan terlihat
seperti dibawah ini
zone "10.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"16.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"17.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"18.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"19.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"20.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"21.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
DNS Server
469
zone
"22.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"23.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"24.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"25.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"26.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"27.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"28.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"29.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"30.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
zone
"31.172.in-addr.arpa"
"/etc/bind/db.empty"; };
type
master;
file
470
menentukan root direktori pada saat daemon bind berjalan. Jika ingin
mengganti port yang digunakan hilangkan tanda comment pada
query-source address dan ganti portnya. Defaultnya name server akan
menggunakan port 53. Isi file named.conf.options lengkapnya bisa
dilihat dibawah ini.
options {
directory "/var/cache/bind";
// If there
nameservers you want
is
firewall
between
you
and
0.0.0.0;
// };
version "Not Available Now" ;
recursion yes ;
auth-nxdomain no;
# conform to RFC1035
// listen-on-v6 { any; };
DNS Server
471
};
// Logging clause
logging {
channel scorvia_log {
file "/var/log/bind/scorvia.log" versions
3 size 250k ;
severity info ;
print-time yes ;
print-severity yes ;
print-category yes ;
};
category default {
scorvia_log ;
};
};
472
Statement severity info hanya akan me-log dengan prioritas info atau
yang lebih tinggi. print-time, print-severity, dan print-category Jika
bernilai yes, akan membuat log memprint tanggal, waktu, severity
level serta kategori pada file log. Kita juga menentukan channel default
untuk log ini yaitu menggunakan file yang sama. Output dari log
tersebut seperti terlihat dibawah ini
23-Nov-2007
20:27:06.240
general:
scorvia.or.id/IN: loaded serial 2007112300
info:
zone
; serial number
12h
; refresh
15m
; retry
3w
; expiry
2h
) ;
; name server RR untuk domain scorvia.or.id
IN
NS
ns1.scorvia.or.id.
NS
ns2.scorvia.or.id.
MX 10
mail.scorvia.or.id.
IN
DNS Server
473
NS serta MX records
IN
192.168.0.253
ns1
IN
192.168.0.253
ns2
IN
192.168.0.252
IN
192.168.0.251
ftp
IN
192.168.0.250
FileServer
IN
192.168.0.249
www
IN
CNAME
ns1.scorvia.or.id.
ldap
IN
CNAME
FileServer.scorvia.or.id.
Penjelasan mengenai isi dari zona file scorvia.or.id bisa dilihat pada
sub bab 19.1. Selanjutnya kita juga harus membuat file zona untuk
reverse mapping untuk IP 192.168.0.253, yang disimpan pada
/etc/bind/zones/db.192.168.0.
$ sudo vi /etc/bind/zones/db.192.168.0
; Data file untuk reverse zone scorvia.or.id
$TTL 86400 ; untuk 1d
$ORIGIN 0.168.192.in-addr.arpa. ;
@ IN SOA ns1.scorvia.or.id. hostmaster.scorvia.or.id. (
2007112300
; serial number
12h
; refresh
15m
; retry
3w
; expiry
2h
) ;
; name server RR untuk domain scorvia.or.id
IN
NS
ns1.scorvia.or.id.
NS
ns2.scorvia.or.id.
474
253
IN
PTR
ns1.scorvia.or.id.
252
IN
PTR
ns2.scorvia.or.id.
251
IN
PTR
mail.scorvia.or.id.
250
IN
PTR
ftp.scorvia.or.id.
249
IN
PTR
FileServer.scorvia.or.id.
[ OK ]
Jika muncul tampilan seperti diatas, maka bind sukses dijalankan dan
meload konfigurasi serta file zona yang telah dibuat, untuk
memastikan apakah bind telah berjalan, lihat dengan perintah
$ pgrep named
4291
$ ps aux | grep bind
bind
20:42
Ssl
$ cat /var/run/bind/run/named.pid
4291
Jalankan salah satu dari perintah diatas untuk melihat apakah bind
sudah berjalan, tentunya nomor PID yang terdapat pada komputer
anda akan berbeda dengan yang ditampilkan pada buku ini. Jika ingin
melihat file log dari bind, kita bisa melihat pada /var/log/daemon.log
untuk melihat log dari named. Untuk melihat log dari bind gunakan
DNS Server
475
file log yang telah ditentukan pada file konfigurasi BIND. Kita bisa
menggunakan perintah tail untuk melihat file log ini
$ tail -n 50 /var/log/daemon.log
Nov 23 20:17:03 ns1 named[5754]: starting BIND 9.4.1-P1 u bind
Nov 23 20:17:03 ns1 named[5754]: found 1 CPU, using 1
worker thread
Nov 23 20:17:03 ns1 named[5754]: loading configuration
from '/etc/bind/named.conf'
Nov 23 20:17:03 ns1 named[5754]:
interface lo, 127.0.0.1#53
listening
on
IPv4
listening
on
IPv4
...
Nov 23 20:17:03 ns1 named[5754]:
listening on 127.0.0.1#953
command
channel
command
channel
named[5754]:
$ tail -n 50 /var/log/bind/scorvia.log
23-Nov-2007 20:27:06.084 general:
addr.arpa/IN: loaded serial 1
info:
zone
0.in-
...
23-Nov-2007
20:27:06.209
general:
info:
0.168.192.in-addr.arpa/IN: loaded serial 2007112300
zone
23-Nov-2007
20:27:06.240
general:
scorvia.or.id/IN: loaded serial 2007112300
info:
zone
23-Nov-2007
20:27:06.244
localhost/IN: loaded serial 1
info:
zone
general:
476
[ fail ]
Nov
23
20:14:55
ns1
named[5660]:
isc_log_open
'/var/log/bind/scorvia.log' failed: permission denied
DNS Server
477
$ sudo vi /etc/resolv.conf
search scorvia.or.id
nameserver 192.168.0.253
nameserver 192.168.0.252
[ OK ]
Terlihat hasil diatas sudah benar karena reversed pointer dari 127.0.0.1
sudah menunjukkan kepada localhost. Lakukan hal yang sama untuk
IP 192.168.0.253
$ host 192.168.0.253
253.0.168.192.in-addr.arpa
ns1.scorvia.or.id.
domain
name
pointer
domain
name
pointer
domain
name
pointer
$ host 192.168.0.252
252.0.168.192.in-addr.arpa
ns2.scorvia.or.id.
$ host 192.168.0.251
251.0.168.192.in-addr.arpa
mail.scorvia.or.id.
478
$ host 192.168.0.250
250.0.168.192.in-addr.arpa
ftp.scorvia.or.id.
domain
name
pointer
domain
name
pointer
$ host 192.168.0.249
249.0.168.192.in-addr.arpa
FileServer.scorvia.or.id.
$ host ns1
ns1.scorvia.or.id has address 192.168.0.253
$ host ns2
ns2.scorvia.or.id has address 192.168.0.252
$ host mail
mail.scorvia.or.id has address 192.168.0.251
$ host ftp
ftp.scorvia.or.id has address 192.168.0.250
$ host fileserver
fileserver.scorvia.or.id has address 192.168.0.249
$ host mail.scorvia.or.id
mail.scorvia.or.id has address 192.168.0.251
$ host www
www.scorvia.or.id is an alias for ns1.scorvia.or.id.
ns1.scorvia.or.id has address 192.168.0.253
$ host scorvia.or.id
scorvia.or.id has address 192.168.0.253
scorvia.or.id mail is handled by 10 mail.scorvia.or.id.
$ host ldap
ldap.scorvia.or.id
is
FileServer.scorvia.or.id.
an
alias
for
DNS Server
479
printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38095
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2,
ADDITIONAL: 2
;; QUESTION SECTION:
;scorvia.or.id.
IN
;; ANSWER SECTION:
scorvia.or.id. 86400
IN
192.168.0.253
;; AUTHORITY SECTION:
scorvia.or.id.
86400
IN
NS
ns1.scorvia.or.id.
scorvia.or.id.
86400
IN
NS
ns2.scorvia.or.id.
;; ADDITIONAL SECTION:
ns1.scorvia.or.id.
86400
IN
192.168.0.253
ns2.scorvia.or.id.
86400
IN
192.168.0.252
rcvd: 115
480
$ nslookup scorvia.or.id
Server:
192.168.0.253
Address:
192.168.0.253#53
Name:
scorvia.or.id
Address: 192.168.0.253
$ nslookup www.google.com
Server:
192.168.0.253
Address:
192.168.0.253#53
Non-authoritative answer:
www.google.com
Name:
www.l.google.com
Address: 66.249.89.99
Name:
www.l.google.com
Address: 66.249.89.104
Name:
www.l.google.com
Address: 66.249.89.147
DNS Server
481
482
include "/etc/bind/zones.rfc1918" ;
type
master;
file
is
firewall
between
you
and
DNS Server
483
0.0.0.0;
// };
version "Not Available Now" ;
recursion yes ;
auth-nxdomain no;
# conform to RFC1035
// listen-on-v6 { any; };
};
// Logging clause
logging {
channel scorvia_log {
file "/var/log/bind/scorvia.log" versions
3 size 250k ;
severity info ;
print-time yes ;
print-severity yes ;
print-category yes ;
} ;
category default {
scorvia_log ;
} ;
} ;
Untuk slave name server, kita tidak perlu membuat file zona, karena
file ini akan ditransfer dari master name server. Sekarang jalankan
daemon bind dengan perintah berikut
484
[ OK ]
Jika tidak ada error pada konfigurasi yang dibuat, seharusnya daemon
bind sudah berjalan dengan baik. Gunakan langkah-langkah yang
telah diperlihatkan pada master name server. Begitu daemon bind
berjalan, maka proses transfer zona dari master name server akan
dimulai, hal ini bisa diperhatikan melalui file log pada
/var/log/bind/scorvia.log
$ tail -n 50 /var/log/bind/scorvia.log
23-Nov-2007 20:42:22.142 general: notice: running
23-Nov-2007
20:42:22.451
general:
scorvia.or.id/IN: Transfer started.
info:
zone
zone
zone
info: transfer of
192.168.0.253#53:
23-Nov-2007
20:42:22.792
general:
info:
zone
0.168.192.in-addr.arpa/IN: transferred serial 2007112300
23-Nov-2007 20:42:22.793 xfer-in: info: transfer of
'0.168.192.in-addr.arpa/IN' from 192.168.0.253#53: end of
transfer
23-Nov-2007 20:42:22.796 notify: info: zone 0.168.192.inaddr.arpa/IN: sending notifies (serial 2007112300)
DNS Server
485
Sedangkan pada master name server, log file pada saat proses transfer
akan terlihat kurang lebih seperti ini
$ tail -n 50 /var/log/bind/scorvia.log
23-Nov-2007
20:27:06.264
notify:
info:
zone
scorvia.or.id/IN: sending notifies (serial 2007112300)
23-Nov-2007 20:27:06.266 notify: info: zone 0.168.192.inaddr.arpa/IN: sending notifies (serial 2007112300)
23-Nov-2007
20:42:48.428
xfer-out:
info:
client
192.168.0.252#53654: transfer of 'scorvia.or.id/IN': AXFR
started
23-Nov-2007
20:42:48.439
xfer-out:
info:
client
192.168.0.252#53654: transfer of 'scorvia.or.id/IN': AXFR
ended
23-Nov-2007
20:42:48.553
xfer-out:
192.168.0.252#42004:
transfer
of
addr.arpa/IN': AXFR started
info:
client
'0.168.192.in-
23-Nov-2007
20:42:48.555
xfer-out:
192.168.0.252#42004:
transfer
of
addr.arpa/IN': AXFR ended
info:
client
'0.168.192.in-
Jika terlihat seperti diatas, maka master name server dan slave name
server sudah bisa digunakan oleh client. Sekarang edit file
/etc/resolv.conf pada ns2.scorvia.or.id
$ sudo vi /etc/resolv.conf
search scorvia.or.id
nameserver 192.168.0.252
nameserver 192.168.0.253
486
DNS Server
487
hanya
perlu
mengedit
file
$ sudo vi named.conf.options
Hilangkan tanda komentar yang terdapat didepan baris blok
statement forwarders, kemudian ganti IP addressnya dengan IP
address dari DNS ISP yang digunakan, disini penulis menggunakan
telkom Speedy, isi dari file /etc/bind/named.conf.options kurang
lebih terlihat seperti dibawah ini
options {
directory "/var/cache/bind";
// If there
nameservers you want
is
firewall
between
you
and
488
// directive below.
always asked
forwarders {
202.134.0.155;
202.134.2.5;
};
# conform to RFC1035
// listen-on-v6 { any; };
};
DNS Server
489
printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 45444
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 4,
ADDITIONAL: 4
;; QUESTION SECTION:
;google.com.
IN
;; ANSWER SECTION:
google.com.
165
IN
64.233.167.99
google.com.
165
IN
64.233.187.99
google.com.
165
IN
72.14.207.99
;; AUTHORITY SECTION:
google.com.
166356
IN
NS
ns1.google.com.
google.com.
166356
IN
NS
ns2.google.com.
490
google.com.
166356
IN
NS
ns3.google.com.
google.com.
166356
IN
NS
ns4.google.com.
;; ADDITIONAL SECTION:
ns1.google.com.
315387
IN
216.239.32.10
ns2.google.com.
315401
IN
216.239.34.10
ns3.google.com.
315387
IN
216.239.36.10
ns4.google.com.
315387
IN
216.239.38.10
8 17:50:45 2007
rcvd: 212
Perhatikan baris
;; Query time: 320 msec
Jika kita melakukan perintah dig untuk yang kedua kalinya, maka
waktu yang dibutuhkan untuk melakukan query akan berkurang,
karena sekarang name server akan mengambil dari cachenya. Jika
sudah berjalan dengan baik, pada client anda bisa mengkonfigurasi
interfaces jaringannya dengan mengarahkan DNS server kepada IP
192.168.0.254. Kita juga bisa menggunakan caching name server ini
untuk memblok situs-situs yang tidak diinginkan seperti situs ads
adtology.com, doubleclick.net, hal ini disebut sebagai bogus zone file,
karena zona ini bersifat fake dan mereferral kepada loopback
address. Langkah-langkah untuk mengkonfigurasi caching name
server yang telah kita konfigurasi diatas agar bisa bertindak sebagai
bogus name server untuk domain yang kita inginkan adalah sebagai
berikut, edit file /etc/bind/named.conf.local
$ sudo vi /etc/bind/named.conf.local
Isikan baris berikut pada file named.conf.local
zone doubleclick.net {
DNS Server
491
type master ;
file
/etc/bind/zones/bogus/fakes.doublelick.net
;
} ;
IN
SOA
gateway.scorvia.or.id. hostmaster.scorvia.or.id. (
IN
IN A 127.0.0.1
IN A 127.0.0.1
2007112300
; serial number
12h
; refresh
15m
; retry
3w
; expiry
2h
) ;
; minimum
NS gateway.scorvia.or.id.
492
Menggunakan ACL
Dengan ACL atau Access Control List, kita bisa mengatur client yang
dibolehkan untuk mengakses name server, selain itu acl juga bisa kita
gunakan didalam menentukan IP address yang diizinkan untuk
mentransfer zona, hal ini berguna jika slave name server yang
digunakan lebih dari satu sehingga kita bisa membuat acl berisikan
daftar IP slave name server. Pada buku ini penulis akan
memperlihatkan penggunaan acl untuk membatasi akses pada name
server yang sudah kita buat. Alamat jaringan yang digunakan disini
adalah 192.168.0.0/24, kita tidak menginginkan client dengan IP
address 192.168.0.25 untuk mengakses name server, sedangkan client
yang lain dibebaskan untuk mengaksesnya, untuk itu kita modifikasi
kembali settingan pada name.conf.options,
$ sudo vi named.conf.options
Disini kita mendeklarasikan clause acl dengan nama my_network
yang berisikan IP yang tidak diizinkan untuk mengakses jaringan
ditandai dengan tanda ! yaitu IP 192.168.0.25
acl "my_network" {
!192.168.0.252/32 ;
192.168.0.0/24 ;
} ;
options {
directory "/var/cache/bind";
// If there
nameservers you want
is
firewall
between
you
and
DNS Server
493
0.0.0.0;
// };
version "Not Available Now" ;
recursion yes ;
auth-nxdomain no;
# conform to RFC1035
// listen-on-v6 { any; };
allow-query { "my_network" ; } ;
};
494
Sekarang kita akan mencoba mengakses name server ini dari client
yang memiliki IP 192.168.0.25, dimana query yang berasal dari name
server ini akan di tolak.
$ dig scorvia.or.id
; <<>> DiG 9.4.1-P1 <<>> scorvia.or.id
;; global options:
printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 13471
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0,
ADDITIONAL: 0
;; WARNING: recursion requested but not available
;; QUESTION SECTION:
;scorvia.or.id.
IN
rcvd: 31
$ nslookup scorvia.or.id
Server:
192.168.0.253
Address:
192.168.0.253#53
$ host ns1
Host ns1 not found: 5(REFUSED)
$ host ns1.scorvia.or.id
Host
ns1.scorvia.or.id.scorvia.or.id
5(REFUSED)
not
found:
DNS Server
495
Jika kita perhatikan pada log dari name server yang kita gunakan,
pada contoh diatas penulis memblok query dari client 192.168.0.25
pada name server 192.168.0.253, hasilnya kurang lebih seperti ini
23-Nov-2007
21:07:00.720
security:
info:
client
192.168.0.25#32779:
query
'253.0.168.192.inaddr.arpa/PTR/IN' denied
23-Nov-2007
21:07:00.723
security:
info:
client
192.168.0.25#32779:
query
'253.0.168.192.inaddr.arpa/PTR/IN' denied
23-Nov-2007
21:07:07.789
security:
info:
client
192.168.0.25#32779: query 'scorvia.or.id/A/IN' denied
23-Nov-2007
21:07:14.421
security:
info:
client
192.168.0.25#32779: query 'scorvia.or.id/A/IN' denied
23-Nov-2007
21:07:14.427
security:
info:
192.168.0.25#32779:
'scorvia.or.id.scorvia.or.id/A/IN' denied
client
query
23-Nov-2007
21:08:47.005
security:
info:
client
192.168.0.25#32779: query 'ns.scorvia.or.id/A/IN' denied
23-Nov-2007
21:08:47.013
security:
info:
client
192.168.0.25#32780: query (cache) 'ns/A/IN' denied
23-Nov-2007
21:08:48.896
security:
info:
client
192.168.0.25#32780: query 'ns1.scorvia.or.id/A/IN' denied
23-Nov-2007
21:08:48.899
security:
info:
client
192.168.0.25#32781: query (cache) 'ns1/A/IN' denied
23-Nov-2007
21:08:54.716
security:
info:
client
192.168.0.25#32781: query 'ns1.scorvia.or.id/A/IN' denied
23-Nov-2007
21:08:54.720
security:
info:
192.168.0.25#32782:
'ns1.scorvia.or.id.scorvia.or.id/A/IN' denied
client
query
BAB 20
LAMP SERVER
Pada Bab ini akan dijelaskan mengenai:
20.1 Apache 2 Web Server
20.2 PHP 5
20.3 MYSQL 5
20.4 Blog dengan Wordpress
BAB ini berkaitan dengan BAB 19 yang membahas mengenai DNS
server, dimana disini menggunakan alamat URI (Uniform Resource
Identifier) http://www.scorvia.or.id yang sudah dikonfigurasi
menggunakan BIND 9 pada BAB 19. Jika anda tidak menggunakan
DNS, maka ganti nama URI tersebut dengan IP address.
498
Portable: Apache tidak hanya untuk *NIX, tapi juga berjalan pada OS
Windows, Mac OS, Amiga dan OS lainnya.
Flexible: Didesign secara modular sehingga sangat mudah untuk
dikonfigurasi, melakukan penambahan fitur baru. Selain itu Apache
bekerja dengan baik untuk scripting language seperti Perl, PHP, CGI.
Open Source: Apache dapat digunakan dengan free, source code bisa
diambil pada http://www.apache.org
Untuk mengetahui sejarah dan fitur-fitur dari Apache 2 bisa membaca
manual
atau
mengunjungi
website
dari
Apache
di
http://www.apache.org/
dan
http://httpd.apache.org/docs/2.2/faq/.
Pada Ubuntu, terdapat dua package Apache, yaitu apache dan
apache2. Packages apache merupakan versi 1.3.x sedangkan apach2
menggunakan versi 2.x. Pada buku ini akan menggunakan packages
apache2. Untuk menginstall Apache 2 pada Ubuntu gunakan perintah
apt-get install apache2. Pada buku ini Apache 2 web server akan
digunakan bersama dengan PHP 5 untuk web scriptingnya. Perintah
berikut akan menginstall Apache 2 web server.
$ sudo apt-get install apache2
Setelah proses installasi selesai, maka kita bisa melihat hasilnya dengan
menggunakan
browser,
ketik
pada
browser
alamat
http://www.scorvia.or.id, akan terlihat seperti gambar dibawah
LAMP Server
499
500
/etc/apache2
SSL Direktori
/etc/apache2/certs
/etc/apache2/certs/www.scorvia.or.id/private/
/etc/apache2/certs/www.scorvia.or.id/certs/
/var/www/default
/var/www/www.scorvia.or.id
Tabel 20.1 Konfigurasi Server
LAMP Server
501
Pada perintah diatas kita juga membuat direktori untuk script cgi-bin
dan direktori images serta icons yang digunakan untuk menempatkan
file-file images. Selanjutnya hapus file konfigurasi default untuk
website yang ada pada /etc/apache2/sites-enabled/000-default
$ sudo rm /etc/apache2/sites-enabled/000-default
Copykan juga file image yang akan digunakan untuk icon yang
berguna ketika website tersebut di bookmarks (favicon), disini filenya
bernama default.ico kedalam direktori icons dari DocumentRoot
$ sudo cp default.ico /var/www/default/images/icons/
$ sudo cp default.ico \
/var/www/www.scorvia.or.id/images/icons/
502
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
<IfModule mpm_prefork_module>
StartServers
MinSpareServers
MaxSpareServers
10
MaxClients
150
MaxRequestsPerChild
</IfModule>
<IfModule mpm_worker_module>
StartServers
MaxClients
2
150
MinSpareThreads
25
MaxSpareThreads
75
ThreadsPerChild
25
MaxRequestsPerChild
</IfModule>
User www-data
Group www-data
AccessFileName .htaccess
<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>
DefaultType text/plain
HostnameLookups Off
ErrorLog /var/log/apache2/default.error.log
LAMP Server
503
LogLevel info
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
Include /etc/apache2/httpd.conf
Include /etc/apache2/ports.conf
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\"
\"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
ServerTokens Prod
ServerSignature Off
Include /etc/apache2/conf.d/
Include /etc/apache2/sites-enabled/
504
berjalan dengan user dan group www-data hal ini demi keamanan
dari web server, yang terlihat pada direktif
User www-data
Group www-data
Dan untuk log level, disini penulis merubahnya menjadi info, dimana
file
default
dari
log
tersebut
terletak
pada
/var/log/apache2/default.error.log, yang bisa dilihat pada direktif
ErrorLog /var/log/apache2/default.error.log
LogLevel info
Perhatikan juga direktif Include, yang digunakan untuk meng-include
file-file yang digunakan oleh Apache Web Server. HostnameLookups
Off akan membuat Apache melog IP address dari penunjung website
kita, hal ini akan meringankan beban kerja dari Apache sendiri.
Sekarang edit file /etc/apache2/ports.conf sehingga terlihat seperti
berikut
$ sudo vi /etc/apache2/ports.conf
Listen 80
<IfModule mod_ssl.c>
Listen 443
</IfModule>
Direktif ini akan membuat Apache menggunakan port 80, dan jika
module SSL diaktifkan, maka Apache akan menggunakan port 443
untuk melayani request dari client. Selanjutnya kita perlu
mengkonfigurasi file /etc/apache2/sites-enabled/default yang akan
digunakan untuk http
$ sudo vi /etc/apache2/sites-enabled/default
<VirtualHost _default_:80>
ServerAdmin webmaster@scorvia.or.id
ServerName www.scorvia.or.id
ServerAlias scorvia.or.id
LAMP Server
505
DocumentRoot /var/www/default/
AliasMatch \
/favicon.ico /var/www/default/images/icons/default.ico
<Directory />
Options \
-FollowSymLinks +SymlinksIfOwnerMatch
AllowOverride None
</Directory>
<Directory /var/www/default/>
Options -Indexes FollowSymLinks \
MultiViews +SymlinksIfOwnerMatch -Includes
AllowOverride None
Order allow,deny
allow from all
</Directory>
DirectoryIndex index.html index.php index.cgi
ScriptAlias /cgi-bin/ /var/www/default/cgi-bin/
<Directory "/var/www/default/cgi-bin/">
AllowOverride None
Options +ExecCGI MultiViews \
+SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/default.error.log
LogLevel info
CustomLog \
/var/log/apache2/default.access.log combined
506
ServerSignature Off
</VirtualHost>
LAMP Server
507
Sekarang
buka
browser,
http://www.scorvia.or.id,
secara
menampilkan isi dari file index.html.
[ OK ]
dan
ketikkan
alamat
otomatis
browser
akan
508
Jika script CGI tersebut sudah berjalan seperti yang diinginkan, maka
program ini bisa dihapus, karena akan membuat informasi server
yang digunakan bisa diketahui oleh orang lain.
$ sudo rm /var/www/default/cgi-bin/printenv.cgi
LAMP Server
509
Untuk
menginstall
module
ssl
yang
terdapat
pada
/etc/apache2/mods-available, gunakan perintah a2enmod, seperti
pada perintah dibawah ini
$ sudo a2enmod ssl
Module ssl installed; run /etc/init.d/apache2 force-reload to
enable.
510
(eg,
Unit
company)
Name
(eg,
[Internet
Widgits
section)
Pty
[]:sCorV!a
Foundation
Common Name (eg, YOUR name) []:www.scorvia.or.id
Email Address []:webmaster@scorvia.or.id
Pindahkan
file
www.scorvia.or.id.key
kedalam
direktori
/etc/apache2/certs/www.scorvia.or.id/private/,
dan
file
www.scorvia.or.id.crt
kedalam
/etc/apache2/certs/www.scorvia.or.id/certs
$ sudo mv www.scorvia.or.id.key \
/etc/apache2/certs/www.scorvia.or.id/private/
$ sudo mv www.scorvia.or.id.crt \
LAMP Server
511
/etc/apache2/certs/www.scorvia.or.id/certs/
$ sudo chown -R root.root /etc/apache2/
$ sudo chmod 600 \
/etc/apache2/certs/www.scorvia.or.id/private/*
$ sudo chmod 600 \
/etc/apache2/certs/www.scorvia.or.id/certs/*
startup
file:/dev/urandom
512
SSLRandomSeed
connect
file:/dev/urandom
512
512
<VirtualHost 192.168.0.253:443>
ServerAdmin webmaster@scorvia.or.id
ServerName www.scorvia.or.id
ServerAlias scorvia.or.id
DocumentRoot /var/www/www.scorvia.or.id/
DirectoryIndex index.html index.php index.cgi
AliasMatch /favicon.ico \
/var/www/www.scorvia.or.id/images/icons/default.ico
# SSL Enable
SSLEngine On
SSLProtocol all -SSLv2
SSLCipherSuite \
HIGH:MEDIUM:!aNULL:+SHA1:+MD5:+HIGH:+MEDIUM
SSLCertificateFile \
/etc/apache2/certs/www.scorvia.or.id/certs/www.scorvia.or.id.crt
SSLCertificateKeyFile \
/etc/apache2/certs/www.scorvia.or.id/private/www.scorvia.or.id.key
SSLOptions +StrictRequire
SetEnvIf User-Agent ".*MSIE.*" nokeepalive \
ssl-unclean-shutdown downgrade-1.0 force-response-1.0
<Directory />
Options -FollowSymLinks +SymlinksIfOwnerMatch
AllowOverride None
</Directory>
<Directory /var/www/www.scorvia.or.id/>
SSLRequireSSL
Options -Indexes -FollowSymLinks MultiViews \
+SymlinksIfOwnerMatch -Includes
AllowOverride None
Order allow,deny
allow from all
LAMP Server
513
</Directory>
ScriptAlias /cgi-bin/ \
/var/www/www.scorvia.or.id/cgi-bin/
<Directory "/var/www/www.scorvia.or.id/cgi-bin/">
AllowOverride None
Options +ExecCGI -MultiViews \
+SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/scorvia.error.log
LogLevel info
CustomLog /var/log/apache2/scorvia.access.log combined
ServerSignature Off
<Location /server-status>
AuthType Basic
AuthName "sCorV!a Administrator Page"
AuthUserFile /etc/apache2/auth.users
AuthGroupFile /etc/apache2/auth.groups
Require group scorvia
Require valid-user
SetHandler server-status
Order deny,allow
Deny from all
Allow from 192.168.0.11
</Location>
<Location /server-info>
AuthType Basic
AuthName "sCorV!a Administrator Page"
AuthUserFile /etc/apache2/auth.users
AuthGroupFile /etc/apache2/auth.groups
514
</VirtualHost>
$ sudo vi /etc/apache2/auth.groups
scorvia: thinkerbels urangkayo
apache2
LAMP Server
515
[ OK ]
Pada hasil diatas terlihat bahwa ketika kita merestart service apache
server, maka akan diminta untuk memasukkan pass phrase yang
dibuat. Jika anda tidak ingin direpotkan dengan permintaan
memasukkan pass phrase ini, gunakan perintah dibawah ini, akan
tetapi perlu diingat bahwa hal ini bisa memiliki efek keamanan yang
tidak diinginkan. Sekarang backup terlebih dahulu key yang asli
dengan perintah berikut
$ sudo mv \
/etc/apache2/certs/www.scorvia.or.id/private/www.scorvia.
or.id.key \
/etc/apache2/certs/www.scorvia.or.id/private/www.scorvia.
or.id.key.original
Selanjutnya hapus pass phrase dari key untuk ditulis pada key yang
baru, dimana kita diminta untuk memasukkan pass phrase yang telah
dibuat sebelumnya
$ sudo openssl rsa -in \
/etc/apache2/certs/www.scorvia.or.id/private/www.scorvia.
or.id.key.original -out \
/etc/apache2/certs/www.scorvia.or.id/private/www.scorvia.
or.id.key
Enter
pass
phrase
for
/etc/apache2/certs/www.scorvia.or.id/private/www.scorvia.
or.id.key.original:
writing RSA key
[ OK ]
Amankan file key dari server apache dengan merubah menjadi 600.
516
Sekarang
buka
browser
dan
gunakan
alamat
https://www.scorvia.or.id, maka akan muncul warning mengenai
certificate yang digunakan, karena certificate ini self-signed, sehingga
browser tidak langsung mengenalinya
LAMP Server
517
Sekarang
setiap
kali
pengunjung
mendatangi
alamat
http://www.scorvia.or.id akan langsung diredirect kealamat
https://www.scorvia.or.id/.
Untuk melihat options dari Apache kita bisa menggunakan command
line, seperti berikut ini, yang menampilkan informasi mengenai
Apache server yang terinstall pada server yang kita gunakan.
$ apache2 -v
Server version: Apache/2.2.4 (Ubuntu)
Server built:
Oct
4 2007 22:47:20
518
urangkayo@ns1:~$ apache2 -V
Server version: Apache/2.2.4 (Ubuntu)
Server built:
Oct
4 2007 22:47:20
32-bit
Server MPM:
Prefork
threaded:
forked:
no
yes (variable process count)
LAMP Server
519
20.2 PHP 5
PHP atau disebut juga dengan Hypertext Preprocessor merupakan
script yang digunakan untuk aplikasi-aplikasi berbasiskan web.
Program ini bersifat open source sehingga bisa digunakan dengan free.
Penggunaan program ini bisa di gunakan bersamaan dengan HTML.
Untuk mengetahui lebih jauh lagi mengenai PHP bisa dilihat pada
http://www.php.net/download-docs.php. Sekarang kita akan
menginstall PHP 5 sebagai modul untuk Apache serta mengaktifkan
modul mysqli (mysqli merupakan modul yang digunakan oleh PHP
untuk versi MYSQL 4.1 keatas) serta module GD. Untuk menginstall
module-module yang dibutuhkan jalankan perintah berikut
$ sudo apt-get install php5 libapache2-mod-php5 \
php5-mysql php5-gd
520
total 8
drwxr-xr-x 2 root root 4096 2007-11-30 22:51 apache2
drwxr-xr-x 2 root root 4096 2007-11-30 22:03 conf.d
$ ls -l /etc/php5/apache2/
total 44
lrwxrwxrwx 1 root root
../conf.d
$ ls -l /usr/lib/php5/20060613+lfs/
total 368
-rw-r--r-- 1 root root 103184 2007-10-05 06:36 gd.so
-rw-r--r-- 1 root root
Setelah proses installasi dari PHP 5 selesai, restart Apache web server
dengan perintah
$ sudo /etc/init.d/apache2 restart
LAMP Server
521
print_r (phpinfo()) ;
?>
Buka
browser,
dan
ketikkan
alamat
http://www.scorvia.or.id/info.php. Jika anda mengikuti langkahlangkah konfigurasi dari awal, maka akan terlihat meskipun kita
hanya mengetikkan http akan tetapi kita diredirect kehalaman https,
yang akan menampilkan tampilan seperti gambar berikut.
Pada halaman info.php ini kita bisa melihat module apa saja yang
terinstall pada PHP, pastikan bahwa module mysqli dan gd terinstall
dengan baik. Module mysqli akan digunakan bersama dengan
MYSQL 5 yang akan diinstall nanti. Untuk sekarang kita akan
mencoba membuat beberapa script PHP sederhana. Untuk itu buat
terlebih dahulu direktori yang akan digunakan untuk menempatkan
file-file php pada /var/www/www.scorvia.or.id/
$ cd /var/www/www.scorvia.or.id/
$ sudo mkdir php
522
$ cd php/
$ sudo vi hello.php
<HTML>
<HEAD>
<TITLE>Hello, World PHP Script!</TITLE>
</HEAD>
<BODY>
<?php
/* Author: urangkayo
* Release Date: 04 December 2007
* Script Name: hello.php
*/
print "Hello, World";
// Perintah diatas
// Akan menampilkan Hello, World pada browser
# Merupakan comment pada PHP
?>
</BODY>
</HTML>
Program ini akan menampilkan teks Hello, World pada browser jika
kita mengakses halaman http://www.scorvia.or.id/php/hello.php.
Sekarang kita akan membuat script kedua
$ sudo vi hello2.php
<?php
/* Author: urangkayo
* Release Date: 04 December 2007
* Script Name: hello2.php
*/
printf("Hello thinkerbels <br />");
printf("Aku lagi belajar PHP nich <br />");
LAMP Server
523
printf("<br
/>Kamu
Menggunakan:
$_SERVER['HTTP_USER_AGENT'] . "</b><br />");
<b>"
<b>"
digunakan:
<b>"
?>
Tampilan dari script ini akan terlihat seperti pada gambar 20.8 berikut
ini
524
$firstNumber = 20;
$secondNumber = 30;
$sum = $firstNumber + $secondNumber;
printf($firstNumber . " + " . $secondNumber . " = <b>"
. $sum . "</b><br />");
$linux = "ubuntu";
$$linux = "Gutsy Gibbon";
printf("Variable
$ubuntu . "</b><br />");
yang
akan
tampil
if(isset($firstName)) {
printf('$firstName is set');
printf("<br />");
}
unset($firstNumber);
if(isset($firstNumber)) {
printf('$firstNumber is set');
printf("<br />");
}
else {
printf('$firstNumber not set');
printf("<br />");
}
adalah:
<b>"
LAMP Server
525
printf("<br />");
printf("<br />");
printf("Perbedaan antara ' dan \" pada PHP <br />");
printf("Tanda ' akan menghasilkan: <b>" . '$firstName'
. "</b><br />");
printf("Tanda \" akan menghasilkan: <b>" . "$firstName"
. "</b><br />");
?>
526
</form>
</body>
</html>
$ sudo output.php
<?php
/* Author: urangkayo
* Release Date: 04 December 2007
* Script Name: output.php
*/
$firstName = $_POST['first'];
$lastName = $_POST['last'];
?>
LAMP Server
527
Setelah kita mengisi pada First Name dan Last Name, kemudian
mengklik button Proses, akan memanggil output.php yang akan
menampilkan
Jika kita mengklik button Proses, tanpa mengisi form First Name dan
Last Name, maka akan muncul tampilan seperti pada gambar 20.11
berikut
20.3 MySQL 5
MySQL adalah program database yang menyediakan server dan client
untuk databasenya. Program ini bersifat open source serta banyak
digunakan pada server-server berbasiskan Linux. Untuk menginstall
MySQL 5 pada Ubuntu, gunakan perintah berikut
$ sudo apt-get install mysql-server mysql-client
528
[ OK ]
$ sudo ls -l /var/lib/mysql
total 20528
-rw-r--r-- 1 root
5.0.flag
root
LAMP Server
-rw------- 1 root
mysql_upgrade_info
529
root
2007-11-30
22:56
Sekarang buka file my.cnf dengan teks editor, dan pastikan baris bindaddress berisikan alamat 127.0.0.1
$ sudo vi /etc/mysql/my.cnf
bind-address
= 127.0.0.1
MySQL
database
server
mysqld
5.0.45-Debian_1ubuntu3-log
Debian
etch
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
530
Connection id:
Current database:
Current user:
root@localhost
SSL:
Not in use
Current pager:
stdout
Using outfile:
''
Using delimiter:
Server version:
distribution
Protocol version:
10
Connection:
Server characterset:
latin1
Db
characterset:
latin1
Client characterset:
latin1
Conn.
latin1
characterset:
UNIX socket:
/var/run/mysqld/mysqld.sock
Uptime:
4 min 9 sec
Flush
+--------------------+
| information_schema |
| mysql
+--------------------+
2 rows in set (0.00 sec)
LAMP Server
531
Jika prompt seperti itu, maka ketik tanda ; kemudian tekan ENTER.
Selanjutnya kita akan menggunakan database mysql,
mysql> use mysql;
Reading table information for completion of table and column
names
You can turn off this feature to get a quicker startup with -A
Database changed
| user |
+------+---------+------+
| %
| test
| %
| test\_% |
+------+---------+------+
2 rows in set (0.00 sec)
Pada kolom host terdapat value % yang berarti dari semua host (sama
dengan tanda * pada shell). Karena db test ini tidak digunakan dan
untuk mengamankan MySQL yang digunakan, sebaiknya dihapus,
gunakan perintah berikut
mysql> delete from db;
Query OK, 2 rows affected (0.13 sec)
532
| user
+-------------------+------------------+
| 127.0.0.1
| root
| localhost
| debian-sys-maint |
| localhost
| root
| ns1.scorvia.or.id | root
+-------------------+------------------+
4 rows in set (0.00 sec)
Dari table ini terlihat username yang bisa login kedalam MySQL dan
dari host mana, khusus untuk user debian-sys-maint, digunakan oleh
system ketika script /etc/init.d/mysql kita panggil atau pada saat
booting, jadi user ini jangan dihapus. Sekarang kita kita akan
mendelete user root dari host localhost dan ns1.scorvia.or.id, gunakan
perintah berikut
mysql> delete from user where
-> (host="ns1.scorvia.or.id" and user="root" );
Query OK, 1 row affected (0.13 sec)
| user
+-----------+------------------+
| 127.0.0.1 | root
| localhost | debian-sys-maint |
LAMP Server
533
+-----------+------------------+
2 rows in set (0.00 sec)
Can't
connect
to
MySQL
server
on
Dari hasil diatas terlihat kita tidak bisa login tanpa menggunakan host
127.0.0.1
$ mysql -u root -p -h 127.0.0.1
Enter password:
Welcome to the MySQL monitor.
5.0.45-Debian_1ubuntu3-log
Debian
etch
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
534
mysql>
Jika user yang ingin diganti passwordnya bukan root, ganti root
dengan nama user yang diinginkan. Password yang disimpan pada
table sudah di enkripsi, yang akan terlihat seperti berikut ini
mysql> select user, host, password from user;
+------------------+-----------+-------------------------------------------+
| user
| host
| password
+------------------+-----------+-------------------------------------------+
| root
| 127.0.0.1 | *3E5287812B7D1F947439AC45E73935377A3ADEF7 |
LAMP Server
535
-> on scorvia.*
-> to 'thinkerbels'@'127.0.0.1'
-> identified by 'iniadalahpassword';
Query OK, 0 rows affected (0.01 sec)
| host
| password
+------------------+-----------+-------------------------------------------+
| urangkayo
| 127.0.0.1 | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 |
| thinkerbels
| 127.0.0.1 | *5E5777C544188F26CF22EBAFE13DC0BEE3DC2745 |
| root
| 127.0.0.1 | *3E5287812B7D1F947439AC45E73935377A3ADEF7 |
| host
| db
+-------------+-----------+---------+
| urangkayo
| 127.0.0.1 | capoex
Jika kita ingin membuat user untuk account MySQL yang bisa
membuat database jika diawali dengan usernamenya, maka gunakan
perintah berikut
mysql> create user 'penguin'@'127.0.0.1'
-> identified by 'secret';
Query OK, 0 rows affected (0.00 sec)
536
Selanjutnya kita perlu menguji koneksi PHP dan MySQL pada server
yang telah kita install Apache 2 web server, PHP 5 dan MySQL 5. Buat
script php berikut ini pada /var/www/scorvia.or.id/
$ sudo vi /var/www/ www.scorvia.or.id /mysql-connect.php
<title>Connect to MySQL Server!</title>
</head>
<body>
<?php
$mysqli = new mysqli
"iniadalahpassword", "scorvia");
("localhost",
"thinkerbels",
if (mysqli_connect_errno()) {
printf
mysqli_connect_error());
("Connect
failed:
%s\n",
exit ();
}
library
version:
%s\n",
LAMP Server
537
$mysqli->close();
?>
</body>
</html>
538
+-------------------+
1 row in set (0.00 sec)
| Type
+-----------+--------------+------+-----+---------+----------------+
| id
| int(11)
| PRI | NULL
| auto_increment |
| nickname
| varchar(255) | YES
| NULL
| location
| varchar(255) | YES
| NULL
| NULL
| join_date | date
| NO
| YES
+-----------+--------------+------+-----+---------+----------------+
| location | join_date
+----+-------------+----------+------------+
|
1 | urangkayo
| Depok
| 2005-09-29 |
2 | thinkerbels | Jogja
| 2005-09-29 |
+----+-------------+----------+------------+
2 rows in set (0.27 sec)
LAMP Server
539
("localhost",
"thinkerbels",
if (mysqli_connect_errno()) {
printf
mysqli_connect_error());
("Connect
failed:
%s\n",
exit();
}
?>
File connect.php ini akan kita include kedalam file index.php, untuk
itu buat file index.php yang isinya
$ sudo vi /var/www/www.scorvia.or.idindex.php
<?php
require_once ("connect.php");
$mysqli->close();
540
?>
+--------------------+
| information_schema |
| penguin_latihan
+--------------------+
2 rows in set (0.01 sec)
for
user
LAMP Server
541
+---------------------------+
1 row in set (0.01 sec)
| Type
+---------------+--------------+------+-----+---------+----------------+
| no
| smallint(6)
| PRI | NULL
| auto_increment |
| distroName
| varchar(255) | YES
| NULL
| distroVendor
| varchar(255) | YES
| NULL
| NULL
| distroRelease | date
| YES
| NULL
| comment
| YES
| NULL
| text
| NO
+---------------+--------------+------+-----+---------+----------------+
6 rows in set (0.07 sec)
542
+---------------------------+
1 row in set (0.00 sec)
LAMP Server
543
+------------+--------------+------+-----+---------+----------------+
| Field
| Type
+------------+--------------+------+-----+---------+----------------+
| ID
| smallint(6)
| OS_Vendor
| OS_Name
| NO
| PRI | NULL
| auto_increment |
| varchar(255) | YES
| NULL
| varchar(255) | YES
| NULL
| OS_Version | char(50)
| YES
| NULL
| OS_Release | date
| YES
| NULL
| Comment
| YES
| NULL
| text
+------------+--------------+------+-----+---------+----------------+
6 rows in set (0.16 sec)
+----+----------------+---------+------------+------------+--------------------+
|
1 | OpenBSD.org
| OpenBSD | 4.2
| 7.04
+----+----------------+---------+------------+------------+--------------------+
2 rows in set (0.08 sec)
544
+----+----------------+---------+------------+------------+---------------------+
|
1 | OpenBSD.org
| OpenBSD | 4.2
| 7.04
| 7.10
+----+----------------+---------+------------+------------+---------------------+
3 rows in set (0.00 sec)
+----+----------------+---------+------------+------------+---------------------+
|
1 | OpenBSD.org
| OpenBSD | 4.2
4 | OpenBSD.org
| 7.04
| 7.10
| OpenBSD | 4.5
+----+----------------+---------+------------+------------+---------------------+
4 rows in set (0.00 sec)
LAMP Server
Rows matched: 1
545
Changed: 0
Warnings: 0
+----+----------------+---------+------------+------------+---------------------+
|
1 | OpenBSD.org
| OpenBSD | 4.2
4 | OpenBSD.org
| 7.04
| 7.10
| OpenBSD | 4.1
+----+----------------+---------+------------+------------+---------------------+
4 rows in set (0.00 sec)
+----+----------------+---------+------------+------------+---------------------+
|
1 | OpenBSD.org
| OpenBSD | 4.2
| 7.10
+----+----------------+---------+------------+------------+---------------------+
2 rows in set (0.02 sec)
+----+----------------+---------+------------+------------+--------------------+
|
| 7.04
+----+----------------+---------+------------+------------+--------------------+
1 row in set (0.00 sec)
+----+----------------+---------+------------+------------+---------------------+
|
| 7.04
546
4 | OpenBSD.org
| OpenBSD | 4.1
1 | OpenBSD.org
| 7.10
| OpenBSD | 4.2
+----+----------------+---------+------------+------------+---------------------+
4 rows in set (0.06 sec)
+----+----------------+---------+------------+------------+---------------------+
|
1 | OpenBSD.org
| OpenBSD | 4.2
4 | OpenBSD.org
| 7.10
| OpenBSD | 4.1
| 7.04
+----+----------------+---------+------------+------------+---------------------+
4 rows in set (0.00 sec)
4 |
+----------+
1 row in set (0.00 sec)
mysql> quit
Bye
PHPMyAdmin
PHPMyAdmin merupakan program bantu untuk MySQL, dimana
dengan interface webnya memudahkan kita didalam menjalankan
sintak-sintak MySQL. Untuk menginstall phpmyadmin, disini penulis
menginstall dari sourcenya dengan terlebih dahulu mendownload
pada alamat http://www.phpmyadmin.net/. Disini penulis
LAMP Server
547
menggunakan phpMyAdmin-2.11.2.2-all-languages-utf-8-only.tar.bz2,
ekstrak dengan menggunakan perintah
$ sudo tar xjvf \
phpMyAdmin-2.11.2.2-all-languages-utf-8-only.tar.bz2 \
-C /var/www/www.scorvia.or.id/
548
LAMP Server
549
memperkenalkan
cara
menginstall
+--------------------+
| information_schema |
| mysql
| scorvia_blog
+--------------------+
550
mysql> quit
Sekarang edit file wp-config.php dengan teks editor, dan edit baris
berikut ini, sesuaikan dengan settingan anda sendiri.
$ sudo vi wp-config.php
// ** MySQL settings ** //
define('DB_NAME',
database
'scorvia_blog');
define('DB_USER', 'thinkerbels');
//
The
name
of
the
LAMP Server
551
/var/www/www.scorvia.or.id/blog/wp-content/themes/
Lakukan hal yang sama untuk plugins yang ingin digunakan pada
wordpress, dengan mengekstrak plugins tersebut dan mengcopy
kedalam
folder
/var/www/www.scorvia.or.id/blog/wpcontent/plugins/. Sekarang rubah terlebih dahulu ownership dari
direktori blog, gunakan perintah berikut
$ sudo chown -R www-data.www-data \
/var/www/scorvia.or.id/blog/
552
LAMP Server
553
554
Jika anda ingin membuat username baru, klik pada tab Authors &
Users, dan pada bagian Add New User, isikan username, password
dan hak akses dari username tersebut.
LAMP Server
555
Pada tab Manage, kita juga bisa mengedit Posts, Page, Uploads, Files,
yang bisa dilihat dengan mengklik pada masing-masing tab. Sekarang
klik pada tab Presentation Themes, untuk mengganti themes, klik
theme yang tersedia pada Available Themes, secara otomatis theme
tersebut akan menjadi theme pada Wordpress, yang terlihat pada
Current Theme. Sebagai contoh disini penulis mengganti theme
default dengan theme iTheme.
556
LAMP Server
557
558
Pada tab Blogroll digunakan untuk links yang akan tampil dihalaman
depan dari blog, disini kita bisa menambah atau mengedit kategori
serta menambah dan mengedit link untuk masing-masing kategori
yang diinginkan. Selanjutnya kita akan mencoba menulis untuk
ditampilkan pada blog, untuk itu klik pada tab Write Write Post,
isikan judul pada title dan pada editornya isikan yang ingin
ditampilkan pada blog. Editor yang digunakan oleh wordpress
defaultnya adalah dalam mode visual, untuk mengganti kedalam
mode code, klik pada button Code. Pada bagian sebelah kanan, kita
bisa mengatur options untuk tulisan yang ingin dipublish, seperti
Categories, Discussion, Post Password dan options lainnya. Setelah
selesai, klik button Publish untuk menyimpan sekaligus
menampilkannya pada blog.
LAMP Server
559
Setelah selesai, kita bisa mengklik link dengan tulisan View site untuk
melihat tampilan blog yang telah kita konfigurasi. Hasil dari
modifikasi wordpress pada buku ini bisa terlihat seperti pada gambar
20.28 berikut
560
Setelah kita merasa puas dengan hasil modifikasi blog ini, kita bisa
merubah kembali ownership dari blog kedalam ownership defaultnya
yaitu root dengan perintah
$ sudo chown -R root.root /var/www/scorvia.or.id/blog/
BAB 21
FTP SERVER
Pada Bab ini akan dijelaskan mengenai:
21.1 Dasar-dasar FTP
21.2 VSFTPD
21.3 FTP Client
ASCII
562
EBSDIC
BINARY
FTP Server
563
dan password tidak di enkripsi. Oleh karena itu, pada buku ini hanya
akan dijelaskan mengenai cara membangun Anonymous FTP server
menggunakan VSFTPD. Beberapa tips agar kita bisa meminimalisasi
masalah keamanan pada anonymous ftp:
Menjalankan FTP daemon pada unprivileged user/group
Pastikan user yang digunakan untuk anonymous account tidak
bisa login kedalam system menggunakan shell. Bisa
menggunakan /bin/false pada saat membuat user tersebut.
Lakukan chroot dengan owner root pada direktori dari
anonymous user
Tidak mengizinkan anonymous user untuk melakukan upload
file
Pada bab sebelumnya telah dijelaskan mengenai DNS server, dimana
pada record DNS kita memberikan alamat ftp.scorvia.or.id dengan IP
address 192.168.0.250, konfigurasi ini akan digunakan pada saat
membangun FTP server dengan menggunakan VSFTPD. Untuk
anonymous direktori ditempatkan pada /public_ftp dengan
ownership root.nogroup.
21.2 VSFTPD
Merupakan singkatan dari Very Secure FTP Daemon, yang diciptakan
oleh Chris Evans. Konfigurasi default dari VSFTPD pada Ubuntu
setelah diinstall adalah
3. Berjalan sebagai anonymous FTP server. Dimana kita bisa
menggunakan username anonymous atau ftp dan password
berupa alamat email untuk login. Diatur dengan menggunakan
option anonymous_enable
4. Hanya mengizinkan anonymous user untuk melakukan
download file yang terdapat pada anonymous direktori yang
digunakan oleh server.
564
`ftp'
(UID
104)
with
group
[ OK ]
FTP Server
565
566
FTP Server
567
to
FTP.sCorV!a.or.id
::
568
ftp.scorvia.or.id:ftp*:*
LISTEN
900 ?
Pada perintah diatas terlihat bahwa vsftpd sudah berjalan dengan baik
dan sudah bisa digunakan oleh ftp client yang ingin terhubung. Untuk
mencobanya, anda bisa meng-copy file kedalam direktori /public_ftp
yang nantinya akan diakses oleh FTP client. Untuk mengakses file log
dari vsftpd yang terdapat pada file /var/log/vsftpd.log, gunakan
perintah
$ sudo tail -n 100 /var/log/vsftpd.log
Mon Nov 19 07:12:23 2007 [pid 5718] CONNECT: Client
"192.168.0.11"
Mon Nov 19 07:12:29 2007 [pid 5717] [ftp] OK LOGIN:
Client
"192.168.0.11",
anon
password
"admin@scorvia.or.id"
FTP Server
569
570
Type:
ascii;
Form:
non-print;
remote:
connection for
(277642532
################################################
226 File send OK.
277642532
kB/s)
bytes
received
in
561.48
secs
(482.9
FTP Server
571
572
Keterangan
ascii
bin/binary
close
get <remote_file>
Untuk
mendownload
file
dari
FTP Server
573
server
mget <remote_file>
open <server_name>
put <local_file>
mput <local_file>
quit
prompt
hash
Menampilkan
tanda
melakukan transfer file
help
lcd <local_direktori>
mkdir <nama_direktori>
pwd
cd <nama_direktori>
dir atau ls
delete <nama_file>
Menghapus file
rmdir <nama_direktori>
Menghapus direktori
status
saat
LAMPIRAN A
DUAL BOOT DAN UBUNTU
DESKTOP
Pada Bab ini akan mencoba menjelaskan:
A.1. Dual boot Windows dan Ubuntu Alternate
A.2. Menginstall Ubuntu Desktop
A.3. Ubuntu Server
A.4. Ubuntu Studio
576
Hal-hal diatas bukanlah sesuatu yang mutlak, bisa jadi pada anda
kasusnya berbeda, penulis menggunakan ketentuan diatas agar bisa
lebih mudah untuk diikuti langkah-langkah pada lampiran ini,
sehingga proses menginstall Ubuntu untuk dapat dual boot dengan
Windows XP dapat berjalan dengan baik. Langkah yang pertama
adalah install program partition magic 8.0 yang bisa dilihat pada
alamat http://www.powerquest.com/partitionmagic/. Disini penulis tidak
menjelaskan cara-cara dalam menginstall program ini, karena
menginstall program pada Windows sangat mudah. Setelah partition
magic diinstal, sebaiknya restart komputer anda.
Sebelum kita merubah ukuran partisi, sebaiknya harddisk tersebut kita
scan dan lakukan defragmentasi. Untuk itu klik kanan drive C:\
Properties klik tab Tools
577
Pada tampilan untuk scandisk berikan tanda pada pilihan yang ada,
dan kemudian klik Start
578
579
Hasil dari perubahan partisi yang penulis buat bisa dilihat pada
gambar A.7 berikut ini. Klik OK untuk menutup dialog ini.
580
Saat kita mengklik button Apply akan muncul kotak dialog yang
menanyakan Apply changes now, klik Yes. Maka proses merubah
ukuran partisi harddisk akan segera dilakukan. Setelah itu akan
muncul kotak dialog lagi yang meminta untuk merestart komputer
581
582
Selanjutnya proses ini akan berjalan dengan otomatis. Proses ini bisa
berlangsung dalam beberapa menit atau dalam hitungan jam yang
tergantung dengan ukuran dari harddisk yang ingin dirubah
partisinya. Jika proses ini telah selesai dan anda telah masuk ke dalam
sistem Windows XP, sekarang saatnya untuk menginstall Linux
Ubuntu pada harddisk yang telah kita kosongkan itu. Restart
komputer anda, dan rubah urutan booting pada BIOS menjadi ke CD
ROM dan jangan lupa untuk memasukkan CD Linux Ubuntu. (Lihat
pada BAB II bagaimana cara merubah urutan booting pada BIOS dan
proses installasi awal seperti memilih bahasa dan lainnya).
Pada lampiran ini penulis hanya akan menjelaskan cara-cara dalam
membuat partisi yang akan digunakan, karena hanya pada bagian ini
yang sedikit berbeda dibandingkan dengan cara membuat partisi pada
BAB II. Jangan lupa untuk melihat pada BAB II (penulis asumsikan
pembaca sudah sampai pada proses konfigurasi network (lihat
gambar 2.19 pada BAB II) ), sekarang lanjutkan dengan proses partisi
pada harddisk.
Pilih menu Manually edit partition table dan tekan ENTER. Pada
tampilan selanjutnya akan terlihat adanya kapasitas harddisk yang
kosong (yang telah kita buat dengan partition magic), pilih harddisk
yang masih kosong tersebut yang ada tulisan seperti pri / log 6.4 GB
FREE SPACE, pada komputer anda mungkin tidak sama, tapi yang
penting adalah lihat yang ada tulisan FREE SPACE berarti harddisk
adalah bagian yang masih kosong, kemudian tekan ENTER
583
584
585
Setelah proses booting selesai, maka kita akan langsung dibawa masuk
kedalam desktop Ubuntu, pada tahap ini kita sudah bisa
menggunakan Ubuntu. Untuk melanjutkan proses installasi Ubuntu,
pada desktop terdapat dua icon klik pada icon Install untuk
menginstall Ubuntu kedalam harddisk.
586
587
Setelah itu kita akan diminta menentukan keyboard layout yang sesuai
dengan keyboard yang digunakan. Jika kita menggunakan keyboard
yang umum digunakan biarkan saja pilihan defaultnya, kemudian klik
Forward. Sekarang akan muncul proses untuk partisi harddisk. Dari
tampilan pada gambar A.19 berikut ini pilih Manual, karena kita ingin
membuat partisi secara manual.
588
Pada dialog box Edit Partition, tentukan ukuran partisi baru yang
akan dibuat pada New partition size in megabyes dan tentukan tipe
partisinya pada Use as serta mount point yang akan digunakan oleh
partisi yang kita buat ini. Selanjutnya klik OK. Jika membuat lebih dari
satu partisi, ulangi langkah yang sama (mengenai partisi yang bisa
589
dilihat lagi pada BAB II), jika ada kesalahan dalam mebuat partisi bisa
mengklik button Undo changes to partition.
Setelah selesai membuat partisi, klik Forward, maka akan muncul
tampilan untuk mengimport Document and Setting dari sistem
operasi lain yang sudah terinstall pada komputer yang digunakan.
Pilih nama user dari account pada sistem operasi yang akan di import
dengan memberikan tanda pada kotak yang tersedia, jika ingin
memilih settingan tertentu yang akan di import, klik tanda panah yang
ada di sebelah kiri dari nama username.
590
591
Klik button Advanced jika ingin mengatur settingan Boot Loader, dan
isikan dengan nilai yang sesuai, atau kita bisa membiarkan nilai
defaultnya yang biasanya sudah berjalan dengan baik.
Sekarang klik button Install, dan proses installasi akan segera dimulai.
592
593
Pilih menu Install to the hard disk, dan tekan ENTER, akan muncul
proses yang sama seperti pada BAB II, yaitu dari gambar 2.4 sampai
gambar 2.41. Yang perlu diperhatikan adalah pada saat membuat
partisi (lihat gambar 2.19 sampai gambar 2.36) sesuaikan dengan
server yang akan digunakan. Jumlah partisi yang sebaiknya dibuat
tergantung dari kebutuhan server yang akan digunakan. Skema yang
disarankan untuk server adalah:
594
Mount Point
Keterangan
/boot
root partisi
/swap
swap partisi
/usr
usr partisi
/usr/local
/home
home partisi
/chroot
jail environment
/var
var partisi
/var/spool
/var/log
log file
/opt
/tmp
temporary
Tabel A.1 Skema partisi Ubuntu Server
595
596
597
598
599
600
601
Untuk melihat hasil perubahan ini, logout dari dekstop, dan lakukan
login ulang kedalam system. Pada saat logout ini akan terlihat
tampilan login screen dari Ubuntu sudah berubah sesuai dengan yang
kita inginkan.
Jika ingin melihat program-program yang ikut terinstall ketika kita
menginstall Ubuntu Studio, klik pada menu Applications, dan bisa
kita lihat program-program tambahan yang ikut terinstall.
602
LAMPIRAN B
TIPS dan TRICK
MENGGUNAKAN UBUNTU
B.1 UbuntuME (Ubuntu Muslim Edition)
B.2 Upgrade Menggunakan CD Ubuntu
B.3 Dynamic DNS
B.4 GnuPG
B.5 Beberapa Tips Lain Pada Ubuntu
B.1 UbuntuME
UbuntuME merupakan salah satu distro yang berbasiskan pada
Ubuntu, pada distro ini mengikutsertakan program seperti zekr,
dansguardian yang dilengkapi dengan content filtering, menginstall
ubuntume-artwork.
Untuk
menginstall
UbuntuME
bisa
mendownload file ISOnya di http://www.ubuntume.com/, atau
menggunakan script yang ada pada website tersebut jika ingin
menginstall secara online download script install-ubuntuME.sh pada
website tersebut, rubah hak aksesnya sehingga menjadi executable,
$ chmod 755 install-ubuntuME.sh
$ sudo ./ install-ubuntuME.sh
Setelah proses installasi selesai maka script ini akan melakukan
konfigurasi UbuntuME yang membutuhkan input dari kita, yang bisa
disesuaikan dengan dengan keinginan anda sendiri. Pada lampiran ini
penulis akan membahas cara merubah tampilan Ubuntu menjadi
UbuntuME dengan menginstall ubuntume-artwork yang berisikan
theme, icons, background, splashimage, grub-splashimage,
604
605
606
Sekarang kita akan mengganti login screen dari Ubuntu dengan login
screen UbuntuME, untuk itu klik System Administration Login
Window, Klik tab Local pada Login Window Preferences. Pilih login
theme dengan nama UbuntuME-green dengan memberikan tanda titik
kecil pada radio button (bulatan kecil yang terdapat disebelah kiri
gambar login screen).
Untuk bisa melihat hasilnya, anda harus log out dari session aktif.
Setelah selesai mengganti login screen, tutup program Login Window
Preferences. Kita akan lanjutkan dengan menginstall grub-splashimage
dan usplash, dengan melakukan langkah berikut
607
$ sudo cp -f /usr/share/ubuntume-artwork/\
grub/medine_moon_right_below.xpm.gz \
/boot/grub/splashimages
$ sudo cp -f --remove-destination /usr/share/\
ubuntume-artwork/boot/grub/splash.xpm.gz \
/boot/grub/splash.xpm.gz
$ sudo cp -f --remove-destination /usr/share/\
ubuntume-artwork/usplash/usplash-artwork.so \
/usr/lib/usplash/usplash-artwork.so
$ sudo update-initramfs -u
$ sudo update-grub
Sekarang restart komputer yang digunakan, maka pada saat menu
grub muncul akan akan ada background dari UbuntuME, begitu juga
saat Ubuntu loading akan menggunakan usplash dari UbuntuME,
seperti yang terlihat pada gambar dibawah ini, yang memperlihatkan
screen shoot dari grub-splashimage, usplash dan login screen.
608
609
610
611
612
613
Lihat baris berikut ini pada file /etc/default/ddclient, dan ganti nilai
false dengan true
run_daemon="false"
Sehingga baris ini menjadi
run_daemon="true"
Simpan hasil perubahan ini, dan jalankan ddclient
$ sudo /etc/init.d/ddclient restart
$ ps aux | grep ddclient
root
15:09
202.134.0.155
Address:
202.134.0.155#53
Non-authoritative answer:
Name:
urangkayo.homeunix.org
Address: 125.161.170.78
Bisa juga kita lakukan ping untuk melihat apakah host tersebut hidup.
$ ping urangkayo.homeunix.org
PING urangkayo.homeunix.org (125.161.170.78) 56(84)
bytes of data.
64
bytes
from
170.speedy.telkom.net.id
icmp_seq=1 ttl=64 time=0.062 ms
78.subnet125-161(125.161.170.78):
614
Setelah proses installasi selesai, kita coba membuat file dengan nama
index.html pada /var/www
$ sudo vi /var/www/index.html
<HTML>
<HEAD>
<TITLE> Kost-an na urangkayo </TITLE>
</HEAD>
<BODY>
Working :p
</BODY>
</HTML>
Sekarang buka browser, dan ketikkan alamat host yang dibuat pada
website dynDNS, yang akan terlihat seperti pada gambar berikut ini
615
B.4 GnuPG
GNU Privacy Guard, merupakan program yang digunakan untuk
mengamankan komunikasi data dan storage, untuk melakukan
enkripsi data serta membuat signature digital. Untuk bisa
menggunakan GPG kita harus membuat key-pair (private key dan
public key), untuk membuat key-pair ini jalankan perintah berikut
$ gpg --gen-key
gpg (GnuPG) 1.4.6; Copyright (C) 2006 Free Software Foundation, Inc.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions. See the file COPYING for details.
gpg: directory `/home/urangkayo/.gnupg' created
gpg: new configuration file `/home/urangkayo/.gnupg/gpg.conf' created
gpg: WARNING: options in `/home/urangkayo/.gnupg/gpg.conf' are not yet
active during this run
gpg: keyring `/home/urangkayo/.gnupg/secring.gpg' created
gpg: keyring `/home/urangkayo/.gnupg/pubring.gpg' created
Your selection? 1
Selanjutnya kita diminta untuk memasukkan panjang bit yang akan
digunakan, pilihan 2048 sudah cukup memadai
DSA keypair will have 1024 bits.
ELG-E keys may be between 1024 and 4096 bits long.
616
Maka akan ditanyakan masa berlaku dari key yang akan kita buat,
disini kita bisa memilih key tersebut berlaku untuk selamanya (tidak
memiliki masa expire)
Please specify how long the key should be valid.
0 = key does not expire
<n>
Enter passphrase:
gpg: gpg-agent is not available in this session
617
valid:
signed:
1024D/AF86AD4C 2007-12-13
Key fingerprint = 8BD5 F5F0 8A6E 844E 6DCC
AD4C
uid
<urangkayo@gmail.com>
sub
2048g/26375DFD 2007-12-13
Perhatikan tulisan Not enough random bytes available. Jika ini muncul
maka lakukan aktivitas yang membuat harddisk bekerja, seperti
menjalankan perintah find / berulang-ulang, menggerakkan mouse,
mengcompress file dan sebagainya agar random bytes yang
diperlukan bisa tersedia. Setelah selesai bisa dilihat bahwa ID dari
signature yang dibuat adalah AF86AD4C dengan fingerprint 8BD5
F5F0 8A6E 844E 6DCC 1F87 EEE4 6422 AF86 AD4C, tentu saja akan
berbeda dengan yang anda hasilkan.
618
Sekarang kita akan mengeksport public key kedalam file sehingga bisa
disebarluaskan, untuk itu kita bisa menggunakan perintah berikut
$ gpg --output urangkayo@gmail.com.pubkey.gpg \
--export urangkayo@gmail.com
Perintah diatas akan mengeksport public key kita kedalam file dengan
nama urangkayo@gmail.com.pubkey.gpg, dimana formatnya adalah
dalam bentuk binary, untuk mengeksport kedalam format ASCII,
gunakan --armor
$ gpg --output urangkayo@gmail.com.pubkey.asc \
--armor --export urangkayo@gmail.com
$ cat urangkayo@gmail.com.pubkey.asc
-----BEGIN PGP PUBLIC KEY BLOCK----Version: GnuPG v1.4.6 (GNU/Linux)
mQGiBEdgmJwRBADf/Eqz/ODHD6UsAvy9EPhwKt9vD5bCNw15Af42y0XyDe2kxcXj
PZ2Bcy0qzhCO04SE59NXFXhW0qOmMj4xQpFUvBCSgeIiC83dZ8GcVUpSlnuYkyGz
whz7LOFQPgaPP4hgS5u2Lwvuthe/3uxMkRm15YmfXRPwIZWEOxmAuUcBlwCgnJVH
d5GvjCxyPTWA0q1LwXNpdn8EAL3mAQ15nNx0CYYn2IvV3rBrRz86+z0CRVmGIXvF
nWQNvbmBS/27vESGkehyoEkSiT2Q1Ys6u/nQdw/WsSXYyoO0AeZq/0Q9oUgCiCIH
WA49JZ3E7V6Cc+fwEiOaRVVmJeKPCblJvpTFjKxUdSGVZhW5BmRyh92Mp9Wb9kmy
29oDA/9xI7o9+Ow+XR9lb9bHZ71/LjxxwbGHhDATCP/e4355RSmNm8qOiuLhMymR
odwLYJAk+ao86RfdNgzAu8YbViwDW1zvuySw/u3RBVUNWzmrUAeqvVa/DoPql4z6
5Gvt1kGNcbE/FNyU4HnjtE9ym29mmxCSZvX7FMYLi46TsgX3vrQ8WXVuaWZhIFdp
cm1hbiAoQ2FQb2VYIGRvdCBOZXQgRm91bmRlcikgPHVyYW5na2F5b0BnbWFpbC5j
b20+iGAEExECACAFAkdgmJwCGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRDu
5GQir4atTODXAJ4yAQM3X1OrxiMhK050cl+TqyNNeQCgk0zqRK9XvhLhsk2HqTCO
A5k+yIq5Ag0ER2CYohAIAKIbWJkXf1Eo+BGnUWO4rvoEjWE+CyOEwRCtMEaN4yN3
5wubWz7GaKiLRR2XisDwduI9/gtpTQM6G6Xm6fMfOtvY5lokiot1rhORVjNgg+s7
QakcVC6oFe7Q+7PpEQ88RU6MDVsL9B3J3gAdM9e9S33BzForXDBHPhmVGC0UmnRb
XUnaqE9eLImtzaULQ+6GDHrgysvCeLURVMAtk3TqQK1Pgc52VnV6SpXDsc9gen9n
5F3LaBKIIXvK2aK3pPIMVdfTbb48wuISfE3FBBrSn1Sp510bZUDCwa6/ZDwWtYR5
619
ruEOgSgESACzMx/SFly8Mn/UdXIfTvBYVJ4MdX83yCMAAwYIAI/78cJBvkW3WKT/
6GS4kkwuNGyNnhpEEV87XKVPZj5OHPdynSWOwb4gFhhE7rbsepU4R7LLBV2etWs2
mH/cwsJa1L5mD3pdMBzdhodiylVKU/oMC3s0asR/fuexACB5+s/UjB7/+7uUHrCB
yZs4fqQGhWpU0pC+Mm0b4bnd7QXxyPLz9CeJ6NYLSwdO1Muy/zDL8enNjdYb66LF
0+HyJ9DKYSUena9ya9Ts9ahLPp/GC2CktO7DyGlRdl4YWsOkVnfLoNuDue8XnSr9
TkHQJ/bQfDBCJcA3D+p9YspVlQCUOoLKa/j9iTwTh6ZGVFfPxe302pRUGbOgZa+e
+dUIEGCISQQYEQIACQUCR2CYogIbDAAKCRDu5GQir4atTL7HAJ9K80xdVrXUM/ka
228YAoZJbLJf3ACcDP55rhaPTESEUp1duti7WTFrGmM=
=XkSQ
-----END PGP PUBLIC KEY BLOCK-----
Output diatas adalah public key dalam bentuk ASCII, terlihat bahwa
public key diawali dengan bari -----BEGIN PGP PUBLIC KEY
BLOCK----- dan diakhiri dengan baris -----END PGP PUBLIC
KEY BLOCK-----. Public key ini bisa anda tempatkan menjadi
signature email atau pada website sehingga orang lain bisa
mengimport public key yang anda miliki. Setelah kita memiliki key
pair dari GNUPG, kita bisa mengimport public key yang dimiliki oleh
orang lain, sebagai contoh disini penulis mengimport public key user
thinkerbels
yang
berbentuk
file
dengan
nama
thinkerbels@scorvia.or.id.asc, untuk itu gunakan perintah
$ gpg --import thinkerbels@scorvia.or.id.asc
gpg:
key
C4C62320:
public
key
<thinkerbels@scorvia.or.id>" imported
"thinkerbels
(sCorV!a
Member)
imported: 1
Setelah anda yakin bahwa public key yang diimport ini adalah benar
milik yang bersangkutan, entah itu dikonfirmasi melalui telepon atau
email atau konfirmasi langsung, maka anda bisa meng-signs public
key ini. Pada contoh diatas public key dari thinkerbels memiliki ID
C4C62320, untuk meng-signs nya gunakan perintah
$ gpg --sign-key C4C62320
pub
1024D/C4C62320
created: 2007-12-13
expires: never
trust: unknown
validity: unknown
usage: SC
620
sub
created: 2007-12-13
expires: never
usage: E
1024D/C4C62320
created: 2007-12-13
expires: never
trust: unknown
validity: unknown
usage: SC
Wirman
(CaPoeX
dot
Net
Founder)
<urangkayo@gmail.com>"
Enter passphrase:
$ gpg --update-trustdb
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0
valid:
signed:
Please decide how far you trust this user to correctly verify other
users' keys
(by looking at passports, checking fingerprints from different sources,
etc.)
1 = I don't know or won't say
2 = I do NOT trust
3 = I trust marginally
4 = I trust fully
s = skip this key
q = quit
Your decision? 4
gpg: depth: 1
valid:
621
signed:
Sekarang public key dari thinkerbels sudah ada pada pubring.gpg dan
trustdb.gpg, untuk melihatnya gunakan perintah berikut:
$ gpg --list-sigs C4C62320
pub
1024D/C4C62320 2007-12-13
uid
<thinkerbels@scorvia.or.id>
thinkerbels
sig 3
C4C62320 2007-12-13
<thinkerbels@scorvia.or.id>
sig
AF86AD4C 2007-12-14
<urangkayo@gmail.com>
sub
(sCorV!a
Member)
2048g/5E7E8E32 2007-12-13
sig
C4C62320 2007-12-13
<thinkerbels@scorvia.or.id>
Untuk melihat key yang ada pada pubring.gpg dan secring.gpg, bisa
menggunakan perintah
$ gpg --list-keys
$ gpg --list-secret-keys
Misalkan user yang memiliki id thinkerbels ingin mengirimkan file
yang sudah di enkripsi, sebagai contoh user thinkerbels membuat file
dengan nama test_gpg.txt yang isi teksnya adalah
Hi... urangkayo!
hanya latihan pake GPG :-)
Untuk mengenkripsi file teks tersebut, user thinkerbels akan
menjalankan perintah berikut, dimana outputnya dalam format ASCII
$ gpg -r "urangkayo@gmail.com" --armor \
--encrypt test_gpg.txt
Options -r diikuti dengan nama penerima dari file enkripsi ini, dimana
public keynya sudah di signs terlebih dahulu. Selanjutnya ketika
menerima file ini, untuk mendecryptnya gunakan perintah
$ gpg --output test_gpg.txt \
--decrypt test_gpg.txt.asc
622
key,
ID
26375DFD,
created
2007-12-13
(main
key
ID
Hasilnya adalah pada direktori aktif akan ada file dengan nama
test_gpg.txt yang berisikan teks yang dibuat oleh thinkerbels. Selain
untuk melakukan enkripsi, kita juga bisa membuat signature untuk
file yang kita inginkan, sebagai contoh thinkerbels memiliki file
dengan nama my_file.tar.bz2 dan ingin membuat signaturenya
sehingga orang yang memperoleh file ini bisa memastikan bahwa file
tersebut tidak berasal dari sumber lain, untuk membuat signature dari
file tersebut
$ gpg -sba my_file.tar.bz2
You need a passphrase to unlock the secret key for
user: "thinkerbels (sCorV!a Member) <thinkerbels@scorvia.or.id>"
1024-bit DSA key, ID C4C62320, created 2007-12-13
"thinkerbels
(sCorV!a
Member)
Terlihat ada string Good signature yang berarti file tersebut memang
berasal dari sumber yang sama dengan signaturenya. GnuPG juga bisa
diintegrasikan dengan email client seperti Thunderbird, Evolution.
Untuk mengetahui lebih jelas mengenai GnuGP bisa membaca
manualnya atau mengunjungin websitenya di http://www.gnupg.org/.
$ man gpg
623
624
625
Menggunakan wine
Wine merupakan program yang dapat menjalankan dan menginstall
program-program buat windows, sehingga berjalan pada Linux.
Untuk menginstall wine, jalankan perintah berikut
$ sudo apt-get install wine
Sekarang pada terminal jalankan perintah
$ winecfg
Akan muncul tampilan untuk mengkonfigurasi wine. Disini kita bisa
menambahkan drive yang bisa digunakan untuk wine. Klik button
Autodetect dan klik Apply.
626
627
Mengamankan Grub
Grub merupakan boot loader pada Ubuntu, seperti yang kita lihat
pada menu default dari GRUB terdapat menu untuk masuk kedalam
single mode sehingga setiap orang yang memilih menu ini akan bisa
dengan mudah untuk masuk menjadi root. Untuk mengamankan
GRUB, kita bisa memberikan password sehingga untuk mengedit atau
menggunakan menu tertentu, harus memasukkan password terlebih
dahulu. Untuk membuat password, pada terminal jalankan perintah
$ grub-md5-crypt
Password:
628
Retype password:
$1$ypK5H$lEzBbHvy7qLeCST/hSQi31
Hasilnya adalah teks yang sudah dienkripsi menggunakan metode
MD5, untuk itu copy dan paste teks tersebut kedalam menu.lst tepat
sebelum baris menu, format penulisannya adalah
password --md5 password_grub_anda
Untuk itu buka file /boot/grub/menu.lst dengan teks editor
$ sudo vi /boot/grub/menu.lst
Kemudian isikan password yang telah dbuat, lihat gambar B.21 untuk
lebih jelasnya
Selanjutnya agar menu untuk single mode ataupun memtest tidak bisa
digunakan sembarangan, maka tambahkan kata lock dibawah
titlenya, lihat pada gambar B.22 untuk lebih jelasnya
629
Rescue Mode
Jika kita pernah mengalami kerusakan MBR (master boot record)
sehingga grub tidak bisa berjalan, maka kita bisa melakukan recovery
grub dengan menggunakan CD installer dari Ubuntu, rubah urutan
booting dari komputer sehingga boot pertama akan membaca CD,
masukkan CD kedalam CD ROM, dan restart komputer yang
digunakan, pada menu yang muncul pilih Rescue a broken system.
630
631
LAMPIRAN C
DOWNLOAD UBUNTU
Pada Bab ini akan mencoba menjelaskan:
A.1. Cara Mendownload Ubuntu
A.2. Melakukan Verifikasi MD5SUM
A.3. Memburning ISO Ubuntu
634
Download Ubuntu
635
636
--15:01:53-- ftp://dl2.foss-id.web.id/iso/ubuntu/releases/gutsy/ubuntu7.10-desktop-i386.iso
=> `ubuntu-7.10-desktop-i386.iso'
Resolving dl2.foss-id.web.id... 125.160.17.22
Connecting to dl2.foss-id.web.id|125.160.17.22|:21... connected.
Logging in as anonymous ... Logged in!
==> SYST ... done.
35.86K/s
ETA 00:00
`ubuntu-7.10-desktop-i386.iso'
saved
Download Ubuntu
637
Klik pada file tersebut, sehingga akan muncul isi dari file tersebut pada
browser, seperti terlihat pada gambar C.6. Nilai inilah yang akan kita
cocokkan dengan nilai MD5 yang akan didapatkan dari ISO yang telah
didownload. Anda bisa mengcopy nilai MD5 tersebut kedalam teks
editor sehingga memudahkan untuk membandingkan nilainya
638
Tunggu beberapa saat sampai nilai MD5 dari file ISO ini dicalculateoleh
program fsum.exe. Setelah selesai akan muncul nilai MD5 dari file
tersebut, sekarang cocokkan nilai ini dengan nilai yang terdapat pada
file MD5SUM tempat kita mendownload ISO Ubuntu ini. Ingat,
sesuaikan dengan nama rilis yang digunakan, jika yang didownload
Ubuntu Desktop untuk i386, maka nilai MD5 yang dilihat pada file
MD5SUM juga baris untuk Ubuntu Desktop i386, seperti
d2334dbba7313e9abc8c7c072d2af09c *ubuntu-7.10-desktop-i386.iso
Agar lebih mudah anda bisa mengcopy nilai yang dihasilkan fsum dan
nilai yang terdapat pada file MD5SUM kedalam teks editor, kemudian
membandingkannya, jika nilai yang terdiri dari 33 karakter ini sama,
maka ISO yang anda download sudah bisa di burn kedalam media
CD. Jika anda berada pada Linux, maka kita bisa langsung
menggunakan program md5sum untuk melihat nilai MD5 pada file
ISO yang didownload, sekarang pada gnome-terminal, pindah
kedirektori tempat menyimpan hasil download ISO tersebut,
kemudian ketik perintah berikut, tunggu beberapa saat sampai hasil
perhitungan nilai MD5 ini selesai dilakukan oleh program md5sum.
$ md5sum ubuntu-7.10-desktop-i386.iso
d2334dbba7313e9abc8c7c072d2af09c
ubuntu-7.10-desktop-i386.iso
Download Ubuntu
639
640
Download Ubuntu
641
Pada linux, memburning file ISO jauh lebih mudah, buka direktori
tempat anda menyimpan file ISO yang telah didownload sebelumnya
dengan menggunakan Nautilus, kemudian klik kanan pada file ISO
tersebut, dari menu yang muncul, klik Write to Disc (lihat bab 14)
akan muncul dialog box untuk memburn file tersebut, tentukan
CD/DVD Writer yang digunakan serta kecepatan proses burn
(gunakan 8x) atau anda bisa menggunakan program seperti
GnomeBaker yang memiliki GUI. Jika ingin memburn melalui
command line, bisa menggunakan wodim, untuk itu tentukan device
yang ingin digunakan dengan perintah
642
' 'F567E
'