Sziasztok!
Itt tartok:
pvs
PV VG Fmt Attr PSize PFree
/dev/sda6 vg_gepneve1 lvm2 a-- 694,12g 13,00g
Azt szeretném, hogy a nem allokált PE-kkel kisebb legyen a volume group-om, mert a partíció méretét is csökkenteni szeretném. Ha a PE-k nem folytonosak, akkor valahogy a kisebb címek felé kellene align-olni előbb. Ilyen példát nem láttam a neten.
Hogyan kell ezt?
Update:
Az alignment rendben van, csak az összehúzás kellene.
--- Physical Segments ---
Physical extent 0 to 14681:
Logical volume /dev/vg_gepneve1/LogVol02
Logical extents 0 to 14681
Physical extent 14682 to 15961:
Logical volume /dev/vg_gepneve1/LogVol00
Logical extents 0 to 1279
Physical extent 15962 to 21795:
Logical volume /dev/vg_gepneve1/LogVol01
Logical extents 0 to 5833
Physical extent 21796 to 22211:
FREE
- 3686 megtekintés
Hozzászólások
pvresize
- A hozzászóláshoz be kell jelentkezni
Ezek szerint az fs zsugorításon túl vagy.
Alapból az lvm-et nem érdekli a PE-k nem folytonossága. A szabad PE-k lehetnek össze vissza is. (ha több vinyód/particiód van)
Tehát: 1 fs resize (mindig kisebbre mint amire szükséged lesz a végén)
2 lv resize (lásd man és/vagy lvresize --help) (kicsit többet zsugorítasz mint ami kell)
3 vg resize (lásd man és/vagy vgresize --help) (kicsit többet zsugorítasz mint ami kell)
4 pv resize (lásd man és/vagy pvresize --help) (kicsit többet zsugorítasz mint ami kell)
5 kiszámolás után kicsi (lásd man és/vagy vgresize --help) ráhagyással partició resize.
Utána visszafele mindent (5,4,3,2,1) a rendelkezésre álló helyig resize.
Persze mentésed legyen. Elvileg az lvm nem enged hibás méretet megadni, de biztos ami biztos.
Lehet van egyszerűbb módszer is. Én így csináltam legutóbb is.
---------------------------------------------------------------
Ritkán szólok hozzá dolgokhoz. Így ne várj tőlem interakciót.
- A hozzászóláshoz be kell jelentkezni
Köszönöm, időközben megoldottam.
A pvresize-zal az volt a bajom, hogy az vagy beletágul a partícióba, vagy pontos méretű (--setphysicalvolumesize) lesz. Én meg azt szerettem volna, hogy úgy méretezzen át, hogy rázsugorodjon az allokált PE-kre.
Minden esetre azt csináltam, hogy megnéztem a PE méretét, az allokált PE-ket, kiszámoltam a kettő szorzatát, s ennél picit többet mondtam a --setphysicalvolumesize paramétereként. Maradt is elenyésző számú nem allokált physical extent. Utána ebbe beletágítottam az utolsó logical volume-ot, majd a filerendszert. Ezt követően töröltem a partíciót, majd újra létrehoztam úgy, hogy az első szektor maradt, az utolsó pedig 12 GiB-tal hamarabb véget ért, majd csináltam a végére egy swap-et.
Utána mkswap, uuid alapján bejegyzés az fstab-ba.
Úgy látom, vgresize nincs, vgreduce van, de az adott fizikai eszköz eltávolítására való. Itt összesen egy HDD egy partíciójáról volt szó.
Az egész felhajtás onnan indult, hogy a 4 GiB RAM mellé tettem még 4 GiB-ot a barátnőm gépébe, így lett 8 GiB RAM, de a swap csak 4 GiB volt, s azt szerettem volna, hogy ne okozzon gondot, ha esetleg hibernálásra kerülne sor. Így nagyobb swap-et akartam. Ehhez viszont az LVM-ben lévő jó nagy /var-ból csippentettem le.
A két swap összeolvasztása nem triviális, mert ugyan a partíció határokat át tudom számolni, ugyanakkor az LVM-et tartalmazó partíció adatát is mozgatni kellene. Ezzel viszont az a baj, hogy a forrás és cél területek át vannak lapolódva, tehát ha hátrafelé akarom mozgatni, akkor hátulról előrefelé kell jönni a pointerekkel.
Azt nem tudom, hogy a dd odafigyel-e az átlapolt területekre, de félő, hogy nem. Írhattam volna bash scriptet, amelyik 12 GiB-nál kisebb blokkokban mozgat elölről hátra úgy, hogy a blokkok pointere hátulról előre mozog, mert akkor a blokkok között garantáltan nincs átlapolás, viszont, ha valamit elszámolok, elírok, annyi az adatoknak, mentésre meg most nem volt lehetőség. Ezért inkább két swap lett, a Linux tudja kezelni.
Szerk.: És persze, amíg kb. 700 GB-ot átmozgatok ugyanazon HDD-ről ugyanarra a HDD-re, az nagyon sok idő lett volna.
tr '[:lower:]' '[:upper:]' <<<locsemege
LOCSEMEGE
- A hozzászóláshoz be kell jelentkezni