Sul mio SSD da 240 GB avevo inizialmente due partizioni, una contenente il volume logico con Linux Mint e laltra conteneva una partizione NTFS da condividere con Windows .

Ora ho rimosso la partizione NTFS e desidero estendere il mio gruppo di volumi logici per utilizzare lo spazio su disco rilasciato.

Come faccio a estendi il gruppo di volumi , il mio volume logico contenente / home e il filesystem (ext4) su / home? È possibile farlo online?

PS: Sì, so che devo eseguire il backup dei miei dati 🙂

/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 

output di 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 

output di 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 

Commenti

  • Bene, il modo più semplice sarebbe ‘ è stato solo pvcreare la partizione NTFS e utilizzare vgextend, invece di rimuovere completamente la partizione. Se invece aumenti la partizione PV esistente, probabilmente dovrai riavviare, poiché Linux si rifiuta di rileggere la tabella delle partizioni mentre il disco è in uso. Lavorare su questo argomento online è imbarazzante. – Mostra la tabella delle partizioni corrente.
  • Posso riavviare se necessario.

Risposta

Puoi farlo in modo abbastanza semplice. Un po sorpreso che non ci fosse già una risposta per questo qui.

Puoi eseguire lintero processo mentre sei in esecuzione sul filesystem che desideri ridimensionare (sì, è sicuro e completamente supportato). Non sono necessari CD di ripristino o sistemi operativi alternativi.

  1. Ridimensiona la partizione (di nuovo, puoi farlo con il sistema in esecuzione). GParted è facile da usare e supporta il ridimensionamento.
    Puoi anche utilizzare uno strumento di livello inferiore come fdisk . Ma dovrai eliminare la partizione e ricrearla. Assicurati solo quando lo fai che la nuova partizione inizi esattamente nella stessa posizione.
  2. Riavvia. Poiché la tabella delle partizioni è stata modificata sul sistema in esecuzione, non avrà effetto fino al riavvio.
  3. Esegui pvresize /dev/sdXY per fare in modo che LVM prenda il nuovo spazio.
  4. Ridimensiona il volume logico con lvextend. Se desideri utilizzare tutto ciò, lvextend -r -l +100%FREE /dev/VGNAME/LVNAME. -r ridimensionerà anche il filesystem.
    Anche se raccomando sempre di non utilizzare lintero gruppo di volumi. Non sai mai di cosa avrai bisogno in futuro. Puoi sempre espandere in seguito, non puoi “rimpicciolirti.

Commenti

  • Vorrei accettare la tua risposta, ma ‘ non ha funzionato come hai suggerito, perché GParted può ‘ t ridimensionare la partizione di root su un sistema in esecuzione (almeno nel mio caso).
  • @HalosGhost Ho ripristinato la tua modifica. partprobe -s non fa quello che pensi. Il kernel non rileverà il ridimensionamento di una partizione in uso. partprobe -s funziona solo se la partizione era in uso durante il ridimensionamento (quindi quando fdisk ha notificato al kernel che non è riuscito), ma non lo è più.
  • @Patrick, Non ho aggiunto lidea per questo; Ho ” migliorato ” la modifica inserendo il comando in backtick (la guerra per il codice sfugge agli stipendi!).
  • Oh, scusa, leggi il nome dallevento storico sbagliato. @Qetesh che si applica a te allora 🙂
  • È ‘ possibile non riavviare affatto usando ” partx -u ” per il passaggio 2, per dire al kernel di aggiornare la dimensione della partizione ‘: funziona anche su partizioni attive e può essere verificato controllando /sys/…/sdXY/size prima e dopo.

Risposta

Nessuno di le risposte rendono giustizia alla potenza di LVM.

(Questo si basa sul commento di @frostchutz alla domanda precedente.)

Vediamo i fatti:

  • OP ha due partizioni, sdb1 e sdb2 è un volume fisico per LVM.
  • sdb1 è ntfs in questo momento, dobbiamo dare quello spazio a home volume logico allinterno del linuxvg gruppo di volumi.

Passaggi LVM utilizzando il ” modo pragmatico “:

  • crea volume fisico su sdb1: pvcreate /dev/sdb1
  • aggiungi s db1 a linuxvg: vgextend linuxvg /dev/sdb1
  • estendi volume logico home con tutto lo spazio libero: lvextend -r -l +100%FREE /dev/linuxvg/home

LVM consente un ottimo livello di indirezione. Un volume logico si trova allinterno di un gruppo di volumi, che potrebbe utilizzare diversi dischi.

home – > linuxvg – > (sdb1, sdb2, sdc1)

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

Commenti

  • Ha funzionato, grazie. Ho usato lvresize -l +100%FREE ... al posto degli ultimi 2 comandi lvextend + resizefs
  • Buono a sapersi, grazie per aver condiviso @AlessandroDentella!
  • Se aggiungi -r al comando lvextend, estenderà automaticamente anche il filesystem. Quindi: lvextend -r -l +100%FREE /dev/linuxvg/home e puoi evitare il resize2fs
  • aggiornato. Grazie! @lucaferrario

Risposta

La domanda è stata risolta, dopo aver letto questo post del blog. Scriverò la soluzione in forma breve:

  • avvia da un live cd con
  • usa gdisk (se usi GPT ) altrimenti potresti andare con il buon vecchio fdisk
  • nota le impostazioni della partizione, nel mio caso gdisk -l /dev/sdb
  • elimina la tua partizione con
  • crea una nuova partizione con lo stesso identico allineamento della precedente (nel mio esempio a partire dal blocco 2048)
  • scrivi la tua nuova tabella delle partizioni
  • esegui partprobe -s per aggiornare la tabella delle partizioni senza riavviare
  • ridimensiona il volume fisico con pvresize /dev/sdb1 o dovè il tuo pv (usa pvs per determinare se non “lo sai)
  • ora ridimensiona il tuo volume logico con lvextend -l +100%FREE /dev/file/of/your/lv, nel mio caso sudo lvextend -l +100%FREE /dev/linuxvg/home
  • ridimensiona il filesystem sudo resize2fs /dev/linuxvg/home
  • prima controlla la coerenza sudo e2fsck -f /dev/linuxvg/home
  • divertiti 🙂

Commen ts

  • In realtà puoi tagliare circa la metà di questi passaggi e farlo con un solo riavvio.
  • GParted si è rifiutato di ridimensionare la partizione, perché era bloccato (questo simbolo della chiave).

Risposta

Già alcune ottime risposte.

Se stai usando xfs, allora usi il comando

xfs_growfs /mountpoint 

invece di resize2fs. Puoi farlo mentre il mountpoint è attivo, ad esempio se hai aumentato la partizione di root e non hai bisogno di riavviare dopo.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *