LFCS: vgcreate, lvcreate ve lvextend Komutlarını Kullanarak LVM Nasıl Yönetilir ve Oluşturulur - Bölüm 11


LFCS sınav şartlarındaki değişiklikler nedeniyle Şubat'tan itibaren geçerli olacak. 2 Kasım 2016 tarihinden itibaren gerekli konuları burada yayınlanan LFCS serisine ekliyoruz. Bu sınava hazırlanmak için LFCE serisini de kullanmanız önemle tavsiye edilir.

Bir Linux sistemi kurarken en önemli kararlardan biri sistem dosyaları, ev dizinleri ve diğerleri için ayrılacak depolama alanının miktarıdır. Bu noktada bir hata yaparsanız, alanı biten bir bölümü büyütmek külfetli ve biraz riskli olabilir.

Çoğu Linux dağıtımının (hepsi olmasa da) kurulumu için varsayılan hale gelen Mantıksal Birim Yönetimi (ayrıca LVM olarak da bilinir), geleneksel bölümleme yönetimine göre çok sayıda avantaja sahiptir. Belki de LVM'nin en ayırt edici özelliği, mantıksal bölümlerin istenildiği zaman çok fazla güçlük çekmeden yeniden boyutlandırılmasına (küçültülmesine veya artırılmasına) izin vermesidir.

LVM'nin yapısı aşağıdakilerden oluşur:

  1. Bir veya daha fazla sabit diskin veya bölümün tamamı fiziksel birimler (PV'ler) olarak yapılandırılmıştır.
  2. Bir veya daha fazla fiziksel birim kullanılarak bir birim grubu (VG) oluşturulur. Birim grubunu tek bir depolama birimi olarak düşünebilirsiniz.
  3. Daha sonra bir birim grubunda birden fazla mantıksal birim oluşturulabilir. Her mantıksal birim, daha önce de belirttiğimiz gibi istendiğinde yeniden boyutlandırılabilmesi avantajıyla geleneksel bir bölüme bir şekilde eşdeğerdir.

Bu makalede her biri 8 GB olan üç disk kullanacağız (/dev/sdb, /dev/sdc ve /dev) /sdd) kullanarak üç fiziksel birim oluşturun. PV'leri doğrudan cihazın üstünde oluşturabilir veya önce onu bölümlendirebilirsiniz.

Her ne kadar biz ilk yöntemi seçmiş olsak da, ikinciyi tercih etmeye karar verirseniz (bu serinin Bölüm 4 – Linux'ta Bölümler ve Dosya Sistemleri Oluşturma bölümünde açıklandığı gibi), her bölümü 8e< türünde yapılandırdığınızdan emin olun. /kod>.

Fiziksel Birimler, Birim Grupları ve Mantıksal Birimler Oluşturma

/dev/sdb, /dev/sdc ve /dev/sdd'nin üzerinde fiziksel birimler oluşturmak için şunları yapın:

pvcreate /dev/sdb /dev/sdc /dev/sdd

Yeni oluşturulan PV'leri aşağıdakilerle listeleyebilirsiniz:

pvs

ve her bir PV hakkında ayrıntılı bilgi edinin:

pvdisplay /dev/sdX

(burada X b, c veya d'dir)

Parametre olarak /dev/sdX'i atlarsanız tüm PV'ler hakkında bilgi alırsınız.

/dev/sdb ve /dev/sdc kullanarak vg00 adında bir birim grubu oluşturmak için (/dev/sdd<'yi kaydedeceğiz) Daha sonra, gerektiğinde depolama kapasitesini genişletmek için başka aygıtların eklenme olasılığını göstermek amacıyla):

vgcreate vg00 /dev/sdb /dev/sdc

Fiziksel ciltlerde olduğu gibi, bu cilt grubu hakkındaki bilgileri aşağıdakileri vererek de görüntüleyebilirsiniz:

vgdisplay vg00

vg00 iki 8 GB diskten oluştuğu için tek bir 16 GB sürücü olarak görünecektir:

Mantıksal hacimler oluşturmaya gelince, alan dağıtımında hem mevcut hem de gelecekteki ihtiyaçlar dikkate alınmalıdır. Her mantıksal birimin amaçlanan kullanımına göre adlandırılması iyi bir uygulama olarak kabul edilir.

Örneğin, daha sonra proje belgelerini depolamak için kullanabileceğimiz vol_projects (10 GB) ve vol_backups (kalan alan) adında iki LV oluşturalım. ve sırasıyla sistem yedeklemeleri.

-n seçeneği LV için bir ad belirtmek için kullanılırken, -L sabit bir boyut belirler ve -l (küçük L harfi) VG kabında kalan alanın yüzdesini belirtmek için kullanılır.

lvcreate -n vol_projects -L 10G vg00
lvcreate -n vol_backups -l 100%FREE vg00

Daha önce olduğu gibi, LV'lerin listesini ve temel bilgileri aşağıdakilerle görüntüleyebilirsiniz:

lvs

ve detaylı bilgi ile

lvdisplay

Tek bir LV hakkındaki bilgileri görüntülemek için lvdisplay'i VG ve LV ile birlikte aşağıdaki gibi kullanın:

lvdisplay vg00/vol_projects

Yukarıdaki resimde LV'lerin depolama cihazları olarak oluşturulduğunu görebiliriz (LV Yolu satırına bakın). Her mantıksal birimin kullanılabilmesi için önce onun üzerinde bir dosya sistemi oluşturmamız gerekir.

Her bir LV'nin boyutunu hem artırmamıza hem de azaltmamıza olanak tanıdığı için burada örnek olarak ext4'ü kullanacağız (yalnızca boyutun artırılmasına izin veren xfs'nin aksine):

mkfs.ext4 /dev/vg00/vol_projects
mkfs.ext4 /dev/vg00/vol_backups

Bir sonraki bölümde mantıksal birimlerin nasıl yeniden boyutlandırılacağını ve ihtiyaç duyulduğunda ekstra fiziksel depolama alanının nasıl ekleneceğini açıklayacağız.

Mantıksal Birimleri Yeniden Boyutlandırma ve Birim Gruplarını Genişletme

Şimdi aşağıdaki senaryoyu hayal edin. vol_backups'ta alanınız tükenmeye başlarken, vol_projects'te oldukça fazla kullanılabilir alanınız var. LVM'nin doğası gereği, her dosya sistemini aynı anda yeniden boyutlandırırken ikincisinin boyutunu (2,5 GB diyelim) kolayca azaltabilir ve birincisine ayırabiliriz.

Neyse ki, bunu yapmak kadar kolaydır:

lvreduce -L -2.5G -r /dev/vg00/vol_projects
lvextend -l +100%FREE -r /dev/vg00/vol_backups

Mantıksal birimi yeniden boyutlandırırken eksi (-) veya artı (+) işaretlerini dahil etmek önemlidir. Aksi takdirde LV'yi yeniden boyutlandırmak yerine sabit bir boyut ayarlarsınız.

Mantıksal birimleri yeniden boyutlandırmanın artık depolama ihtiyaçlarınızı çözemediği ve ekstra bir depolama cihazı satın almanız gerektiği bir noktaya gelebilirsiniz. Basit tutmak gerekirse, başka bir diske ihtiyacınız olacak. İlk kurulumumuzdan kalan PV'yi (/dev/sdd) ekleyerek bu durumu simüle edeceğiz.

/dev/sdd'yi vg00'a eklemek için şunu yapın:

vgextend vg00 /dev/sdd

Bir önceki komuttan önce ve sonra vgdisplay vg00 komutunu çalıştırırsanız, VG'nin boyutunun arttığını göreceksiniz:

vgdisplay vg00

Artık yeni eklenen alanı, mevcut LV'leri ihtiyaçlarınıza göre yeniden boyutlandırmak veya gerektiğinde ek LV'ler oluşturmak için kullanabilirsiniz.

Mantıksal Birimleri Önyüklemede ve Talep Üzerine Bağlama

Elbette onları gerçekten kullanmayacaksak mantıksal birimler oluşturmanın hiçbir anlamı olmaz! Mantıksal birimi daha iyi tanımlamak için UUID'nin (biçimlendirilmiş bir depolama aygıtını benzersiz şekilde tanımlayan, değişmeyen bir özellik) ne olduğunu bulmamız gerekecek.

Bunu yapmak için blkid'i ve ardından her cihazın yolunu kullanın:

blkid /dev/vg00/vol_projects
blkid /dev/vg00/vol_backups

Her LV için bağlama noktaları oluşturun:

mkdir /home/projects
mkdir /home/backups

ve ilgili girişleri /etc/fstab içine ekleyin (daha önce elde ettiğiniz UUID'leri kullandığınızdan emin olun):

UUID=b85df913-580f-461c-844f-546d8cde4646 /home/projects	ext4 defaults 0 0
UUID=e1929239-5087-44b1-9396-53e09db6eb9e /home/backups ext4	defaults 0 0

Ardından değişiklikleri kaydedin ve LV'leri bağlayın:

mount -a
mount | grep home

LV'leri fiilen kullanmaya gelince, bu serinin Bölüm 8 – Linux'ta Kullanıcıları ve Grupları Yönetme bölümünde açıklandığı gibi uygun ugo+rwx izinlerini atamanız gerekecektir.

Özet

Bu makalede, depolama cihazlarını yönetmek için ölçeklenebilirlik sağlayan çok yönlü bir araç olan Mantıksal Birim Yönetimi'ni tanıttık. RAID ile birleştirildiğinde (bu serinin Bölüm 6 – Linux'ta RAID Oluşturma ve Yönetme bölümünde açıkladığımız), yalnızca ölçeklenebilirliğin (LVM tarafından sağlanan) değil, aynı zamanda yedekliliğin (RAID tarafından sunulan) keyfini de çıkarabilirsiniz.

Bu tür kurulumda, genellikle LVM'yi RAID'in üstünde bulacaksınız; yani önce RAID'i yapılandırın ve ardından LVM'yi bunun üzerinde yapılandırın.

Bu makaleyle ilgili sorularınız veya makaleyi geliştirmeye yönelik önerileriniz varsa aşağıdaki yorum formunu kullanarak bize ulaşmaktan çekinmeyin.