Thursday, May 20, 2010

Perhitungan Subnetting

Penulisan IP address umumnya adalah dengan 192.168.1.2. Namun adakalanya ditulis dengan 192.168.1.2/24, apa ini artinya? Artinya bahwa IP address 192.168.1.2 dengan subnet mask 255.255.255.0. Lho kok bisa seperti itu? Ya, /24 diambil dari penghitungan bahwa 24 bit subnet mask diselubung dengan binari 1. Atau dengan kata lain, subnet masknya adalah: 11111111.11111111.11111111.00000000 (255.255.255.0). Konsep ini yang disebut dengan CIDR (Classless Inter-Domain Routing) yang diperkenalkan pertama kali tahun 1992 oleh IEFT.

Pertanyaan berikutnya adalah Subnet Mask berapa saja yang bisa digunakan untuk melakukan subnetting? Ini terjawab dengan tabel di bawah:

Subnet Mask Nilai CIDR
255.128.0.0 /9
255.192.0.0 /10
255.224.0.0 /11
255.240.0.0 /12
255.248.0.0 /13
255.252.0.0 /14
255.254.0.0 /15
255.255.0.0 /16
255.255.128.0 /17
255.255.192.0 /18
255.255.224.0 /19
Subnet Mask Nilai CIDR
255.255.240.0 /20
255.255.248.0 /21
255.255.252.0 /22
255.255.254.0 /23
255.255.255.0 /24
255.255.255.128 /25
255.255.255.192 /26
255.255.255.224 /27
255.255.255.240 /28
255.255.255.248 /29
255.255.255.252 /30

SUBNETTING PADA IP ADDRESS CLASS C

Ok, sekarang mari langsung latihan saja. Subnetting seperti apa yang terjadi dengan sebuah NETWORK ADDRESS 192.168.1.0/26 ?

Analisa: 192.168.1.0 berarti kelas C dengan Subnet Mask /26 berarti 11111111.11111111.11111111.11000000 (255.255.255.192).

Penghitungan: Seperti sudah saya sebutkan sebelumnya semua pertanyaan tentang subnetting akan berpusat di 4 hal, jumlah subnet, jumlah host per subnet, blok subnet, alamat host dan broadcast yang valid. Jadi kita selesaikan dengan urutan seperti itu:

Jumlah Subnet = 2x, dimana x adalah banyaknya binari 1 pada oktet terakhir subnet mask (2 oktet terakhir untuk kelas B, dan 3 oktet terakhir untuk kelas A). Jadi Jumlah Subnet adalah 22 = 4 subnet
Jumlah Host per Subnet = 2y - 2, dimana y adalah adalah kebalikan dari x yaitu banyaknya binari 0 pada oktet terakhir subnet. Jadi jumlah host per subnet adalah 26 - 2 = 62 host
Blok Subnet = 256 - 192 (nilai oktet terakhir subnet mask) = 64. Subnet berikutnya adalah 64 + 64 = 128, dan 128+64=192. Jadi subnet lengkapnya adalah 0, 64, 128, 192.
Bagaimana dengan alamat host dan broadcast yang valid? Kita langsung buat tabelnya. Sebagai catatan, host pertama adalah 1 angka setelah subnet, dan broadcast adalah 1 angka sebelum subnet berikutnya. Subnet 192.168.1.0 192.168.1.64 192.168.1.128 192.168.1.192
Host Pertama 192.168.1.1 192.168.1.65 192.168.1.129 192.168.1.193
Host Terakhir 192.168.1.62 192.168.1.126 192.168.1.190 192.168.1.254
Broadcast 192.168.1.63 192.168.1.127 192.168.1.191 192.168.1.255

Kita sudah selesaikan subnetting untuk IP address Class C. Dan kita bisa melanjutkan lagi untuk subnet mask yang lain, dengan konsep dan teknik yang sama. Subnet mask yang bisa digunakan untuk subnetting class C adalah seperti di bawah. Silakan anda coba menghitung seperti cara diatas untuk subnetmask lainnya.

Subnet Mask Nilai CIDR
255.255.255.128 /25
255.255.255.192 /26
255.255.255.224 /27
255.255.255.240 /28
255.255.255.248 /29
255.255.255.252 /30

SUBNETTING PADA IP ADDRESS CLASS B

Berikutnya kita akan mencoba melakukan subnetting untuk IP address class B. Pertama, subnet mask yang bisa digunakan untuk subnetting class B adalah seperti dibawah. Sengaja saya pisahkan jadi dua, blok sebelah kiri dan kanan karena masing-masing berbeda teknik terutama untuk oktet yang “dimainkan” berdasarkan blok subnetnya. CIDR /17 sampai /24 caranya sama persis dengan subnetting Class C, hanya blok subnetnya kita masukkan langsung ke oktet ketiga, bukan seperti Class C yang “dimainkan” di oktet keempat. Sedangkan CIDR /25 sampai /30 (kelipatan) blok subnet kita “mainkan” di oktet keempat, tapi setelah selesai oktet ketiga berjalan maju (coeunter) dari 0, 1, 2, 3, dst.

Subnet Mask Nilai CIDR
255.255.128.0 /17
255.255.192.0 /18
255.255.224.0 /19
255.255.240.0 /20
255.255.248.0 /21
255.255.252.0 /22
255.255.254.0 /23
255.255.255.0 /24
Subnet Mask Nilai CIDR
255.255.255.128 /25
255.255.255.192 /26
255.255.255.224 /27
255.255.255.240 /28
255.255.255.248 /29
255.255.255.252 /30

Ok, kita coba dua soal untuk kedua teknik subnetting untuk Class B. Kita mulai dari yang menggunakan subnetmask dengan CIDR /17 sampai /24. Contoh network address 172.16.0.0/18.

Analisa: 172.16.0.0 berarti kelas B, dengan Subnet Mask /18 berarti 11111111.11111111.11000000.00000000 (255.255.192.0).

Penghitungan:

Jumlah Subnet = 2x, dimana x adalah banyaknya binari 1 pada 2 oktet terakhir. Jadi Jumlah Subnet adalah 22 = 4 subnet
Jumlah Host per Subnet = 2y - 2, dimana y adalah adalah kebalikan dari x yaitu banyaknya binari 0 pada 2 oktet terakhir. Jadi jumlah host per subnet adalah 214 - 2 = 16.382 host
Blok Subnet = 256 - 192 = 64. Subnet berikutnya adalah 64 + 64 = 128, dan 128+64=192. Jadi subnet lengkapnya adalah 0, 64, 128, 192.
Alamat host dan broadcast yang valid? Subnet
172.16.0.0 172.16.64.0 172.16.128.0 172.16.192.0
Host Pertama 172.16.0.1 172.16.64.1 172.16.128.1 172.16.192.1
Host Terakhir 172.16.63.254 172.16.127.254 172.16.191.254 172.16.255.254
Broadcast 172.16.63.255 172.16.127.255 172.16.191.255 172.16..255.255

Berikutnya kita coba satu lagi untuk Class B khususnya untuk yang menggunakan subnetmask CIDR /25 sampai /30. Contoh network address 172.16.0.0/25.

Analisa: 172.16.0.0 berarti kelas B, dengan Subnet Mask /25 berarti 11111111.11111111.11111111.10000000 (255.255.255.128).

Penghitungan:

Jumlah Subnet = 29 = 512 subnet
Jumlah Host per Subnet = 27 - 2 = 126 host
Blok Subnet = 256 - 128 = 128. Jadi lengkapnya adalah (0, 128)
Alamat host dan broadcast yang valid?
Subnet
172.16.0.0 172.16.0.128 172.16.1.0 … 172.16.255.128
Host Pertama 172.16.0.1 172.16.0.129 172.16.1.1 … 172.16.255.129
Host Terakhir 172.16.0.126 172.16.0.254 172.16.1.126 … 172.16.255.254
Broadcast 172.16.0.127 172.16.0.255 172.16.1.127 … 172.16.255.255

Masih bingung juga? Ok sebelum masuk ke Class A, coba ulangi lagi dari Class C, dan baca pelan-pelan

SUBNETTING PADA IP ADDRESS CLASS A

Kalau sudah mantab dan paham, kita lanjut ke Class A. Konsepnya semua sama saja. Perbedaannya adalah di OKTET mana kita mainkan blok subnet. Kalau Class C di oktet ke 4 (terakhir), kelas B di Oktet 3 dan 4 (2 oktet terakhir), kalau Class A di oktet 2, 3 dan 4 (3 oktet terakhir). Kemudian subnet mask yang bisa digunakan untuk subnetting class A adalah semua subnet mask dari CIDR /8 sampai /30.

Kita coba latihan untuk network address 10.0.0.0/16.

Analisa: 10.0.0.0 berarti kelas A, dengan Subnet Mask /16 berarti 11111111.11111111.00000000.00000000 (255.255.0.0).

Penghitungan:

Jumlah Subnet = 28 = 256 subnet
Jumlah Host per Subnet = 216 - 2 = 65534 host
Blok Subnet = 256 - 255 = 1. Jadi subnet lengkapnya: 0,1,2,3,4, etc.
Alamat host dan broadcast yang valid?
Subnet
10.0.0.0 10.1.0.0 … 10.254.0.0 10.255.0.0
Host Pertama 10.0.0.1 10.1.0.1 … 10.254.0.1 10.255.0.1
Host Terakhir 10.0.255.254 10.1.255.254 … 10.254.255.254 10.255.255.254
Broadcast 10.0.255.255 10.1.255.255 … 10.254.255.255 10.255.255.255

Mudah-mudahan sudah setelah anda membaca paragraf terakhir ini, anda sudah memahami penghitungan subnetting dengan baik. Kalaupun belum paham juga, anda ulangi terus artikel ini pelan-pelan dari atas. Untuk teknik hapalan subnetting yang lebih cepat, tunggu di artikel berikutnya

Catatan: Semua penghitungan subnet diatas berasumsikan bahwa IP Subnet-Zeroes (dan IP Subnet-Ones) dihitung secara default. Buku versi terbaru Todd Lamle dan juga CCNA setelah 2005 sudah mengakomodasi masalah IP Subnet-Zeroes (dan IP Subnet-Ones) ini. CCNA pre-2005 tidak memasukkannya secara default (meskipun di kenyataan kita bisa mengaktifkannya dengan command ip subnet-zeroes), sehingga mungkin dalam beberapa buku tentang CCNA serta soal-soal test CNAP, anda masih menemukan rumus penghitungan Jumlah Subnet = 2x - 2

sumber : http://tikuslistrik.blogsome.com/2008/08/09/perhitungan-subneting/#more-112

Manajemen User dan Quota di Linux

1. Membuat User Baru
Membuat sebuah account user yang baru sangatlah mudah. Untuk membuat user baru dari command line, kita dapat menjalankan perintah useradd . Sebagai contoh, untuk membuat sebuah user yang bernama Dono, kita dapat menjalankan perintah sbb:

useradd dono

Kemudian jangan lupa untuk memberikan password kepada user baru yang telah dibuat dengan mengetikkan perintah passwd .

Contoh:
passwd dono

Setelah mengetikkan perintah di atas, maka kita akan diminta untuk memasukkan password yang kita inginkan dua kali.
Dalam default system, ketika user baru ditambahkan, maka user baru tersebut akan mempunyai home directory di bawah /home/. Sebagai contoh, ketika kita mengeksekusi perintah di atas (useradd dono), maka user yang bernama dono akan memiliki home directory /home/dono.

Untuk mengubah default system ini, kita dapat memberikan option-option lain setelah perintah useradd. Misalnya kita menginginkan agar si dono diberikan home directory di /www/dono, maka kita dapat memberikan option -d setelah perintah useradd.

Contoh:
useradd -d /www/dono

Sebagai catatan, useradd hanya membuat direktori akhir, bukan semua path. Sehingga bila kita memberikan perintah useradd -d /www/dono, maka useradd akan menciptakan direktori dono apabila telah ada direktori yg bernama /www.
Program useradd akan menciptakan suatu group bagi setiap user yg ditambahkan. Setiap user akan tergabung dalam group-group tertentu. Program useradd akan memberikan nama group yang sama seperti nama user yang dibuat.
Misalnya ketika kita membuat user baru dengan perintah useradd dono, maka si dono akan berada dalam group dono. Untuk mengubah default ini, maka kita dapat memberikan parameter -g setelah perintah useradd.

Contoh:
useradd dono -g users

Hal tersebut akan membuat user dono tergabung dalam group users.

2. Membuat group baru
Untuk membuat group baru kita dapat mengetikkan perintah groupadd .

Contoh:
groupadd hacker

Perintah ini akan menambah group baru yang bernama hacker di /etc/group dan pada /etc/gshadow jika kita menggunakan shadow password.

3. Memodifikasi account user yang sudah ada
a. Mengubah password
Seorang system administrator akan sering berhubungan dengan masalah user yang lupa akan passwordnya. Perintah di bawah ini akan mengganti password user yang lama dengan password yang baru:
passwd

Misalkan si dono lupa akan passwordnya atau ingin mengubah passwordnya, maka si dono atau system administrator yang bersangkutan dapat mengubahnya dengan mengetikkan perintah:

passwd dono.

b. Mengubah home directory
Untuk mengubah home directory dari user yang sudah ada, kita dapat mengetikkan perintah:
usermod -d

Contoh:
usermod -d /home2/dono dono

Jika ternyata home directory dono yang lama telah berisi file-file kepunyaan dono, maka kita dapat memindahkan home directory dono beserta file2nya dengan option -m.

Contoh:
usermod -d -m /home2/dono dono

c. Menghapus account user
Untuk menghapus account user yang sudah ada, kita dapat menggunakan perintah userdel. Contoh:

userdel dono

Perintah tersebuat akan menghapus user yang bernama dono. Jika kita ingin menghapus home directory user beserta isi file atau direktori yang berada di bawahnya, maka kita dapat memberikan option -r setelah userdel.

Manajemen Harddisk (Quota)

Space disk dalam sebuah system multiuser dapat menjadi suatu hal yang agak menakutkan. Pengalaman penulis membuktikan bahwa ketika kita memasang harddisk baru dengan space yang banyak, maka user juga seakan-akan berlomba-lomba untuk memenuhi space harddisk yang dia miliki di server kita. Semakin banyak kita menambah space, semakin cepat juga keinginan user untuk memenuhi space miliknya. Cara terbaik untuk memastikan bahwa kita memiliki space disk yang cukup untuk system yang kita miliki adalah dengan menerapkan disk quota.

1. Instalasi software disk quota
Software quota dapat kita install dari CD installer RH yang kita punyai. Software ini terletak pada direktori Redhat/RPMS setelah kita mount CD ROM yang kita miliki. Untuk menginstall software quota , kita dapat mengtikkan perintah sbb:
rpm -Uvh quota-.i386.rpm

Contoh:
rpm -Uvh quota-2.00pre3-2.i386.rpm

Setelah software quota terinstall, kita dapat mengkonfigurasinya.

2. Mengkonfigurasi system untuk mendukung disk quota
Pertama, tentukan di partisi yang mana kita akan menerapkan disk quota. Lalu tentukan pula apakah quota akan diterapkan pada user, group, atau keduanya. Di sini diasumsikan bahwa kita akan menerapkan disk quota per user pada partisi /home dan disk quota per group untuk partisi /www. Juga diasumsikan kita memiliki file /etc/fstab yang mengandung baris di bawah ini:
/dev/hda2 /home ext2 defaults 1 2
/dev/hda5 /www ext2 defaults 1 2

Sekarang, untuk menerapkan disk quota pada partisi /home, maka kita harus memodifikasi baris pertama di atas menjadi:
/dev/hda2 /home ext2 defaults,usrquota 1 2

Option baru yang ditambahkan pada baris di atas berfungsi untuk mengaktifkan disk quota untuk user. Sama seperti di atas, untuk mengaktifkan group disk quota maka kita harus mengedit baris kedua menjadi:
/dev/hda5 /www ext2 defaults,grpquota 1 2

Sebagai catatan, kita dapat menerapkan usrquota dan grpquota pada partisi yang sama.
Setelah file /etc/fstab dimodifikasi, kita harus memodifikasi file /etc/rc.d/rc.local agar berisi baris-baris di bawah ini:

#Check quota and then turn on.
if [ -x /sbin/quotacheck ]; then
echo -Checking quotas. This may take some time - -
sbin/quotacheck -avug
echo -Done.-
fi
if [ -x /sbin/quotaon ]; then
echo- Enabling disk quota .. -
/sbin/quotaon -avug
echo -Done.-
fi

Script di atas akan mengaktifkan pengecekan quota lalu mengaktifkan fitur disk quota.
Sekarang kita buat file-file quota untuk setiap system file yang telah kita definisikan pada quota control. Dengan asumsi partisi yang diterapkan disk quota adalah /home dan /www maka buatlah file-file quota dengan perintah sebagai berikut:

touch /home/quota.user
touch /www/quota.group

Pastikan bahwa dua file ini memiliki ijin akses baca dan tulis hanya untuk user root saja.
Sekarang kita telah menyelesaikan konfigurasi quota level system, sebelum kita berlanjut pada pemberian quota untuk tiap user dan group, maka kita perlu mereboot komputer kita.

3. Memberikan disk quota kepada user
Setelah kita mereboot komputer yang kita miliki dengan konfigurasi quota yang baru, kita dapat memberikan disk quota per user dengan perintah edquota. Sebagai contoh, untuk mengalokasikan disk quota pada user yang bernama dono, maka kita dapat mengetikkan perintah berikut:

edquota -u dono

Perintah tersebut akan memunculkan default editor seperti vi atau editor lainnya dengan isi mirip seperti berikut:

Quotas for user dono:
/dev/hda2: blocks in use: 0, limits (soft=0, hard=0)
inodes in use: 0, limits (soft=0. hard= 0)

Di sini terlihat bahwa user dono telah menggunakan 0 blocks (dalm KB) pada partisi /dev/hda2 (di bawah kontrol quota user), dan limit (soft atau hard) juga belum diset.
Seperti yang kita lihat, kita dapat mengeset limit besar space (dalam blocks) yang bisa digunakan seorang user dan pada saat yang bersamaan dapat mengontrol berapa banyak file yang dapat dimiliki oleh user. Parameter soft limit mengatur besar maksimum space disk (blocks) atau file (inodes) yang bisa dimiliki user pada file system yang ada. Parameter hard limit merupakan besar absolut space disk (dalam blocks) atau file (inodes) yang bisa dimiliki oleh user.

Sebagai contoh apabila kita ingin membuat user dono untuk memiliki soft limit 1 MB (1024 KB) dan hard limit 4 MB (4096) pada space disknya. Juga misalkan kita menginginkan agar user dono dibatasi soft limitnya sampai 128 file/direktori (inodes) dan hard limitnya sampai 512 file/direktori, maka kita dapat mengesetnya dengan mengetikkan perintah:

edquota -u dono

dan editlah menjadi seperti berikut:

Quotas for user dono:
/dev/hda2: blocks in use: 0, limits (soft=1024, hard=4096)
inodes in use: 0, limits (soft=128. hard= 512)

Setelah kita men-save konfigurasi di atas, maka user dono tidak dapat lagi melampaui hard limit yang telah diterapkan. Jika user dono berusaha untuk melampaui dua batasan ini (space disk dan jumlah inode), pesan error akan ditampilkan. Sebagai contoh:

[dono@warkop /home] $ mkdir dokumen

mkdir: cannot make directory -dokumen- : Disk quota exceeded
Di sini, user dono berusaha untuk membuat direktori baru di bawah /home dan karena limit quota untuk quota ini telah dilampaui, error di atas akan dimunculkan.

4. Memonitoring penggunaan harddisk
a. Dengan menggunakan quota
Untuk mengetahui user mana yang paling banyak menghabiskan space disk, kita dapat menjalankan perintah quota sebagai berikut:
quota -u
Sebagai contoh:

quota -u dono

Disk quotas for user dono (uid 500):
Filesystem blocks quota limit grace files quota limit grace
/dev/hda2 0 1024 4096 1 128 512

b. Dengan menggunakan df
Pengecekan space yg masih tersisa pada semua file system yg telah dimount dapat dilakukan dengan mengetikkan perintah df. Dan untuk mempermudah pembacaan, maka berilah option -h setelah df.

c. Dengan menggunakan du
Untuk mengecek berapa banyak space yang telah dihabiskan pada directori tertentu (dan subdirektori di bawahnya), kita dapat menggunakan perintah du. Untuk memudahkan tambahkanlah option -h. Contoh:

du -h /home/dono




sumber :
http://kelasfmjc.wordpress.com/2008/05/14/manajemen-user-dan-quota-di-linux/

Wednesday, March 31, 2010

DUAL BOOT DI SATU PARTISI DENGAN PCLINUXOS

Ini sebuah cerita tentang pengalaman pakai Linux. Judulnya agak janggal ya? Umumnya kan DUAL BOOT DI SATU HARDDISK.
Tapi ini memang bener: SATU PARTISI.
Dual boot MS Windows dengan Linux? Ya.
Linux dengan Linux? Ya.
Partisi yang diperlukan pun bebas, berfile sistem apa saja.
FAT, FAT 32, NTFS, Reiserfs, ext2, ext3, Bisa semua. Artinya, PCLinuxOS di sini tidak membutuhkan partisi khusus seperti kalau menginstall, tetapi kalau ada partisi swap di harddisk itu akan lebih baik lagi karena otomatis nantinya akan digunakan, tapi tidak wajib. Untuk menjalankan cara ini kita tak perlu mempersiapkan partisi khusus, jadi yang sudah ada saja asal masih cukup spasi harddisk buat mengcopy isi CD.
Jika Anda pernah menginstall Mandriva atau Fedora tanpa CDROM, tapi dengan mengcopy ke harddisk kemudian mem-boot dengan GRUB atau LILO untuk mulai instalasi, maka ini serupa, bedanya kali ini bukan untuk menginstall tapi langsung buat bekerja. Ini adalah salah satu cara dari beberapa cara mengoperasikan PCLinuxOS. Umumnya PCLinuxOS dioperasikan dengan cara livecd dijalankan dari CDROM atau diinstall ke harddisk baik dual boot ataupun sbg OS tunggal.
Tulisan ini menerangkan cara yang lainnya yaitu livecd yang dicopy ke harddisk atau USB flashdisk.
Saya membuat judul dengan DUAL BOOT DI SATU PARTISI DENGAN PCLINUXOS
karena memang rasa2nya cara ini lebih efektif dan mudah bila dual boot, PCLINUXOS menempel ke OS yang sudah ada dan memanfaatkan bootloader yang dimiliki OS tsb. Tanpa bootloader yang sudah ada menjalankannya akan agak ribet.
Untuk menjelaskannya saya buat contoh berikut :
DUAL BOOT UBUNTU DAN PCLINUXOS DI SATU PARTISI
Saya menginstall Ubuntu di sebuah partisi /dev/hda7 sebagai / dan Swap di /dev/hda8. Kemudian saya mau menambahkan PCLinuxOS-2007 ke /dev/hda7 juga. Untuk “menginstall PCLINUXOS ke Ubuntu” ini saya masukkan CD PClinuxOS 2007 ke drive CDROM. Saya buka terminal dan ketik
$ sudo nautilus
Nautilus terbuka setelah saya masukkan password. Melalui file manager ini saya buka CD PCLINUXOS tsb, ada 2 folder (/boot dan /isolinux) dan sebuah file bernama livecd.sqfs.
Saya copy /isolinux dan livecd.sqfs ke /
Setelah selesai saya lanjutkan dengan masuk /boot/grub di Ubuntu, dobel klik menu.lst dan terbukalah Gedit. Saya tambahkan baris berikut :
root (hd0,6)
title PClinuxOS
kernel /isolinux/vmlinuz root=/dev/rd/3 append=”devfs=nomount bootfrom=/dev/hda7 changes=/dev/hda7” vga=788 splash=silent fstab=rw,auto
initrd /isolinux/initrd.gz
Kemudian simpan perubahannya . Close semua. Selesai. Tinggal dicoba.
Reboot komputer,
GRUB muncul dengan tambahan pilihan : PClinuxOS.
Pilih PClinuxOS dan jalankan. Wow, seperti menjalankan livecd tetapi dengan kecepatan seperti kalau diinstall, dan yang sangat menyenangkan : drive CDROM bisa digunakan untuk keperluan lain, hemat spasi harddisk, bisa men-coba2 utak-atik, oprek2, install & uninstall program dengan leluasa, kalau hang tinggal matikan komputer dan mulai lagi dalam keadaan “fresh” dan pulih seperti semula,bahkan main2 file bervirus pun tak masalah, soalnya begitu dimatikan hilanglah semua, fresh lagi.
Mudah, murah, meriah, hebat. Wow, apalagi ya kata2 yang tepat? PCLinuxOS memang hebat.
DUAL BOOT PCLINUXOS-2007 DAN PCLINUXOS-2006 DI SATU PARTISI
Di sebuah komputer saya menginstall PCLinuxOS-2007 (radically simple) di sebuah partisi yang dikenalinya sbg /dev/hdc6. Karena terasa ada yang kurang dari PCLinuxOS-2007 ini dan kekurangan tsb tersedia pada PCLinuxOS-2006 BigDaddy maka saya buat saja dualboot.
Caranya: jalankan PCLinuxOS-2007 tsb, saya masukkan CD PCLinuxOS-2006 BigDaddy dan buka dengan File Manager – Super User Mode. Untuk mudahnya di jendela File Manager tsb tinggal klik Window -> Split View Left/Right. Jendela kiri buka isi CDROM dan jendela kanan buka /. Drag n drop /isolinux dan livecd.sqfs untuk mengcopynya. Setelah selesai lanjutkan ke folder /boot/grub dan double klik menu.lst. Terbukalah kwrite. Saya tambahkan :
title PClinuxOS BigDaddy
kernel (hd0,5)/isolinux/vmlinuz root=/dev/rd/3 append=”devfs=nomount bootfrom=/dev/hdc6 changes=/dev/hdc6” vga=788 splash=silent fstab=rw,auto xres=1024x768
initrd (hd0,5)/isolinux/initrd.gz
kemudian klik Save. Selesai dan tinggal dijalankan. Reboot komputer dan pilihan PCLinuxOS BigDaddy sudah tersedia dan berjalan dengan resolusi 1024x768 dan semua mountpoint siap di-read-write.
DUAL BOOT WINDOWS XP DAN PCLINUXOS DI SATU PARTISI
Saya punya sebuah komputer dengan harddisk 20GB dengan monitor jadul berukuran 13 inchi (resolusi maksimum 1024x768 @60Hz) dan telah terinstall Windows XP di C: yang dipartisi 10GB dengan file sistem NTFS. Sisanya menjadi drive D: untuk data, file sistem FAT32. Saya ingin menambahkan “PCLinuxOS-2007 radically simple” tapi enggan merubah partisi, juga sayang kalau sisa spasi harddisknya jadi habis buat install PCLinuxOS, kan untuk install PCLinuxOS perlu lebih dari 3GB. Mending tambahkan saja PCLinuxOS ke C: dengan cara menempel, kan cuma butuh 700MB saja.
Langkah pertama adalah buka CD PCLinuxOS-2007 dengan Windows Explorer, copy folder isolinux dan file livecd.sqfs ke C:
Langkah berikutnya menginstall WinGRUB agar WindowsXP bisa menampilkan DualBoot, (WinGRUB.exe bisa didownload dari internet , ukurannya tidak sampai 1 MB).
Setelah WinGRUB terinstall saya buka StartGRUB melalui Start Menu dan saya konfigurasi hingga file C:\Grub\Menu.lst berisi baris kurang lebih seperti ini : (bisa pula diedit langsung pakai notepad)
root (hd0,0)
title PCLinuxOS-2007
kernel /isolinux/vmlinuz root=/dev/rd/3 append=”devfs=nomount bootfrom=/dev/hda1 changes=/dev/hda1” vga=788 splash=silent fstab=rw,auto vesa
initrd /isolinux/initrd.gz
WinGRUB ini program yang hebat, jika di komputer sudah ada GRUB dia akan mencari dan menjalankannya secara otomatis, tetapi jika di komputer belum ada GRUB maka yang dipakainya adalah menu.lst yang dimilikinya di C:\Grub\menu.lst. Dia juga menyediakan window untuk mengkonfigurasinya. WinGRUB juga bisa membaca partisi NTFS, tidak seperti GRUB bawaan distro-distro linux yang biasa kita pakai yang mana belum disertai kemampuan baca NTFS.
Sederhana ya caranya? Hanya mengcopy isi CD, menginstall WinGRUB dan mengkonfigurasi menu.lst. Selesai. (Lama2 PClinuxOS dibikinkan installer dalam Windows yach, dan jadi under Windows – jadi nggak ada yg migrasi dari win ke lin nantinya kalo begini he he . . ).
Dan PCLinuxOS telah siap dijalankan. Restart komputer dan pilih OS yang baru ini dengan memilih Start Grub kemudian pilih PCLinuxOS .
Setelah berhasil kok masih penasaran, saya ambil CD PCLinuxOS BigDaddy hasil remaster sendiri yang telah siap untuk komputasi sehari-hari karena settingannya sudah lengkap untuk internetan dan cetak-mencetak. Saya copykan /isolinux dan livecd.sqfs nya ke D: . Kemudian saya tambahkan di menu.lst :
root (hd0,4)
title PCLinuxOS Big Daddy
kernel /isolinux/vmlinuz root=/dev/rd/3 append=”devfs=nomount bootfrom=/dev/hda5 changes=/dev/hda5” vga=788 splash=silent fstab=rw,auto xres=1024x768
initrd /isolinux/initrd.gz
Selesai, restart komputer, pilihan boot sudah tambah PCLinuxOS Big Daddy, coba jalankan, mulus. Ternyata di harddisk jadul begini bisa ada 3 OS tanpa banyak menyita spasi harddisk.
Dasar teknik ini adalah poor man install. Intinya adalah menjalankan vmlinuz dan initrd.gz yang ada di folder /isolinux dengan append=”devfs=nomount bootfrom=/dev/XdXx changes=/dev/XdXx”
* XdXx dan (hdx,x) disesuaikan dengan komputer masing2
* Mengcopy ke partisi yang ditentukan jangan dimasukkan folder
* Penggunaan partisi berfile sistem NTFS sbg tempat mengcopy bisa saja menyulitkan. Pengalaman saya: livecd.sqfs dan /isolinux yang dicopy ke C: berfile sistem NTFS bisa diboot dengan baikoleh WinGRUB, tetapi GRUB yang lain seperti bawaan livecd ataupun Super Grub Disk tidak bisa membacanya.
MENJALANKAN PCLINUXOS YANG DICOPY KE FLASHDISK
PCLinuxOS juga bisa dijalankan dari flashdisk. /isolinux dan livecd.sqfs dicopy ke flashdisk. Kemudian boot komputer dengan live CD PCLinuxOS atau bootloader yang telah terinstall atau lainnya (pokoknya bisa buat boot, tetapi GRUB rasa2nya lebih nyaman).
Kalau pakai CD PCLOS 2007 (LILO, sepertinya hanya bisa untuk mem-boot PCLinuxOS-2007) : setelah tampil pilihan boot tekan [Esc] akan muncul konfirmasi exiting.., pilih [OK]. Monitor jadi hitam (mode teks)
boot : _
(ketik sesuai 'rumus' tadi diakhiri [Enter])
vmlinuz image=/isolinux/vmlinuz root=/dev/sda1 append=”devfs=nomount bootfrom=/dev/sda1 changes=/dev/sda1” initrd=/isolinux/initrd.gz
( ini dimisalkan flashdisk-nya dikenali sbg /dev/sda1 atau (hd1,0) )
Jika pakai PCLinuxOS 2006 (GRUB, bisa mem-boot semua versi PCLinuxOS)
setelah tampil pilihan boot tekan C nantinya muncul prompt grub
grub>
ketik baris demi baris tiap baris diakhiri [Enter]
grub> root (hd1,0)
grub> kernel /isolinux/vmlinuz root=/dev/rd/3 append=”devfs=nomount bootfrom=/dev/sda1 changes=/dev/sda1”
grub> initrd /isolinux/initrd.gz
grub> boot
Untuk membuktikan bahwa yang jalan adalah dari flashdisk maka keluarkan CD dari drive-nya.
Jika kita ingin yang dijalankan adalah livecd hasil remaster kita masing2, tinggal livecd.sqfs-nya diganti dengan livecd.sqfs hasil remaster kita. Menjalankan hasil remaster masing2 akan membuat suasana lebih nyaman karena sudah disesuaikan dengan kebutuhan masing2 tanpa perlu setting lagi tiap menggunakannya. Juga bagi yang sedang coba2 bikin remaster bisa menguji hasil remasternya dengan lebih hemat karena tak perlu bakar ISOnya ke CD atau DVD, cukup diekstrak lalu dijalankan.
Contoh2 di atas adalah yang telah berjalan baik di komputer saya, mungkin bisa berbeda di komputer teman2 tergantung hardwarenya, mungkin perlu opsi2 tambahan jika diperlukan. PCLinuxOS yang berhasil saya coba adalah PCLinuxOS 2007 dan 2006, sedangkan PCLinuxOS 2004 saya tidak berhasil.
Semoga bermanfaat.

Tuesday, March 9, 2010

Eksekusi perintah otomatis terjadwal dengan CRONTAB

I. Pendahuluan

Crond merupakan sebuah daemon yang menjalankan tugas yang telah dijadwalkan berdasarkan input dari perintah crontab. Cron menyelesaikan tugas ini dengan membangunkan dirinya setiap menit dan memeriksa apakah ada cron-job yang harus dijalankannya berdasarkan crontab user. Dan harus diingat bahwa crontab adalah nama untuk daftar cron-job dan nama dari perintah untuk mengedit daftar tersebut.


II. Jenis-jenis Cron

Ada 3 implementasi cron yang dikenal dalam GNU/Linux, yaitu:
1. Vixie cron
Vixie cron merupakan implementasi penuh fitur berbasis SysV cron. Setiap user memiliki crontab-nya masing-masing dan boleh menentukan variabel lingkungan di dalam crontab tersebut. Tidak seperti varian cron yang lain, cron ini juga menawarkan dukungan untuk SeLinux dan PAM. Cron ini mendukung arsitektur lebih sedikit dari Dcron, tetapi lebih banyak dari Fcron.

2. Dillon’s Cron
Dcron diciptakan untuk menjadi implementasi cron yang sederhana, elegan, dan aman. Implementasi ini tidak mengizinkan spesifikasi variabel lingkungan di crontab dan semua cron-job dijalankan dari /bin/sh. Seperti Vixie cron, setiap user boleh memiliki crontab-nya sendiri.

3. Fcron
Fcron diciptakan untuk menjadi pengganti Vixie cron dan Anacron. Dirancang untuk bekerja pada sistem yang tidak selalu dinyalakan dan memiliki beberapa fitur tambahan. Memiliki penyekat startup job, kendali serialisasi job, kemampuan untuk menetapkan nilai “nice” ke job dan kemampuan untuk menjadwalkan job agar dijalankan ketika sistem startup. Bukalah website fcron untuk info lebih lanjut.

4. Anacron
Anacron bukanlah merupakan sebuah daemon cron, tetapi merupakan sesuatu yang biasanya bekerja sama dengan daemon cron. Anacron mengeksekusi perintah pada interval yang ditentukan dengan hitungan hari dan tidak menganggap bahwa sistem selalu menyala; ia akan menjalankan tugas-tugas yang terlewatkan ketika sistem sedang dimatikan. Anacron biasanya bergantung pada daemon cron untuk menjalankannya setiap hari.

III. Crontab di Centos

Di distro centos, file crontab ada di direktory /etc dan untuk melihatnya ketik perintah ini:
# vi /etc/crontab
dan secara asal akan terlihat sebagai berikut:

alt
Untuk melihat perintah-perintah apa saja yang digunakan di crontab, tuliskan perintah:
# crontab --help

Pada umumnya, perintah yang sering dipergunakan adalah

# crontab -e
Digunakan untuk mengedit file crontab

# crontab -l
Digunakan untuk melihat file crontab


IV. Penjadwalan Crontab

Di file crontab ada 7 blok yang dipergunakan apabila kita ingin menjadwalkan sesuatu di dalam linux.

* * * * * * *
Blok I Blok II Blok III Blok IV Blok V Blok VI Blok VII
Menunjukkan
Menit
(0-59)
Menunjukkan
Jam
(0-23)
Menunjukkan Tanggal
(1-31)
Menunjukkan Bulan
(1-12)
Menunjukkan Hari
(1-7)
Menunjukkan User (Optional) Menunjukkan Letak Perintah

Contoh-contoh crontab:
- 30 05 * * * root rm /var/log/httpd/*
Perintah ini menunjukkan bahwa setiap hari pukul 05.30 pagi, perintah "rm /var/log/httpd/*" akan dieksekusi, yang berrati akan menghapus semua file dalam folder /var/log/httpd

- 10 05 01 * * root /bin/sh /etc/script.sh
Perintah ini menunjukkan bahwa setiap tanggal 1 setiap bulannya akan dieksekusi kumpulan perintah pada file "/etc/script.sh"

- 30 0 1 1,6,12 * rm /home/heri/*
Perintah ini menunjukkan bahwa setiap tanggal 1 jam 00.30 pada bulan januari, juni, dan desember akan dihapus file /home/heri/*

- 0 20 * 10 1-5 /usr/bin/freshclam -l /var/log/clamav/clam-update.log
Perintah ini menunjukkan bahwa setiap tanggal 1, 10, dan 15 setiap bulan tengah malam akan dijalankan script /usr/bin/freshclam dan menyimpan lognya di file /var/log/clamav/clam-update.log

- 5,10 0 10 * 1 rm /tmp/*
Perintah ini menunjukkan bahwa setiap jam 12.05 dan 12.10 hari senin pada tanggal 10 setiap bulan akan menghapus file-file yang ada di direktory tmp.

V. Lain-lain

1. Tanda * menunjukkan bahwa mengeksekusi perintah pada setiap waktu.

2. Apabila kita ingin menjadwalkan range pada salah satu bagian blok, maka bisa ditulis sebagai berikut:
Setiap tanggal 1,2,5,9 -->1,2,5,9
Setiap 2 jam --> */2 atau 0-23/2

3. Untuk blok bulan dan hari bisa ditulis dengan huruf namun hanya harus menggunakan 3 huruf pertama bulan atau hari dan dalam bahasa Inggris.
Contoh untuk bulan: jan,feb
contoh untuk hari : sun,mon

4. Blok keenam yang menunjukkan user tidak selalu harus ditulis.

5. Kita bisa membuat log hasil eksekusi crontab dengan cara menulisnya di file crontab
contoh:
30 6 * * 1 PATH/udin.sh > PATH/udin.log
Perintah ini menunjukkan bahwa setiap jam 06.30 hari senin akan dieksekusi skrip udin dan lognya akan di tulis di udin.log