|
-_- |
Artikel ini ditulis berdasarkan pengalaman penulis
karena kehabisan space di partisi /home. Dengan menggunakan LVM (Logical
Volume Manager) maka kita dapat menggabungkan partisi lainnya ke dalam
partisi /home untuk memperbesarnya. Sebelumnya, mari kita bahas dulu mengenai
LVM. LVM adalah singkatan dari Logical Volume Manager. Dengan LVM ini
pengaturan space dan partisi dalam harddisk menjadi lebih dari sekedar
pengertian tradisional device dan partisi yang biasa kita ketahui selama ini.
Secara tradisional, kita mengenal harddisk dari device namenya yaitu /dev/hda,
/dev/hdb dstnya utk harddisk IDE dan /dev/sda, /dev/sdb dstnya untuk SCSI, dan
partisi2nya seperti /dev/hda1, /dev/hda2, /dev/sda1, /dev/sda2 dstnya.
Tentu ada yang bertanya memangnya apa salahnya dengan
pembagian partisi secara tradisional ini? Well, pernah bertanya2 bagaimana
schema partisi yang sebaiknya kita pakai di Linux? Tidak jarang pertanyaan ini
dijawab dengan kata2 “Pembagian partisi Linux lebih merupakan seni dan
pengalaman daripada ilmu pasti”. Mengapa begitu? Sebab kalau kita sampai
salah mempartisi, dan kemudian ternyata partisi tersebut habis spacenya, maka
akan cukup sulit dan memakan waktu untuk membetulkannya.
Tidak demikian bila kita menggunakan LVM. Dengan LVM,
harddisk dibagi2 menjadi beberapa level Volume, yaitu Physical Volume,
Volume Group, dan Logical Volume. Terlihat rumit? Jangan khawatir,
LVM tidak sesulit yang dibayangkan.
Physical Volume (PV) adalah seperti arti harafiahnya
yaitu partisi yang seperti kita kenal yaitu seperti /dev/hda1, /dev/hda2.
Volume Group (VG) adalah satu atau gabungan dari beberapa buah Physical Volume.
Logical Volume (LV) adalah volume2 yang kita buat di dalam Volume Group. LV ini
nantinya bisa kita mount sesuai keinginan.
Sekarang bagaimana penerapannya?
Penulis baru2 ini menghadapi kendala dimana partisi /dev/hda6 yang di mount ke
/home telah semakin sedikit free spacenya. Berikut ini adalah kondisi partisi
berikut mount point harddisk saya sebelum LVM:
Filesystem
Size Used Avail Use% Mounted on
/dev/hda5
6.4G 5.4G 617M 90% /
/dev/hda6
12G 10G 2G 83% /home
/dev/hda7
7G 3.1G 3.9G 44% /data
udev
252M 156K 252M 1% /dev
/dev/hda1
9.9G 7.8G 2.1G 79% /winc
/dev/hda2
2.0G 1.6G 397M 81% /wind
Penulis ingin menggabungkan partisi /dev/hda6 dan
/dev/hda7 untuk mount point /home. Bagaimana caranya? Dengan menggunakan LVM
tentunya.
Berikut ini adalah langkah2nya:
1. Backup dahulu data2 yang ada di partisi /dev/hda6 (/home) dan /dev/hda7
(data). Sebab kita harus mengubah jenis partisinya menggunakan fdisk
sehingga data2 yang ada di kedua partisi tersebut akan hilang. Dalam hal ini
penulis membackupnya ke sebuah external usb harddisk.
2. Setelah kita memastikan bahwa data2 telah di backup. Kita akan mulai mengubah
jenis partisinya dari ext3 ke LVM (8e). Tapi sebelumnya kita pindah dahulu
ke run level 3.
init 3
3. Di run level ini kita login sebagai root. Mengapa tidak login sebagai user
biasa? Sebab /home akan kita matikan. Kalau kita login sebagai user biasa maka
kita tidak dapat meng-umount /home.
4. Umount /home dan /data
umount /home
umount /data
5. Kita mulai mengubah partisi. Perhatian. Pastikan benar2 bahwa kita
tidak salah memilih partisi yang akan kita ubah. Dan juga pastikan bahwa kita telah
membackupnya.
fdisk /dev/hda
The number of cylinders for this disk is set to 4864.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help):
t
Partition number (1-8): 6
Hex code (type L to list codes): 8e
Changed system type of partition 6 to 8e (LVM)
Ubah lagi untuk hda7
t
Partition number (1-8): 7
Hex code (type L to list codes): 8e
Changed system type of partition 7 to 8e (LVM)
Setelah itu kita save:
w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
Kita akan kembali ke prompt. Kernel menyimpan informasi partisi di memory, yang
dibaca pada saat booting. Bila kita tidak ingin melakukan booting ulang, maka
kita bisa menggunakan command ini untuk memaksa kernel membaca kembali table
partisi:
partprobe
6. Kita cek apakah sudah benar partisinya:
fdisk -l /dev/hda
Disk /dev/hda: 40.0 GB, 40007761920 bytes
255 heads, 63 sectors/track, 4864 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot
Start
End Blocks Id System
/dev/hda1
* 1
1281 10289601 7 HPFS/NTFS
/dev/hda2
1282 1536
2048287+ b W95 FAT32
/dev/hda3
1537 4864
26732160 5 Extended
/dev/hda5
1537 2374
6731203+ 83 Linux
/dev/hda6 2414
3942 12281661 8e Linux LVM <— sudah
berubah
/dev/hda7
3943 4864
7405933+ 8e Linux LVM <— sudah berubah
/dev/hda8
2375
2413 313236 82 Linux swap /
Solaris
7. Kita mulai membuat LVMnya:
7a. Buat PVnya:
pvcreate /dev/hda6 /dev/hda7
Physical volume “/dev/hda6″ successfully created
Physical volume “/dev/hda7″ successfully created
7a2. Kita dapat melihat statusnya:
pvdisplay
— Physical volume —
PV
Name
/dev/hda6
VG
Name
vghome
PV
Size
11.71 GB / not usable 0
Allocatable yes
(but full)
PE Size (KByte) 4096
Total
PE
2998
Free
PE
0
Allocated PE 2998
PV
UUID
f9IDtR-6Xmo-Hnvu-Ou4T-77rW-nhM9-chIdqG
— Physical volume —
PV
Name
/dev/hda7
VG
Name
vghome
PV
Size
7.06 GB / not usable 0
Allocatable yes
(but full)
PE Size (KByte) 4096
Total
PE
1807
Free
PE
0
Allocated PE 1807
PV
UUID
2oN8gs-B77y-Ks1I-LDnc-KBYX-faEN-tAbYhF
7b. Buat VGnya:
vgcreate vghome /dev/hda6
/dev/hda7
Volume Group “vghome” successfully created
7b2. Kita dapat melihat statusnya:
vgdisplay
— Volume group —
VG Name
vghome
System ID
Format
lvm2
Metadata Areas 2
Metadata Sequence No 2
VG
Access
read/write
VG
Status
resizable
MAX
LV
0
Cur
LV
1
Open
LV
1
Max PV
0
Cur
PV
2
Act
PV
2
VG
Size
18.77 GB
PE
Size
4.00 MB
Total
PE
4805
Alloc PE / Size 4805 / 18.77 GB
Free PE / Size 0 / 0
VG
UUID
SB7NBc-aqXR-k32e-2K7T-tji8-Y0Nt-6UiLZ4
7c. Buat LVnya:
lvcreate -l 4805 -n lvhome
vghome
Logical Volume “lvhome” successfully created
Dari mana kita tahu angka 4805 ini? Ia adalah
banyaknya PE (Physical Extend) yang ada di dalam suatu VG. Dalam hal ini
penulis memutuskan untuk memakai seluruh PE yang ada untuk LV lvhome.
7c2. Kita dapat melihat statusnya:
lvdisplay
— Logical volume —
LV
Name
/dev/vghome/lvhome
VG
Name
vghome
LV
UUID
Fe4kLr-Xn7R-ewnt-5TZj-4iWl-WIPF-S4qOFo
LV Write Access read/write
LV
Status
available
#
open
1
LV
Size
18.77 GB
Current
LE 4805
Segments
2
Allocation
inherit
Read ahead sectors 0
Block device 253:0
8. Setelah membuat LVnya, kini kita dapat memformatnya.
Penulis menggunakan ext3.
mke2fs -j /dev/vghome/lvhome
mke2fs 1.38 (30-Jun-2005)
Filesystem label=
OS type=Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
246432 inodes, 4920320 blocks
246016 blocks (5%) reserved for the super user
First data block=0
151 block groups
32768 blocks per group, 32768 fragments per group
16320 inodes per group
writing inode tables: done
Creating journal (32768 blocks): done
9. Kemudian jangan lupa kita update file /etc/fstab.
Hapus baris /dev/hda6 dan /dev/hda7. Kemudian ganti dengan:
/dev/vghome/lvhome
/home ext3 defaults
1 2
10. Kita pastikan bahwa LVM yang kita buat tersebut dapat berjalan dengan baik
dengan cara memboot Linux kita.
11. Setelah boot, coba kita lihat apakah /home telah
termount dengan baik, dan juga kita cek free spacenya.
mount
/dev/hda5 on / type ext3 (rw,acl,user_xattr)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
debugfs on /sys/kernel/debug type debugfs (rw)
udev on /dev type tmpfs (rw)
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/mapper/vghome-lvhome on /home type ext3 (rw) <— telah termount dengan
baik
/dev/hda1 on /winc type ntfs (ro,noexec,nosuid,nodev,gid=100,umask=0002,nls=utf
/dev/hda2 on /wind type vfat
(rw,noexec,nosuid,nodev,gid=100,umask=0002,utf8=true)
Juga cek free spacenya:
df -h
Filesystem
Size Used Avail Use% Mounted on
/dev/hda5
6.4G 5.4G 618M 90% /
udev
252M 164K 252M 1% /dev
/dev/mapper/vghome-lvhome
19G 12G 5.8G 68% /home <– telah menjadi 19GB dan
setelah kita copy balik data2 ke /home
/dev/hda1
9.9G 7.8G 2.1G 79% /winc
/dev/hda2
2.0G 1.6G 397M 81% /wind
Bandingkan dengan sebelum LVM:
Filesystem
Size Used Avail Use% Mounted on
/dev/hda5
6.4G 5.4G 617M 90% /
/dev/hda6
12G 10G 2G 83% /home
/dev/hda7
7G 3.1G 3.9G 44% /data
udev
252M 156K 252M 1% /dev
/dev
/dev/hda2
2.0G 1.6G 397M 81% /wind
12. Selesai deeehhh… Kini kita telah berhasil
menggabungkan 2 buah partisi menjadi 1 buah ‘partisi’ yang lebih besar
menggunakan LVM.
Kesimpulan
Dengan adanya LVM maka management partisi menjadi lebih fleksible.
Kapanpun kita membutuhkan space tambahan di salah satu partisi, kita akan dapat
selalu memperbesarnya bila kita menggunakan LVM. Ada beberapa variasi yang
dapat kita lakukan, seperti dengan sengaja tidak mengalokasikan beberapa persen
dari space harddisk kita agar nanti dapat kita pakai bila ada salah satu
partisi membutuhkannya, dll. Dengan adanya LVM kita tidak perlu khawatir lagi
di dalam bagaimana mempartisi Linux kita.
LVM adalah produk yang telah cukup matang. Hal ini
dapat kita lihat dimana beberapa distro besar telah menjadikannya default dalam
installasinya. Jadi bila kamu akan menginstall Linux, bila memungkinkan
gunakanlah LVM.
follow me