62
 1  MODUL I Pengenalan LINUX I.1 PROSES INSTALASI 1. Se jarah L i nux Anda mungkin tidak percaya bahwa pembuatan Linux dimulai dari hobi seorang mahasiswa Finlandia bernama Linuz Torvalds yang terinspirasi oleh ketidak-puasannya terhadap kinerja Minix. Minix sendiri adalah sistem operasi yang dikembangkan oleh Andy Tanenbaum. Versi resmi pertama Linux, yaitu 0.02 diumumkan oleh Linus pada tanggal 5 Oktober 1991. Versi ini hanya dapat menjalankan shell bash ( GNU Bourne Again Shell ) dan gcc ( GNU C Compiler ). Secara teknis Linux sebenarnya hanyalah merupakan sebuah kernel, kernel adalah  program yang dimuat saat booting, fungsinya sebagai interface antara user-level program dengan hardware, yaitu melakukan tugas seperti sistem operasi, menangani task switching dalam multitasking, menangani permintaan membaca dan menulis peralatan disk, melakukan tugas-tugas network seta mengatur penggunaan memori. Program lain seperti kompiler, editor, window manager hanyalah distribusi yang melengkapi kernel menjadi sebuah sistem operasi yang lengkap. Salah satu pendorong perkembangan Linux yang cepat adalah sifat-open sourcenya yang dilindungi melalui lisensi GPL ( General Public License ). Dengan sifat tersebut,  berbagai programer dapat turut serta mengembangkan Linux, sehingga Linux dapat  berkembang pesat sepe rti sekarang ini. Saat ini telah berkembang begitu banyak distribusi Linux, beberapa diantaranya adalah : Slackware, Debian, Caldera, Redhat, Mandrake, Suse ,Gento, dll. Semua distro ini menggunakan Linux sebagai kernelnya, sedangkan letak perbedaan dari mereka adalah aplikasi pendukung yang disertakan pada tiap distro. Pada pelatihan ini digunakan RedHat, karena fleksibilitas RedHat dalam hal perpaduan CLI dan GUI serta penggunaannya baik untuk penggunaan rumahan, perkantoran, maupun server.  2. K enapa sa ya ha r us b e lajar L i nux ? Anda pasti telah mendengar masalah penegakkan HAKI yang katanya akan dilaksanakan oleh pemerintah secara konsekwen. Bagi anda yang begitu mendewakan windows ini adalah berita buruk, betapa tidak windows yang selama ini anda dapatkan dengan cara membajak tidak bisa didapat secara bebas lagi. Bukan hanya itu selain membeli OS-nya andapun harus mengeluarkan kocek tambahan untuk mendapatkan aplikasi-aplikasi lainnya seperti office. Sifat gratis Linux, menjadi daya tarik tersendiri bagi perusahaan menengah dan menengah kebawah. Ditambah lagi kenyataan bahwa sifat user friendly dan kompabilitas Linux semakin lama semakin baik. Bagi perusahaan menengah keatas daya tarik Linux terletak pada kestabilan dan keamanannya. Dua kelebihan ini ( stabil dan aman ) adalah karena Linux dikembangkan oleh begitu banyak orang sehingga setiap kekurangan dan bug dapat cepat ditemukan dan diperbaiki. Coba anda bandingkan dengan Windows yang hanya dikembangkan oleh ribuan orang. Hal-hal di atas kemudian memberikan peluang bisnis, khususnya yang berkaitan dengan jasa dan sdm, serta memberikan peluang kerja.

Modul Pelatihan Linux Basic

Embed Size (px)

Citation preview

Page 1: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 1/62

  1

 MODUL IPengenalan LINUX 

I.1 PROSES INSTALASI

1. Sejarah L inux 

Anda mungkin tidak percaya bahwa pembuatan Linux dimulai dari hobi seorangmahasiswa Finlandia bernama Linuz Torvalds yang terinspirasi oleh ketidak-puasannyaterhadap kinerja Minix. Minix sendiri adalah sistem operasi yang dikembangkan oleh AndyTanenbaum. Versi resmi pertama Linux, yaitu 0.02 diumumkan oleh Linus pada tanggal 5Oktober 1991. Versi ini hanya dapat menjalankan shell bash ( GNU Bourne Again Shell )dan gcc ( GNU C Compiler ).

Secara teknis Linux sebenarnya hanyalah merupakan sebuah kernel, kernel adalah program yang dimuat saat booting, fungsinya sebagai interface antara user-level programdengan hardware, yaitu melakukan tugas seperti sistem operasi, menangani task switchingdalam multitasking, menangani permintaan membaca dan menulis peralatan disk, melakukantugas-tugas network seta mengatur penggunaan memori. Program lain seperti kompiler,editor, window manager hanyalah distribusi yang melengkapi kernel menjadi sebuah sistemoperasi yang lengkap.

Salah satu pendorong perkembangan Linux yang cepat adalah sifat-open sourcenyayang dilindungi melalui lisensi GPL ( General Public License ). Dengan sifat tersebut,

 berbagai programer dapat turut serta mengembangkan Linux, sehingga Linux dapat berkembang pesat seperti sekarang ini.

Saat ini telah berkembang begitu banyak distribusi Linux, beberapa diantaranyaadalah : Slackware, Debian, Caldera, Redhat, Mandrake, Suse ,Gento, dll. Semua distro inimenggunakan Linux sebagai kernelnya, sedangkan letak perbedaan dari mereka adalahaplikasi pendukung yang disertakan pada tiap distro. Pada pelatihan ini digunakan RedHat,karena fleksibilitas RedHat dalam hal perpaduan CLI dan GUI serta penggunaannya baik untuk penggunaan rumahan, perkantoran, maupun server.

2. Kenapa saya harus belajar L inux ? 

Anda pasti telah mendengar masalah penegakkan HAKI yang katanya akandilaksanakan oleh pemerintah secara konsekwen. Bagi anda yang begitu mendewakan

windows ini adalah berita buruk, betapa tidak windows yang selama ini anda dapatkandengan cara membajak tidak bisa didapat secara bebas lagi. Bukan hanya itu selain membeliOS-nya andapun harus mengeluarkan kocek tambahan untuk mendapatkan aplikasi-aplikasilainnya seperti office.

Sifat gratis Linux, menjadi daya tarik tersendiri bagi perusahaan menengah danmenengah kebawah. Ditambah lagi kenyataan bahwa sifat user friendly dan kompabilitasLinux semakin lama semakin baik. Bagi perusahaan menengah keatas daya tarik Linuxterletak pada kestabilan dan keamanannya. Dua kelebihan ini ( stabil dan aman )adalah karena Linux dikembangkan oleh begitu banyak orang sehingga setiap kekurangandan bug dapat cepat ditemukan dan diperbaiki. Coba anda bandingkan dengan Windowsyang hanya dikembangkan oleh ribuan orang.

Hal-hal di atas kemudian memberikan peluang bisnis, khususnya yang berkaitandengan jasa dan sdm, serta memberikan peluang kerja.

Page 2: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 2/62

  2

1. Pra-i nstalasi 

Sebelum melakukan instalasi, ada baiknya dilakukan planning terlebih dahulu khususnyayang berkaitan dengan :

1. Kelas yang akan diinstal.Kelas instalasi yang ditawarkan dimaksudkan untuk memberikan pilihan kepada user dalam hal kesederhanaan proses. User dalam memilih kelas sesuai denganmanfaatnya atau secara manual memilih sendiri paket yang akan diinstal melaluicostum. Penggolongannya terdiri dari empat kelas, yaitu :

a Personal DesktopKelas ini dikhususkan bagi anda yang baru mencoba Linux. GUI langsungdiinstal pada option ini.

 b. Kelas WorkstationPilihlah kelas ini jika anda hanya ingin memanfaatkan GUInya saja. Pada option

ini software development tools juga ikut diinstal. Jika nantinya memilih partisisecara otomatis, maka untuk kelas ini semua partisi yang berhubungan denganlinux akan dihilangkan dan diganti dengan partisi swap, root dan boot secaraotomatis. Jika terdapat partisi windows, maka kelas ini akan secara otomatismengkonfigurasi dual boot.

c. Kelas Server Kelas ini digunakan jika kita ingin menggunakan linux sebagai server dan kitatidak ingin berpusing ria mengkonfigurasi system. Jika dipilih partisi secaraotomatis, maka semua partisi yang ada akan dihapus. Space harddisk minimaladalah 1,6 GB. Setelah proses instalasi selesai, maka kita akan menemukan

 partisi : swap, /, /usr, /home, /var, dan /boot.d. Kelas Costum

Kelas ini memberikan fleksibilitas dan kebebasan yang tinggi pada user. Kitadapat mempartisi sendiri harddisk, memilih paket-paket yang akan diinstall, dan

 pemilihan boot loader beserta konfigurasinya.

2. Partisi harddisk Sebelum menginstall kita perlu merencanakan partisi harddisk sesuai dengan

 besarnya space untuk menginstall linux sesuai keinginan. Jika ternyata kita harusmelakukan partisi, maka pindahkan terlebih dahulu data-data pada harddisk anda.Anda bebas memilih tool partisi seperti partition magic atau menggunakan disk druid

yang dapat ditemui pada saat instalasi nanti.3.  Menuliskan spesifikasi hardware komputer yang akan diinstal Linux.

Harddisk : jenis, ukuran, nomor Contoh : IDE hda = 20 GB

Partisi : partisi dan mount pointContoh : /dev/hda1 = /

Memory : besar memoryContoh : 128 MB

CD Room : jenis interfaceContoh : IDE

Page 3: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 3/62

  3

Adapter SCSI : merk, jenis, nomor Contoh : BusLogic SCSI

Kartu Jaringan : nomor, merk dan jenisContoh : 3COM 3C590 , DLink 650

Mouse : jenis, jumlah button, com

Contoh : generic 3 button, MouseMan 2 button serialCOM1

Monitor : merek, model, spesifikasi manufaktur Contoh : TECO TE551

VGA Card : merek, nomor model, besarnya RAMContoh : Creative Labs Graphics 3D 8 MB

Sound Card : merek, chipset, nomor modelContoh : Sound Blaster 32/64 AWE

IP Address & netmask : hubungi admin jaringan anda

IP Server DNS, Gateway : hubungi admin jaringan anda

Hostname : nama komputer andaContoh : Penyusup, Executor 

Spek ini dapat dilihat di :

♪  Manual book device♪  BIOS komputer♪  Dari windows : klik kanan pada My Computer,

Propertis, Device Manager

2. Pre I nstallasi Gentoo 

  Setting BIOS agar pengecekkan device pertama untuk booting adalah di CD-Rom  Masukkan CD 1 ke CD-Rom, tekan F10 atau save perubahan BIOS anda, lalu

restart  Tunggu hingga muncul tampilan semacam DOS, dengan keterangan di bawahnya

“ boot:”   Disini kita dihadapkan pada pilihan melakukan penginstallan dengan 2 mode,

yakni secara graphical atau secara textmode  Selain itu kita dapat menggunakan function key yang terletak di bagian bawah

window. Fungsi masing – masing function key tersebut antara lain :  F1 – Main, untuk kembali pada tampilan awal (yaitu tampilan saat ini)  F2  – Option, untuk menuliskan berbagai macam option pada saat kita hendak 

menginstall. Option yang tersedia antara lain :  gentoo noprobe , untuk menghindari pengecekkan hardware pada saat

 penginstallan

  gentoo nodhcp , untuk mencegah deteksi DHCP server 

  gentoo-nofb , untuk mode textmode

3. Menginstall gentoo dengan L iveCD 

Gentoo Linux dapat diinstal menggunakan salah satu dari tiga stage tarbal. Stageyang anda pilih tergantung pada seberapa jauh sistem yang ingin anda kompilasi sendiri.stage1 tarbal digunakan jika anda ingin melakukan proses bootstrap dan membangun seluruh

Page 4: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 4/62

  4

sistem dari awal. stage2 tarbal digunakan untuk membangun seluruh sistem dari keadaan"semi-compiled" ter-bootstrap. stage3 tarbal telah memiliki sistem Gentoo Linux dasar yangtelah dibangun bagi anda. Seperti yang akan kami jelaskan nanti, anda dapat juga menginstalGentoo tanpa proses kompilasi (kecuali kernel anda dan beberapa paket-paket opsional). Jikaanda menginginkan cara ini, anda harus menggunakan tarbal stage3.

Instalasi stage1 dan 2 hanya dapat dilakukan jika anda memiliki koneksi internet. Sehinggauntuk computer yang tidak terhubung ke jaringan internet akan menggunakan instalasi stage3.

Instalasi

  Ketik gentoo nodhcp    Bila media CD penginstall telah ada di tempatnya, maka akan muncul auto

konfigurasi dari system LiveCD gentoo.  Setelah auto konfigurasi selesai, akan tampil halaman konsole atau terminal

„LiveCD /#‟   Ketik password baru untuk mengubah password root yang default, eg: LiveCD /

#passwd  fdisk merupakan utilitas yang populer dan bagus untuk memisahkan disk anda menjadi

 beberapa partisi. Jalankan fdisk pada disk anda (di contoh ini, kita menggunakan /dev/hda):

  LiveCD / #fdisk /dev/hda  Setelah anda berada di dalam fdisk, anda akan menemui sebuah prompt seperti berikut:

  Command (m for help) :Ketik p untuk menampilkan tabel partisi disk anda saat ini:Contoh tabel partisi

Command (m for help): p

Disk /dev/hda: 240 heads, 63 sectors, 2184 cylindersUnits = cylinders of 15120 * 512 bytes

Device Boot Start End Blocks Id System/dev/hda1 1 14 105808+ 83 Linux/dev/hda2 15 49 264600 82 Linux swap

Command (m for help):

Pertama, kita akan menghapus semua partisi yang telah ada dari disk. Ketik d untuk menghapus sebuah partisi. Sebagai contoh, untuk menghapus partisi /dev/hda1:

Command (m for help): dPartition number (1-2): 1

Partisi tersebut telah dijadwalkan untuk dihapus. Partisi tersebut tidak akan lagi ditampilkan jika anda mengetik p, tetapi tidak akan juga dihapus sebelum anda menyimpan perubahananda. Jika anda melakukan kesalahan dan ingin membatalkan tanpa menyimpan perubahananda, segera ketik q dan tekan Enter, partisi anda tidak akan dihapus.

Sekarang, anggap anda benar-benar ingin menghapus seluruh partisi-partisi anda, secaraterus-menerus ketikkan p untuk menampilkan tabel partisi lalu diikuti oleh d dan nomor 

 partisi untuk menghapusnya. Pada akhirnya, anda akan berakhir dengan sebuah tabel partisikosong:

Page 5: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 5/62

  5

Pertama-tama, kita akan menciptakan sebuah partisi boot. Ketik n untuk menciptakan sebuah

 partisi, lalu p untuk memilih partisi primary, diikuti oleh 1 untuk memilih partisi primary

 pertama. Jika anda ditanya silinder pertama, tekan Enter. Sewaktu ditanya silinder terakhir,

ketik +xM untuk menciptakan sebuah partisi sebesar x Mbyte.

Untuk menyimpan tabel partisi dan keluar dari fdisk, ketik w. Setelah semua partisi anda

diciptakan, sekarang saatnya untuk membuat filesystem di partisi tersebut. 

Filesystem?

Kernel Linux mendukung berbagai filesystem. Kami akan menjelaskan ext2, ext3, ReiserFS,XFS dan JFS karena filesystem tersebut adalah yang paling umum digunakan di sistemLinux.

ext2 adalah filesystem yang asli dan telah dicoba/dipakai tetapi tidak memiliki journalmetadata, yang berarti waktu yang diperlukan untuk memeriksa filesystem ext2 kadang bisasangat lama. Saat ini telah ada beberapa filesystem journal generasi baru yang dapatdiperiksa konsistensinya dengan cepat dan karena itu lebih dipilih daripada partisi non-

 journal. Journal filesystem menghindari waktu tunda sewaktu anda boot dari sistem dimanafilesystem anda kebetulan berada pada saat inkonsisten.

ext3 adalah filesystem ext2 versi journal, memiliki journal metadata untuk pemulihan sistemyang cepat dan juga beberapa tambahan modus journal seperti journal data terstruktur dandata penuh. ext3 adalah filesystem yang sangat bagus dan dapat dihandalkan. Filesystem inimemiliki opsi "hashed b-tree indexing" tambahan yang menghasilkan performa yang tinggidi hampir semua situasi. Secara singkat, ext3 adalah filesystem yang handal.

ReiserFS adalah filesystem berbasis B*-tree yang memiliki performa keseluruhan yang bagus dan performanya melebihi ext2 dan ext3 pada saat menangani file kecil (file yang besarnya kurang dari 4k), sering kali melebihi dalam faktor 10x-15x. ReiserFS juga berskalasangat bagus dan memiliki journal metadata. Setelah kernel 2.4.18+, ReiserFS telah mapandan bagus untuk pemakaian umum atau kasus khusus seperti pembuatan filesystem yang

 besar, penggunaan file kecil yang banyak, file yang besar, dan directory yang mengandung puluhan ribu file. ReiserFS adalah filesystem yang kami rekomendasikan pada semua partisinon-boot.

XFS adalah filesystem dengan journal metadata yang datang dengan fungsi fungsi mapandan teroptimasi untuk skalabilitas. Kami hanya merekomendasikan anda menggunakanfilesystem ini pada system Linux dengan disk SCSI kelas atas dan/atau disk fibre serta

 power supply yang tidak pernah terputus. Karena XFS meng-cache data yang lewat denganagresif ke dalam RAM, data-data mungkin hilang pada saat program yang tidak didisaindengan benar (program-program yang tidak mengambil langkah yang aman sewaktu menuliske disk, dan ada beberapa program seperti itu) berjalan dan sistem tiba-tiba mati.

JFS adalah filesystem journal dengan performa tinggi dari IBM. Filesystem ini baru-baru inimenjadi filesystem yang siap pakai, dan sampai saat ini tidak banyak record tentang

filesystem ini jadi kami tidak dapat berkomentar apakah filesystem ini bagus atau tidak dalam hal stabilitas, dll.

Page 6: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 6/62

  6

Untuk menciptakan filesystem di sebuah partisi, anda dapat menggunakan beberapa utilitas

yang tersedia untuk setiap filesystem:

Filesystem  Perintah

ext2  mke2fs 

ext3  mke2fs -j 

reiserfs  mkreiserfs 

xfs  mkfs.xfs 

 jfs  mkfs.jfs 

Sebagai contoh, untuk menciptakan filesystem reiserfs di partisi /dev/hda1

LiveCD /# mkreiserfs /dev/hda1

Setelah partisi-partisi anda memiliki filesystemnya masing-masing, sekarang saatnya untuk 

me-mount partisi-partisi tersebut.

LiveCD /# mount /dev/hda1 /mnt/gentoo

Untuk membuat file swap, kita gunakan tiga tahap

LiveCD /# dd if=/dev/zero of=/mnt/gentoo/swap bs=128k count=512

Yang secara otomatis akan membuat file /mnt/gentoo/swap sebesar 64MB

LiveCD /# mkswap /mnt/gentoo/swap

Akan membuat file /mnt/gentoo/swap menjadi file swap 

LiveCD /# swapon /mnt/gentoo/swap

Akan mengaktifkan swap system pada /mnt/gentoo/swap 

Kita juga perlu me-mount filesystem proc (penghubung kernel virtual) di /proc. Tetapi,

 pertama kita perlu menaruh file-file kita di partisi. 

I.2 Menggunakan Stage dari LiveCD

Sebelum anda melanjutkan, anda perlu membuka konsole atau terminal baru dengan

menekan tombol „Alt+F2‟ dan „Alt+F3‟ serta memeriksa tanggal/waktu anda danmemperbaharuinya. Jam yang tidak terkonfigurasi dengan benar dapat menyebabkan hasilyang aneh nantinya! Untuk memastikan tanggal/waktu saat ini,

LiveCD /#date

Masuk ke mountpoint Gentoo

LiveCD /#cd /mnt/gentoo

Sekarang kita akan mengekstrak tarbal stage pilihan anda menggunakan utilitas GNU tar.

Pastikan anda menggunakan opsi-opsi yang sama (-xvjpf)! Di contoh berikut ini, kita

Page 7: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 7/62

  7

mengekstrak tarbal stage stage3-<subarch>-2004.2.tar.bz2. Gantikan nama tarbal tersebutdengan stage pilihan anda.

/mnt/gentoo#tar -xvjpf /mnt/cdrom/stages/stage3-<subarch>-2004.2.tar.bz2

Setelah stage terinstal, lanjutkan ke Menginstall Portage.

I.2 Menginstall Snapshot Portage dan Source Code dari LiveCD

Jika anda tidak memiliki koneksi jaringan (internet), anda harus menginstal snapshot portageyang disediakan oleh salah satu LiveCD Gentoo. Hal ini secara otomatis menganggap andamenginstal dari tarbal stage3 (karena stage tersebut merupakan satu-satunya tarbal yangdidukung untuk instalasi tanpa-jaringan). Jika anda ingin menggunakan paket-paket prebuiltnantinya untuk mempersingkat proses instalasi, anda harus menggunakan snapshot portage

dari LiveCD.

Snapshot Portage tersedia di LiveCD Universal. Karena anda membaca bagian ini, kamianggap anda menggunakan salah satu LiveCD tersebut. Untuk menginstal snapshot tersebut,

 periksalah direktori /mnt/cdrom/snapshots/ untuk melihat snapshot apa yang tersedia:

LiveCD /# ls /mnt/cdrom/snapshots

Sekarang ekstrak snapshot tersebut menggunakan perintah berikut.

/mnt/gentoo#tar –xvjf /mnt/cdrom/snapshots/portage-20040710.tar.bz2 –C /mnt/gentoo/usr

Copy source code

/mnt/gentoo# mkdir /mnt/gentoo/usr/portage/distfiles/mnt/gentoo# cp /mnt/cdrom/distfiles/* /mnt/gentoo/usr/portage/distfiles/

Setelah snapshot Portage anda terinstal, lanjutkan ke Mengkonfigurasi Opsi Kompilasi.Untuk mengoptimasi Gentoo, anda dapat mengeset beberapa variabel yang mengendalikantingkah laku Portage. Variabel-variabel tersebut dapat diset sebagai variabel environment(menggunakan perintah export) tetapi tidak permanen. Untuk menyimpan setting anda,Portage menyediakan file /etc/make.conf, yaitu file konfigurasi Portage. File inilah yang

akan kita edit sekarang..

/mnt/gentoo# nano -w /mnt/gentoo/etc/make.conf

Tambahkan pada baris terakhir di file tersebut „PKGDIR=/mnt/cdrom‟ untuk menentukansource paket.

Page 8: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 8/62

  8

6. Menginstal Sistem Dasar Gentoo

Mount filesystem /proc ke /mnt/gentoo/proc agar proses instalasi dapat menggunakaninformasi dari kernel walaupun berada di lingkungan chroot.

/mnt/gentoo# mount -t proc none /mnt/gentoo/proc

Setelah semua partisi tercipta dan lingkungan dasar terinstal, sekarang saatnya untuk memasuki lingkungan instalasi baru kita dengan melakukan chroot ke dalamnya. Artinya,kita berpindah tempat dari lingkungan instalasi kita saat ini (LiveCD atau media instalasilain) ke sistem instalasi anda (yaitu partisi-partisi yang baru diciptakan).

Proses chroot ini dilakukan dalam tiga langkah. Pertama, kita akan memindahkan root dari /(di media instalasi) ke /mnt/gentoo (di partisi anda) menggunakan perintah chroot. Lalu, kitaakan menciptakan sebuah lingkungan baru menggunakan perintah env-update, yang akanmenciptakan variabel-variabel lingkungan. Terakhir, kita akan me-load variabel-variabeltersebut menggunakan perintah source.

/mnt/gentoo# chroot /mnt/gentoo /bin/bash/# env-update* Caching service dependencies.../# source /etc/profile

Selamat! Anda sekarang berada di lingkungan Gentoo Linux anda. Tentu saja, ini masih jauhdari selesai, karena itu proses instalasi masih memiliki beberapa bagian lagi :-)

Konfigurasi Variabel USE

USE merupakan salah satu variabel yang paling mengagumkan yang disediakan oleh Gentoountuk para penggunanya. Beberapa program dapat dikompilasi dengan atau tanpa dukungantambahan terhadap beberapa hal. Sebagai contoh, beberapa program dapat dikompilasidengan dukungan gtk, atau dengan dukungan qt. Program-program lainnya dapatdikompilasi dengan atau tanpa dukungan SSL. Beberapa program bahkan dapat dikompilasidengan dukungan framebuffer (svgalib) sebagai ganti X11 (X-server).

Kebanyakan distro linux mengkompilasi paket-paket mereka dengan dukungan sebanyak mungkin, sehingga meningkatkan ukuran program dan waktu yang diperlukan untuk menjalankan program tersebut, dan juga banyak sekali dependency yang diperlukan. Dengan

Gentoo, anda dapat mendefenisikan opsi-opsi apa saja yang harus dikompilasi di sebuah paket. Di sinilah dimana variabel USE berperan penting.

Di variabel USE, anda mendefenisikan keyword-keyword yang tertuju ke opsi kompilasi.Sebagai contoh, ssl akan mengkompilasi dukungan ssl ke program yang mendukungnya. -Xakan menonaktifkan dukungan X-server (perhatikan tanda minus di depannya). gnome gtk -kde -qt akan mengkompilasi program-program anda dengan dukungan gnome (dan gtk),tanpa dukungan kde (dan qt), sehingga sistem anda akan lebih ramping untuk GNOME.

Setting-setting USE default disimpan di file /etc/make.profile/make.defaults. Apa yang andasimpan di file /etc/make.conf dikalkulasi terhadap setting default. Jika anda menambahkansebuah keyword ke setting USE, keyword tersebut akan ditambahkan ke daftar default. Jika

Page 9: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 9/62

  9

anda menghapus sebuah keyword dari setting USE (dengan menambahkan tanda minus didepannya), keyword tersebut akan dihapus dari daftar default (tentu saja, jika sebelumnyakeyword tersebut berada di daftar default). Jangan pernah mengubah sesuatu di dalamdirektori /etc/make.profile; isi direktori tersebut ditimpa setiap kali anda mengupdatePortage!

Deskripsi variabel USE yang lengkap dapat ditemukan di bagian dua Buku Panduan Gentoo,deskripsi lengkap tentang flag-flag USE yang tersedia dapat ditemukan di sistem anda di file/usr/portage/profiles/use.desc.

7. Mengkonfigurasi Kernel

Pertama, anda perlu memilih zona waktu anda agar sistem anda tahu dimana dia berada.Carilah zona waktu anda di /usr/share/zoneinfo, lalu buat sebuah link simbolik (symlink) ke/etc/localtime menggunakan perintah ln:

# ls /usr/share/zoneinfo(Misalnya anda ingin menggunakan GMT)# ln -sf /usr/share/zoneinfo/GMT /etc/localtime

Inti/Jantung dari semua distro adalah kernel Linux. Kernel merupakan sebuah lapisan antara program-program pengguna dengan perangkat keras sistem. Gentoo menyediakan beberapakernel kepada para penggunanya.

Pilihlah kernel anda dan instal menggunakan perintah emerge.

# emerge gentoo-sources

Mengganti link simbolik kernel

# ln -s linux-2.4.26-gentoo-r6 linux

konfigurasi kernel secara manual tampaknya adalah prosedur tersulit yang harus dijalankanoleh setiap pengguna Linux. Memang benar -- setelah mengkonfigurasi beberapa kernel,anda tidak akan lagi ingat bahwa cara tersebut sulit ;-)

Bagaimanapun juga, satu hal selalu benar: anda harus tahu sistem anda sebelum mulaimengkonfigurasi kernel secara manual. Kebanyakan informasi dapat ditemukan denganmelihat isi /proc/pci (atau menggunakan perintah lspci jika tersedia). Anda dapat jugamenjalankan lsmod untuk melihat modul kernel apa saja yang digunakan oleh LiveCD(tampilan tersebut mungkin memberi gambaran bagi anda apa saja yang harus diaktifkan).

Sekarang, masuklah ke direktori kernel anda dan jalankan make menuconfig. Perintah iniakan menjalankan menu konfigurasi berbasis ncurses.

# cd /usr/src/linux# make menuconfig

Pilih konfigurasi secukupnya exit dan save.

Page 10: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 10/62

  10

Kompilasi kernel

(Untuk kernel 2.4)# make dep ; make bzImage ; make modules make modules_install

(Untuk kernel 2.6)

# make && make modules_install

Instalasi kernel

# cp arch/i386/boot/bzImage /boot/kernel-2.4.26-gentoo-r6# cp System.map /boot/System.map-2.4.26-gentoo-r6

7.d. Alternatif: Menggunakan genkernel

Jika anda membaca bagian ini, berarti anda memilih untuk menggunakan skrip genkernelkami untuk mengkonfigurasi kernel bagi anda.

Setelah source kernel anda terinstal, sekarang saatnya untuk mengkompilasi kernel andamenggunakan skrip genkernel kami untuk membangun sebuah kernel secara otomatis bagianda. genkernel bekerja dengan mengkonfigurasi sebuah kernel yang hampir sama dengancara kernel LiveCD kami dikonfigurasi. Hal ini berarti, jika anda menggunakan genkerneluntuk membangun kernel anda, sistem anda akan secara umum mendeteksi semua perangkatkeras anda pada saat boot, seperti yang dilakukan oleh Live CD kami. Karena genkerneltidak memerlukan konfigurasi kernel secara manual, cara ini merupakan cara yang ideal bagi

 para pengguna yang tidak terbiasa mengkompilasi kernel mereka sendiri.

Sekarang, marilah kita lihat cara menggunakan genkernel. Pertama, emerge paket genkernel:

# emerge genkernel

Lalu, kompilasilah kernel anda dengan menjalankan perintah genkernel all. Perlu andaketahui juga, karena genkernel mengkompilasi sebuah kernel yang mendukung hampir semua perangkat keras, kompilasi ini akan berjalan cukup lama!

Catat juga, jika partisi boot anda tidak menggunakan ext2,ext3,vfat,ntfs serta reiserfs sebagaifilesystemnya, anda mungkin perlu mengkonfigurasi kernel anda secara manualmenggunakan perintah genkernel --menuconfig all dan tambahkan dukungan terhadap

filesystem anda di kernel (bukan sebagai modul).

# genkernel --menuconfig all

Sekarang, mari kita jalankan satu langkah lagi untuk membuat sistem kita lebih persis

dengan LiveCD -- mari emerge hotplug. Jika initrd melakukan otodeteksi perangkat keras

yang diperlukan pada saat sistem anda boot, hotplug melakukan otodeteksi sisanya. Ketikkan

 perintah berikut untuk me-emerge dan mengaktifkan hotplug:

# emerge hotplug

# rc-update add hotplug default

Page 11: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 11/62

  11

Instalasi Modul-Modul Tambahan

Jika sesuai, anda sebaiknya me-emerge ebuild-build bagi perangkat-perangkat tambahan pada sistem anda. Berikut ini adalah daftar ebuild yang berhubungan dengan kernel yangdapat anda emerge:

Ebuild  Kegunaan  Perintah 

nvidia-kernel Grafis NVIDIA yang diakselerasi bagi xorg-x11emerge nvidia-kernel

nforce-netKontroler ethernet on-board pada mobo-mobo NVIDIA

 NForce(2)emerge nforce-net

nforce-audio Suara on-board pada mobo-mobo NVIDIA NForce(2)emerge nforce-audio

e100 Adaptor Ethernet Intel e100 emerge e100

e1000 Adaptor Ethernet Gigabit Intel e1000 emerge e1000

emu10k1Dukungan Creative Sound Blaster Live!/Audigy (hanyauntuk kernel 2.4)

emerge emu10k1

ati-driversGrafis ATI Radeon 8500+/FireGL yang diakselerasi bagixorg-x11

emerge ati-drivers

ati-drivers-extra

Utilitas-utilitas Grafis ATIemerge ati-drivers-extra

Perlu anda waspadai, beberapa ebuild-ebuild ini mungkin memerlukan dependensi yang besar. Untuk memeriksa paket-paket apa saja yang akan diinstal ketika me-emerge sebuahebuild, gunakan perintah emerge --pretend. Misalnya, untuk paket samba

# emerge --pretend sambaAtau bisa juga # emerge search samba

Jika anda tidak menyukai paket-paket yang akan diinstal, gunakan perintah emerge --pretend--verbose untuk memeriksa flag-flag USE apa saja yang diperiksa ketika menghitungdependensi:

# emerge --pretend --verbose emu10k1...[ebuild N ] media-sound/aumix-2.8 +gpm +nls +gtk +gnome +alsa -gtk2

Konfigurasi Modul-Modul

Anda harus menuliskan semua modul-modul yang ingin anda load secara otomatis di file/etc/modules.autoload.d/kernel-2.4 (atau kernel-2.6). Anda dapat juga menambahkan opsi-opsi tambahan pada modul-modul tersebut jika anda mau.

(Contoh untuk kernel-kernel 2.4)# nano -w /etc/modules.autoload.d/kernel-2.4

Sekarang jalankan modules-update untuk menuliskan perubahan anda ke file

/etc/modules.conf:

Page 12: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 12/62

  12

# modules-update

Lanjutkan proses instalasi dengan bab Mengkonfigurasi Sistem

8. Mengkonfigurasi Sistem

8.a. Informasi Filesystem

/etc/fstab menggunakan sebuah sintaks khusus. Setiap baris memiliki 6 bagian, yangdipisahkan oleh spasi (spasi, tab, atau keduanya). Setiap bagian memiliki artinya tersendiri:

  Bagian pertama menunjukkan partisi yang dijelaskan (path ke file device tersebut)  Bagian ke dua menunjukkan mountpoin tempat partisi tersebut di-mount  Bagian ke tiga menunjukkan filesystem yang digunakan oleh partisi tersebut  Bagian ke empat menunjukkan opsi mount yang digunakan oleh mount ketika me-

mount partisi tersebut. Karena setiap filesystem memiliki opsi-opsi mount mereka

tersendiri, anda dianjurkan untuk membaca manual mount (man mount) untuk mendapatkan daftar yang lengkap. Opsi-opsi mount dipisahkan oleh koma.

  Bagian ke lima digunakan oleh dump untuk menentukan apakah sebuah partisi perludi-dump atau tidak. Pada umumnya, anda dapat mengisi bagian ini dengan 0 (nol)

  Bagian ke enam digunakan oleh fsck untuk menentukan urutan dari filesystem yangakan diperiksa jika sistem tidak di shut down dengan benar. Filesystem rootseharusnya berisi angka 1 dan sisanya berisi angka 2 (atau 0 jika pemeriksaanfilesystem tidak diperlukan)

# nano -w /etc/fstab

Sebuah contoh baris /boot di /etc/fstab

/dev/hda1 / reiserfs defaults 1 2none /proc proc defaults 0 0none /dev/shm tmpfs defaults 0 0/dev/cdroms/cdrom0 /mnt/cdrom auto noauto,user 0 0

8.b. Mengkonfigurasi  Jaringan

Salah satu pilihan yang harus dibuat oleh pengguna adalah memberi nama PC mereka. Halini tampaknya mudah, tetapi banyak pengguna menemui kesulitan untuk mencari sebuah

nama yang tepat bagi komputer mereka. Untuk mempersingkat waktu, nama yang anda pilihdapat diubah-ubah nantinya. Anda dapat saja memberi nama sistem anda cnc dan namadomainnya pinguin.

Kita akan menggunakan nama tersebut di contoh berikutnya. Pertama, kita akan mengeset

hostname: Set hostname „#echo cnc > /etc/hostname‟

Set nama domain „#echo penguin > /etc/dnsdomainname

Sekarang tambahkan skrip domainname ke runlevel default:

# rc-update add domainname default

Page 13: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 13/62

  13

Pertama, bukalah file /etc/conf.d/net menggunakan editor favorit anda (nano di contoh ini):

# nano -w /etc/conf.d/net

Variabel pertama yang akan anda temui adalah iface_eth0. Variabel tersebut menggunakan

sintaks berikut:

iface_eth0="<alamat ip anda> broadcast <alamat broadcast anda> netmask<netmask anda>"

Sekarang simpanlah konfigurasi tersebut dan keluar untuk melanjutkan.

# rc-update add net.eth0 default

Sekarang anda perlu menginformasikan Linux tentang jaringan anda. Ini didefenisikan di file

/etc/hosts dan membantu dalam resolusi hostname ke alamat IP dari host yang tidak dapat

diresolusi oleh nameserver anda.

127.0.0.1 localhost

192.168.0.5 cnc.pinguin earth192.168.0.6 sun.homenetwork sun192.168.0.7 gentoo.homenetwork net

Simpan dan keluarlah dari editor untuk melanjutkan

8.c. Informasi Sistem 

Pertama-tama, kita set password root

# passwd

Menambah user baru

#useradd –g wheel –d /home/cnc cnc

#passwd cnc

9. Menginstal Utilitas-utilitas Sistem yang Diperlukan

Jika filesystem yang anda gunakan adalah reiserfs, maka anda perlu menginstall

reiserfsprogs#emerge –k reiserfsprogs

Tabel berikut menjabarkan utilitas-utilitas yang perlu anda instal jika anda menggunakanfilesystem tertentu:

File System Utilitas  Perintah Instalasi 

XFS xfsprogs emerge – k xfsprogs

ReiserFS reiserfsprogs emerge – k reiserfsprogs

JFS jfsutils emerge – k jfsutils

Page 14: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 14/62

  14

10. Mengkonfigurasi Bootloader 

Sekarang setelah kernel anda terkonfigurasi dan dikompilasi, serta file-file konfigurasi

sistem yang penting telah diisi dengan benar, ini saatnya untuk menginstal sebuah program

yang akan menjalankan kernel anda sewaktu anda menghidupkan komputer anda. Program

tersebut adalah bootloader. Untux arsitektur x86, Gentoo Linux menyediakan GRUB dan

LILO.

Jika anda mengkonfigurasi kernel anda dengan dukungan framebuffer (atau andamenggunakan konfigurasi kernel default genkernel), anda harus menambahkan argumen vgake file konfigurasi bootloader anda jika anda menginginkan dukungan framebuffer. Tabel

 berikut ini menjabarkan nilai-nilai vga yang tersedia yang dapat anda gunakan. Di contoh

file konfigurasi ini, kita menggunakan 800x600 @ 16bpp, yaitu 788.

640x480 800x600 1024x768 1280x1024 

8 bpp  769 771 773 775

16 bpp 785 788 791 794

32 bpp 786 789 792 795

10.b. Default: Menggunakan GRUB

Untuk menginstal GRUB, pertama marilah kita emerge paketnya:

# emerge –k grub# nano -w /boot/grub/grub.conf

# Daftar ke berapa yang diboot secara default. 0 adalah pertama, 1adalah ke dua, dll.default 0# Berapa detik GRUB harus menunggu sebelum daftar default diboot.timeout 30splashimage=(hd0,0)/grub/splash.xpm.gz

title=Gentoo Linux 2.4.26-r6# Partisi dimana imej kernel (atau sistem operasi) beradaroot (hd0,1)kernel /kernel-2.4.26-gentoo-r6 root=/dev/hda1

# Tiga baris berikutnya hanya digunakan jika anda melakukandualboot dengan sebuah sistem Windows.# Di contoh ini, Windows berada di partisi /dev/hda6.title=Windows XProotnoverify (hd0,5)makeactivechainloader +1

Page 15: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 15/62

  15

Menjalankan shell GRUB

# grubgrub> root (hd0,0) (tuliskan di manakah partisi /boot andaberada)grub> setup (hd0) (Instal GRUB di MBR)

grub> quit (Keluar dari GRUB)

10.c. Alternatif: Menggunakan LILO 

Install lilo

# emerge --usepkg lilo

Konfigurasi LILO

Untuk mengkonfigurasi LILO, anda harus menciptakan file /etc/lilo.conf. Jalankan editor favorit anda (di panduan ini, kami menggunakan nano untuk konsistensi) dan ciptakan filetersebut.

boot=/dev/hda # Instal LILO di MBRprompt # Berikan pengguna kesempatan untuk memilihseksi laintimeout=50 # Tunggu 5 (lima) detik sebelum boot seksidefaultdefault=gentoo # Setelah waktu tunggu selesai, boot seksi"gentoo"# Hanya jika anda menggunakan framebuffer. Sebaliknya, hapuslah barisberikut:vga=788 # Setting framebuffer. Sesuaikan dengan

kebutuhan anda

# Untuk pengguna non-genkernelimage=/boot/kernel-2.4.26-gentoo-r6

label=gentoo # Nama dari seksi iniread-only # Mulai dengan root yang hanya dapat dibaca

(read-only). Jangan diubah!root=/dev/hda3 # Lokasi filesystem root

# Untuk pengguna genkernelimage=/boot/kernel-2.4.26-gentoo-r6

label=gentooread-only

root=/dev/ram0append="init=/linuxrc ramdisk=8192 real_root=/dev/hda3"initrd=/boot/initrd-2.4.26-gentoo-r6

# Dua baris berikutnya hanya digunakan jika anda dualboot dengan sistemWIndows.# Di contoh ini, Windows berada di partisi /dev/hda6.other=/dev/hda6

label=windows

Save dan exit serta jalankan perintah berikut

# /sbin/lilo

Page 16: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 16/62

  16

10.d. Reboot Sistem 

I.2 SISTEM FILE ( Filesystem )

Filesystem adalah metoda  –  metoda dan struktur   –  struktur data yang digunakanoperating system untuk memelihara file  – file pada sebuah disk atau partisi agar tetap pada

tracknya. Saat ini Linux menggunakan filesystem ext3.Linux memiliki dukungan terhadap beberapa filesystem lain sehingga kita dapatmenggunakan atau mengakses filesystem yang berbeda tanpa harus melakukan konversifilesystem terlebih dahulu. Berikut adalah beberapa tipe filesystem yang didukung olehLinux.

♪  Minix, minix merupakan filesystem Linux pertama dan saat ini masih banyak digunakan untuk boot disk dan beberapa format disket.

♪   NTFS , NTFS adalah filesystem yang digunakan oleh windows NT dankeluarganya. Redhat 8 keatas ( Pysche & Shrike ) secara default dapatmembaca filesystem ini.

♪  ext & ext2, filesystem ini merupakan filesystem lama Linux sebelummenggunakan ext3. Secara default file yang ada pada filesystem ini dapatdibaca dan ditulisi, tapi tidak bisa dieksekusi.

♪  ISO9660, filesystem ini digunakan oleh cdrom♪  FAT, FAT32, Jika anda memiliki partisi tipe ini anda tidak perlu khawatir,

karena linux dapat membaca dan menulis pada partisi ini.

I.3 ORGANISASI DIREKTORI dan FILE

Secara umum struktur direktori Linux adalah sbb :

Page 17: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 17/62

  17

Penjelasan :

Unix dan keluarganya menggunakan system direktori seperti tree ( pohon ) yang dibalik,

sehingga direktori tertinggi adalah root ( akar ).

▪ /  => Direktori root, Merupakan root ( akar ) dari seluruh direktori

▪  /bin ,berisi file – file utilitas yang bersifat executable ( perintah-perintah )

▪  /sbin ,berisi file-file executable yang hanya dapat digunakan oleh user root

▪  /etc ,berisi file-file konfigurasi yang spesifik terhadap system yang bersangkutan

▪  /boot  ,berisi segala sesuatu yang berkaitan dengan proses booting kecuali

configuration files dan map installer 

▪  /home ,merupakan induk dari direktori user 

▪  /mnt ,berisi mounting point 

▪  /lib ,berisi file library dan kernel module

▪  /proc ,berisi parameter  –  parameter kernel dan informasi runtime system

▪  /tmp ,berisi file-file yang bersifat temporary ▪  /var ,berisi file-file yang menampung varying content

▪  /usr ,berisi file-file yang berhubungan langsung dengan user 

▪  /root ,adalah home directory bagi user root 

I.4 SYSTEM X WINDOW

Ada beberapa istilah yang perlu diketahui dalam mengenal X Window :

▪  Screen, menunjuk kepada keseluruhan desktop atau secara teknis berarti tampilan

layar utama yang X lihat. Anda dapat mempunyai lebih dari 1 buah X server, bahkansebenarnya anda dapat mempunyai lebih dari satu komputer menjalankan 1 buah X

Page 18: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 18/62

  18

server, tetapi hal ini tidak akan dibahas pada pelatihan first series mengingat topik  pembahasannya yang cukup kompleks. 

▪  Root Window, adalah latar belakang dari screen anda. Tidak mempunyai

karakteristik seperti window lainnya, tetapi lebih ke sebuah tempat dimana andamenjalankan aplikasi atau menyimpan gambar atau hanya memberi warna padanya. 

▪   Window Manager, adalah interface utama antara X Window System dengan user.Tanpa window manager, system akan lebih sulit digunakan dan tidak akan terlalu

 produktif. Window Manager menyediakan fungsi-fungsi pengontrolan dan kostumasi border, menu, icon, virtual desktop, button dan toolbar dari X Window.

▪  Pointer, adalah panah atau indicator penunjuk yang merepresentasikan lokasi

mouse atau pointing device lainnya, yang berhubungan erat dengan screen.

▪   Window, adalah frame dimana semua aplikasi berjalan. Frame ini mempunyai

 property yang dikontrol oleh window manager. 

▪   Active Window, adalah window yang sedang digunakan, window ini disebut

mempunyai focus dapat menerima input dari console atau pointing device. 

▪   Menu dan icon  berlaku sama seperti pada window system lainnya. Window yangterdiri hanya text saja disebut terminal emulator.

I.5 DESKTOP

KDE Desktop Environment adalah hasil sebuah proyek untuk menciptakan desktopenvironment yang solid dan terintegrasi, bukan hanya sebuah window manager. Utiliti KDEsangat lengkap hingga seorang newbie dapat saja mengatakan bahwa KDE adalah sebuahOperating System. Semua tool untuk bekerja dalam sistem yang window-based.

GNOME adalah proyek lainnya yang sama dengan KDE namun berbeda dalam systemdan kemampuan. GNOME tidak saja merupakan sebuah window manager, tetapi system

desktop yang interoperable antar komputer dan platform. Kemampuan ini diperoleh karenaGNOME menggunakan Common Object Resource Broker Architecture (CORBA). GNOMElebih diterima di dunia Open Source karena GNOME dibuat dengan Gtk+ toolkit yang gratisdan Open Source berdasarkan GNU License.

Menjalankan X-Window 

Mudah sekali, ketikkan perintah :

[root@pelatihan root]#startx

Pada console Linux, maka anda akan dibawa memasuki GUI based desktop environment

GNOME sebagai default.Mengganti X Window System dengan KDE tidak sulit, lakukan langkah-langkah berikut :

▪  Ketikkan perintah :[root@pelatihan root]#switchdesk

▪  Pilih KDE[root@pelatihan root]#init 6[root@pelatihan root]#startx 

1.6 REPRESENTASI DEVICE

Page 19: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 19/62

  19

Linux memiliki cara yang unik dalam merepresentasikan suatu device, yaitu denganmenganggap device tersebut adalah file.Berikut adalah beberapa device yang dapat kitatemui :

 Nama Jenis device

/dev/hda Harddisk IDE pertama

/dev/hdb Harddisk IDE kedua/dev/fd0 Floppy pertama

/dev/fd1 Floppy kedua

/dev/cdrom cdrom

/dev/sda Harddisk SCSI pertama

/dev/sdb Harddisk SCSI kedua

/dev/aztcd cdrom aztech CDA268-01

/dev/cdsony cdrom sony CDU 31a

/dev/mouse mouse

/dev/logimouse mouse Logitech

LINUX TRAINING FIRST SERIES

Page 20: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 20/62

  20

 pinguin.stttelkom.ac.id 

 MODUL IIBASIC COMMAND, SHELL PROGRAMMING & BASHSCRIPTING

Page 21: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 21/62

  21

Dalam sistem Linux beberapa kategori file, yaitu :

▪  File teks, dalam format standar ASCII.

▪  File data, dalam format non-ASCII (berupa karakter khusus).

▪  File teks perintah, dalam format ASCII tetapi merupakan sekumpulan perintahotomatis (berupa script).

▪  File perintah (executable), dalam format binary.

▪  Direktori, merupakan kumpulan dari file-file bahkan direktori lainnya. Tanda „.‟Menunjuk kepada direktory yang bersangkutan, „..‟ menunjuk kepada direktori diatasnya.

▪  Hard Links, dapat dikatakan bukan merupakan tipe suatu file, akan tetapi nama laindari suatu file tertentu. Hard links pada dasarnya merupakan alias dari file yang asli.

▪  Symbolic Links, menghubungkan pada suatu file dengan menunjuk pada nama filetersebut. Isi dari file dengan tipe ini adalah pathname dari file yang ditunjuk.

▪ Device driver khusus, terbagi menjadi dua yaitu character device dan block device. 

II.1 PERINTAH-PERINTAH DASAR LINUX

Untuk berinteraksi dengan sistem, Linux menyediakan dua alternatif, yaitu CLI (Command Line Interface ) dan GUI ( Graphical User Interface ). CLI menyediakaninterfacing ke user dalam bertuk text, dimana user menginputkan sejumlah text tertentuuntuk mendapatkan output yang diinginkan. Sedangkan GUI merupakan alternatif interfacing dalam bentuk grafis dan dilengkapi dengan petunjuk penggunaannya.Penggunaan CLI atau GUI ini terserah pada selera dan kebutuhan anda. Tetapi untuk tahap

awal agar anda memiliki pemahaman yang baik tentang linux, maka pada pelatihan inidigunakan CLI. Sedangkan untuk penggunaan GUI secara mendalam akan dibahas pada pelatihan Linux SOHO yang akan menitik-beratkan pada penggunaan aplikasi office untuk rumah dan perkantoran pada linux.

Pada interface CLI Linux menggunakan shell. Shell merupakan sebuah commandinterpreter yang berfungsi untuk menterjemahkan setiap perintah yang anda ketikkan. Shell

 banyak jenisnya, tetapi shell yang paling banyak disupport oleh distro linux dan yang paling banyak digunakan adalah bash. Anda dapat mengecek jenis shell yang anda gunakan denganmengetik:

$env | grep SHELLSHELL=/bin/bash 

ini artinya anda menggunakan bash

Shell Prompt 

Sebelum mencoba perintah-perintah dasar pada Linux, ada baiknya kita mengenal shell

 prompt terlebih dahulu.

Contoh :[pinguin@CnC pelatihan]$ 

▪  Pinguin menunjukkan user aktif pada shell tersebut

▪  CnC menunjukkan nama mesin ( host ) dari yangbersangkutan

▪  Pelatihan menunjukkan current direktori

Page 22: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 22/62

  22

▪  $ berarti pinguin adalah user biasa

# menunjukkan user root

Format umum peri ntah  : Perintah [option…] [argumen…] 

Bisa merupakan input dan atau output

Pilihan untuk mengatur hasil yang diinginkanJenis perintah

Berikut adalah beberapa peri ntah dasar yang dir asa per lu untuk diketahui : 

▪  lsPerintah ini sama halnya seperti perintah dir pada MS-DOS yang sudah kita kenalsebelumnya, yang berfungsi untuk menampilkan isi dari suatu direktori beserta atribut-atribut file-nya.

Contoh :[root@pelatihan root]#ls –a /pelatihan

▪  cdPerintah ini berfungsi untuk berpindah dari satu direktori ke direktori yang lainnya.

Contoh :

[root@pelatihan root]#cd /pelatihan

▪  mkdirPerintah ini sama halnya seperti perintah md pada MS-DOS, yang berfungsi untuk membuat sebuah direktori dalam direktori yang sedang aktif.

Contoh :

[root@pelatihan root]#mkdir /pelatihan

▪  rm dan rmdirPerintah rm digunakan untuk menghapus file, sedangkan rmdir menghapus direktori.

Contoh :

[root@pelatihan root]#rm [nama.file][root@pelatihan root]#rmdir [nama.direktori]

▪  findPerintah ini berfungsi untuk mencari file atau direktori.

Contoh : 

[root@pelatihan root]#find direktori_pencarian

nama_file_dicari print

▪  locateFungsinya kurang lebih sama dengan perintah find, bedanya locate menggunakan sebuahdatabase (biasanya terletak di /var/lib/locatedb) yang dapat di-update menggunakan

 perintah updatedb.Contoh :

Page 23: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 23/62

  23

[root@pelatihan root]#locate [sesuatu]

▪  whereisBerfungsi untuk mencari posisi direktori dari suatu file

Contoh :

[root@pelatihan root]#whereis nama.file

▪  whichBerfungsi untuk mencari direktori dari suatu perintahContoh :[root@pelatihan root]#which [nama.perintah]

▪  tailBerfungsi untuk menampilkan x baris terakhir dari suatu file

Contoh :

[root@pelatihan root]#tail –10 [nama.file]

▪  pwdBerfungsi untuk menampilkan posisi current direktori

Contoh :

[root@pelatihan root]#pwd 

▪  shutdownBerfungsi untuk merestart dan men-shutdown komputer Contoh :[root@pelatihan root]#shutdown –r now ( -r = restart )[root@pelatihan root]#shutdown –h now ( -h = halt )

▪  poweroffBerbeda dengan shutdown, selain man-shutdown, poweroff juga mematikkan power komputer secara otomatis.

Contoh :

[root@pelatihan root]#poweroff

▪  dfBerfungsi untuk menampilkan informasi tentang pemakaian partisi yang dimounting

Contoh :

[root@pelatihan root]#df -h

▪  touchBerfungsi untuk membuat file berukuran 0 KBContoh :[root@pelatihan root]#touch coba.coba

▪  grep

Perintah ini digunakan untuk pencarian data di dalam file, penggunakan grep akan lebihmengefisienkan waktu dibandingkan harus membaca file satu per satu.

Page 24: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 24/62

  24

Contoh :

[root@pelatihan root]#grep “sesuatu” nama.file 

▪  catPerintah cat ini akan menampilkan isi dari suatu file ke standart output (stdout).

Contoh :

[root@pelatihan root]#cat [nama.file]

▪  moreSama seperti cat, tapi tampilan akan berhenti setiap satu layar.

Contoh :

[root@pelatihan root]#more [nama.file]

▪  cpPerintah ini mirip dengan perintah copy pada MS-DOS, yang berfungsi untuk mengkopi

suatu file ke tempat tertentu.

Contoh :

[root@pelatihan root]#cp [sumber] [tujuan]

▪  mvPerintah ini mirip dengan perintah move pada MS-DOS, yang berfungsi untuk memindahkan suatu file ke tempat lain atau bisa juga untuk mengganti nama file.

Contoh :

[root@pelatihan root]#mv [file1] [file2]

▪  tarBerfungsi untuk mengumpulkan banyak file atau direktori menjadi satu kesatuan.Perintah ini tidak melakukan kompresi pada outputnya.

Contoh :

[root@pelatihan root]#tar nama.tar [file1] [file2]

▪  gzip dan gunzipPerintah untuk mengkompres dan men-dekompres sebuah file.

Contoh :

[root@pelatihan root]#gzip nama.gz file[root@pelatihan root]#gunzip nama.gz

▪  bzip2 dan bunzip2Perintah ini tergolong baru diimplementasikan. Dari pengamatan penulis, bzip2 mampumengkompres file lebih baik dari gzip.

Contoh :

[root@pelatihan root]#bzip2 nama.bz2 file

[root@pelatihan root]#bunzip2 nama.bz2

Page 25: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 25/62

  25

▪  tar + gzipAnda dapat menggabungkan perintah tar dan gzip

Contoh :[root@pelatihan root]#tar –czvf nama.tar.gz file1 file2[root@pelatihan root]#tar –xzvf nama.tar.gz coba/

▪  tar + bzip2Anda tentu bisa menggabungkan dua perintah ini

Contoh :[root@pelatihan root]#tar –cjvf nama.tar.bz2 file1 file2[root@pelatihan root]#tar –xjvf nama.tar.bz2 coba/

▪  rdevBerfungsi untuk menampilkan posisi root partition

Contoh :

[root@pelatihan root]#rdev

II.2 REDIRECTION dan PIPE

Redirection 

Fasilitas redirection memungkinkan kita untuk dapat menyimpan output dari sebuah proses

untuk disimpan ke file lain (Output Redirection) atau sebaliknya menggunakan isi dari file

sebagai input dalam suatu proses (Input Redirection). Komponen-komponen dari redirectionadalah < , > , << , >>

▪  Output RedirectionUntuk me-redirect standar output, kita gunakan simbol >. Penempatan tanda > setelah

 perintah cat akan mengarahkan/direct output ke nama file yang mengikuti tanda >.

Contoh :

♪  [root@pelatihan root]#cat > nama.filePercobaan^D

♪  Melihat isi file nama.file[root@pelatihan root]#cat latihPercobaan

♪  Menambah isi file[root@pelatihan root]#cat >> [nama.file]tambahan^D

♪  Berbeda dengan >, >> berfungsi menambahkan text ke file yang bersangkutan♪  Lihat kembali isi dari file latih

[root@pelatihan root]#cat [nama.file]Percobaan

tambahan♪  Anda juga dapat menggunakan output dari suatu perintah

Page 26: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 26/62

  26

[root@pelatihan root]#find /* > file1

▪  Input RedirectionUntuk me-redirect standar input, kita gunakan simbol redirect <. Artinya kita memintashell untuk membaca file sebagai inputan bagi command/perintah. Prinsip

 penggunaannya sama seperti output redirection.

Contoh :

♪  [root@pelatihan root]#mail root < latihmaka dengan kata lain, isi file latih tadi akan menjadi inputan bagi perintah mail. Dengan

 begitu sekarang kita memiliki mail dengan isi berupa file latih tadi.

Pipeline 

Pipeline ( | ) merupakan fasilitas di shell UNIX yang berfungsi untuk memberikan input

suatu proses dari output proses yang lain.Contoh :

[root@pelatihan root]#find *

maka akan ditampilkan keseluruhan pencarian, dan setelah kita gunakan pipeline :[root@pelatihan root]#find * | grep latih

maka hanya akan ditampilkan hasil pencarian yang menemukan kata latih. Dengan kata lain,output dari perintah find akan menjadi input dari perintah grep yang kemudian hanyamengambil kata “latih” dari output find. 

II.3 EDITOR Seperti juga pada Ms-Windows, untuk Linux maupun semua varian UNIX terdapat editor file yang dinamakan vi atau vim (vi improved with syntax color highlighting). Selain viterdapat program editor lain yang lebih mudah pemakaiannya seperti pico, joe, jove, mc(midnight commander), dll. Pada bab ini, akan dikenalkan bagaimana menggunakan editor vi, joe, pico dan mc.

1. Vi 

Vi merupakan editor yang paling terkenal di dunia UNIX. vi adalah kepanjangan dari“Visual” editor. vi mendukung penggunaan warna untuk menandakan kode program dan

 juga penanda teks seperti penggunaan huruf normal, tebal maupun cetak miring. Untuk 

menjalankan perintah vi, kita gunakan sintaks sebagai berikut :

[root@cnc root]#vi [nama.file]

Editor vi mempunyai tiga mode :

▪  Input Mode, dengan mengetikkan perintah-perintah yang spesifik seperti a i uContoh : terlebih dahulu buatlah file dengan mengetik vi nama.file

♪  tekan i sehingga muncul tulisan INSERT pada bagianbawah layar. Ketikkan sesuatu pada layar.

♪  tekan esc lalu tekan u, u digunakan untuk mengundo

suatu perubahan setelah save terakhir. Ketikan lagisesuatu.

Page 27: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 27/62

  27

♪  tekan Esc lalu ketikkan de, maka satu baris setelah posisi kursor akan

didelete.

▪  Command Mode, untuk menggunakannya tekan Esc terlebih dahulu.Contoh :

♪  tekan Esc, :wq, enter, digunakan untuk menyimpan dankeluar dari editor

♪  tekan Esc, :q, digunakan untuk keluar dari dari vitanpa melakukan editing

♪  tekan Esc, :q!, berfungsi untuk keluar tanpamenyimpan dari vi

♪  tekan Esc, :w, digunakan jika kita ingin men-savetanpa keluar dari vi

▪  Line Mode, suatu keadaan setelah ada proses input : ? / !Contoh :

♪  tekan Esc lalu i, ketik kata coba♪  tekan Esc lalu /coba, perintah ini akan menyebabkan kursor men-select kata

 bersangkutan.

Selain tiga mode ini anda dapat juga memadukan vi dengan interface grafis Linux, cobalahdan rasakan bedanya.

2. Pico 

Pico adalah teks editor jenis lain yang berdasarkan pada program compose email pine. Navigasi untuk perintahnya diletakkan di bawah dari layar. Semua karakter yang diketik 

langsung disisipkan ke dalam teks. Perintah untuk menjalankan editor pico adalah sbb :[root@cnc root]#pico [nama.file]

Tombol Fungsi

^G Help

^W Mencari kata

^R Membuka file

^O Menyimpan file

^X Keluar dari Pico

^K Menghapus satu baris^C Menampilkan posisi kursor 

^U Undo untuk perintah menghapus

3. Joe 

Perintah-perintah dalam editor joe saat ini mirip dangan perintah-perintah pada WordStar.Jika kita telah terbiasa dengan perintah pada WordStar, maka tidak akan kesulitan dalammenggunakannya. Untuk menjalankan Joe ketikkan perintah berikut :

 joe nama.file

Page 28: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 28/62

  28

Tombol Fungsi

^C Keluar tanpa menyimpan

^KD Simpan file dan kembali ke menu edit

^KX Simpan file dan keluar 

^KB Memberikan tanda awal untuk memblok 

^KK Memberikan tanda akhir untuk memblok ^KC Mengkopi daerah yang telah diblok 

^KY Menghapus daerah yang telah diblok 

^KM Memindahkan daerah yang telah diblok 

^Y Menghapus satu baris

^X Memindahkan kursor ke kata berikutnya

^Z Memindahkan kursor ke kata sebelumnya

^KU Memindahkan kursor ke tempat paling awal file

^KV Memindahkan kursor ke tempat paling akhir file

^A Memindahkan kursor ke awal baris

^E Memindahkan kursor ke akhir baris^U Menggulung layar ke layar sebelumnya

^V Menggulung layar ke layar berikutnya

4. Mc 

MC atau Midnight Commander merupakan aplikasi yang sangat berguna. Kemampuan mcsebagai editor hanya salah satu dari kemampuan-kemampuan lainnya.Syntax :[root@cnc root]#$ mc – e nama.file atau mc kemudian insert file yang akan diedit lalu tekan

F4 untuk mengedit. Perintah-perintah yang dapat digunakan dapat dilihat berikut ini :

Masing-masing editor ini mempunyai kelebihan dan kekurangan. Contohnya padaeditor pico yang sangat baik berjalan di terminal apapun, termasuk pada terminal bila kitasedang telnet dengan menggunakan client dari windows. Sedangkan vi digunakan karena

 banyak feature-feature yang sangat menarik sehingga membantu kita untuk lebih cepatdalam mengedit file. Editor joe dan mc, digunakan karena sederhana dan tampilannya yangmenarik.

II.4 MENGAKSES DISK 

Page 29: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 29/62

  29

Berbeda dengan Windows yang mengenal mekanisme drive ( A, B ,C ,dst ), Linuxmemiliki mekanisme sendiri yaitu mounting. Mekanisme ini deperlukan agar disk yang andamiliki, seperti floppy, cdrom dan harddisk dapat diakses.

1. Manual 

Gunakan cara ini untuk melakukan mounting yang bersifat insidentil.Syntack :root@pelatihan root]#mount [device] [directory]

 penjelasan :♪  [device] : adalah representasi disk yang anda miliki♪  [directory] : direktori tempat mounting point

Contoh :

  root@pelatihan root]#mount /dev/cdrom /mnt/cdrom Perintah ini akan memounting cdrom ke /mnt/cdrom 

  root@pelatihan root]#mount /dev/fd0 /mnt/floppyPerintah ini akan memounting floppy ke /mnt/floppy 

  root@pelatihan root]#mount /dev/hda5 /mnt/drive_D 

♪  Perhatikan /dev/hda5 merepresentasikan disk anda, yaitu harddisk.

♪  hd berarti bahwa anda menggunakan hasrddisk IDE, jika anda menggunakan

SCSI, maka gunakan sd .

♪  huruf a pada hda menunjukkan ini adalah harddisk pertama ( dimulai dari a, b, c, dst )

♪  angka 5 pada hda5 menunjukkan bahwa ini adalah partisi ke lima ( dimulai

dari 1, 2, 3, dst )♪  Buatlah direktory /mnt/drive_D terlebih dahulu

2. Otomatis 

Gunakan cara ini jika anda menginginkan disk tersebut secara otomatis di mounting padasaat booting.

  Edit file /etc/fstab root@pelatihan root]#vi /etc/fstab

  Format isinya :[device] [direktori] [fstype] [option] [dump] [fsck]

♪ 

[fstype] : Untuk menentukan tipe dari filesystem yang akan di mount. Set =auto jika agar ditentukan secara otomatis.♪  [option] : digunakan untuk memberikan advanced setting terhadap suatu

meounting. Contoh aplikasinya adalah quota dan setiing keamanan.♪  [dump] : digunakan agar mounting yang anda buat dapat digunakan oleh

dump untuk fasilitas backup data. Set = 1 jika anda menginginkannya dan = 0 jika tidak 

♪  [fsck] : digunakan agar mounting yang anda buat diperiksa oleh programfsck pada saat reboot. jika anda menginginkannya set = 1 untuk filesystem /(root) dan 2 untuk lainnya. Jika tidak set = 0.

  Contoh :

/dev/hda5 /mnt/windows auto defaults 0 2

Page 30: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 30/62

  30

II.5 PEMROGRAMAN SHELL ( BASH SCRIPTING )

1. Pendahu luan 

Apa itu shell ? shell adalah program (penterjemah perintah) yang menjembatani user 

dengan sistem operasi dalam hal ini kernel (inti sistem operasi). Umumnya shellmenyediakan prompt sebagai user interface, tempat dimana user mengetikkan perintah-

 perintah yang diinginkan baik berupa perintah internal shell (internal command), ataupun perintah eksekusi suatu file program (eksternal command). Selain itu shell memungkinkanuser menyusun sekumpulan perintah pada sebuah atau beberapa file untuk dieksekusisebagai program.

2. Macam-macam shell 

Tidak seperti sistem operasi lain yang hanya menyediakan satu atau dua shell, sistemoperasi dari keluarga unix misalnya linux sampai saat ini dilengkapi oleh banyak shelldengan kumpulan perintah yang sangat banyak, sehingga memungkinkan pemakai memilihshell mana yang paling baik untuk membantu menyelesaikan pekerjaannya, atau dapat pula

 berpindah-pindah dari shell yang satu ke shell yang lain dengan mudah, beberapa shell yangada di linux antara lain :

♪  Bourne shell (sh)♪  C shell (csh)♪  Korn shell (ksh)♪  Bourne again shell (bash), dsb

Masing  –  masing shell mempunyai kelebihan dan kekurangan tersendiri yang lebihdidasarkan kepada kebutuhan pemakai yang makin hari makin meningkat. Untuk pelatihanini digunakan bash shell dari GNU, yang merupakan pengembangan dari Bourne Shell dan

mengambil beberapa feature dari C shell serta Korn shell. Bash shell merupakan shell yangcukup banyak digunakan pemakai linux karena kemudahan serta banyaknya fasilitas perintahyang disediakan.

3. Pemrograman Shell 

Yaitu menyusun atau mengelompokkan beberapa perintah shell (internal ataupuneksternal) menjadi kumpulan perintah yang melakukan tugas tertentu sesuai tujuan

 pembuatannya. Kelebihan shell di linux dibanding sistem operasi lain adalah bahwa shell dilinux memungkinkan kita untuk menyusun serangkaian perintah seperti halnya bahasa

 pemrograman (interpreter language), melakukan I/O, menyeleksi kondisi, looping, membuatfungsi, dsb adalah proses-proses yang umumnya dilakukan oleh suatu bahasa pemrograman,

 jadi dengan shell di linux kita dapat membuat program seperi halnya bahasa pemrograman.Pemrograman shell unix atau linux mempunyai istilah tersendiri, yaitu script shell.

Sebelum memulai balajar shell programing terlebih dahulu anda harus memantapkan pemahaman mengenai perintah-perintah dasar yang telah diberikan.

Simple bash script 

Langkah awal sebaiknya periksa dulu shell aktif anda, gunakan perintah ps (report prosesstatus)

[root@pelatihan root]#psPID TTY TIME CMD219 tty1 00:00:00 bash

Page 31: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 31/62

  31

301  tty1 00:00:00 ps 

 bash adalah shell aktif di system saya, jika di sistem anda berbeda misalnya csh atau kshubahlah dengan perintah change shell

[root@pelatihan root]# chshPassword:New shell [/bin/csh]:/bin/bashShell changed

dengan atau mengetikkan bash[root@pelatihan root]# bash

sekarang coba anda ketikkan perintah dibawah ini pada prompt shellecho “Script shell pertamaku di linux” 

[root@pelatihan root]# echo “Script shell pertamaku di linux” 

Script shell pertamaku di linux

String yang diapit tanda kutip ganda (double quoted) akan ditampilkan pada layar anda,echo adalah statement (perintah) built-in bash yang berfungsi menampilkan informasi kestandard output yang defaultnya adalah layar. jika diinginkan mengulangi proses tersebut,anda akan mengetikkan kembali perintah tadi, tapi dengan fasilitas history cukupmenggunakan tombol panah kita sudah dapat mengulangi perintah tersebut, bagaimana jika

 berupa kumpulan perintah yang cukup banyak, tentunya dengan fasilitas hirtory kita akankerepotan juga mengulangi perintah yang diinginkan apalagi jika selang beberapa waktumungkin perintah-perintah tadi sudah tertimpa oleh perintah lain karena history mempunyaikapasitas penyimpanan yang ditentukan. untuk itulah sebaiknya perintah-perintah tsbdisimpan ke sebuah file yang dapat kita panggil kapanpun diinginkan.

Coba ikuti langkah - langkah berikut:

Masuk ke editor anda, apakah memakai vi,pico,emacs,dsb... ketikkan perintah berikut:

#!/bin/bashecho “Hello, apa khabar” 

  simpan dengan nama file tes  ubah permission file tes menggunakan chmod

[root@pelatihan root]# chmod 755 tes

   jalankan

[root@pelatihan root]# ./tesHello, apa khabar 

Environment Var iable 

Variabel lingkungan yang digunakan khusus oleh shell atau system linux kita untuk  proses kerja system seperti variabel PS1, PS2, HOME, PATH, USER, SHELL,dsb...jikadigunakan akan berdampak pada system, misalkan variabel PS1 yang digunakan untuk mengeset prompt shell pertama yaitu prompt tempat anda mengetikkan perintah - perintahshell (defaultnya “\s-\v\$”), PS2 untuk prompt pelengkap perintah, prompt ini akan

ditampilkan jika perintah yang dimasukkan dianggap belum lengkap oleh shell (defaultnya“>”). anda dapat mengeset PS1 dan PS2 seperti berikut.

Page 32: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 32/62

  32

Simpan dahulu isi PS1 asli sistem anda, sehingga nanti dapat dengan mudah dikembalikan[root@pelatihan root]# PS1LAMA=$PS1

Sekarang masukkan string yang diinginkan pada variabel PS1

[root@pelatihan root]# PS1=”Hi ini Promptku!”

Hi ini Promptk u!PS2=”Lengkapi dong ?” 

Maka prompt pertama dan kedua akan berubah, untuk mengembalikan PS1 anda ke promptsemula ketikkan perintah[root@pelatihan root]# PS1=$PS1LAMA 

Jika anda ingin mengkonfigurasi prompt shell, bash telah menyediakan beberapa backslashkarakter diantaranya adalah:

\a ASCII bell character (07)

\d date dengan format “Weekday Month Date” (misalnya “Tue May 26”) 

\e ASCII escape character (033)\H hostname (namahost)

\n newline (karakter baru)

\w Direktory aktif 

\t time dalam 24 jam dengan format HH:MM:SS

dll man bash:-)

Contoh pemakaiannya:[root@pelatihan root]# PS1=”[\t][\u@\h:\w]\$” 

agar prompt shell hasil konfigurasi anda dapat tetap berlaku (permanen) sisipkan pada file.bashrc atau .profile

Posit ional Parameter 

Parameter posisi yaitu variabel yang digunakan shell untuk menampung argumen yangdiberikan terhadap shell baik berupa argumen waktu sebuah file dijalankan atau argumenyang dikirim ke subrutin. variabel yang dimaksud adalah 1,2,3,dst..lebih jelasnya lihatcontoh script berikut :#!/bin/bash#argumen1

echo $1 adalah salah satu $2 populer di $3

Hasilnya[root@pelatihan root]#./argumen1 bash shell linux

 bash adalah salah satu shell populer di linux

User Defined Variable 

User Defined Variable adalah variabel yang didefinisikan sendiri oleh pembuat script sesuaidengan kebutuhannya. Ada beberapa hal yang perlu diperhatikan dalam mendefinisikanvariabel, yaitu:

  Dimulai dengan huruf atau underscore

Page 33: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 33/62

  33

  Hindari pemakaian spesial karakter seperti *,$,#,dll...

  Bash bersifat case sensitive, maksudnya membedakan huruf besar dan kecil, a berbeda dengan A, nama berbeda dengan Nama, NaMa,dsb..

Untuk mengeset nilai variabel gunakan operator assignment (pemberi nilai)”=”, contohnya : myos=”linux” #double-quoted

nama=‟pinguin‟ #single-quotedhasil=„ls –l„; #back-quotedangka=12Kalau anda perhatikan ada 3 tanda kutip yang kita gunakan untuk memberikan nilai string kesuatu variabel, adapun perbedaannya adalah:

  Dengan kutip ganda (double-quoted), bash mengizinkan kita untuk menyisipkanvariabel di dalamnya. contohnya:#!/bin/bashnama=”Pinguin” 

kata=”Hi $nama, apa khabarmu” #menyisipkan variabel namaecho $kata;Hasilnya:Hi Pinguin, apa khabarmu

  Dengan kutip tunggal (single-quoted), akan ditampilkan apa adanya. contohnya:#!/bin/bashnama=”Pinguin” 

kata=‟Hi $nama, apa khabarmu‟ #menyisipkan variabel namaecho $kata;Hasilnya:Hi $Piunguin, apa khabarmu

  Dengan kutip terbalik (double-quoted), bash menerjemahkan sebagai perintah yang

akan dieksekusi, contohnya:#!/bin/bashhapus=„clear„; 

isi=„ls –l„; #hasil dari perintah ls -l disimpan di variabel isi#hapus layarecho $hapus#ls -lecho $isi;Hasilnya: silahkan dicoba sendiri

Output dengan printf 

#!/bin/bash#pr1

url=”pelatihan.linux.edu”; angka=32;

printf “Hi, Pake printf ala C \n \t \a di bash \n”; printf “My url %s \n %d decimal = %o octal \n” $url $angka$angka;printf “%d decimal dalam float = %.2f \n” $angka $angka Hasilnya:

[root@pelatihan root]# ./pr1Hi, Pake printf ala C

Page 34: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 34/62

  34

di bashMy url pelatihan.linux.edu32 decimal = 40 octal32 decimal dalam float = 32.00untuk menggunakan format kontrol sertakan simbol %, bash akan mensubtitusikan format

tsb dengan isi variabel yang berada di posisi kanan sesuai dengan urutannya jika lebih darisatu variabel, \n \t \a adalah karakter sekuen lepas newline,tab, dan bell,

Format control keterangan

%d untuk format data integer 

%o octal

%f float atau decimal

%x Hexadecimal

 pada script diatas %.2f akan mencetak 2 angka dibelakang koma, defaultnya 6 angka,informasi lebih lanjut dapat dilihat via man printf 

I nput dengan read 

Setelah echo dan printf untuk proses output telah anda ketahui, sekarang kita menggunakanstatement read yang cukup ampuh untuk membaca atau menerima masukan dari inputstandar 

syntax :

$ read -opsi [nama_variabel...]

 berikut contoh scriptnya:

#!/bin/bash#rd1echo -n “Nama anda :” read nama;echo “Hai $nama, apa khabarmu”; 

echo “Pesan dan kesan :”; readecho “kata $nama, $REPLY”; Hasilnya:

[root@pelatihan root]# ./rd1Nama anda : PinguinHai Pinguin, apa khabarmuPesan & kesan :pake linux pasti asyik-asyik ajakata Pinguin, pake linux pasti asyik-asyik aja

Opsi Keterangan

Page 35: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 35/62

  35

-p memungkinkan kita membuat prompt sebagai informasi pengisian

-s membuat input yang dimasukkan tidak di echo ke layar (seperti layaknya password dilinux)

-n Menentukan banyak karakter yang diinput

-d Menentukan karakter pembatas masukaninformasi secara lengkap lihat man bash

Pengaturan Warna 

Untuk pewarnaan tampilan di layar, Anda dapat menggunakan konstanta ANSI (salah satu badan nasional amerika yang mengurus standarisasi).Syntaxnya:\033[warnamDimana:

m menandakan setting color contohnya:[root@pelatihan root]# echo -e “\033[31m HELLO\033[0m” HELLOkonstanta 31m adalah warna merah dan 0m untuk mengembalikan ke warna normal (none),tentunya konstanta warna ansi ini dapat dimasukkan ke variabel PS1 untuk mengatur tampilan prompt shell anda, contohnya:

[root@pelatihan root]# PS1=”\033[34m” [root@pelatihan root]#

Menggunakan u til ity tput untuk penempatan posisi ku rsor 

kita dapat pula mengatur penempatan posisi kursor di layar dengan memanfaatkan utilitytput.Syntaxnya:

tput cup baris kolom

contohnya:#!/bin/bashcleartput cup 5 10echo “HELLO” tput cup 6 10echo “PAKE TPUT” 

 jika dijalankan Anda akan mendapatkan string HELLO di koordinat baris 5 kolom 10, danstring PAKE TPUT dibaris 6 kolom 10. informasi selengkapnya tentang tput gunakan mantput, atau info tput

Page 36: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 36/62

  36

LINUX TRAINING FIRST SERIES

Page 37: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 37/62

  37

 pinguin.stttelkom.ac.id 

 MODUL IIIUSER and PROCESS MANAGEMENT

Administrasi sistem adalah mengenai mengontrol linux dan komputer secarakomplet. Pada sebuah lingkungan perusahaan besar dimana setiap orang memiliki tugas

Page 38: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 38/62

  38

yang spesifik,komputer users diasumsikan memiliki pengetahuan yang cukup untuk menjalankan yang dibutuhkan oleh tugas mereka itu, memanajemen file-file, atau mungkinmerancang sendiri desktop mereka. Users juga diharuskan memiliki kemampuan untuk memiliki kemampuan untuk menemukan informasi dari waktu ke waktu, sehingga merekatidak benar-benar kepada administrator sistem.

Administrator sistem mempunyai banyak tanggung jawab dan diasumsikan menjadiseperti pengatur bagi perusahaan atau departemen yang bersangkutan.Tanggung jawab dariadministrator sistim antara lain seperti di bawah ini :

  Membuat dan mengatur account users.  Menginstall dan mengkonfigurasi hardware dan software.  Membuat dan memlihara backups.  Mount devices.  Mematikan sistem (apabila users tidak diberi wewenang ini).  Log dan mengawasi perubahan pada sistem.  Memastikan keamanan sistem.  Melatih dan menjawab pertanyaan users.

III.1 MANAJEMEN USER dan GROUP

User pada sistem Linux dapat mengontrol akses ke file-file mereka dengan mengatur ijin-ijin untuk diri mereka sendiri, group mereka, dan orang lain di dunia ini. Sebagai contoh,user lia dari suatu divisi departemen membuat suatu dokumen dan menyimpannya. Iamemberikan ijin ke dirinya sendiri agar dapat membaca dan merubah file tersebut. Ia inginorang lain yang bekerja satu departemen dengannya untuk membaca file tersebut tapi tidak merubahnya. Untuk orang lain di luar departemen tersebut ia putuskan tidak memiliki akses

 pada file tersebut, baik membaca maupun merubahnya. Itulah mengapa penting untuk 

mengadministrasi sistem pada Linux.

Sistem administrator melakukan beberapa hal penting berkaitan dengan user dan groupantara lain:

  Pendaftaran nama login  Pembekuan nama login dan user   Penghapusan nama login user   Pembuatan grup baru  Pengaturan direktori home  Pengamanan file-file password

Dalam sistem Linux, nama login dapat diberikan pada:  Superuser atau root  User biasa

Contoh : Ita, Lia,Dhanang dll.

  AplikasiContoh : Bind, Mysql, Squid,dll

  DeviceContoh : lp

  ServiceContoh : cron, ftp

Page 39: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 39/62

  39

Tujuan pemberian nama login adalah untuk memberikan identitas pada tiap entityagar dapat memiliki file, direktori dan proses sendiri. Bagi user biasa, nama login dapatdigunakan untuk memasuki sebuah shell yang disiapkan sistem melalui proses otentifikasi

 password dan melakukan pekerjaan dalam sistem tersebut.

1. Pencatatan User dan Group  

Pada Linux RedHat , sebuah nama login valid terdapat dalam sistem apabila :

  Data-datanya terdapat pada file /etc/passwd 

  Password yang telah dienkripsi berada pada file /etc/shadow 

   Nama login berada pada group yang terdapat pada /etc/group 

Dengan menambah, merubah atau menghapus data-data pada file-file diatas maka andatelah dapat menambah, merubah atau menghapus user atau group. Namun untuk memudahkan pekerjaan, sistem Linux telah menyiapkan beberapa binary yang merupakan

 front-end dari file-file diatas, binary-binary tersebut antara lain:

  useradd, digunakan untuk menambahkan user ke sistem.  userdel, digunakan untuk menghapus user ke sistem.

  usermod, digunakan untuk memodifikasi user dalam sistem.

  passwd, digunakan untuk memberikan & merubah password user.

  groupadd, digunakan untuk menambahkan group ke sistem.

  groupdel, digunakan untuk menghapus group dalam sistem.

  groupmod, digunakan untuk memodifikasi group dalam sistem.

Untuk melihat info dari user, kita dapat mempergunakan perintah-perintah di bawah ini :

  who, menampilkan semua user yang sedang logged, console tempat mereka bekerja,

serta tanggal serta jam mereka login.  users, hanya menampilkan nama semua user yang sedang logged in

  w, hampir mirip dengan who hanya lebih detail lagi

  whoami, menampilkan id dari user yang menjalankan perintah itu sendiri

  groups, menampilkan group tempat kita berada

  id, menampilkan id dari semua user dan group

  last, menampilkan daftar dari user yang logged

  history, menampilkan daftar perintah yang dimasukkan.

Untuk mengetahui daftar user, group, serta direktorinya kita dapat melihat isi daripada

file /etc/passwd yang seperti terlihat di bawah ini :

[root@pelatihan root]# vi /etc/passwd root:x:0:0:root:root:/bin/bashbin:x:1:1:bin:/bin:daemon:x:2:2:daemon:/sbin:adm:x:3:4:adm:/var/adm:lp:x:4:7:lp:/var/spool/lpd:sync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:news:x:9:13:news:/var/spool/news:uucp:x:10:14:uucp:/var/spool/uucp:operator:x:11:0:operator:root:games:x:12:100:games:/usr/games:

Page 40: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 40/62

  40

gopher:x:13:30:gopher:/usr/lib/gopher-data:ftp:x:14:50:FTP User:/var/ftp:nobody:x:99:99:Nobody:/:xfs:x:43:43:X Font Server:/etc/X11/fs:/bin/falsegdm:x:42:42::/home/gdm:/bin/bashrpcuser:x:29:29:RPC Service User:/var/lib/nfs:/bin/false

rpc:x:32:32:Portmapper RPC user:/:/bin/falsemailnull:x:47:47::/var/spool/mqueue:/dev/nulltamu:x:500:500:user1:/home/tamu:/bin/bashlia:x:501:501:user2:/home/lia:/bin/bashita:x:502:502:user3:/home/ita:/bin/bash  

sebagai contoh, kita lihat empat baris terakhir dari daftar di atas yang menunjukkan user  biasa yaitu :

tamu:x:500:500:user1:/home/tamu:/bin/bashlia:x:501:501:user2:/home/lia:/bin/bashita:x:502:502:user3:/home/ita:/bin/bashcnc:x:503:503:user4:/home/cnc:/bin/bash 

Dari empat baris terakhir tersebut kita dapat mengetahui data-data dari user yang bersangkutan. Sebagai contoh kita lihat data-data user lia :lia : nama login user tersebutx : password yang dienkripsi, disimpan di /etc/shadow501 : nomor UID (User ID)501 : nomor GID (Group ID)user2 : komentar atau deskripsi nama login/home/lia : direktori home untuk user lia/bin/bash : default login shell

Sistem Linux yang anda pergunakan, yaitu Redhat 9 memiliki shadow passwords. Inimerupakan suatu alternatif di dalam menyimpan password. Password yang dienkripsi akan

disimpan di file bernama /etc/shadow, dimana hanya root yang bisa membacanya.

Tampilan file /etc/shadow :

[root@pelatihan root]# vi /etc/shadowroot:$1$2WGkLSii$69TVMXkLJbThXv.iGxxkt/:11461:0:99999:7:::bin:*:11455:0:99999:7:::daemon:*:11455:0:99999:7:::adm:*:11455:0:99999:7:::lp:*:11455:0:99999:7:::

sync:*:11455:0:99999:7:::shutdown:*:11455:0:99999:7:::halt:*:11455:0:99999:7:::mail:*:11455:0:99999:7:::news:*:11455:0:99999:7:::uucp:*:11455:0:99999:7:::ftp:*:11455:0:99999:7:::nobody:*:11455:0:99999:7:::xfs:!!:11455:0:99999:7:::apache:!!:11455:0:99999:7:::named:!!:11455:0:99999:7:::tamu:$1$VlFTU4s4$si1KMMuH0Rg9.dxnSu/6l/:11455:0:99999:7:::lia:$1$Md0G2DI6$UC6CYHlQ22RphEUV6DzTW0:11459:0:99999:7:::ita:$1$RQQRij40$91eC0KCSdsb60DooU2MrE0:11466:0:99999:7:::cnc:$1$SjhVHTK2$boWS2WTfNJFyuvrp2xWQW.:11466:0:99999:7:::  

Page 41: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 41/62

  41

Baris pada /etc/shadow mengandung serangkaian karakter yang tidak dapatdiartikan yang merupakan password dari user-user yang dienkripsi untuk alasan keamanan.Angka-angka yang mengikuti dibelakangnya merupakan nilai waktu expired atau masa aktif 

 password dan nama login.

Cara lain untuk mengetahui group-group yang ada adalah dengan melihat file di bawah :

[root@pelatihan root]# vi /etc/grouproot:x:0:rootbin:x:1:root,bin,daemondaemon:x:2:root,bin,daemondisk:x:6:rootlp:x:7:daemon,lpgames:x:20:gopher:x:30:ftp:x:50:

users:x:100:utmp:x:22:xfs:x:43:apache:x:48:named:x:25:tamu:x:500:lia:x:501:ita:x:502:cnc:x:503: 

Pada etc/group hanya terdapat nama group, GID dan user-user yang menjadi anggota group

tersebut.

2. Binary Admini strasi User dan Group 

Berikut ini adalah binary yang digunakan untuk memodifikasi /etc/shadow, /etc/passwd,

dan /etc/group.

  /usr/sbin/useraddFungsi : menambahkan user ke sistem atau mengupdate informasi user.Syntax :useradd [-c comment] [-d home_dir]

[-e expire_date] [-f inactive_time][-g initial_group] [-G group[,...]][-m [-k skeleton_dir] | -M] [-p passwd][-s shell] [-u uid [ -o]] [-n] [-r] login

useradd -D [-g default_group] [-b default_home][-f default_inactive] [-e default_expire_date][-s default_shell]

Jika kita menggunakan perintah useradd dengan  – D option, perintah ini akanmengcreate user dengan nilai default yang diberikan sistem.

Page 42: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 42/62

  42

Keterangan :-c comment

info atau deskripsi nama login-d home_dir 

direktori home untuk user 

-e expire_datetanggal nama login berakhir, formatnya : yyyy-mm-dd

-f inactive_days jumlah hari sebelum account tersebut berakhir bila password telah expired

-g initial_groupnomor GID (Group ID).

-G group,[...]group tambahan

-m direktori home akan dibuat bila tidak ada-p passwd

memberikan password

-s shellmerupakan user login shell

-u UIDnomor UID (user id)

  /usr/sbin/userdelFungsi : menghapus user account dan file-file yang berhubunganSyntax : userdel [-r] loginDengan perintah userdel, akan menghapus semua entri berdasarkan nama login dariuser.-r bila parameter ini disertakan maka direktori home user turut di hapus.

  /usr/bin/passwdFungsi : merubah password user Syntax : passwd [username]

Untuk usermod, groupadd, groupdel, dan groupmod dapat Anda selidiki sendiri cara penggunaannya dengan mengetik perintah berikut :

[root@pelatihan root]# man [item]

item diganti sesuai yang kita inginkan misal groupadd,groupmod dll.

3. Mode Per ij inan dan Kepemil ikan 

Anda dapat mengecek perijinan dan kepemilikan file / direktori dengan perintah :[root@pelatihan root]#ls –l-rwxr-xr-r 1 root root 1002 Feb 23 2003 zebra

nama fileTgl terakhir dimodifikasi

Ukuran fileGroup

Page 43: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 43/62

  43

Owner Jumlah link 

Mode file

  Mode file : menunjukkan hak akses terhadap file bersangkutan

Formatnya : abcdefghijcontoh : -rwxr-xr-xa : Menentukan jenis dari entry yang bersangkutan. Pada contoh di atas berarti file

 biasa. Berikut adalah karakter yang mungkin mengisi posisi a beserta artinya.

Karakter Arti

- File biasa

d Direktori

l Simbolik link 

 b Block special file

c Character special file

s Socket link  p FIFO

 bcd : option ini menunjukkan hak akses pemilik. Pada contoh di atas berarti pemilik 

 berhak untuk read (baca), write (tulis), execute (eksekusi)

efg : option ini menunjukkan hak akses group. Pada contoh di atas berarti user satugroup hanya bisa membaca dan mengeksekusihij : option ini menunjukkan hak akses orang lain ( other ). Pada contoh di atas

 berarti orang lain bisa membaca dan mengeksekusi  Jumlah link : menunjukkan jumlah link buat file ini  Owner : menunjukkan pemilik dari file ini  Group : menunjukkan group dari pemilik file ini

  Ukuran file : menunjukkan ukuran dari file bersangkutan  Tgl terakhir dimodifikasi : menunjukkan kapan terakhir file ini diakhir    Nama file : adalah nama dari file ini

Mengubah kepemili kan f ile 

anda juga dapat mengubah kepemilkan dan hak akses terhadap suatu file dengan perintah berikut :[root@pelatihan root]#chown cnc pinguin.server

 perintah ini mengubah kepemilikan file pinguin.server menjadi milik user cnc.

Mengubah mode akses dengan huruf 

[root@pelatihan root]#chmod ogu-w,ogu+r file.txt perintah ini menyebabkan pemilik (user), group dan other tidak bisa menulis (-w) tapi bisa

membaca(+r). selain tiga karakter o u dan g, kita dapat menggunakan a (all) untuk 

menyatakan ketiga karakter yang lain.

Mengubah mode akses dengan angka 

Untuk mempermudah administrasi, kita dapat menggunakan angka sebagai penggantikarakter-karakter tersebut.

Page 44: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 44/62

  44

Cara mengkonvert : r = 1w = 2x = 3

Untuk mengkombinasikan ketiga karakter tersebut kita tinggal menambahkan angka-angkanya. Contoh : rw = 1+2 = 3

Penempatan angka berdasarkan urutan ugo (user group other)Contoh : [root@pelatihan root]#chmod 700 file.txtPerintah tersebut akan menyebabkan file.txt dapat dibaca, ditulis, dieksekusi oleh user ( 7 )dan tidak dapat dibaca, ditulis, dieksekusi uleh selain pemilik ( 00 ).

4. Setting Password 

Kemudian kita tentukan password bagi pinguin, ketikkan:

[root@pelatihan root]#passwd pinguin

Masukkan kata yang mudah untuk diingat karena password adalah sesuatu yang sangat

 penting, apabila kita lupa harus mengontak sistem administrator agar diberi password baru.

Untuk menguji apakah sudah benar tahapan-tahapan yang kita lakukan login-lah sebagaiuser yang baru kita buat. Jika berhasil masuk coba buat file kosong pada home direktori,lihat mode perijinan pada file tersebut serta kepemilikannya[root@pelatihan root]#vi coba 

mencoba pelatihan

[root@pelatihan root]#ls -l

5. Quota User dan Group 

Langkah pertama untuk memberlakukan quota bagi user dan atau bagi group adalahdengan mengeset sebuah partisi dengan option usrquota dan atau grpquota pada /etc/fstab.Jika option tersebut digunakan, maka kernel secara periodik menginventarisir penggunaanruang harddisk oleh user-user yang terdaftar pada /etc/passwd melalui binary quotacheck.Binary quotacheck akan mencatat hasil scan file sistem atau partisi yang diaktifkan quotanyadalam bentuk file, yaitu :

  quota.user : untuk catatan penggunaan oleh user   quota.group : untuk catatan penggunaan oleh group

 beberapa tool quota berikut dapat digunakan untuk mengkonfigurasi quota, antara lain:  quota, digunakan untuk melihat quota yang dimiliki oleh user atau group  edquota, digunakan untuk mengedit quota user dan group 

repquota, digunakan untuk melaporkan pemakaian ruang harddisk pada partisi yangdiaktifkan usrquota dan grpquota.lakukan perintah man untuk quota, edquota dan repquota untuk melihat opsi-opsi yangdimiliki masing-masing binari.Langkah-langkah untuk melakukan pengQuotaan adalah sebagai berikut :

1.  Tentukan jatah tiap user 2.  Tentukan harddisk yang akan diquota

3.  Edit file /etc/fstab 4.  Buat file untuk menampung informasi quota5.  Merubah mode perijinan file tersebut6.  Mengaktifkan quota

Misalnya saja ada beberapa user yang tergabung dalam beberapa group. Group mahasiswaterdiri dari pinguin, ita, lia dan dhanang. Masing-masing mendapat jatah 2 MB. Berarti

Page 45: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 45/62

  45

group mahasiswa mendapat jatah 8 MB. Lalu kita tambah group asisten dan mendapat jatah10 MB. Harddisk yang akan kita quota adalah hda1.

Lalu edit file /etc/fstab [root@pelatihan root]#vi /etc/fstab

/dev/hda1 / ext3 defaults,usrquota,grpquota 1 1

 buat file penampungan informasi quota di direktori root :[root@pelatihan root]#touch /quota.user[root@pelatihan root]#touch /quota.group[root@pelatihan root]#chmod 600 /quota.user[root@pelatihan root]#chmod 600 /quota.group

aktifkan quota :[root@pelatihan root]#/sbin/quotacheck –guva[root@pelatihan root]#/sbin/quotaon –guva

 pertama kita quota group asisten dengan mengetikkan perintah :[root@pelatihan root]#edquota –g asisten

kemudian akan muncul informasi yang harus kita edit menggunakan editor kesayangan anda.Quotas for group asisten/dev/hda1 : blocks in use : 799, limits (soft = 10000, hard = 10000)inodes in use : 454, limits ( soft = 3000, hard = 3000 )

save seperti biasa, berikan quota pada user yang lain.[root@pelatihan root]#edquota –u pinguinquotas for user pinguin/dev/hda1 : blocks in use : 100, limits (soft = 2000, hard =

2000)inodes in use : 14, limits (soft = 200, hard = 200)

untuk user lain cukup ketikkan :[root@pelatihan root]#edquota – p pinguin –u ita lia

akibatnya user ita dan lia mempunyai quota yang sama dengan pinguin sebesar 2 MB.

untuk melihat quota user lakukan perintah :[root@pelatihan root]#quota –u ita

untuk group :[root@pelatihan root]#quota –g mahasiswa

III.2 MANAJEMEN PROCESS

Dengan berjalannya sistem dan berbagai program dieksekusi maka diperlukan suatumanagement dalam mengotrol dan memonitor setiap proses. Proses di linux tercatat dalam

 bentuk bilangan angka (PID), sehingga setiap proses dapat diamati dari bilangan memoryyang dipakai, user yang menjalankannya (process owner), lamanya proses tersebutdijalankan dan lain sebagainya. Proses-proses yang berlangsung dapat berupa daemon, user 

aplication, utilities dan lain-lain.

Page 46: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 46/62

  46

Proses yang dijalankan di console, shell, xterm, dll disebut foreground process.Sedangkan background process adalah proses yang dijalankan secara background dan

 bisanya dijalankan dengan menambahkan “&” pada akhir dari baris perintah. Contoh :

[root@pelatihan root]#ping localhost &

 perintah ini menyebabkan mesin melakukan ping ke alamat lokal secara kontinyu dan bekerja di background.

1. Moni toring proses 

Untuk memonitor proses-proses yang dijalankan oleh sistem dapat digunakan perintah psdan top.

 ps perintah ps ini digunakan untuk melihat secara sekilas proses apa saja yang sedangdijalankan sistem. Option yang umum digunakan adalah “-aux”, untuk option lengkapnyadapat dilihat dengan mengeksekusi ps – help.

Syntax : [root@pelatihan root]# ps [option]

contoh :[root@pelatihan root]# ps auxUSER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.2 0.8 1324 532? S 14:18 0:06 init [3]root 2 0.0 0.0 0 0 ? SW 14:18 0:00 [kflushd]root 3 0.0 0.0 0 0 ? SW 14:18 0:00 [kupdate]root 4 0.0 0.0 0 0 ? SW 14:18 0:00 [kpiod]root 5 0.0 0.0 0 0 ? SW 14:18 0:00 [kswapd]root 6 0.0 0.0 0 0 ? SW< 14:18 0:00 [mdrecoveryd]root 61 0.0 0.0 0 0 ? SW 14:18 0:00 [khubd]root 274 0.0 0.8 1384 560 ? S 14:18 0:00 syslogd -m 0root 284 0.0 1.2 1652 772 ? S 14:18 0:00 klogdroot 315 0.0 0.0 0 0 ? SW 14:18 0:00 [lockd]root 316 0.0 0.0 0 0 ? SW 14:18 0:00 [rpciod]rpcuser 326 0.0 1.1 1564 724 ? S 14:18 0:00 rpc.statdroot 341 0.0 0.6 1308 420 ? S 14:18 0:00 /usr/sbin/apmd -pnobody 395 0.0 0.7 7604 488 ? S 14:18 0:00 identd -e -onobody 398 0.0 0.7 7604 488 ? S 14:18 0:00 identd -e -o

nobody 399 0.0 0.7 7604 488 ? S 14:18 0:00 identd -e -onobody 401 0.0 0.7 7604 488 ? S 14:18 0:00 identd -e -onobody 402 0.0 0.7 7604 488 ? S 14:18 0:00 identd -e -odaemon 414 0.0 0.5 1356 364 ? S 14:18 0:00 /usr/sbin/atdlp 451 0.0 0.9 2360 580 ? S 14:19 0:00 lpd Waitingroot 515 0.0 0.5 1348 372 ttyS0 S 14:19 0:00 gpm -t msroot 530 0.0 1.0 1552 644 ? S 14:19 0:00 crondxfs 563 0.0 4.6 4368 2976 ? S 14:19 0:00 xfs -droppriv -daroot 595 0.0 0.5 1300 364 ? S 14:19 0:00 rhnsd --intervalroot 612 0.0 1.7 2252 1116 tty1 S 14:19 0:00 login -- rootroot 620 0.0 2.0 2280 1304 tty1 S 14:19 0:00 -bash

root 654 0.0 1.4 1992 912 tty1 T 14:20 0:00 sh -c /bin/gunziproot 656 0.0 1.2 1772 768 tty1 T 14:20 0:00 /usr/bin/less -is

Page 47: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 47/62

  47

root 907 0.0 2.0 2340 1332 pts/0 S 14:56 0:00 /bin/bashroot 920 0.0 2.0 2340 1332 pts/1 S 14:57 0:00 bashroot 956 0.0 2.0 2344 1332 pts/2 S 14:58 0:00 bashroot 966 0.0 2.0 2340 1332 pts/4 S 14:58 0:00 bash -rcfile .basroot 975 0.0 2.0 2344 1332 pts/5 S 14:58 0:00 bash

root 993 0.0 1.2 2588 784 ? R 15:10 0:00 ps aux

keterangan :USER : Process owner PID : Process ID%CPU : Penggunaan CPU oleh proses%MEM : Penggunaan memori (dalam kB) oleh prosesVSZ : Penggunaan virtual memori dalam prosesRSS : Penggunaan memori yang resident oleh prosesTTY : Terminal (tty), tempat asal proses tersebut dijalankanSTAT : Keadaan dari suatu proses

  R  Running proses  S Sleeping proses  I Idle proses  Z Zombie proses  D Uninterruptible sleep (biasanya IO)  < proses dengan prioritas tinggi   N proses dengan prioritas rendah  dan lain-lain

START : waktu dimana proses dijalankanTIME : lamanya proses dijalankanCOMMAND : baris perintah yang dijalankan

topPerintah ini secara mendasar fungsinya sama dengan ps, hanya saja top lebih aktual

karena setelah kita eksekusi, top akan update proses yang dijalankan secara berkala. Juga toplebih spesifik dalam menjelaskan keadaan sistem. perintah ini memperlihatkan aktivitas

 prosesor secara real time, menampilkan daftar kegiatan-kegiatan CPU yang paling intensif  pada sistem dan menyediakan antarmuka interaktif untuk memanipulasi proses-proses yangada.Kelemahannya adalah proses top ini lebih memakan banyak memori, CPU, dan runtime.

Syntax : # top contoh :[root@pelatihan root]# top9:37am up 2:33, 2 users, load average: 0.68, 1.27, 1.0978 processes: 76 sleeping, 1 running, 0 zombie, 1 stoppedCPU states: 12.3% user, 11.1% system, 0.0% nice, 76.4% idleMem: 54760K av, 53340K used, 1420K free, 31148K shrd, 1144KbuffSwap: 68504K av, 40232K used, 28272K free 28132K cached

PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND1706 root 6 0 488 488 392 S 6.9 0.8 0:14 esd941 root 5 0 18256 13M 1840 S 3.0 26.1 3:25 X

1665 root 4 0 2828 2048 1680 S 2.8 3.7 0:02 kvt1 root 0 0 116 76 56 S 0.0 0.1 0:05 init

Page 48: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 48/62

  48

2 root 0 0 0 0 0 SW 0.0 0.0 0:00 kflushd3 root 0 0 0 0 0 SW 0.0 0.0 0:00 kupdate4 root 0 0 0 0 0 SW 0.0 0.0 0:00 kpiod5 root 0 0 0 0 0 SW 0.0 0.0 0:09 kswapd6 root -20 -20 0 0 0 SW< 0.0 0.0 0:00 mdrecoveryd61 root 0 0 0 0 0 SW 0.0 0.0 0:00 khubd

303 root 0 0 216 168 120 S 0.0 0.3 0:01 syslogd313 root 0 0 540 184 156 S 0.0 0.3 0:00 klogd328 rpc 0 0 92 0 0 SW 0.0 0.0 0:00 portmap344 root 0 0 0 0 0 SW 0.0 0.0 0:00 lockd345 root 0 0 0 0 0 SW 0.0 0.0 0:00 rpciod355 rpcuser 0 0 112 0 0 SW 0.0 0.0 0:00 rpc.statd370 root 0 0 64 0 0 SW 0.0 0.0 0:00 apmd421 root 0 0 128 48 28 S 0.0 0.0 0:00 automount474 nobody 0 0 128 24 16 S 0.0 0.0 0:00 identd477 nobody 0 0 128 24 16 S 0.0 0.0 0:00 identd478 nobody 0 0 128 24 16 S 0.0 0.0 0:00 identd480 nobody 0 0 128 24 16 S 0.0 0.0 0:00 identd481 nobody 0 0 128 24 16 S 0.0 0.0 0:00 identd

493 daemon 0 0 76 0 0 SW 0.0 0.0 0:00 atd524 root 0 0 212 16 0 SW 0.0 0.0 0:00 xinetd539 root 0 0 228 0 0 SW 0.0 0.0 0:00 sshd563 lp 0 0 124 0 0 SW 0.0 0.0 0:00 lpd611 root 0 0 628 316 276 S 0.0 0.5 0:00 sendmail627 root 0 0 96 48 32 S 0.0 0.0 0:02 gpm775 root 0 0 2680 48 36 S 0.0 0.0 0:06 httpd790 root 0 0 168 104 72 S 0.0 0.1 0:00 crond

Dari perintah ps dan top diatas dikenal sebutan zombie proses, merupakan suatu proses(biasanya proses anak) yang telah mati/dimatikan tetapi tetap ada. Hal ini dikarenakan prosesibunya (parent process) tidak mematikan proses anaknya dengan sempurna. Zombie proses

ini akan mati apabila parent prosesnya mati.

killPerintah ini akan mengirimkan signal tertentu untuk proses yang tertentu pula.

apabila tidak ada sinyal yang terspesifikasi, sinyal TERM akan dikirimkan. Sinyal TERM iniakan mematikan proses-proses yang tidak mendapatkan sinyal tersebut. Untuk proses-proseslainnya, dapat digunakan sinyal KILL apabila sinyal TERM tersebut tidak dapat ditangkap.Setiap proses yang dijalankan di Linux dapat di deteksi dan kemudian dimatikan, seperti

yang telah dijelaskan sebelumnya dalam perintah-perintah dasar Linux.Ketikkan :

[root@pelatihan root]# kill [- nomor sinyal] PIDsilahkan kill salah satu PID.lihat hasilnya ketikan kembali perintah# ps -aux

Pilihlah nomor sinyal yang terpenting :

 No sinyal Nama Deskripsi

1 SIGHUP Hangup, sinyal dikirim bila proses terputus.

2 SIGINT Sinyal interupt

3 SIGQUIT Sinyal quit

9 SIGKILL Sinyal kill, menghentikan proses15 SIGTERM Sinyal terminasi software

Page 49: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 49/62

  49

Untuk keterangan lebih lanjut silahkan lihat manualnya.

2. Booting dan I ni t Proses 

Ada beberapa tahapan proses booting dalam sistem operasi Linux. Pertama Lilo akan

meload kernel, kemudian kernel akan memeriksa setiap device yang ada di mesin, danselanjutnya akan menjalankan script init, Init adalah proses pertama yang dijalankan olehsistem, init sendiri kemudian menjalankan proses-proses lain yang dijalankan pada saat

 booting. Init menjalankan semua proses berdasarkan /etc/inittab.Dalam init dikenal istilah run level. Dalam Linux dikenal run level 0-6 dan level S.

masing-masing run level dijalankan berdasarkan keadaan sistem,runlevel 0, 1 dan 6 sudahdisiapkan secara default (0 untuk halt, 1 untuk single user, 6 untuk reboot sistem, 2,3,4,5untuk multi user), selain itu dapat disesuaikan dengan keinginan dari SysAdmin.

Init sebenarnya adalah seperti parent dari semua proses. fungsi utamanya adalah

menciptakan proses-proses dari script yang disimpan dalam file /etc/inittab. file ini biasanya memiliki masukan-masukan yang menyebabkan init untuk menghasilkan getty

 pada tiap baris dimana tiap users dapat login. Init juga mengontrol proses-prosesautonomous yang dibutuhkan oleh sistem partikuler.

Setelah init diketahui sebagai langkah terakhir sebagai urutan boot kernel, kemudian

akan melihat file /etc/inittab untuk mengetahui adakah masukan untuk initdefault yangakan menginisialisasi run level dari sistem tersebut.

Berikut adalah isi dari file /etc/inittab 

[root@pelatihan root]# vi /etc/inittab## inittab This file describes how the INIT process should set up# the system in a certain run-level.

## Author: Miquel van Smoorenburg, <[email protected]># Modified for RHS Linux by Marc Ewing and Donnie Barnes#

# Default runlevel. The runlevels used by RHS are:# 0 - halt (Do NOT set initdefault to this)# 1 - Single user mode# 2 - Multiuser, without NFS (The same as 3, if you do not havenetworking)# 3 - Full multiuser mode# 4 - unused# 5 - X11

# 6 - reboot (Do NOT set initdefault to this)#id:5:initdefault:

# System initialization.si::sysinit:/etc/rc.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc 0l1:1:wait:/etc/rc.d/rc 1l2:2:wait:/etc/rc.d/rc 2l3:3:wait:/etc/rc.d/rc 3l4:4:wait:/etc/rc.d/rc 4l5:5:wait:/etc/rc.d/rc 5

l6:6:wait:/etc/rc.d/rc 6

# Things to run in every runlevel.

Page 50: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 50/62

  50

ud::once:/sbin/update

# Trap CTRL-ALT-DELETEca::ctrlaltdel:/sbin/shutdown -t3 -r now

# When our UPS tells us power has failed, assume we have a few minutes

# of power left. Schedule a shutdown for 2 minutes from now.# This does, of course, assume you have powerd installed and your# UPS connected and working correctly.pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System ShuttingDown"

# If power was restored before the shutdown kicked in, cancel it.pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; ShutdownCancelled"

# Run gettys in standard runlevels1:2345:respawn:/sbin/mingetty tty12:2345:respawn:/sbin/mingetty tty2

3:2345:respawn:/sbin/mingetty tty34:2345:respawn:/sbin/mingetty tty45:2345:respawn:/sbin/mingetty tty56:2345:respawn:/sbin/mingetty tty6

# Run xdm in runlevel 5# xdm is now a separate servicex:5:respawn:/etc/X11/prefdm -nodaemon 

Dalam UNIX dikenal istilah single user. Single user biasanya dieksekusi pada saatmaintenance sistem, dimana kondisi sistem di haruskan tanpa ada gangguan dari luar (network).Selain menggunakan file /etc/inittab, kita juga dapat menggunakan perintah init untuk langsung mengeksekusi mode init tertentu ( 0, 1, 2, 3, 4, 5, 6 ).

Contoh :[root@pelatihan root]#init 0Perintah ini mirip dengan poweroff, dimana setelah shutdown power komputer jugadimatikan.Untuk penggunaan init lainnya silahkan lihat manualnya.

3. Log & Message 

Di dalam Linux dikenal dua cara logging, yaitu dengan syslogd dan klogd. Syslogddigunakan oleh berbagai macam program yang menggunakan fungsi syslog untuk memasukkan catatan (log) ke dalam log file yang di sediakan fasilitasnya oleh syslogd. File

konfigurasi Syslogd terletak di /etc/syslog.conf, dari syslog.conf sysadmin dapat

menentukan dimana log fle diletakkan. Secara default log file akan diletakkan di /var/log.

Berikut adalah contoh dari file /etc/syslog.conf  [root@pelatihan root]# vi /etc/syslog.conf# Log all kernel messages to the console.# Logging much else clutters up the screen.#kern.* /dev/console# Log anything (except mail) of level info or higher.# Don't log private authentication messages!

*.info;mail.none;news.none;authpriv.none /var/log/messages# The authpriv file has restricted access.

Page 51: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 51/62

  51

authpriv.* /var/log/secure# Log all the mail messages in one place.mail.* /var/log/maillog# Log cron stuffcron.* /var/log/cron# Everybody gets emergency messages, plus log them on another

# machine.*.emerg *# Save mail and news errors of level err and higher in a# special file.uucp,news.crit /var/log/spooler# Save boot messages also to boot.loglocal7.* /var/log/boot.log## INN#news.=crit /var/log/news/news.critnews.=err /var/log/news/news.errnews.notice

/var/log/news/news.notice

Setelah syslogd hal yang perlu diketahui adalah klogd. Klogd adalah sistem daemon yangmencatat segala aktifitas kernel dan kemudian mendokumentasikannya ke dalam file.

Fi le /etc/rc/d/rc.local File ini merupakan tempat untuk menuliskan perintah-perintah tambahan yang

sifatnya optional yang akan dieksekusi pada waktu booting, yaitu dilakukan setelahmengeksekusi inittab. Isi dari file ini adalah :

#!/bin/bash##This script will be executed “after” all the other init scripts. #You can put your own initialization stuff ini here if you don‟t #want to do the full Sys V style init stuff.Touch /var/lock/subsys/local

Untuk menambahkan perintah-perintah tembahan tersebut kita tinggal menuliskan perintahnya disertai dengan shell yang akan mengeksekusinya.Contoh :

/bin/ping/ localhost

 perintah ini akan menyebabkan pada waktu selesai booting akan melakukan perintah ping kelocalhost secara otomatis.

4. Penj adwalan Proses 

Linux memiliki utilitas penjadwalan suatu proses. Dimana suatu proses atau pekerjaan dapatdilakukan pada waktu yang ditentukan secara otomatis atau juga suatu pekerjaan yang rutindilakukan. Utilitas tersebut adalah at dan cron.

Uti li tas at 

Utilitas ini memungkinkan administrator untuk menjadwalkan pekerjaan pada waktutertentu. Misalnya saja untuk melihat spasi harddisk yang digunakan pada pukul 12:00 siang

[root@pelatihan root]#at 12:00

at>du –a > /tmp/du.outat>at>ctrl-D 

Page 52: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 52/62

  52

Perintah diatas akan menyimpan hasil proses du –a ke file /tmp/du.out. Untuk melihat proses apa saja yang dijadwalkan oleh at, gunakan perintah :

[root@pelatihan root]# atm 1

ini akan menghapus proses penjadwalan nomor satu.

Administrator dapat membatasi user-user mana saja yang dapat melakukan utilitas at ini dan

mana yang boleh. File ada di /etc/at.deny dan file /etc/at.allow yang diijinkanmenggunakan utilitas at. Sebaiknya gunakan saja salah satu dari file tersebut. Misalnya saja

kita ketikkan user-user yang tidak boleh menggunakan utilitas at pada file /etc/at.deny sebagai berikut :

dhanangAnto

Kedua user diatas tidak bisa menggunakan utilitas at. Perlu diketahui bahwa suatu proses

atau pekerjaan yang telah dikerjakan tidak akan diulangi kemballi kecuali telahdiperintahkan kembali.untuk mengatasinya gunakan utilitas crontab atau cron.

Uti li tas Crontab 

Dalam menggunakan crontab ketikkan perintah :[root@pelatihan root]# crontab -e

maka akan muncul editor teks vi, dan kita akan mengeditnya disini. Format penulisancrontab sebagai berikut:

minute hour day month weekday username command argument

sekarang kita mencoba menggunakannya dengan terlebih dahulu membuat file script hallo.sh:

#! /bin/shwall ”Selamat Datang, anda berada di lab CnC” 

kemudian kita edit crontab dengan menambahkan sebagai berikut :0,10,20,30,40,50 * * * * /bin/hallo.sh

maka setiap sepuluh menit script tersebut akan dijalankan sampai dengan menit ke 50.

Penjadwalan yang kita edit akan disimpan pada direktori /var/spool/cron. Sama sepertiutilitas at, administrator dapat membatasi siapa-siapa saja user yang dapat menjalankan

utilitas ini dan siapa saja yang tidak boleh. File nya terdapat di /etc/cron.deny bagi yang

dilarang dan file /etc/cron.allow bagi yang diperbolehkan. Daftar pekerjaan-pekerjaan

yang akan dilakukan, ada pada file /etc/crontab.

Page 53: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 53/62

  53

LINUX TRAINING FIRST SERIES

 pinguin.stttelkom.ac.id 

Page 54: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 54/62

  54

 MODUL IV SYSTEM UPGRADING, BASIC SECURITY

&TROUBLESHOOTING 

IV.1 REDHAT PACKAGES MANAGER (RPM)

Redhat memberikan kemudahan untuk para pengguna yang ingin melakukan pengaturan paket dalam sistemnya dengan menggunakan utilitas rpm (redhat packages manager).Utilitas ini cukup powerful, kita dapat dengan mudah melakukan instalasi, uninstalasi,

upgrade, query, maupun verify satu atau lebih paket.

Paket software rpm merupakan sebuah arsip dengan beberapa informasi yang berhubungandengan file tersebut, tetapi berbeda dengan sistem kompresi tradisional yang menggunakantar.zip, dengan rpm kita tidak dipusingkan masalah manajemen file seperti letak file dandirektori file misalnya. File rpm ditandai dengan penamaan unik yaitu memiliki ekstension.rpm.

Seluruh paket rpm memiliki standar nama sebagai berikutnama-versi-rilis.arsitektur.rpmMisal suatu paket memiliki nama sebagai berikut

apache-2.0-39.i386.rpmapache : paket apache (WebServer),2.0 : versi filenya39 : rilisnyai386 : khusus paket untuk arsitektur Intel 386.

Syntax untuk perintah rpm# rpm [--option] [nama_paket]Beberapa kombinasi – switches yang pentinge Menghapus/uninstal paketh Menampilkan tanda # sebagai pengukur progress/kemajuani install paketq menanyakan paket

Page 55: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 55/62

  55

U Upgrade paketv Memverifikasi dan menampilkan apa yang terjadi.F Memperbaharui file yang telah ada

Option yang penting:

--replacefiles : Mengizinkan mengganti file yang lama dengan yang baru.--percent : Persentase kemajuan proses instalasi.--replacekgs : Mengizinkan mengganti paket yang lama dengan yang baru.

IV.2 KOMPILASI KERNEL

Kernel adalah program yang dimuat saat boot yang berfungsi sebagai interfaceantara user-level program dengan hardware. Fungsinya seperti layaknya sistem operasi,menangani task switching dalam multitasking, menangani permintaan membaca ataumenulis peralatan disk, melakukan tugas-tugas network seta mengatur penggunaan memory.Ada beberapa hal yang harus dilakukan dalam kompilasi kernel, yaitu :

1. Download Source Kernel 

Setiap CD Distribusi telah dilengkapi dengan kernel yang mungkin versinya kurang up-to-date. Kernel terbaru dari masing-masing distribusi dapat diperoleh dengan cara men-download dari berbagai usmber di internet seperti;

http://www.kernel.org ftp://ftp.cdrom/pub/linux/sunsite/kernel  

ftp://sunsite.unc.edu/pub/linux/kernel  ftp://tsx-11.mit.edu/pub/linux/source/system  

Source kernel tersebut bisaanya dalam format linux-x.x.x.x.tar.gz diamana x.x.x.xmenunjukkan versi kernel, misalnya 2.4.7-10. Nomor kernel tersebut terdiri dari 3 bagian,yang masing-masingnya dipisahkan oleh tanda titik :Major Number.Minor Number.Revision Number.Setiap dikeluarkannya kernel versi baru juga dikeluarkan sebuah file patch. File patch ini

 jauh lebih kecil dari file source kernel sehingga jauh lebih cepat bila digunakan untuk 

upgrade kernel. File patch hanya bekerja untuk meng-upgrade satu versi kernel dibawahnya.Misalnya, versi kernel 2.0.27 hanya bisa di-upgrade dengan file patch 2.0.28 menjadi

kernel 2.0.28.

2. Konfigurasi Kernel 

Untuk memulai Kompilasi Kernel maka kita perlu meng-unpack source kernel yang telah

kita download tadi misalnya linux 2.4.7-10. Source kernel bisaanya di unpack di direktori

/usr/src/. Untuk meng-unpack file tadi kita gunakan perintah:

[root@pelatihan root]# cd /usr/src[root@pelatihan root]# tar –xvzf linux-2.4.7-10.tar.gz

Page 56: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 56/62

  56

Perintah tersebut akan menguraikan file-file ke dalam direktori /usr/src/linux. Kemudianuntuk lebih jelasnya untuk langkah-langkah kompilasi kita perlu membaca file

/usr/src/linux-2.4.7-10/README .Untuk meng-unpack versi patch-nya digunakan perintah:

[root@pelatihan linux-2.4.7-10]# gzip – 

cd patch-2.4.7-11.tar.gz | path – 

p0

Setelah itu perikasa apakah ada file yang berkhiran .rej di direktori /usr/src/linux. Biladitemukan file seperti itu maka patch yang dilakukan tidak berhasil, periksa kembali apakahfile patch yang dipakai sudah benar.

Konfigurasi Linux dimulai dari direktori /usr/src/linux. Untuk pindah ke direktoritersebut lakukan perintah:

[root@pelatihan root]# cd /usr/src/linux-2.4.7-10

Sebelum kita memulai kompilasi sebaiknya kita lakukan perintah sebagai berikut:

[root@pelatihan linux-2.4.7-10]# make mrproper

Perintah ini akan menghapus seluruh jejak kompilasi yang pernah dilakukan sebelumnya. Inimemastikan agar tidak ada feature versi lama yang tersisa.Kemudian kita bisa langsung memulai konfigurasi kernel kita. Ada tiga cara untuk memulaikonfigurasi kernel linux, yaitu:  make config, berupa text base interface, cocok untuk user yang memiliki terminal

model lama dan tidak memiliki setting termcap.  make menuconfig, berupa text base juga tapi memiliki puldown menu berwarna,

digunakan untuk user yang memilki standar console.  make xconfig, interface menggunakan layar grafik penuh, untuk user yang sudah

memilki Xwindow.

Bila berhasil layar Linux Kernel Configuration akan ditampilkan setelah perintah diatasdijalankan. Ada sekitar 14 menu pilihan dimulai dari Code Maturity level Options sampai

 Kernel Hacking . Masing-masing memiliki submenu bila dipilih dan pilihan yes(y),module(m) atau no(no). Setiap pilihan untuk dimuat/kompile ke dalam kernel atau y akanmemperbesar ukuran kernel nantinya. Jadi pilih feature-feature yang sering digunakan yangdimuat ke dalam kernel atau jadikan module untuk feature yang tidak sering digunakan,misalnya PPP support.

3. Kompi lasi Kernel 

Proses inilah yang terpenting dalam seluruh proses kompilasi kernel, dimana Mesinkomputer akan mengkompile semua file atau library yang ada dalam source kernel yangtelah kita download tadi. Tahap kompilasi ini sangat potensial menimbulkan kesalahan dankadang membuat frustasi bila teris-terusan mengalami kegagalan. Sebelum mengalamimasalah tersebut, mempersiapkan emergency bootdisk adalah langkah yang tepat karena

 pada umumnya kesalhan akan mengakibatkan sistem mogok.Kompilasi bisa menghabiskan waktu sekitar 10 menit pad mesin dengan prosesor 

Pentium yang cepat hingga samapi 1,5 jam pada mesin Intel 386. Waktu kompilasi juga bertambah bila sistem digunakan untuk menjalankan proses lain pada saat itu.

Untuk memulainya kita lakukan perintah sebagai berikut ( dengan direktori masih padadirektori /usr/src/linux-2.4.7-10) :

Page 57: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 57/62

  57

[root@pelatihan linux-2.4.7-10]# make dep perintah ini akan membaca file konfigurasi dan membentuk dependency tree. Proses inimengecek apa yang dikompile dan apa yang tidak dikompile.

[root@pelatihan linux-2.4.7-10]# make bzImagePerintah ini merupakan proses kompilasi sesungguhnya. Bila tidak ada pesan kesalahan,akan terbentuk kernel yang terkompresi dan siap di instalasi.

4. Kompilasi M odul 

Sebelum instalasi kernel, modul-modul yang berhubungan perlu dikompile juga dengan perintah:[root@pelatihan linux-2.4.7-10]# make modules

5. Instalasi M odul Kernel 

Untuk melakukan instalasi modul Kernel yang telah kita buat tadi, dapat dilakukan dengan perintah :

[root@pelatihan linux-2.4.7-10]# make modules_install

6. Edi ting Bootloader 

Li lo 

Jika anda menggunakan Lilo gunakanlah langkah berikut. Cek direktori kernel Anda,

 bisaanya nama kernel dimulai dengan vmlinuz, bisaanya ada di direktori /boot. Atau bisa

 juga dengan membuka file /etc/lilo.conf untuk memastikannya. Setelah itu copy file

/usr/src/linux/arch/i386/boot/zimage ke direktori /boot dengan nama lainmisalnya:

[root@pelatihan linux-2.4.7-10]# cp /usr/src/linux-2.4.7-10/arch/i386/

 boot/bzImage /boot/vmlinuz-2.4.7-10-baru

Untuk menjalankan Kernel baru dalam sistem pada saat Booting Anda perlu mengubah

konfigurasi LILO. Konfigurasi in terdapat dalam file /etc/lilo.conf.anaconda . Masukan

kernel loader terbaru anda pada option lilo.conf, dengan menambah baris berikut:

image = /vmlinuz-2.4.7-10-baruroot = /dev/hda3label = linux-baru 

Kemudian aktifkan konfigurasi lilo dengan perintah :[root@pelatihan root]# liloatau[root@pelatihan sbin]# ./lilo –C /etc/lilo.conf.anaconda

Grub 

Bagian ini anda gunakan jika menggunakan GRUB sebagi bootloadernya. Tambahkan baris berikut ke /etc/grub.conf. (asumsi partisi root terletak di hda2 atau (hd0,1))

title kernel_baru

root (hdo,1)kernel /boot/bzimage ro root=/dev/hda2 

Page 58: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 58/62

  58

Kemudian langkah terakhir adalah me-reboot sistem.

7. Meload Modul Kernel 

Modul-modul dalam kernel agar dapat digunakan harus terlebih dahulu dimuatkan ke sistem.Beberapa perintah yang perlu kita ketahui dalam memuatkan modul kernel contohnya  depmod, yang berguna untuk memeriksa dependency modul-modul yang akan

digunakan pada /etc/conf.modules,Contoh perintah selengkapnya:

[root@pelatihan linux-2.4.7-10]# depmod [option] module.o module1.o

  modprobe, perintah ini akan memuatkan modul ke sistem. Sintaks;

[root@pelatihan linux-2.4.7-10]# modprobe [option] module [irq=Y io=0xZZZ]

  insmod, berguna untuk menambahkan suatu modul ke dalam /lib/modules agar nantinya dapat dimuatkan ke sistem.

[root@pelatihan linux-2.4.7-10]# insmod [option] module

  rmmod, berfungsi untuk menon-aktifkan modul dari system.

[root@pelatihan linux-2.4.7-10]# rmmod [option] module

  lsmod, berfungsi untuk melihat modul-modul apa saja yang telah di load ke sistem.

F il e /etc/conf .modules 

File ini adalah merupakan konfigurasi dari modul-modul yang akan dimuatkan ke kernel.Berikut adalah contoh dari isi /etc/modules.conf 

# alias net-pf-1 off # Unix# alias net-pf-2 off # Ipv4alias net-pf-3 off # Raw socketsalias net-pf-4 off # IPXalias net-pf-5 off # DDP / appletalkalias net-pf-6 0ff # Amateur Radio NET/ROMalias net-pf-10 off # Ipv6alias net-pf-11 off # ROSE / Amateur Radio X.25 PLPalias net-pf-19 off # Acorn Econetalias cahr-major-10-130 softdogalias cahr-major-10-175 agpgartalias cahr-major-108 ppp_genericalias ppp-compress-21 bsd_compalias ppp-compress-24 ppp_deflatealias ppp-compress-26 ppp_deflatealias loop-xfer-gen-0 lop_genalias loop-xfer-3 loop_fish2alias loop-xfer-gen-10 loop_genalias cipher-2 desalias cipher-3 fish2alias cipher-4 blowfishalias cipher-6 idea

Page 59: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 59/62

  59

alias cipher-7 serp6falias cipher-8 mars6alias cipher-11 rc62

IV.3 DASAR-DASAR SEKURITI SISTEM

1. PAM (Pluggable Authenti fi cation M odules ) Dalam distribusi RedHat Linux yang terbaru, dilengkapi dengan skema autentifikasiyang unified, yang disebut PAM. PAM memperbolehkan kita untuk merubah metodeauthentifikasi yang ada dan mengenkapsulasi metode authentifikasi lokal tanpa harusmengkompile ulang source tersebut ke dalam mesin kita.Beberapa hal yang dapat dilakukan oleh PAM, yaitu :  Menggunakan metode enkripsi password selain DES sehingga semakin sulit untuk 

di-hack.  Menentukan batas penggunaan resource oleh user.  Menggunakan password bayangan (shadow password) untuk user yang sedang aktif /

login.

  Hanya mengijinkan user tertentu untuk login di waktu dan tempat yang ditentukan.

Dengan menginstall dan menkonfigurasi sistem yang ada, kita dapat mencegah penyerangan(hacking) yang ingin merusak mesin kita.

Kasus :  Apabila kita ingin membatasi user yang dapat login dari mesin kita, maka kita perlu

mengedit file /etc/security/access.conf dan tentukan user yang bisa login diconsole tertentu, dengan menambahkan baris :

-: ALL EXCEPT root console: tty1 tty2 tty3 tty4 tty5 tty6 tty7tty8 tty9 tty10 tty11 ty12 xconsole

kemudian untuk mengaktifkan aturan tersebut tambahkan baris berikut pada file/etc/pam.d/login :

Account required /lib/security/pam_access.so

  Apabila kita ingin membatasi user baik dari jumlah login, penggunaan ruang hardisk,

maupun jumlah file, kita dapat menggunakan file etc/security/ limits.conf dan berikan batasan yang anda inginkan, misalnya : 

* hard maxlogins 2

  Kemudian pada file /etc/pam.d/login tambahkan baris seperti berikut :Session required /lib/security/pam_limits.so

2. TCP WRAPPER 

TCP wrapper merupakan program yang digunakan untuk mengamankan server dari intrusidari luar system kita terhadap layanan yang kita sediakan yang tidak kita harapkan.Layanan-layanan tersebut merupakan layanan yang diatur oleh xinetd. TCP Wrapper diatur oleh dua buah file yaitu :

/etc/hosts.allow/etc/hosts.deny

Urutan pengecekan file tersebut, yaitu dari hosts.deny baru host.allow.

Misalnya kita ingin menolak sekuruh koneksi telnet ke system kita maka kita tinggal

menambahkan baris berikut pada file /etc/hosts.deny :In.telnetd:0.0.0.0/0.0.0.0

Page 60: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 60/62

  60

Jadi seluruh orang yang ingin mengakses layanan telnet akan ditolak.Jika kita ingin supaya fasilitas telnet boleh dilakukan dari system  kita sendiri maka kita

 perlu menambahkan baris tersebut pada file /etc/hosts.allow :In.telnetd:127.0.0.1

IV.4 TROUBLESHOOTING

1. Melepas dan memasang H ardware baru 

Untuk melakukan pendeteksian adanya perubahan hardware baik dilepas maupun dipasang,kita bisa lakukan dengan bantuan program kudzu. Caranya mudah yaitu jika kita selesaimelepas atau memasang hardware baru lakukan perintah tersebut dengan mengetikkannya

 pada shell :[root@pelatihan sbin]# kudzu

Jika memang ada perubahan hardware, maka kudzu akan mengkonfigurasi ulang hardware

tersebut. Jika tidak ada, kudzu tidak akan melalukan hal tersebut.

2. Lupa Password Root 

Apabila kita lupa password untuk root maka kita tidak akan mampu untuk melakukan pengaturan pada mesin kita. Oleh karena itu kita harus berusaha agar kita tetap bisa masuk ke dalam system kita tersebut walaupun kita lupa password root-nya. Cara yang palingsederhana yaitu dengan menggunakan single user mode pada saat booting.

a. boot loader tanpa password

a.1 LILO

  Booting mesin anda  Jika layar yang muncul adalah GUI, tekan ctrl-X agar masuk ke CLI  Lakukan

ketikkan linux – s pada prompt LILO lalu tekan enter LILO : linux – s

Mount seluruh partisi yang tercatat pada /etc/fstab#mount – a

Masukkan password root yang baru#passwd root

Reboot mesin anda#init 6

Dengan demikian kita sudah dapat masuk ke dalam system dengan mode single user.

a.2 GRUB

  Booting mesin anda  Setelah masuk ke login GUI, pilih Linux yang ingin anda masuki, lalu tekan e  Carilah baris dengan kata kernel, tekan e, lalu di akhir baris tambahkan kata single

dengan spasi di depannya, tekan enter   Tekan b

b. boot loader dengan password

Page 61: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 61/62

  61

Sebelum bagian ini dimulai kami tekankan terlebih dahulu tutorial ini bukandimaksudkan untuk mengajari anda menjadi hacker/cracker, tetapi untuk digunakan sebagai

 bahan pendidikan. Ada beberapa cara untuk mengatasi kasus ini, namun kita hanyamembahas satu cara yang kira-kira susah untuk diimplementasikan jika anda tidak memilkiakses langsung secara fisik dengan mesin yang bersangkutan.

Prinsip yang kita gunakan adalah menghapus password terenkripsi pada file/etc/shadow. Hal ini dapat dilakukan dengan cara memboot harddisk anda sebagai slave

 pada mesin lain yang telah terinstal linux. Kemudian carilah file shadow pada direktori /etc pada harddisk anda dan hapus passwordnyaContoh :

Root:$gfdsgfdshshfsdfssgfds#fds/:12276:0:88888:7:::

Hapus bagian yang ditebalkan, lalu kembalikan harddisk anda kemudian bootinglah seperti biasa.

Page 62: Modul Pelatihan Linux Basic

7/15/2019 Modul Pelatihan Linux Basic

http://slidepdf.com/reader/full/modul-pelatihan-linux-basic 62/62

LINUX TRAINING FIRST SERIES

 pinguin.stttelkom.ac.id