Baik Disini saya akan berbagi Tentang LVM (Logical Volome Manager), artikel ini saya buat sehubungan dengan tugas kuliah ane dan buat document ane sekalian berbagi sama kalian semua :D
LVM itu sebuah cara menggabungkan partisi di Linux, kalo di windows seperti EASU (Easus Partition Manager) aplikasi pembagian partisi, disini ane melakukan testimony nya menggunakan Centos 5.5, (semua Distro Linux sama saja kok sistem kerjanya, mungkin beda sedikit deh confignya :D
langsung baca aja deh ya :D
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?
pada saat ini saya 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 bias 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 /data1
umount /data2
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):
Klik
“t”
Partition
number (1-8): 3
Hex code (type L to list codes): 8e
Changed system type of partition 6 to 8e (LVM)
Ubah lagi untuk hda7
Klik
“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/hda2 /dev/hda3
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%
/dev / udev 252M
164K 252M 1%
/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/hda1
9.9G 7.8G 2.1G 79% /winc
/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.