πŸ—ƒοΈ Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ логичСскиС Ρ‚ΠΎΠΌΠ° LVM Π½Π° Linux

by itisgood

БистСма хранСния Π΄Π°Π½Π½Ρ‹Ρ… – ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‚Π΅Ρ… ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ваш сСрвСр Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ, ΠΈ поэтому Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΊ сСбС ΠΏΡ€ΠΈΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ внимания, нСсмотря Π½ΠΈ Π½Π° Ρ‡Ρ‚ΠΎ.

Π­Ρ‚ΠΎ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ руководство ΠΏΠΎ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΡŽ LVM Π½Π° вашСм linux-сСрвСрС ΠΈΠ»ΠΈ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ станции.

Π‘Π»Π°Π³ΠΎΠ΄Π°Ρ€ΠΈΠΌ вас Π·Π° посСщСниС ΠΈ надССмся, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π² Π²Π°ΡˆΠΈΡ… поисках/ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ….

“НСудача – это ΠΏΡ€ΠΈΠΏΡ€Π°Π²Π°, которая ΠΏΡ€ΠΈΠ΄Π°Π΅Ρ‚ успСху вкус”. – Π’Ρ€ΡƒΠΌΠ΅Π½ ΠšΠ°ΠΏΠΎΡ‚Π΅

Настройка Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° LVM Π² Linux

НавСрняка Π²Ρ‹ ΡƒΠΆΠ΅ ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ, Π° Π΅Ρ‰Π΅ Π»ΡƒΡ‡ΡˆΠ΅ использовали LVM.

ВСхнология управлСния логичСскими Ρ‚ΠΎΠΌΠ°ΠΌΠΈ (LVM) ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ.

LVM Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ систСмным администраторам Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ способ управлСния дисковым Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ со старой ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠΎΠΉ разбиСния Π½Π° Ρ€Π°Π·Π΄Π΅Π»Ρ‹.

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ логичСскими Ρ‚ΠΎΠΌΠ°ΠΌΠΈ осущСствляСтся ΠΏΡƒΡ‚Π΅ΠΌ раздСлСния физичСских Ρ‚ΠΎΠΌΠΎΠ² (PV) Π½Π° физичСскиС экстСнты (PE), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Ρ‚Π΅ΠΌ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π½Π° логичСскиС экстСнты (LE).

ПослС этого логичСскиС экстСнты ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ‚ΠΎΠΌΠΎΠ² (VG).

Как Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ³Π°Π΄Π°Ρ‚ΡŒΡΡ, эти ΠΏΠΎΡ€ΠΎΠΆΠ΄Π΅Π½Π½Ρ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ‚ΠΎΠΌΠΎΠ² ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² логичСскиС Ρ‚ΠΎΠΌΠ° (LV), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Π² качСствС Π²Ρ‹ΡˆΠ΅ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚Ρ‹Ρ… Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ диска.

LVM позволяСт ΠΎΡ‡Π΅Π½ΡŒ просто ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Ρ‚ΠΎΠΌΠ° хранСния, ΠΊΠΎΠ³Π΄Π° это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ.

Зная это, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ погрузимся Π² настройку LVM.

Π― Π±ΡƒΠ΄Ρƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π»ΡΡˆ-Π½Π°ΠΊΠΎΠΏΠΈΡ‚Π΅Π»ΡŒ, Π½ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Π° для любого Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ накопитСля ΠΈΠ»ΠΈ устройства (ТСсткого диска ΠΈ Ρ‚.Π΄.).

Π¨Π°Π³ 1: ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅ устройство

Π’Ρ‹Π²Π΅Π΄ΠΈΡ‚Π΅ список доступных устройств ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ fdisk.

Как Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· Π²Ρ‹Π²ΠΎΠ΄Π°, сущСствуСт физичСскоС устройство, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ /dev/sdb.

$ sudo fdisk -l 
Disk /dev/sda: 119.2 GiB, 128035676160 bytes, 250069680 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
Disklabel type: dos
Disk identifier: 0xa3bc85b8

Device     Boot    Start       End   Sectors  Size Id Type
/dev/sda1       62517248 250067789 187550542 89.4G 83 Linux
/dev/sda2           2048  62517247  62515200 29.8G 83 Linux

Partition table entries are not in disk order.

Disk /dev/sdb: 14.9 GiB, 15938355200 bytes, 31129600 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
Disklabel type: dos
Disk identifier: 0x2a4e70c2

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb1        8192 31129599 31121408 14.9G  c W95 FAT32 (LBA)

Π¨Π°Π³ 2: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»Π° для устройства LVM

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΡŒΡ‚Π΅ физичСскоС устройство, ΠΎΡ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π² Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ fdisk, parted ΠΈΠ»ΠΈ gdisk.

ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ fdisk.

Π‘Π½Π°Ρ‡Π°Π»Π° ΠΌΡ‹ ΡƒΠ΄Π°Π»ΠΈΠΌ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΈ создадим Π½ΠΎΠ²Ρ‹Π΅.

$ sudo fdisk /dev/sdb                                                                                  
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): n
Partition type
   p   primary (2 primary, 0 extended, 2 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (1-4, default 1): 
First sector (2048-31129599, default 2048): 
Last sector, +sectors or +size{K,M,G,T,P} (2048-31129599, default 31129599): +7G

Created a new partition 1 of type 'Linux' and of size 7 GiB.

Command (m for help): t
Selected partition 1
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'.

Command (m for help): n
Partition type
   p   primary (1 primary, 0 extended, 3 free)
   e   extended (container for logical partitions)
Select (default p): p
Partition number (2-4, default 2): 
First sector (14682112-31129599, default 14682112): 
Last sector, +sectors or +size{K,M,G,T,P} (14682112-31129599, default 31129599): 

Created a new partition 2 of type 'Linux' and of size 7.9 GiB.

Command (m for help): t
Partition number (1,2, default 2): 2
Hex code (type L to list all codes): 8e

Changed type of partition 'Linux' to 'Linux LVM'.

Command (m for help): w
The partition table has been altered.
Failed to remove partition 1 from system: Device or resource busy
Failed to add partition 1 to system: Device or resource busy
Failed to add partition 2 to system: Device or resource busy

The kernel still uses the old partitions. The new table will be used at the next reboot. 
Syncing disks.

ΠŸΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ² LVM, Π½Π°Π±Ρ€Π°Π² fdisk -l ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

$ sudo fdisk -l 
[sudo] password for penchant: 
Disk /dev/sda: 119.2 GiB, 128035676160 bytes, 250069680 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
Disklabel type: dos
Disk identifier: 0xa3bc85b8

Device     Boot    Start       End   Sectors  Size Id Type
/dev/sda1       62517248 250067789 187550542 89.4G 83 Linux
/dev/sda2           2048  62517247  62515200 29.8G 83 Linux

Partition table entries are not in disk order.


Disk /dev/sdb: 14.9 GiB, 15938355200 bytes, 31129600 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
Disklabel type: dos
Disk identifier: 0x2a4e70c2

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdb1           2048 14682111 14680064    7G 8e Linux LVM
/dev/sdb2       14682112 31129599 16447488  7.9G 8e Linux LVM


Partition table entries are not in disk order.

Π¨Π°Π³ 3: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ физичСского Ρ‚ΠΎΠΌΠ°

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ физичСских Ρ‚ΠΎΠΌΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ pvcreate

$ sudo pvcreate /dev/sdb1 /dev/sdb2
  Physical volume "/dev/sdb1" successfully created.
  Physical volume "/dev/sdb2" successfully created.

ΠŸΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ физичСских Ρ‚ΠΎΠΌΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ pvdisplay

$ sudo pvdisplay
  --- Physical volume ---
  PV Name               /dev/sdb1
  VG Name               tech
  PV Size               7.00 GiB / not usable 4.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              1791
  Free PE               214
  Allocated PE          1577
  PV UUID               cGnGfI-oVG7-9CcY-kdmK-aR4R-iZY9-O9gD0g
   
  --- Physical volume ---
  PV Name               /dev/sdb2
  VG Name               tech
  PV Size               7.84 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              2007
  Free PE               0
  Allocated PE          2007
  PV UUID               UvewNB-Z2d1-T3L1-c92C-rOLa-lcrg-19zuPk

Π¨Π°Π³ 4: Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π³Ρ€ΡƒΠΏΠΏΡƒ Ρ‚ΠΎΠΌΠΎΠ²

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ Π³Ρ€ΡƒΠΏΠΏΡƒ Ρ‚ΠΎΠΌΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ vgcreate с Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΌ Π²Π°ΠΌΠΈ ΠΈΠΌΠ΅Π½Π΅ΠΌ.

Π― ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ‘tech’.

$ sudo vgcreate tech /dev/sdb1 /dev/sdb2                                                                      
  Volume group "tech" successfully created

Π¨Π°Π³ 5: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ логичСского Ρ‚ΠΎΠΌΠ°

Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ логичСский Ρ‚ΠΎΠΌ с ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ ΠΏΠΎ Π²Π°ΡˆΠ΅ΠΌΡƒ Π²Ρ‹Π±ΠΎΡ€Ρƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ lvcreate, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ†ΠΈΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΠΈ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.

  • ΠžΠΏΡ†ΠΈΡ -n ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для указания ΠΈΠΌΠ΅Π½ΠΈ логичСского Ρ‚ΠΎΠΌΠ°.
  • ΠžΠΏΡ†ΠΈΡ -L ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€. Он ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π² MiB для ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ‚ΠΎΠ² ΠΈΠ»ΠΈ GiB для Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚ΠΎΠ².
$ sudo lvcreate -n part1 -L 14GiB tech
  Logical volume "part1" created.

ПослС выполнСния Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ создано устройство ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ /dev/tech/part1.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ это, Π²Ρ‹Π·Π²Π°Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ lvdisplay.

Однако это устройство Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы.

$ sudo lvdisplay
  --- Logical volume ---
  LV Path                /dev/tech/part1 
  LV Name                part1
  VG Name                tech
  LV UUID                O1qtcJ-dDAj-gPoL-nZn0-VUMs-rVwe-f31OHq
  LV Write Access        read/write
  LV Creation host, time computing-pc, 2018-10-14 00:39:25 +0300
  LV Status              available
  # open                 0
  LV Size                14.00 GiB
  Current LE             3584
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           254:0

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ‚ΠΎΠΌΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ vgdisplay

Π¨Π°Π³ 6: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы Π½Π° логичСском Ρ‚ΠΎΠΌΠ΅

Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Π² созданный логичСский Ρ‚ΠΎΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму ΠΏΠΎ своСму Π²Ρ‹Π±ΠΎΡ€Ρƒ.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму xfs.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ext3, ext4, brtfs ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎ своСму ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ.

$ sudo mkfs -t xfs /dev/tech/part1
meta-data=/dev/tech/part1        isize=512    agcount=4, agsize=917504 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=0
data     =                       bsize=4096   blocks=3670016, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

ПослС этого ΠΌΡ‹ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ создали логичСский Ρ‚ΠΎΠΌ /dev/tech/part1 с Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмой xfs.

Бпасибо, рСбята, ΠΈ спасибо, Ρ‡Ρ‚ΠΎ посСтили наш сайт.

ΠžΡΡ‚Π°Π²Π°ΠΉΡ‚Π΅ΡΡŒ с Π½Π°ΠΌΠΈ ΠΈ слСдитС Π·Π° Π½ΠΎΠ²Ρ‹ΠΌΠΈ руководствами ΠΈ ΡƒΡ‡Π΅Π±Π½ΠΈΠΊΠ°ΠΌΠΈ.

см. Ρ‚Π°ΠΊΠΆΠ΅:

 

You may also like

Leave a Comment