CentOS ’a Yeni Bir Disk Eklemek Örnekler

  Centos 6,x, Linux, SSH Komutları

 

logo_centos Üzerinde CentOS (RHEL ya da Fedora da olabilir) kurulu olan bilgisayarınıza,  yeni bir disk eklemeniz gerekirse duruma göre izleyebileceğiniz iki yol bulunmaktadır. Birincisi; eğer CentOS, LVM (Logical Volume Management) kullanıyorsa, takacağınız yeni diski LVM’ye dahil ederek varolan disk bölümünü  genişletmektir. İkinci yol ise, (LVM kullanmamanız ya da partisyon genişletme işlemini tercih etmemeniz durumunda) ilgili diski yeni bir partisyon olarak sisteme eklemektir.

Bu makale, LVM yapısına yeni bir disk ekleyerek, mevcut disk partisyonlarını değiştirmeksizin online kapasite arttırımının nasıl yapılabileceği ve LVM kullanılmaması durumunda gene ikinci bir diskin, bu sefer yeni bir disk partisyonu olarak eklenerek mount edilmesini anlatan iki ana başlıktan oluşmaktadır.

 

[Yöntem – 1] LVM Yapısına Yeni Bir Disk Eklemek

Bildiğiniz gibi bir çok Linux dağıtımı  (RHEL 4 ve sonrası, CentOS, Fedora, Suse 9 ve sonrası) LVM (Mantıksal Hacim Yönetimi) denilen güzel bir sistem kullanmaktadır; ve LVM çoğu dağıtımın default kurulumunda kullanılmaktadır.

LVM, sistem üzerinde disk kümesi ya da kümeleri oluşturmaya olanak sağlayan bir disk yönetim sistemidir. LVM kullanarak, mevcut disk bölümü üzerinde online olarak yeniden boyutlandırma yapılabilir.

Elinizde default olarak kurulmuş bir CentOS varsa, disk yönetimi LVM üzerinden yapılıyor demektir. Bu durumda, yeni diski halihazırda yapılandırılmış olan LVM’ye dahil edebilir, böylece varolan disk bölümünün genişletilmesini sağlayabilirsiniz.

Örneğin, üzerinde 80GB’lik tek bir disk bulunan bir CentOS’unuz var ve  diskin tümü sistemin kök dizini (/) için kullanılan tek bir disk bölümüne ayrılmış olsun (CentOS’u default kurduysanız durum bu olacaktır.)  Zaman içinde 80GB’lik alanın yetmemeye başlarsa LVM imdadınıza yetişir ve bilgisayara takılan ikinci bir diskin var olan disk bölümüne eklenmesine olanak sağlar. Böylece daha önceden 80GB olan kök dizininiz ikinci bir 80′lik diskin eklenmesi ile 160GB’ye çıkabilecektir.

Kısaca LVM birden fazla diski tek bir disk bölümü olarak kullanmanıza olanak sağlayacaktır.  Bu nedenle LVM disk yönetim işlemlerinde çok büyük kolaylıklar sağlamaktadır.

Uygulama

Bu işlemi aşağıdaki yönergeleri izleyerek kolayca yapabilirsiniz.

Warning UYARI: Disk yapılandırma işlemleri, ne yaptığınızı tam olarak bilmemeniz durumunda, datanızın kaybolması ile sonuçlanabilecek problemlere neden olabilir. Dolayısı ile burada anlatılan işlemleri üretim ortamında çalışan bir sunucu vs. üzerinde denemeden önce test ortamınızda denemenizi tavsiye ederim.

İşleme başlamadan önce LVM ile ilgili biraz daha teorik bilgi vermek yerinde olacaktır. Zira yazıda LVM ile ilgili bir çok terim geçecektir.

Yukarıda da tekrarladığım gibi disklerin kümelendirilmesine olanak sağlayan bir sistem olan LVM’nin mantığı şu şekildedir.

LVM, Volume Group (VP) denilen bir volüm (hacim) gurubu ve bu guruba dahil edilmiş Physical Volume (PV) denilen fiziksel volumlerden ve Logical Volume (LV) denilen mantksal volümlerden oluşur. Bu terimlerin mealleri şöyledir:

  • Volume Group (Hacim Gurubu): En üstte bulunan bu katman, fiziksel ve mantıksal volüm’leri içine almaktadır. Yani fiziksel disklerin kümelendiği alan burasıdır.
  • Physical Volume (Fiziksel Hacim): PV ise fiziksel aygıtlardan (disk) ve disk bölümlerinden oluşan kısımdır.
  • Logical Volume (Mantıksal Hacim): LV olarak kısaltılan bu terim, disk ve ya disk bölümlerinin formatlanmasından sonra ortaya çıkan dosya sistemi içeren (mesela ext3 ile formatlanmış kök dizini /) yapıya verilen isimdir.

Yani var olan bir LVM’ye yeni bir disk eklemek isterseniz,  önce yeni bir disk bölümü (partition) oluşturmalı  sonra bu disk bölümü için yeni bir fiziksel volüm oluşturup en tepedeki volüm grubuna dahil etmelisiniz. Sonrasında da var olan mantıksal volümü yeni disk bölümünü kapsayacak şekilde genişletmelisiniz.

Bizim yapacağımız da tam olarak budur.

İşte işlem adımları:

Diski Sisteme Takın ve Durumdan Emin Olun

Öncelikle, diskinizi bilgisayara takıp sistemin bu yeni diski gördüğünden emin olun. Bu iş için dmesg log dosyasına göz atabilirsiniz:

[root@lvm ~]# more /var/log/dmesg

Ben test ortamı olarak üzerinde CentOS 5.2 kurulu ve 15GB’lik tek bir diske sahip bir vmware guest kullandım, bu gueste 10GB boyutunde yeni bir disk ekledikten sonra disklerle ilgili dmesg çıktısı şu şekilde oluştu.

hda: VMware Virtual IDE Hard Drive, ATA DISK drive
hdb: VMware Virtual IDE Hard Drive, ATA DISK drive
hdc: VMware Virtual IDE CDROM Drive, ATAPI CD/DVD-ROM drive
hda: max request size: 128KiB
hda: 31457280 sectors (16106 MB) w/32KiB Cache, CHS=33288/15/63, UDMA(33)
 hda: hda1 hda2
hdb: max request size: 128KiB
hdb: 20971520 sectors (10737 MB) w/32KiB Cache, CHS=22192/15/63, UDMA(33)
hdb: unknown partition table

Mavi ile belirtilen satırlarda da görüldüğü gibi, yeni disk hdb ismi ile sistem tarafından tanınmış durumda. Ancak henüz herhangi bir disk bölümleme işlemi yapılmadığı için “unknow partition table” uyarısı verilmiş.

Not: Disklerin SCSI olması durumunda, disk isimleri sda, sdb vs. olarak görüntülenecektir. Dolayısı ile aşağıda verilen komutları kendi disk isminize göre düzenledikten sonra çalıştırın.

Şimdi pvscan komutunu çalıştırarak halihazırdaki fiziksel volume durumuna bakalım.

[root@lvm ~]# pvscan
PV /dev/hda1   VG VolGroup00   lvm2 [14.88 GB / 0    free]
Total: 1 [14.88 GB] / in use: 1 [14.88 GB] / in no VG: 0 [0   ]

Görüldüğü gibi VolGroup00 isimli volume grubuna (VG), fiziksel volume (PV) olarak sadece 1. disk olan hda diski  dahil durumda.

Buradaki VG disk ya da disklerden oluşan Volüm Grubunu Temsil ediyor, PV olarak geçen fiziksel volüm ise fiziksel disk ya da disk bölümlerini temsil ediyor. Benim örneğimde 15GB’lik 1. diskin hepsi fiziksel volume olarak eklenmiş durumda.

df çıktısı ise şöyle:

[root@lvm ~]# df -h
Filesystem                        Size Used Avail  Use%  Mounted on
/dev/mapper/VolGroup00-LogVol00   14G  1.1G   13G   8% /
/dev/hda1                         99M   18M   77M  19% /boot
tmpfs                             125M     0  125M   0% /dev/shm

Default bir CentOS kurulumunda oluşan bir disk bölümleme yapısında, kök dizini (/) VolGroup00 volüm grubuna dahil LogVol00 isimli bir Logical (Mantıksal) Volüm’e atanmış.

Fdisk ile Yeni bir Disk Bölümü (Partition) oluşturmak

Takip edilecek ikinci adım, yeni takılan disk için fdisk kullanarak bir disk bölümü oluşturmaktır. Yeni diskin sadece bir kısmını disk bölümü olarak tanımlayabileceğiniz gibi, bu örnekte yapıldığı şekli ile diskin hepsini tek bir bölüm olarak tanımlayabilirsiniz.

Sistemin hdb olarak gördüğü disk için bir disk bölümü oluşturalım:

[root@lvm ~]# fdisk /dev/hdb

Açılan komut satırında takip etmeniz gereken adımlar şunlar.

  1. Önce  “add new partition” anlamına gelen n tuşuna basın.
  2. İkinci adımda, bölümün primary mi extended mi olacağı sorulacaktır. p diyin.
    (Aslında extended olması için e tuşuna da basabilirsiniz.)
  3. Bölüm numarasını 1 olarak belirleyin. (2, 3, 4 de diyebilirsiniz.)
  4. Bu adımda, diskin başlangıç ve biriş noktalarının ne olmasını istediğiniz sorulacaktır, enter diyerek default değerlerle devam edin.
  5. Bölüm oluşturulduktan sonra  t tuşuna basıp ilgili disk bölümünün tipini LVM olarak set etmek için 8e yazıp enter’a basın.
  6. En son olarak w tuşuna basıp yapılan değişikliğin partisyon tablosuna kaydedilmesini sağlayarak çıkın.

Disk bölümü oluşturuldu.  İlgili disk bölümünü /dev dizini altında görebilirsiniz. Çıktı şuna benzer olarak görüntülenmelidir.

[root@lvm ~]# ls -l /dev/hdb*
brw-r----- 1 root disk 22, 65 May 14 15:10 /dev/hdb
brw-r----- 1 root disk 22, 66 May 14 15:10 /dev/hdb1

Görüldüğü gibi disk bölümü hdb1 ismi ile oluşturulmuş durumda. Dolayısı ile bir sonraki adıma geçebiliriz.

Physical Volume (Fiziksel Hacim) Oluşturma

Şimdi /dev altında bulunan hdb1 disk bölümünü fiziksel bir volüme çeviriyoruz.

[root@lvm ~]# pvcreate /dev/hdb1

Böylece, volüm grubuna eklenebilecek bir fiziksel volüm elde ettik.
Sıradaki adıma geçebiliriz.

Yeni Physical Volumü, Volüm Grubuna Eklemek

Benim test için kullandığım vm guest’in üzerindeki CentOS tamamen default kuruluma sahip, daha önce default kurulumlarda disk yapılandırması için LVM kullanıldığını söylemiştim. İişte  bu tip kurulumlarda, Volum Group’un ismi VolGroup00 olarak veriliyor. Ancak volüm grubunuzun ismi değişik olabilir, bu nedenle vgdisplay komutundan yararlanım, tam ismi öğrenebilirsiniz.

[root@lvm ~]# vgdisplay
  --- Volume group ---
  VG Name               VolGroup00
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               14.88 GB
  PE Size               32.00 MB
  Total PE              476
  Alloc PE / Size       476 / 14.88 GB
  Free  PE / Size       0 / 0
  VG UUID               Z3jhaS-XzOJ-py5H-KofF-qnZV-ZAcN-VcPwm2

Görüldüğü gibi volüm grubunun ismi VolGroup00 olarak geçiyor ve VG size 1. diskimizin total boyutu olan 15GB, bu durumda aşağıdaki komut ile hdb1 fiziksel volum’u VolGroup00 dölümüne ekleyeceğiz:

[root@lvm ~]# vgextend VolGroup00 /dev/hdb1

Artık volume group’u iki adet disk dahil olmalı. Durumu kontrol etmek için pvscan komutunu kullanalım.

[root@lvm ~]# pvscan
  PV /dev/hda1   VG VolGroup00   lvm2 [14.88 GB / 0    free]
  PV /dev/hdb1   VG VolGroup00   lvm2 [9.97 GB / 9.97 GB free]
  Total: 2 [24.84 GB] / in use: 2 [24.84 GB] / in no VG: 0 [0   ]

Komutun çıktısında da görüldüğü üzere, VolGroup00′a iki adet PV (fiziksel volüm) dahil durumda.
Yeni disk bölümüni volüm gruba dahil ettiğimize göre artık bu yeni disk alanını (PV) eski disk alanıyla birleştirebiliriz.

Yeni Disk Alanını, Logical Volüm’e Dahil Etmek

Şimdi elimizde, volum gruba dahil edilmiş 10GB ( tam olarak 9.97 GB) büyüklüğünde bir disk space var. Bu disk space’i bilgisayarın kök dizinini (/) barındıran Logical Volüm’e dahil edeceğiz. Bu işi yapabilmek için Logical Volüm’ün ismini bilmeniz gerekir. Daha önceden yukarıda verilmiş olan df çıktısına tekrar bakarsak bu ismi öğrenebiliriz.

[root@lvm ~]# df -h
Filesystem                        Size Used Avail  Use%  Mounted on
/dev/mapper/VolGroup00-LogVol00   14G  1.1G   13G   8% /
/dev/hda1                         99M   18M   77M  19% /boot
tmpfs                             125M     0  125M   0% /dev/shm

Mavi olarak işaretlenen ibarede görüldüğü üzere root (/) dizinini tutan logical volumü’ün ismi LogVol00 (default isim).

İsmi öğrendiğimize göre,  yeni disk alanını buraya ekleyebiliriz.

[root@lvm ~]# lvextend -L+9.97G /dev/VolGroup00/LogVol00

Not: Dikkat ettiysenize 10GB’lik disk alanım olmasına rağmen logical volüm’e ekleme işleminde 9.97GB ibaresini kullandım. (pvscan komutunun çıktısında hdb1 diski için 9.97GB belirtiliyordu.) Bunun nedeni disk blocklarından yola çıkılarak yapılan hesaptır. Dolayısı ile sisteminize 40GB disk ekleyip extend işlemini tam 40GB olacak şekilde yapamayabilirsiniz. Kendi diskinizin tam size’ını öğrenmek için pvscan komutunun çıktısını inceleyiniz.

Artık, son adıma geçebiliriz.

Dosya Sisteminin Online Olarak Yeniden Boyutlandırılması

Son olarak yapılması gereken iş, hali hazırda 15GB olarak görünen root (/) dizinine ait logical volüm’ü yeni eklediğimiz diski de kullanabilmesi için  yeniden boyutlandırmaktan ibaret.

Dosya sistemini yeniden boyutlandırmak için kullanılması gereken komut, hangi dosya sisteminin kullanıldığı ile alakalıdır. Eğer ext3 dosya sistemi kullanıyorsanız, resize2fs ya da ext2online komutlarından biri ile yapabilirsiniz. Örneğin eğer sisteminiz reiserfs ise de resize_reiserfs komutunu kullanabilirsiniz. Dediğim gibi ben default kurulmuş bir CentOS 5.2 kullanıyorum ve bunun için  resize2fs kullanacağım.

Komut şu şekilde:

[root@lvm ~]# resize2fs /dev/VolGroup00/LogVol00

Bu komut ile dosya sistemi online olarak yeniden boyutlandırılır ve sonuç olarak aşağıdaki gibi bir çıktı alırsınız.

resize2fs 1.39 (29-May-2006)
Filesystem at /dev/VolGroup00/LogVol00 is mounted on /; on-line resizing required
Performing an on-line resize of /dev/VolGroup00/LogVol00 to 6258688 (4k) blocks.
The filesystem on /dev/VolGroup00/LogVol00 is now 6258688 blocks long.

İşlem tamamlandı;  şimdi tekrar df komutu ile disk durumunu kontrol edelim.

[root@lvm ~]# df -h
Filesystem                        Size Used Avail  Use%  Mounted on
/dev/mapper/VolGroup00-LogVol00   24G  1.1G   21G   5% /
/dev/hda1                         99M   18M   77M  19% /boot
tmpfs                             125M     0  125M   0% /dev/shm

Evet görüldüğü gibi root dizini artık toplamda 24GB. Böylece LVM sayesinde iki adet fiziksel diski tek bir disk bölümü için kullanmış olduk.
LVM yapısı gerçekten de yüksek disk kapasitesi gerektiren her türlü durumda, epey kullanışlı bir sistem.

Son olarak LVM olmaksızın izleyebileceğiniz diğer bir yöntemden bahsedeceğim.

[Yöntem – 2]  Diski Ayrı Bir Bölüm Olarak Mount Etmek

Yeni diski sisteminize LVM’ye dahil etmeden, yeni bir disk bölümü olarak da kullanmak isteyebilirsiniz. Örneğin, yeni diski sacece backup amaçlı kullanmak istiyor ve bu diski yedekleme işleminden sonra bilgisayardan çıkartmak istiyor olabilirsiniz ya da işletim sisteminizin LVM desteği yoktur. İşte böyle durumlar için basitçe, yeni diski yeni bir disk bölümü olarak sisteme ekleyerek mount etme yolunu seçebilirsiniz.

Bu yöntemde, basitçe, fdisk ile yeni bir disk bölümü oluşturacağız ve ext3 dosya sistemi kullanacak şekilde formatladıktan sonra /mnt altında disk2 ismi ile mount edeceğiz ve sistem açılışlarında otomatik mount edilmesi için bu disk partisyonunu fstab dosyasına ekleyeceğiz.

Warning UYARI: Disk yapılandırma işlemleri, ne yaptığınızı tam olarak bilmemeniz durumunda, datanızın kaybolması ile sonuçlanabilecek problemlere neden olabilir. Dolayısı ile burada anlatılan işlemleri üretim ortamında çalışan bir sunucu vs. üzerinde denemeden önce test ortamınızda denemenizi tavsiye ederim.

İşe başlamadan önce, diski taktıktan sonra diskin sistem tarafından algılandığına emin olun. Bu işlem için, yukarıda anlatılan birinci yöntemin ilk maddesine bakabilirsiniz.

Fdisk ile Disk Bölümü (Partition) Oluşturmak

Benim test makinamda yeni IDE diskin ismi hdb olarak geçmekte ve bu diskin hepsini kullanarak tek bir partition oluşturacağım bu nedenle komutu şu şekilde çalıştırıyorum:

[root@lvm ~]# fdisk /dev/hdb

Açılan komut satırında takip etmeniz gereken adımlar şunlar.

  1. Önce  “add new partition” anlamına gelen n tuşuna basın.
  2. Bölümün primary olacağını belirtmek için p tuşuna basın. (Aslında extended olması için e tuşuna da basabilirsiniz.)
  3. Bölüm numarasını 1 olarak belirleyin.
  4. Diskin başlangıç ve biriş noktalarının ne olmasını istediğinizi belirtir soruya, enter diyerek default değerleri verin.
  5. En son olarak w tuşuna basıp yapılan değişikliğin partisyon tablosuna kaydedilmesini sağlayarak çıkın.

İşlem tamamlandıktan sonra.  yeni  disk bölümünü /dev dizini altında şu şekilde görebilirsiniz:

[root@lvm ~]# ls -l /dev/hdb*
brw-r----- 1 root disk 22, 65 May 14 15:10 /dev/hdb
brw-r----- 1 root disk 22, 66 May 14 15:10 /dev/hdb1

Görüldüğü gibi bölüm hdb1 olarak durmakta.

Disk Bölümünün Formatlanması

Ben diski ext3 dosya sistemine göre formatlayacağım; bu nedenle mkfs.ext3 komutunu kullanıyorum:

[root@lvm ~]# mkfs.ext3 /dev/hdb1

İşlem sorunsuz olarak tamamlandıysa bu disk bölümünü mount edebiliriz.

Diskin Mount Edilmesi

Mount işlemini disk2 ismi ile yapacağımı belirtmiştim, bu nedenle ilgili dizini açıyorum:

[root@lvm ~]# mkdir /mnt/disk2

Sonrasında da mount ediyorum.

[root@lvm ~]# mount /dev/hdb1 /mnt/disk2

İşlem tamamlandığına göre df komutu ile kontrol ettiğiniz de yeni diski /mnt/disk2 dizinine mount edilmiş olarak göremeniz gerekir.

Son olarak fstab dosyasına bu diski ekleyelim ve açılışlarda otomatik mount edilsin.

Yeni Disk Bölümünün fstab’a Eklenmesi

/etc altında duran fstab dosyanı editleyip  en altına aşağıdaki satırı ekliyorum.

/dev/hdb1   /mnt/disk2   ext3  defaults  0  0

Bu adımdan sonra işimiz bitmiş oluyor. Böylece ikinci bir diski, sisteme yeni bir dizin altında mount etmiş olduk. Bu yöntem LVM yöntemi gibi esneklikler sağlamasa da insanın işi herzaman düşebilir.

One Reply to “CentOS ’a Yeni Bir Disk Eklemek Örnekler”

  • Merhabalar,

    Oldukça detaylı ve güzel bir makale anlatımınız için gerçekten çok teşekkür ederim.

YORUM KUTUSU