LVM логические тома

Создание логических томов LVM предполагает создание трех уровней в архитектуре LVM.

Уровень 1. Создание физического тома (PV).
Уровень 2. Создание группы томов (VG).
Уровень 3. Создание логических томов.

Уровень 1. Создание физического тома

Вводим:
fdisk /dev/sdb
  1. Затем вводим n, чтобы создать новый раздел. 
  2. Потом водим p, чтобы создать первичный раздел. По умолчанию номер раздела будет 1
  3. Далее жмем Enter, указываем первый сектор и вводим +100M. Тем самым новый раздел будет иметь объем в 100 Мб.
  4. Дальше вводим t и вводим 8e (это номер типа раздела, в данном случае 8e — Linux LVM).
  5. И наконец вводим w, чтобы сохранить изменения.
Если же после ввода будет сообщение как ниже, то просто перезагрузите сервер.

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 or after you run partprobe(8) or kpartx(8)
Syncing disks.
[root@localhost ~]#

Вышеперечисленные шаги выглядят так:
[root@localhost ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xe39ca22b.
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p):
Using default response p
Partition number (1-4, default 1):
First sector (2048-2097151, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-2097151, default 2097151): +100M
Partition 1 of type Linux and of size 100 MiB is set
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): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.

Теперь, когда раздел создан, нужно установить флаг «LVM physical volume». Чтобы сделать это вводим pvcreate /dev/sdb1.

Вводим pvs и pvdisplay, чтобы проверить, что раздел успешно создан:
[root@localhost ~]# pvs
PV VG Fmt Attr PSize PFree
  PV         VG     Fmt  Attr PSize   PFree
  /dev/sda2  centos lvm2 a--  <19.57g  4.00m
  /dev/sdb1  vgdata lvm2 a--   96.00m 96.00m

[root@localhost ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sdb1
  VG Name               vgdata
  PV Size               100.00 MiB / not usable 4.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              24
  Free PE               24
  Allocated PE          0
  PV UUID               o8vSkJ-PddC-hie8-6D1V-bFYJ-62Ha-crktZd

  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               centos
  PV Size               19.57 GiB / not usable 4.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              5009
  Free PE               1
  Allocated PE          5008
  PV UUID               eHmEyP-GujN-d3So-s0x3-0EU2-YiaS-XsaMsa

Уровень 2. Создание группы томов (volume group)

Следующий этап — создание группы томов.

Вводим vgcreate vgdata /dev/sdb1, где vgdata— название тома:
[root@server2 ~]# vgcreate vgdata /dev/sdb1
  Volume group "vgdata" successfully created

Чтобы посмотреть список групп введите vgs:
[root@server2 ~]# vgs
  VG     #PV #LV #SN Attr   VSize   VFree
  centos   1   2   0 wz--n- <19.57g  4.00m
  vgdata   1   0   0 wz--n-  96.00m 96.00m

Вы полностью свободны в выборе имени для группы томов. Мне нравится начинать все имена групп томов с vg, что позволяет легко находить группы томов, если их много, но вы можете выбирать все, что вам нравится.

Уровень 3. Создание логических томов и файловой системы

Вводим lvcreate -n lvdata -l 50%FREE vgdata. Этим мы создаем логический том LVM с именем lvdata, который 50% дискового пространства в группе томов vgdаta:
[root@server2 ~]# lvcreate -n lvdata -l 50%FREE vgdata
  Logical volume "lvdata" created.

Вводим lvs и убеждаемся, что том успешно добавлен:
[root@server2 ~]# lvs
  LV     VG     Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root   centos -wi-ao---- <18.63g
  swap   centos -wi-ao---- 956.00m
  lvdata vgdata -wi-a-----  48.00m

Теперь можно создать файловую систему на логическом томе. В этом примере файловая система будет XFS.

Вводим mkfs.xfs /dev/vgdata/lvdata:
[root@server2 ~]# mkfs.xfs /dev/vgdata/lvdata
meta-data=/dev/vgdata/lvdata     isize=512    agcount=2, agsize=6144 blks
         =                       sectsz=4096  attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=12288, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=1605, version=2
         =                       sectsz=4096  sunit=1 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

Создаем директорию /mnt/lvdata, в которую будет смонтирован том:
[root@server2 ~]# mkdir /mnt/lvdata

И наконец добавим строку в /etc/fstab, чтобы этот том автоматически монтировался при каждой загрузке системы:
/dev/vgdata/lvdata /mnt/lvdata xfs defaults 1 2

И смонтируем том:
mount /dev/vgdata/lvdata /mnt/lvdata/

Проверяем командой mount -l, что раздел смонтирован.

Я так же дополнительно смотрю, что все сделал правильно, с помощью команды lsblk:
[root@server2 vgdata]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
fd0 2:0 1 4K 0 disk
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 476M 0 part /boot
└─sda2 8:2 0 19.6G 0 part
├─centos-root 253:0 0 18.6G 0 lvm /
└─centos-swap 253:1 0 956M 0 lvm [SWAP]
sdb 8:16 0 10G 0 disk
└─sdb1 8:17 0 100M 0 part
└─vgdata-lvdata 253:2    0   48M  0 lvm  /mnt/lvdata
sr0                11:0    1  4.3G  0 rom

Добавить комментарий