LVM

From ICO wiki
Jump to navigationJump to search

Artikkel on veel pooleli!

Sissejuhatus

Järgnev artikkel on kettajagude(?) haldustööriistast LVM. Eesmärgiks on tutvustada lugejale vahendi tööpõhimõtteid ning näidata praktilist väärtust. Teen ka juhendi Ubuntu Server x.x all kuidas lisada kodukataloogile uue kettaga mahtu juurde.


Eeldused:

  • LVM on sisseehitatud enamustele Linuxi distributsioonidele, seetõttu mingid lisavahendeid või rakendusi pole vaja installeerida. Kuid kui mingil põhjusel puudub, on pakk ja täpsemad juhised võimalik soetada siit : [1]


  • Kasutaja võiks olla Linux - keskkonnaga tuttav ning kuna tegevus toimub terminalis, seega ka terminalikäskude tundmine oleks vajalik eeldus.


  • Samuti peaks arvestama, et partitsioonitabelite muutmisega võib kaasneda andmete hävinemine.

Mis on LVM ?

LVM (Logical Volume Manager) on kettajagude haldusvahend Linuxikeskkonnas.

Ta on loodud kihina ketaste ja failisüsteemi vahele ning ettekujutus oleks selline:

  • Failisüsteemid
  • LVM
  • RAID
  • Füüsilised plokkseadmed (kõvakettad)

Lihtsustatult võiks öelda, et ühe LVM moodustab kihi, millega saab hallata korraga mitu (loogilist) kettajagu. Need koosnevad omakorda mitmest füüsilisest salvestusüksusest(kõvaketas, mingi muu kirjutav/lugev draiv).

Võimalused

  • Muuta olemasoleva failisüsteemi suurust, eeldusel et failisüsteem seda toetab
  • Tekitada kõvakettale partitsioone juurde, neid eemaldada. Sealjuures ei ole kasutusel olevate partitsioonitabelite muutmisel vaja opsüsteemi alglaadida.
  • Hiljem partitsioonide suurusi muuta ilma andmekadudeta.
  • Ühendada kokku väiksemaid füüsilised plokkseadmed üheks suuremaks loogiliseks seadmeks


LVM on kasutatav lisaks veel paljudeks tegevusteks. Sealhulgas:

  • failisüsteemide snapshottide tegemine ja kasutamine
  • loogiliste ketaste triibutamine sarnaselt RAID-0 -le
  • tervete ketaste või osade peegeldamine sarnaselt RAID-1 -le
  • ketaste liigutamine ja ühendamine üle võrgu


Negatiivsed küljed

  • Süsteemi taastamine võib osutuda väga keeruliseks.
  • Alglaadimisaeg võib muutuda pikemaks
  • Ajapikku võib probleemiks osutuda loogiliste kettajagude fragmenteeritus, mis muudab I/O jõudlust negatiivselt. See tuleneb sellest, et salvestusseadmed ei eralda vajalikku mahtu järjest.



Kasutamine

Pahatihti on vaja tööjaamale, serverile kettaruumi juurde.

Kui kettamahtu tegelikult on, kuid partitsioon hakkab failisüsteemi jaoks väikeseks jääma, siis saab seda lihtsalt juurde anda:


Kõvekettainfo saad:


siim:~# fdisk -l
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          18      144553+  83  Linux
/dev/sda2              19        2450    19535040   83  Linux
/dev/sda4            2451        2610     1285200   82  Linux swap / Solaris

Disk /dev/sdb: 85.8 GB, 85899345920 bytes 255 heads, 63 sectors/track, 10443 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/sdb doesn't contain a valid partition table

Meie näites ei ole algselt kettal /dev/sdb veel partitsioonitabelit. Teeme selle:

   server1:~# fdisk /dev/sdb
   WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
        switch off the mode (command 'c') and change display units to
        sectors (command 'u').
   Command (m for help):

Vajutades m, saame käskude nimekirja:

   Command (m for help): m
   Command action
  a   toggle a bootable flag
  b   edit bsd disklabel
  c   toggle the dos compatibility flag
  d   delete a partition
  l   list known partition types
  m   print this menu
  n   add a new partition
  o   create a new empty DOS partition table
  p   print the partition table
  q   quit without saving changes
  s   create a new empty Sun disklabel
  t   change a partition's system id
  u   change display/entry units
  v   verify the partition table
  w   write table to disk and exit
  x   extra functionality (experts only)
   Command (m for help):  n

Command action

  e   extended
  p   primary partition (1-4) p

Partition number (1-4): 1 First cylinder (1-10443, default 1): <ENTER> Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-10443, default 10443): +25000M

Command (m for help): t Selected partition 1


Üks võimalus on uue kettaga lisada kodukataloogile juurde lisamahtu.


Partitsioonide info saab käsuga


   [root@ubuntu]# df -k
   Filesystem           1K-blocks      Used Available Use% Mounted on
   /dev/sda3               505636    118224    361307  25% /
   /dev/sda1               101089     14281     81589  15% /boot
   none                     63028         0     63028   0% /dev/shm
   /dev/sda5               248895      6613    229432   3% /tmp
   /dev/sda7              3304768   2720332    416560  87% /usr
   /dev/sda2              3304768   3300536      4232  99% /var
   [root@ubuntu]#


Pärast ketta lisamist masinasse tuleb see partitsioneerida ning seejärel saab partitsiooni peale failisüsteemi teha.


Selleks kasutame fdiski


   [root@ubuntu]# fdisk /dev/sdb


   Disk /dev/sdb: 80.0 GB, 80026361856 bytes
   255 heads, 63 sectors/track, 9729 cylinders
   Units = cylinders of 16065 * 512 = 8225280 bytes

      Device Boot      Start         End      Blocks   Id   System

   Command (m for help):


Manuali on võimalik näha, vajutades m. Kõiki võimalikke partitsioone näeb p-d vajutades.




bla





Teiseks ...



Kui kettamahtu on järgi, kuid partitsioon hakkab failisüsteemi jaoks väikeseks jääma, on teiseks võimaluseks keerata LVM abil olemasoleva partitsiooni mahtu suuremaks.


If you need to change the size of an underlying block device for any reason, use the pvresize command to update LVM with the new size. You can execute this command while LVM is using the physical volume.

Kasutatud kirjandus

http://www.gnu.org/software/parted/manual/html_chapter/parted_7.html

http://en.wikipedia.org/wiki/Logical_Volume_Manager_%28Linux%29

http://en.wikipedia.org/wiki/Logical_volume_management

http://sourceware.org/lvm2/

http://www.tldp.org/HOWTO/LVM-HOWTO/