LVM Resize (LVM Disk Genişletme)
Not: Veri kaybına yol açabilir! Bu nedenle yapılan tüm işlemler sizin sorumluluğunuzdadır.
Özellikle lvm disk yapısına sahip sanal makinalarda diski genişletmenin birçok yolu mevcut. Yeni bir partition oluşturup bu partition ı lvm ye eklemek bunlardan sadece biri. Ben daha riskli bir yöntemi sizlere anlatmak istiyorum. Bu çalışmada yeni bir partition oluşturmayacağım. Mevcut bir partition üzerinden bu işlemi nasıl gerçekleştireceğiz bundan bahsedeceğim.
Disk bilgilerine bir bakalım:
Disk özetinde görüldüğü üzere aktif kullanılabilir alanımız 14G olarak map edilmiş.
Fdisk ile sda diskine baktığımızda ise disk alanının aslında 145G olduğunu görebilmekteyiz. Normal şartlar altında yeni bir partition oluştup mevcut lvm üzerine ekleyebiliyoruz fakat yapmayacağız.
fdisk /dev/sda
p
Yapacağımız işlem ise şu:
Bölümün disk üzerindeki başlangıç sektörü bellidir ve ardışıldır. Eğer bitiş noktasını değiştirirsek diski de genişletmiş oluyoruz. Tabi bu işlemi sadece son disk için yapabileceğimizi unutmayın. Ara bir bölümde değerlerin değişmesi veri yapısını bozabilir. Bu bilgiyi kesinlikle gözardı etmeyiniz. Risk size aittir.
Veri diskimiz /dev/sda2. Çıktı ekranının bir resmini çekmenizi veya değerleri bir yere kopyalamanızı kesinlikle tavsiye ederim. Burada yapılan işlemler bilinçli olarak yapılırsa herhangi bir hatada sistemi geriye döndürmeniz mümkün. Yaptığımız iş içerideki veri ile ilişkili değil. İçindekiler tablosu ile oynadığımızı düşünebilirsiniz. Değiştirme işlemi en son kaydetme adımına kadar diske uygulanmış olmuyor. Aşağıdaki adımları iptal etmeniz durumunda diske kaydetme işlemini yapmadığınız sürece yapıyı bozmuş olmazsınız.
Silinecek partition ının başlangıç ve bitiş yerinini not edip devam ediyoruz.
/dev/sda2 2099200 33554431 15727616 8e Linux LVM (başlangıç 2099200 bitiş 33554431, Tür 8e)
Genişletilecek bölümü siliyoruz (2. sıradaki bölümü yani sda2 yi siliyoruz).
d
2
p
p ile listelediğimizde kaydın silindiğini görebilirsiniz. Şuan verilerimiz silinmedi sadece partition tanımlamasını sildik. Daha öncede söylediğim gibi verileriniz silinmedi sadece içindekiler tablosunu değiştiriyoruz 🙂 Ki yapılan değişikliği daha diske kaydetmedik. Taslak olarak çalışıyoruz henüz.
Silinen parçayı yeniden oluşturalım.
n
p //primary
2 // kacinci primary
//baslangic-bitis (2099200 den son değere kadar – default olarak son değeri seçebiliyor)
Daha önce not aldığımız başlangıç değerini giriyoruz. Bitiş değeri default olarak son değer alıyor. Bu değer ilk başlarken kaydetmiş olduğumuz bitiş değerinden büyük bir değer olarak gelmeli. Eğer gelmiyorsa işlemi işlemi iptal kaydetmeden iptal edebilirsiniz veya önceki kaydettiğiniz bitiş değerini yeniden girip adımlara devam edebilirsiniz.
t // tip
2
8e //lvm, bu disk üzerinde 8e idi, başlangıç durumundaki değerini buraya tanımlamalısınız.
Önemli not! (Bu örnekte uygulamıyoruz)
Eğer sildiğiniz bölüm bootable ise (resimlerdeki /dev/sda1 in boot bilgisindeki * gibi) yeniden oluştururken yine bootable olarak işaretlenmesi gerek.
//Bu örnekte uygulamıyoruz, burayı çalıştırmayın
a
1 // sildiğiniz bölüm boot edilebilir bir alan ise (sda1 gibi)
ÖNEMLİ: Burası son bölüm. Kaydetme işlemini yapmadan önce p ile listeye bakıp önceki yapıya göre değişikliğin sadece BİTİŞ alanında yapıldığını kontrol edin.!
w // kaydet
partprobe // centos 7 için disk mapping
kpartx -u /dev/sda //centos 6 için disk mappingVeya yeniden başlatabilirsiniz..
Şuan diski genişlettik lvm tarafında bir kaç işimiz kaldı:
pvresize /dev/sda2
lvextend -l +100%FREE /dev/cl/root // cl (vgs ismi, vgs komutuyla görebilirsiniz, root ibaresi de lvs ile görülebilir.)
xfs_growfs /dev/cl/root // centos 7 için
resize2fs /dev/VolGroup/lv_root //centos 6 için
Mutlu son 🙂