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 togatta, maka kita dapat mengetikkan perintah berikut:
edquota -u togatta
Perintah tersebut akan memunculkan default editor seperti vi atau editor lainnya dengan isi mirip seperti berikut:
Quotas for user togatta:
/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 togatta 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 togatta untuk memiliki soft limit 1 MB (1024 KB) dan hard limit 4 MB (4096) pada space disknya. Juga misalkan kita menginginkan agar user togatta dibatasi soft limitnya sampai 128 file/direktori (inodes) dan hard limitnya sampai 512 file/direktori, maka kita dapat mengesetnya dengan mengetikkan perintah:
edquota -u togatta
dan editlah menjadi seperti berikut:
Quotas for user togatta:
/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 togatta tidak dapat lagi melampaui hard limit yang telah diterapkan. Jika user togatta berusaha untuk melampaui dua batasan ini (space disk dan jumlah inode), pesan error akan ditampilkan. Sebagai contoh:
[togatta@dekstop /home] $ mkdir dokumen
mkdir: cannot make directory -dokumen- : Disk quota exceeded
Di sini, user togatta 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 togatta
Disk quotas for user ttogatta (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.
READ MORE - Manajemen Harddisk (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 togatta, maka kita dapat mengetikkan perintah berikut:
edquota -u togatta
Perintah tersebut akan memunculkan default editor seperti vi atau editor lainnya dengan isi mirip seperti berikut:
Quotas for user togatta:
/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 togatta 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 togatta untuk memiliki soft limit 1 MB (1024 KB) dan hard limit 4 MB (4096) pada space disknya. Juga misalkan kita menginginkan agar user togatta dibatasi soft limitnya sampai 128 file/direktori (inodes) dan hard limitnya sampai 512 file/direktori, maka kita dapat mengesetnya dengan mengetikkan perintah:
edquota -u togatta
dan editlah menjadi seperti berikut:
Quotas for user togatta:
/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 togatta tidak dapat lagi melampaui hard limit yang telah diterapkan. Jika user togatta berusaha untuk melampaui dua batasan ini (space disk dan jumlah inode), pesan error akan ditampilkan. Sebagai contoh:
[togatta@dekstop /home] $ mkdir dokumen
mkdir: cannot make directory -dokumen- : Disk quota exceeded
Di sini, user togatta 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 togatta
Disk quotas for user ttogatta (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.