Pembahagian lvm Linux merujuk kepada "pengurusan volum logik". Nama Inggeris penuh lvm ialah "Pengurus Volume Logik", yang merupakan mekanisme untuk menguruskan partition cakera dalam persekitaran Linux; cakera keras dan Lapisan logik di atas partition untuk meningkatkan fleksibiliti pengurusan partition cakera.
Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.
LVM (Logical Volume Manager), iaitu pengurusan volum logik, ialah mekanisme untuk menguruskan partition cakera dalam persekitaran Linux dan partition Lapisan logik di atas untuk meningkatkan fleksibiliti pengurusan partition cakera. Pentadbir sistem LVM boleh mengurus partition cakera dengan mudah, seperti menyambungkan beberapa partition cakera ke dalam kumpulan volum untuk membentuk kolam storan. Pentadbir boleh secara bebas mencipta volum logik pada kumpulan volum dan seterusnya mencipta sistem fail pada kumpulan volum logik. Pentadbir boleh melaraskan saiz kumpulan volum storan dengan mudah melalui LVM, dan boleh menamakan, mengurus dan memperuntukkan storan cakera mengikut kumpulan. Apabila cakera baharu ditambahkan pada sistem, pentadbir LVM tidak perlu mengalihkan fail cakera ke cakera baharu untuk menggunakan sepenuhnya ruang storan baharu, tetapi boleh terus memanjangkan sistem fail merentasi cakera.
Secara amnya, cakera fizikal atau partition diasingkan, data tidak boleh menjangkau cakera atau partition, dan saiz setiap cakera atau partition ditetapkan, jadi pelarasan semula menyusahkan. LVM boleh menyepadukan cakera fizikal atau partition asas ini, mengabstrakkannya ke dalam kumpulan sumber kapasiti, dan membahagikannya kepada volum logik untuk digunakan oleh lapisan atas Fungsi utamanya ialah ia boleh digunakan tanpa menutup atau memformat semula (secara tepat, Saiz volum logik boleh dilaraskan secara fleksibel (bahagian asal tidak perlu diformatkan, hanya bahagian baharu yang diformatkan).
Proses pelaksanaan LVM adalah seperti berikut:
PV ( volum fizikal): Kelantangan fizikal berada di bahagian bawah sistem pengurusan volum logik dan boleh menjadi keseluruhan cakera keras fizikal atau partition pada cakera keras fizikal sebenar. Ia hanya mengetepikan kawasan khas dalam partition fizikal untuk merekodkan parameter pengurusan yang berkaitan dengan LVM.
VG(kumpulan volum): Kumpulan volum diwujudkan pada volum fizikal Sekumpulan volum mesti menyertakan sekurang-kurangnya satu volum fizikal Selepas kumpulan volum ditetapkan, volum boleh ditambah secara dinamik kepada kumpulan volum , boleh terdapat berbilang kumpulan volum dalam projek sistem pengurusan volum logik.
LV(volum logik): Jilid logik dibina pada kumpulan volum yang tidak diperuntukkan dalam kumpulan volum boleh digunakan untuk mencipta volum logik baharu boleh dikembangkan dan dikecilkan secara dinamik diwujudkan.
PE (tahap fizikal): Kawasan fizikal ialah unit storan terkecil yang tersedia untuk peruntukan dalam volum fizikal Saiz kawasan fizikal ditentukan apabila menetapkan kumpulan volum tidak boleh diubah. Kumpulan volum yang sama Saiz kawasan fizikal semua volum fizikal mesti konsisten Selepas pv baharu ditambahkan pada vg, saiz pe ditukar secara automatik kepada saiz pe yang ditakrifkan dalam vg.
LE (takat logik): Kawasan logik ialah unit storan terkecil yang tersedia untuk peruntukan dalam volum logik Saiz kawasan logik bergantung pada saiz kawasan fizikal dalam kumpulan volum di mana volum logik terletak. Disebabkan oleh pengehadan kernel, volum logik (Volume Logik) hanya boleh mengandungi sehingga 65536 PE (Tahap Fizikal) , jadi saiz PE menentukan kapasiti maksimum volum logik, 4 MB (lalai ) menentukan kapasiti maksimum volum logik tunggal kepada 256 GB Jika anda ingin menggunakan volum logik lebih besar daripada 256G, anda perlu menentukan PE yang lebih besar apabila membuat kumpulan volum. Dalam Red Hat Enterprise Linux AS 4 saiz PE berjulat dari 8 KB hingga 16GB dan mesti sentiasa gandaan 2.
LVM mempunyai dua mod penulisan: mod linear dan mod jalur .
LVM mengekalkan metadata di kepala setiap volum fizikal dan setiap metadata mengandungi keseluruhan maklumat VG (kumpulan volum: kumpulan volum), termasuk konfigurasi susun atur setiap VG, bilangan PV (isipadu fizikal: isipadu fizikal), bilangan LV (isipadu logik: isipadu logik), dan setiap PE (lanjutan fizikal: unit pengembangan fizikal) kepada LE (lanjutan logik: hubungan pemetaan bagi unit sambungan fizikal). Maklumat dalam pengepala setiap PV dalam VG yang sama adalah sama, yang memudahkan pemulihan data sekiranya berlaku kegagalan.
LVM menyediakan lapisan LV untuk sistem fail atas, menyembunyikan butiran operasi. Untuk sistem fail, operasi LV tidak berbeza daripada operasi asal partition. Apabila menulis ke LV, LVM mencari LE yang sepadan dan menulis data ke PE yang sepadan melalui jadual pemetaan dalam pengepala PV. Ciri terbesar LVM ialah ia boleh mengurus cakera secara dinamik. Kerana saiz volum logik boleh dilaraskan secara dinamik tanpa kehilangan data sedia ada. Jika kita menambah cakera keras baharu, ia tidak akan mengubah volum logik atas sedia ada. Kuncinya adalah untuk mewujudkan hubungan pemetaan antara PE dan LE Peraturan pemetaan yang berbeza menentukan model storan LVM yang berbeza. LVM menyokong jalur dan cermin berbilang PV.
Kelebihan:
Kelemahan:
1 Tetapkan jenis sistem setiap cakera fizikal atau partition kepada Linux LVM, dan ID sistemnya ialah 8e . Tetapkan melalui perintah t dalam alat fdisk
[root@localhost ~]# fdisk /dev/sdb ... Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): p Partition number (2-4, default 2): 2First sector (20973568-62914559, default 20973568): Using default value 20973568Last sector, +sectors or +size{K,M,G} (20973568-62914559, default 62914559): +5G ... Command (m for help): t Partition number (1,2, default 2): 2Hex code (type L to list all codes): 8e # 指定system id为8eChanged type of partition 'Linux' to 'Linux LVM'... Command (m for help): p ... /dev/sdb1 2048 20973567 10485760 8e Linux LVM /dev/sdb2 20973568 31459327 5242880 8e Linux LVM Command (m for help): w ...
2. Mulakan setiap cakera fizikal atau partition menjadi PV (volume fizikal, volum fizikal)
Arahan yang boleh digunakan pada peringkat ini ialah pvcreate, pvremove, pvscan, pvdisplay (pvs)
1) pvcreate: Buat volum fizikal
用法:pvcreate [option] DEVICE 选项: -f:强制创建逻辑卷,不需用户确认 -u:指定设备的UUID -y:所有问题都回答yes 例 pvcreate /dev/sdb1 /dev/sdb2
2) pvscan: Imbas semua volum fizikal pada sistem semasa
用法:pvscan [option] 选项: -e:仅显示属于输出卷组的物理卷 -n:仅显示不属于任何卷组的物理卷 -u:显示UUID
3 ) pvdisplay: Paparkan volum fizikal Atribut volum
用法:pvdisplay [PV_DEVICE]
4) pvremove: Padamkan maklumat volum fizikal supaya ia tidak lagi dianggap volum fizikal
用法:pvremove [option] PV_DEVICE 选项: -f:强制删除 -y:所有问题都回答yes 例 pvremove /dev/sdb1
5) Contoh penciptaan dan pemadaman PV
[root@localhost ~]# pvcreate /dev/sdb{1,2} # 将两个分区初始化为物理卷 Physical volume "/dev/sdb1" successfully created. Physical volume "/dev/sdb2" successfully created. [root@localhost ~]# pvscan PV /dev/sdb2 lvm2 [5.00 GiB] PV /dev/sdb1 lvm2 [10.00 GiB] Total: 2 [15.00 GiB] / in use: 0 [0 ] / in no VG: 2 [15.00 GiB] [root@localhost ~]# pvdisplay /dev/sdb1 # 显示物理卷sdb1的详细信息 "/dev/sdb1" is a new physical volume of "10.00 GiB" --- NEW Physical volume --- PV Name /dev/sdb1 VG Name PV Size 10.00 GiB Allocatable NO PE Size 0 # 由于PE是在VG阶段才划分的,所以此处看到的都是0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID GrP9Gi-ubau-UAcb-za3B-vSc3-er2Q-MVt9OO [root@localhost ~]# pvremove /dev/sdb2 # 删除sdb2的物理卷信息 Labels on physical volume "/dev/sdb2" successfully wiped. [root@localhost ~]# pvscan # 可以看到PV列表中已无sdb2 PV /dev/sdb1 lvm2 [10.00 GiB] Total: 1 [10.00 GiB] / in use: 0 [0 ] / in no VG: 1 [10.00 GiB] [root@localhost ~]# pvcreate /dev/sdb2 Physical volume "/dev/sdb2" successfully created.
3 VG (kumpulan volum , kumpulan volum). Kumpulan volum menyepadukan berbilang volum fizikal (melindungi butiran asas) dan membahagikan PE (lanjutan fizikal)
PE ialah unit storan terkecil dalam volum fizikal, agak serupa dengan blok dalam sistem fail , PE saiz boleh ditentukan, lalai ialah 4M. Perintah yang digunakan pada peringkat ini termasuk vgcreate, vgscan, vgdisplay, vgextend, vgreduce
1) vgcreate: Cipta kumpulan volum
用法:vgcreate [option] VG_NAME PV_DEVICE 选项: -s:卷组中的物理卷的PE大小,默认为4M -l:卷组上允许创建的最大逻辑卷数 -p:卷级中允许添加的最大物理卷数 例 vgcreate -s 8M myvg /dev/sdb1 /dev/sdb2
2) vgscan: Cari kumpulan volum LVM yang sedia ada dalam sistem dan paparkan senarai kumpulan volum ditemui
3) vgdisplay: Paparkan atribut kumpulan volum
用法:vgdisplay [option] [VG_NAME] 选项: -A:仅显示活动卷组的信息 -s:使用短格式输出信息
4) vgextend: Lanjutkan kumpulan volum LVM secara dinamik, yang meningkatkan kapasiti kumpulan volum dengan menambahkan volum fizikal pada kumpulan volum
用法:vgextend VG_NAME PV_DEVICE 例 vgextend myvg /dev/sdb3
5) vgreduce: Kurangkan kapasiti kumpulan volum dengan memadamkan volum fizikal dalam kumpulan volum LVM Baki volum fizikal terakhir dalam kumpulan volum LVM tidak boleh dipadamkan
用法:vgreduce VG_NAME PV_DEVICE
6) vgremove: padam kumpulan volum, volum logik padanya mesti di luar talian
用法:vgremove [-f] VG_NAME -f:强制删除
7)vgchange:常用来设置卷组的活动状态
用法:vgchange -a n/y VG_NAME -a n为休眠状态,休眠之前要先确保其上的逻辑卷都离线; -a y为活动状态
8)vg创建例子
[root@localhost ~]# vgcreate -s 8M myvg /dev/sdb{1,2} Volume group "myvg" successfully created [root@localhost ~]# vgscan Reading volume groups from cache. Found volume group "myvg" using metadata type lvm2 [root@localhost ~]# vgdisplay --- Volume group --- VG Name myvg System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 2 Act PV 2 VG Size 14.98 GiB PE Size 8.00 MiB Total PE 1918 Alloc PE / Size 0 / 0 Free PE / Size 1918 / 14.98 GiB VG UUID aM3RND-aUbQ-7RjC-dCci-JiS4-Oj2Z-wv9poA
4、在卷组上创建LV(logical volume,逻辑卷)
为了便于管理,逻辑卷对应的设备文件保存在卷组目录下,为/dev/VG_NAME/LV_NAME。LV中可以分配的最小存储单元称为LE(logical extend),在同一个卷组中,LE的大小和PE是一样的,且一一对应。这一阶段用到的命令有lvcreate、lvscan、lvdisplay、lvextend、lvreduce、lvresize
1)lvcreate:创建逻辑卷或快照
用法:lvcreate [选项] [参数] 选项: -L:指定大小 -l:指定大小(LE数) -n:指定名称 -s:创建快照 -p r:设置为只读(该选项一般用于创建快照中) 注:使用该命令创建逻辑卷时当然必须指明卷组,创建快照时必须指明针对哪个逻辑卷 例 lvcreate -L 500M -n mylv myvg
2)lvscan:扫描当前系统中的所有逻辑卷,及其对应的设备文件
3)lvdisplay:显示逻辑卷属性
用法:lvdisplay [/dev/VG_NAME/LV_NAME]
4)lvextend:可在线扩展逻辑卷空间
用法:lvextend -L/-l 扩展的大小 /dev/VG_NAME/LV_NAME 选项: -L:指定扩展(后)的大小。例如,-L +800M表示扩大800M,而-L 800M表示扩大至800M -l:指定扩展(后)的大小(LE数) 例 lvextend -L 200M /dev/myvg/mylv
5)lvreduce:缩减逻辑卷空间,一般离线使用
用法:lvexreduce -L/-l 缩减的大小 /dev/VG_NAME/LV_NAME 选项: -L:指定缩减(后)的大小 -l:指定缩减(后)的大小(LE数) 例 lvreduce -L 200M /dev/myvg/mylv
6)lvremove:删除逻辑卷,需要处于离线(卸载)状态
用法:lvremove [-f] /dev/VG_NAME/LV_NAME -f:强制删除
7)lv创建例子
[root@localhost ~]# lvcreate -L 2G -n mylv myvg Logical volume "mylv" created. [root@localhost ~]# lvscan ACTIVE '/dev/myvg/mylv' [2.00 GiB] inherit [root@localhost ~]# lvdisplay --- Logical volume --- LV Path /dev/myvg/mylv LV Name mylv VG Name myvg LV UUID 2lfCLR-UEhm-HMiT-ZJil-3EJm-n2H3-ONLaz1 LV Write Access read/write LV Creation host, time localhost.localdomain, 2019-07-05 13:42:44 +0800 LV Status available # open 0 LV Size 2.00 GiB Current LE 256 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0
5、格式化逻辑卷并挂载
[root@localhost ~]# mke2fs -t ext4 /dev/myvg/mylv
...
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
...
[root@localhost ~]# mkdir /data
[root@localhost ~]# mount
mount mountpoint
[root@localhost ~]# mount /dev/myvg/mylv /data
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 50G 1.5G 49G 3% /
devtmpfs 903M 0 903M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 8.6M 904M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
tmpfs 183M 0 183M 0% /run/user/0
/dev/mapper/myvg-mylv 2.0G 6.0M 1.8G 1% /data
一、LV逻辑卷扩容后,必须对挂载目录在线扩容。
使用 resize2fs或xfs_growfs 对挂载目录在线扩容
resize2fs 针对文件系统ext2 ext3 ext4
xfs_growfs 针对文件系统xfs
xfs在线扩容
xfs_growfs /dev/mapper/vg--BHG-lv01 meta-data=/dev/mapper/vg--BHG-lv01 isize=512 agcount=4, agsize=32000 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0 spinodes=0data = bsize=4096 blocks=128000, imaxpct=25 = sunit=0 swidth=0 blksnaming =version 2 bsize=4096 ascii-ci=0 ftype=1log =internal bsize=4096 blocks=855, version=2 = sectsz=512 sunit=0 blks, lazy-count=1realtime =none extsz=4096 blocks=0, rtextents=0data blocks changed from 128000 to 256000
ext4在线扩容
[root@localhost /]# resize2fs /dev/mapper/vg--BHG-lv02 resize2fs 1.42.9 (28-Dec-2013) Filesystem at /dev/mapper/vg--BHG-lv02 is mounted on /BHGPOS-data; on-line resizing required old_desc_blocks = 2, new_desc_blocks = 3 The filesystem on /dev/mapper/vg--BHG-lv02 is now 5242880 blocks long.
相关推荐:《Linux视频教程》
Atas ialah kandungan terperinci Apakah partition lvm linux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!