Bir bölümü LVM ve içerdiği fiziksel birim ve mantıksal birim ile nasıl genişletirim?


33

240 GB'lık SSD'mde ilkinde iki bölüm vardı; bunlardan biri Linux Mint'le Mantıksal Birimi ve diğeri Windows ile paylaşmak için bir NTFS bölümü içeriyordu. Şimdi NTFS bölümünü kaldırdım ve yayımlanan disk alanını kullanmak için mantıksal birim grubumu genişletmek istiyorum.

Nasıl mı hacim grubunu genişletmek , benim içeren / ev mantıksal hacim ve dosya sistemi (ext4) üzerine / home? Bu çevrimiçi yapmak mümkün mü?

Not: Evet, verilerimi yedeklemem gerektiğini biliyorum :)

/dev/sdb/  (240GB)
    linuxvg  (160GB) should use 100% of the disk space
        swap
        root
        home (ext4, 128GB) should be extended to use the remaining space

çıktısı sudo vgdisplay:

  --- Volume group ---
  VG Name               linuxvg
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  4
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                3
  Open LV               3
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               160,00 GiB
  PE Size               4,00 MiB
  Total PE              40959
  Alloc PE / Size       40959 / 160,00 GiB
  Free  PE / Size       0 / 0   
  VG UUID               ...

  --- Logical volume ---
  LV Path                /dev/linuxvg/swap
  LV Name                swap
  VG Name                linuxvg
  LV UUID                ...
  LV Write Access        read/write
  LV Creation host, time mint, 2013-08-06 22:48:32 +0200
  LV Status              available
  # open                 2
  LV Size                8,00 GiB
  Current LE             2048
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0

  --- Logical volume ---
  LV Path                /dev/linuxvg/root
  LV Name                root
  VG Name                linuxvg
  LV UUID                ...
  LV Write Access        read/write
  LV Creation host, time mint, 2013-08-06 22:48:43 +0200
  LV Status              available
  # open                 1
  LV Size                24,00 GiB
  Current LE             6144
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

  --- Logical volume ---
  LV Path                /dev/linuxvg/home
  LV Name                home
  VG Name                linuxvg
  LV UUID                ...
  LV Write Access        read/write
  LV Creation host, time mint, 2013-08-06 22:48:57 +0200
  LV Status              available
  # open                 1
  LV Size                128,00 GiB
  Current LE             32767
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:2

  --- Physical volumes ---
  PV Name               /dev/sdb1     
  PV UUID               ...
  PV Status             allocatable
  Total PE / Free PE    40959 / 0

çıktısı sudo fdisk -l:

Disk /dev/sdb: 240.1 GB, 240057409536 bytes
255 heads, 63 sectors/track, 29185 cylinders, total 468862128 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1   468862127   234431063+  ee  GPT

Disk /dev/mapper/linuxvg-swap: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders, total 16777216 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/mapper/linuxvg-root: 25.8 GB, 25769803776 bytes
255 heads, 63 sectors/track, 3133 cylinders, total 50331648 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000


Disk /dev/mapper/linuxvg-home: 137.4 GB, 137434759168 bytes
255 heads, 63 sectors/track, 16708 cylinders, total 268427264 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

2
Peki, kolay yol vgextend, bölümü tamamen kaldırmak yerine, sadece NTFS bölmesini yeniden oluşturmak ve kullanmak olurdu . Mevcut PV bölümünü büyütürseniz, disk kullanımdayken Linux bölümleme tablosunu yeniden okumayı reddettiği için muhtemelen yeniden başlatmanız gerekir. Bu çevrimiçi ortamda çalışmak çok garip. - Lütfen şu anki bölüm tablosunu göster.
frostschutz

Gerekirse yeniden başlayabilirim.
klingt.net

Yanıtlar:


44

Bunu oldukça basit bir şekilde yapabilirsiniz. Biraz önce bunun için bir cevap olmadığına şaşırdım.

Tüm bu işlemi, yeniden boyutlandırmak istediğiniz dosya sisteminde (evet, güvenli ve tam olarak desteklenir) çalışırken yapabilirsiniz. Kurtarma CD'lerine veya alternatif işletim sistemlerine ihtiyaç yoktur.

  1. Bölümü yeniden boyutlandırın (sistem çalışırken bunu tekrar yapabilirsiniz). GParted kullanımı kolaydır ve yeniden boyutlandırmayı destekler.
    Ayrıca, daha düşük seviyeli bir araç da kullanabilirsiniz fdisk. Ancak bölümü silmek ve yeniden oluşturmak zorunda kalacaksınız. Yeni bölümün aynı yerde başlayabilmesi için bunu yaparken sadece emin olun.
  2. Yeniden Başlatma. Bölüm tablosu çalışan sistemde değiştirildiğinden, yeniden başlatılıncaya kadar etkili olmaz.
  3. pvresize /dev/sdXYLVM'nin yeni alanı seçmesi için koşun .
  4. İle mantıksal hacmi yeniden boyutlandırın lvextend. Eğer her şeyi kullanmak istiyorsan lvextend -r -l +100%FREE /dev/VGNAME/LVNAME. Ayrıca -rdosya sistemini de yeniden boyutlandıracak.
    Yine de her zaman bütün cilt grubunu kullanmamaya karşı öneririm. Gelecekte neye ihtiyacınız olacağını asla bilemezsiniz. Her zaman daha sonra genişletebilirsin, küçültemezsin.

3
Cevabınızı kabul etmek istiyorum, ancak önerdiğiniz gibi çalışmadım, çünkü GParted çalışan bir sistemdeki kök bölümünü yeniden boyutlandıramıyor (en azından benim durumumda).
klingt.net

@HalosGhost Düzenlemenizi geri aldım. partprobe -sdüşündüğünüzü yapmaz. Çekirdek, kullanımda olan bir bölümün boyutunu değiştirmeyecektir. partprobe -syalnızca bölüm yeniden boyutlandırma sırasında kullanılıyorsa çalışır (fdisk çekirdeğe bildirdiğinde başarısız oldu), ancak artık değil.
Patrick

@Patrick, bunun için bir fikir eklemedim; Komutu backticks'e koyarak düzenlemeyi "geliştirdim" (kod için savaş ücretlerden kaçar!).
HalosGhost

Üzgünüm, yanlış tarih olayının adını oku. Sizin için geçerli olan @Qetesh sonra :-)
Patrick

1
Çekirdeğe bölümün boyutunu güncellemesini söylemek için 2. adım için "partx -u" kullanarak yeniden başlatılamaması mümkündür: etkin bölümlerde bile çalışır ve daha önce /sys/.../sdXY/size kontrol edilerek doğrulanabilir ve sonra.
AB

11

Yanıtların hiçbiri LVM'nin gücüne adalet getirmedi.

(Bu, yukarıdaki soruya frostchutz yorumuna dayanmaktadır.)

Gerçekleri alalım:

  • OP'nin iki bölümü vardır, sdb1 ve sdb2, LVM için fiziksel bir birimdir.
  • sdb1 şu anda ntfs, hacim grubu homeiçindeki mantıksal hacme o boşluğu vermemiz gerekiyor linuxvg.

LVM, "pragmatik yol" u kullanarak adımlar:

  • sdb1'de fiziksel birim oluşturun: pvcreate /dev/sdb1
  • sdb1'i şuna ekle linuxvg:vgextend linuxvg /dev/sdb1
  • Mantıksal hacmi hometüm boş alanlarla genişlet :lvextend -l +100%FREE /dev/linuxvg/home
  • ext4 fs genişletmek: resize2f /dev/linuxvg/home

LVM, büyük oranda dolaylı izin verir. Mantıksal bir birim, birkaç disk kullanıyor olabilecek bir birim grubunun içindedir.

ana sayfa -> linuxvg -> (sdb1, sdb2, sdc1)

http://tldp.org/HOWTO/LVM-HOWTO/createvgs.html


10

Bu blog yazısı okunduktan sonra soru çözüldü . Çözümü kısaca yazacağım:

  • ile canlı bir cd'den boot
  • kullanın gdisk(GPT kullanıyorsanız) aksi takdirde iyi eski ile gidebilirsinizfdisk
  • benim durumumda bölüm ayarlarına dikkat et gdisk -l /dev/sdb
  • ile bölümünü sil
  • öncekiyle tam olarak aynı hizada yeni bir bölüm yarat (benim örneğimde 2048 bloğundan başlayarak)
  • yeni bölüm tablosunu yaz
  • partprobe -syeniden başlatmadan bölüm tablosunu yenilemek için çalıştırın
  • fiziksel hacminizi pvresize /dev/sdb1pv'nizle veya nerede olursanız olun ( boyutunuzu pvsbilmiyorsanız belirlemek için kullanın )
  • şimdi lvextend -l +100%FREE /dev/file/of/your/lvbenim durumumdaki mantıksal hacminizi yeniden boyutlandırınsudo lvextend -l +100%FREE /dev/linuxvg/home
  • dosya sistemini yeniden boyutlandır sudo resize2fs /dev/linuxvg/home
  • ilk önce tutarlılığı kontrol et sudo e2fsck -f /dev/linuxvg/home
  • keyfini çıkarın :)

Aslında bu adımların yarısını kesebilir ve sadece 1 yeniden başlatmayla yapabilirsiniz.
Patrick

GParted bölümü yeniden boyutlandırmayı reddetti, çünkü kilitliydi (bu anahtar sembol).
klingt.net

4

Bazı harika cevaplar zaten.

Eğer xfs kullanıyorsanız, o zaman komutu kullanın.

xfs_growfs /mountpoint

resize2fs yerine. Kök bölümünü büyütmüşsünüz gibi mountpoint etkinken bunu yapabilirsiniz ve sonrasında yeniden başlatmanız gerekmez.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.