LVM

OpenSUSEa suomeksi

Sisällysluettelo

LVM – Logical Volume Manager

LVM eli Logical Volume Manager on Linuxin ytimen loogisten taltioiden hallintakomponentti. Sen avulla järjestelmän tallennuslaitteet näkyvät abstraktimpina kokonaisuuksina, taltioryhminä (volume groups) ja loogisina taltioina (logical volumes). Näiden kokoja voidaan muutella liittämällä niihin lisää fyysisiä taltioita tai poistamalla vanhoja tai muokkaamalla loogisten taltioiden kokoja suhteessa toisiinsa.

Voit ottaa LVM:n käyttöön asennuksen yhteydessä tai jälkeenpäin jos olet jo asentanut openSUSE:si ilman LVM:ää. /boot osiota ei kannata laittaa LVM:n hallittavaksi, koska se voi auheuttaa turhaa päänvaivaa. Muutettaessa loogisten osioiden kokoa tulee osion olla irroitettuna liitoskohdasta. Tämä kannattaa huomioida kun luo loogisia osiota. Esim. Jos luulet tarvitsevasi /home osiossa tilaa tulevaisuudessa lisää, kannattaa se luoda omaksi loogiseksi osioksi jolloin se on helppo kasvattaa. Jos joudut kasvattamaan juuriosiota (/) tulee sinun bootata koneesi jollain live levyllä, jotta pääset muuttamaan sen kokoa.

Alla olevassa kuvassa on vain yksi esimerkki kuinka osiot voisi luoda. Tässä esimerkissä on kaksi taltioryhmää, mutta niitä ei ole pakko luoda kun yksi. Alla olevan esimerkin kokoa on helppo kasvattaa vaikka lisäämällä uusi fyysinen taltio joka liitettäisiin datavol taltioryhmään tämän jälkeen tila voitaisiin allokoida vaikka mp3 osiolle.

LVM
LVM

Muista varmistaa tietosi!

HUOM!!! Suosittelen tutustumaan LVM:n käyttöön vaikka Virtualbox tai vmware ohjelmilla ennen kuin otat sen käyttöön oikeassa ympäristössä. Pahimassa tapauksessa voit menettää kaikki tiedostosi joten varmista, että kaikista tärkeistä tiedostoista on olemassa varmuuskopiot.



1. Kun asennusvaiheessa tulet “Levy” kohtaan valitse LVM-pohjainen ja paina Luo omat osiontiasetukset.
LVM

2. Tämän jälkeen valitse Omat osiontiasetukset (asiantuntijoille) ja paina Seuraava-painiketta.
LVM

3. Seuraavaksi luodaan /boot-osio. Anna osiolle haluamasi koko. Esim 100MB riittää aivan mainiosti.
Alusta osio Ext3 tiedostojärjestelmäksi valitse liitos kohdaksi /boot ja paina OK-painiketta.
LVM

4. Seuraavaksi loput osiot/kovalevyt. Paina Luo-painiketta, valitse Ensisijaine osio ja paina OK-painiketta.
LVM

5. Anna osiolle haluamasi koko ja valitse Alä alusta ja tiedostojärjestelmän ID:ksi 0x8E Linux LVM.
Paina lopuksi OK-painiketta.
LVM

6. Toista sama kaikille osiollesi
LVM

7. Kun olet luonut kaikki osiosi paina LVM...-painiketta. Seuraavaksi sinun tulee määritellä taltioryhmälle nimi.
Nimi voi olla mikätahansa tässä esimerkissä käytetään rootvol ja datavol nimiä.
Älä muuta Fyysisen jatkeen kokoa ellet tiedä mitä se tekee.
Rootvol-taltioryhmää käytetään tässä esimerkissä kaikille muille osiolle paitsi mp3-osiolle jolle luomme oman taltioryhmän.
HUOM. Kotihakemistot menevät tässä ohjeessa siis rootvol taltioryhmän alle.
LVM

8. Luodaan toinen taltioryhmä ja nimetään se datavol:ksi.
LVM

9. Kun olet luonut taltioryhmät tulee sinun liittää aikaisemmin luodut osiot näihin ryhmiin.
Valitse oikea taltioryhmä sitten valitse “laite” ja paina lisää ryhmä-painiketta.
Toista tämä kaikille tekemillesi taltioryhmille. Tässä esimerkissä siis käytetään /dev/sda2 (oletetaan olevan kovalevy 1)
ja /dev/sda3 (oletetaan olevan kovalevy 2).
Älä hämäänny osiosta /dev/sda4 (sen oletetaan olevan kovalevy 3), se on tarkoitus liittää myöhemmin kun halutan kasvattaa mp3-osion kokoa.
LVM

10. Kun liittänyt “laitteet” taltioryhmiin paina Seuraava-painiketta. Tämän jälkeen luomme loogiset taltiot. Paina lisää taltio-painiketta.
Ensimmäiseksi luodaan swap. Määrittele loogisen taltion nimi, koko, valitse tiedostojärjestelmäksi Swap ja liitoskohdaksi swap.
LVM

11. Toistetaan sama root taltiolle.Määrittele loogisen taltion nimi, koko, valitse tiedostojärjestelmäksi Ext3 ja liitoskohdaksi /.
LVM

12. Seuraavaksi valitse datavol taltioryhmä pudotusvalikosta ja paina Lisää-painiketta.
Määrittele loogisen taltion nimi, koko, valitse tiedostojärjestelmäksi Ext3 ja liitoskohdaksi /mp3.
LVM

13. Kun olet valmis saat yhteenvedon määrittemistäsi taltioista. Mikäli kaikki on niin kuin suunnittelit paina Seuraava-painiketta jatkaaksesi asennusta.
LVM

14. Saavut Osiontityökaluun. Tässä näet vielä toisenlaisen yhteenvedon. Paina Seuraava-painiketta jatkaaksesi asennusta.
LVM

15. Saavut takaisin osiontiehdotus valikkoon josta aloitimme. Paina Seuraava-painiketta jatkaaksesi asennusta.
LVM



Loogisen taltioryhmän suurentaminen

Sitten kun huomaat olevasi tilanteessa jossa levytila on käymässä vähiin tulet huomaamaan LVM:n käyttötarkoituksen. Kun sinulla on LVM käytössä voit lisätä uuden levyn olemassa olevan taltioryhmään jolloin saat lisää levytilaa käyttöön. Sinun ei tarvitse kopioida tiedostoja välillä toiselle osiolle vaan LVM osaa ottaa uuden tilan “lennossa” käyttöön. Lisätään esimerkkimme mp3 osioon lisää tilaa. Aikaisemmin luotu /dev/sda4 osio esittää tässä tapauksessa uutta fyysistä taltiota.

Jos et alustanut alussa /dev/sda4 osiota LVM:n käyttöön niin sinun tulee tehdä määritys ennen kuin voit lisätä uuden osion taltioryhmään.

Muista varmistaa tietosi!

HUOM!!! Suosittelen tutustumaan LVM:n käyttöön vaikka Virtualbox tai vmware ohjelmilla ennen kuin otat sen käyttöön oikeassa ympäristössä. Pahimassa tapauksessa voit menettää kaikki tiedostosi joten varmista, että kaikista tärkeistä tiedostoista on olemassa varmuuskopiot.



1. Avaa komentotulkki ja irroita mp3-liitos.

Kuva:Shellscript.png

sudo umount /mp3



2. Avaa LVM-sovellus. Yast → Järjestelmä → LVM
LVM

3. Valitse oikea Taltioryhmä, Fyysinen taltio ja paina lisää taltio-painiketta.
Huomaa oikeassa reunassa käytettävissä oleva koko.
LVM

4. Nyt käytettävissä oleva koko pitäisi olla kasvanut lisääsi taltion verran.
Tila ei vielä ole kuitenkaan allokoitu millekkään loogiselle osiolle.
Valitse oikeanpuoleisesta ikkunasta mp3 liitos ja paina muokkaa painiketta.
LVM

5. Sinulle aukeaa loogisen taltion muokkausikkuna.
Jos haluat määritellä kaiken tilan mp3-osiolle paina max-painiketta,
muuten määrittele itse paljonko haluat lisää tilaa määritellä.
Lopuksi paina OK-painiketta.
LVM

6. Nyt sinulla pitäisi näkyä mp3-osiolle uusi kasvatettu koko.
Tämän jälkeen kun painat OK-painiketta Yast tekee tarvittavat toimenpiteet liittäkseen osiot.
Lisäämästäsi tilasta riippuen tämä saattaa kestää useita minutteja
joten älä sammuta ikkunaa ennen kun sinulle tulee ilmoitus onnistuneesta kasvatuksesta
LVM

7. Kun sinulle tulee seuraava ilmoitus on uusi tila lopullisesti käytettävissä.
LVM



CLI / Komentorivi

Kaiken ylläolevan voi myös tehdä komentoriviltä. Alla luodaan samat asiat komentorivi komennoin. Sinun tulee olla root-läyttäjä suorittaessasi komennot!

Muista varmistaa tietosi!

HUOM!!! Suosittelen tutustumaan LVM:n käyttöön vaikka Virtualbox tai vmware ohjelmilla ennen kuin otat sen käyttöön oikeassa ympäristössä. Pahimassa tapauksessa voit menettää kaikki tiedostosi joten varmista, että kaikista tärkeistä tiedostoista on olemassa varmuuskopiot. Tässä esimerkissä oletetaan että /dev/sda4 on uusi kovalevy jonka haluamme liittää datavol taltioryhmään.



1. Tarkistetaan fdisk-komennolla levyn osiot. Jos sinulla on kokonaan uusi levy ei sinulla näy listassa osioita.

 fdisk /dev/sda
 
 Command (m for help): p
 
 Disk /dev/sda: 536.8 GB, 536870912000 bytes
 255 heads, 63 sectors/track, 65270 cylinders (Tässä sinulla näkyy sylintereiden kokonaismäärä)
 Units = cylinders of 16065 * 512 = 8225280 bytes
 Disk identifier: 0x000bfb3f
 
 Device    Boot      Start         End      Blocks   Id  System
 /dev/sda1   *           1          13      104391   83  Linux
 /dev/sda2              14       13068   104864287+  8e  Linux LVM
 /dev/sda3           13069       26123   104864287+  8e  Linux LVM
 
 Command (m for help): n (Luodaan uusi osio)
 Command action
  e   extended
  p   primary partition (1-4)
 p (luodaan ensisijainen osio)
 Selected partition 4 (tässä esimerkissä osion numero on 4, mutta tyhjällä levyllä se olisi 1)
 First cylinder (26124-65270, default 26124): paina enter (tyhjällä levyllä anna arvoksi 1)
 Using default value 26124
 Last cylinder or +size or +sizeM or +sizeK (26124-65270, default 65270):
 Using default value 65270 paina enter (varmista, että default arvo on sama kun sylintereiden maksimimäärä)
 
 Command (m for help):


2. Määritellään osion tyypiksi Linux LVM

 Command (m for help): t (määrittää osion tyypin)
 Partition number (1-4): 4 (valitaan aikaisemmin luotu osio)
 Hex code (type L to list codes): 8E (8E = Linux LVM, voit katsoa kaikki tyypit antamalla L)
 Changed system type of partition 4 to 8e (Linux LVM)
 
 Command (m for help): p (tarkistetaan, etä osio on Linux LVM)
 
 Disk /dev/sda: 536.8 GB, 536870912000 bytes
 255 heads, 63 sectors/track, 65270 cylinders
 Units = cylinders of 16065 * 512 = 8225280 bytes
 Disk identifier: 0x000bfb3f
 
    Device Boot      Start         End      Blocks   Id  System
 /dev/sda1   *           1          13      104391   83  Linux
 /dev/sda2              14       13068   104864287+  8e  Linux LVM
 /dev/sda3           13069       26123   104864287+  8e  Linux LVM
 /dev/sda4           26124       65270   314448277+  8e  Linux LVM
 
 Command (m for help):


3. Kirjoitetaan muutokset levylle. Jos saat alla olevan varoituksen boottaa tämän kälkeen kone.

 Command (m for help): w
 The partition table has been altered!
 
 Calling ioctl() to re-read partition table.
 
 WARNING: Re-reading the partition table failed with error 16: Device or resource busy.
 The kernel still uses the old table.
 The new table will be used at the next reboot.
 Syncing disks.


4. Luodaan /dev/sda4 osiosta fyysinen taltio.

 pvcreate /dev/sda4
 Physical volume "/dev/sda4" successfully created
 pvs
 PV         VG      Fmt  Attr PSize   PFree
 /dev/sda2  rootvol lvm2 a-   100.00G   4.00M
 /dev/sda3  datavol lvm2 a-   100.00G   4.00M
 /dev/sda4          lvm2 --   299.88G 299.88G


5. Taltioryhmän luominen. HUOM! tätä ei tarvitse tehdä jos sinulla on jo aikaisemmin luotu taltioryhmä niin kuin tässä esimerkissä on datavol.

 vgcreate testvolume /dev/sda4
 Volume group "testvolume" successfully created


6. Kasvatetaan datavol taltioryhmän kokoa.

 vgextend datavol /dev/sda4
 Volume group "datavol" successfully extended


7. irroitetaan osio liitoksesta.

 umount /mp3


8. kasvatetaan loogista osiota

 lvextend --size 399.8G -r /dev/datavol/musa
 Rounding up size to full physical extent 399.80 GB
 fsck 1.40.8 (13-Mar-2008)
 e2fsck 1.40.8 (13-Mar-2008)
 /dev/datavol/musa: clean, 11/6553600 files, 459383/26214400 blocks
 Extending logical volume musa to 399.80 GB
 Logical volume musa successfully resized
 fsadm: Missing command. (see: fsadm --help)
 fsadm failed: 1


9. liitetään osio takaisin

 mount -a

tai

 mount /dev/datavol/musa /mp3


Snapshot

Snapshot on kätevä tapa kloonata tietyn hetkinen tilanne levyltä. Yleisimpiä syitä snapshottien ottamiseen on varmuuskopion tekeminen esimerkiksi tietokannasta, koska tietokannassa tapahtuu kokoajan muutoksia voidaan siitä snapshot tekemällä ottaa varmuuskopio joka ei muutu kopioinnin aikana. Toinen käytännöllinen tapa tehdä snapshotteja on tiettyjen asioiden testaaminen. Voit rauhassa testata jotain muutoksia snapshotilla ja jos jokin menee pieleen voit aina palata takaisin alkuperäiseen tilanteeseen.
Snapshottia luodessasi et tarvitse välttämättä samaa määrää tyhjää tilaa kun mitä sinulla on käytössä dataa. Snapshot ottaa kopion sen hetkisestä tilanteesta kun sen teet ja tarvitset snapshottia varten tilaa vain sen verran kun arvioit uutta dataa tulevan sillä välin kun käytät kopiota eli vain uusi data tallennetaan.

Tarkistetaan että loogisessa taltioryhmässä on vapaata tilaa

vgdisplay
 --- Volume group ---
 VG Name               datavol
 System ID
 Format                lvm2
 Metadata Areas        2
 Metadata Sequence No  27
 VG Access             read/write
 VG Status             resizable
 MAX LV                0
 Cur LV                1
 Open LV               1
 Max PV                0
 Cur PV                2
 Act PV                2
 VG Size               399.88 GB
 PE Size               4.00 MB
 Total PE              102370
 Alloc PE / Size       102144 / 399.00 GB
 Free  PE / Size       226 / 904.00 MB
 VG UUID               2Eyt0s-Z17I-Bafk-B2gh-bnUd-D28H-RQ0z5r


Tässä esimerkissä haluamme varata 10Gt snapshotin aikasille muutoksille joten vapaa tila ei riitä ennen kun pienennämme loogista taltiota ja tiedostojärjestelmää. Mikäli sinulla on riittävästi vapaata tilaa voit hypätä seuraavan kohtien yli.

Ensimmäiseksi tulee irroittaa liitoskohta.

umount /mp3

Seuraavaksi tiedostojärjestelmälmä pitää uudelleen järjestää.

e2fsck -f /dev/datavol/musa

Tämän jälkeen muutetaan/pienennetään tiedostojärjestelmän kokoa. Tässä tapauksessa uudeksi kooksi tulee 300Gt.

resize2fs /dev/datavol/musa 300G

Lopuksi pienennetään looginen taltio.

lvreduce -L 300G /dev/datavol/musa
WARNING: Reducing active logical volume to 300.00 GB
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce musa? [y/n]: y
Reducing logical volume musa to 300.00 GB
Logical volume musa successfully resized

Lopuksi liitetään mp3 taltio takaisin.

mount /mp3



Nyt kun olemme raivanneet vapaata tilaa snapshot taltiolle voimme luoda sen.

lvcreate -s -L10GB -n mp3snapshot /dev/datavol/musa

Sitten luodaan liitoskohta snapshot taltiolle

mkdir /mnt/mp3snap

Seuraavaksi liitetään uusi mp3snapshot osio.

mount /dev/datavol/mp3snapshot /mnt/mp3snap/

Nyt jos tarkastetaan alkuperäisen ja snapshot taltion tietoja nähdään että ne ovat identtiset.

df -h /mp3
Filesystem                Size  Used Avail Use% Mounted on
/dev/mapper/datavol-musa  296G  191M  290G   1% /mp3
df -h /mnt/mp3snap/
Filesystem                       Size  Used Avail Use% Mounted on
/dev/mapper/datavol-mp3snapshot  296G  191M  290G   1% /mnt/mp3snap

Kun olet lopettanut snapshot taltio käytön tulee se poistaa, että varaamamme 10Gt ei ylity. Tämän voi tietenkin kiertää sillä jos luo saman kokoisen snapshot osion kun mitä alkuperäinen osio on, mutta se ei ole aina järkevää.

Irroitetaan mp3snapshot liitoksestaan

umount /mnt/mp3snap/

Poistetaan snapshot taltio

lvremove /dev/datavol/mp3snapshot
Do you really want to remove active logical volume "mp3snapshot"? [y/n]: y
Logical volume "mp3snapshot" successfully removed


Lisäinformaatiota

Haettu osoitteesta http://opensuse.fi/LVM