How to create LVM for XFS file system in Ubuntu

How to create LVM for XFS file system in Ubuntu

Preface

lvm (Logical Volume Manager) logical volume management can meet the needs of the Linux system to dynamically adjust the size of each partition to meet the needs of the server in different operating periods.

When I used to play with LVM under Linux, I usually chose ext3 or ext4 file systems. Recently, I installed and configured a MySQL database server under Ubuntu 16.04.5, so I tested LVM of the XFS file system. In fact, after careful comparison, there is not much difference, just the difference in file formatting and the adjustment commands of the file system. There is no need to explain too much in the following places, just simply record the test process.

Add a new disk on the test server, as shown below. The new disk is /dec/sdc

root@mylnx12:~# fdisk -l
Disk /dev/sdb: 605 GiB, 649613803520 bytes, 1268776960 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: 0x2c2c38b3
 
Device Boot Start End Sectors Size Id Type
/dev/sdb1 2048 1268774911 1268772864 605G 7 HPFS/NTFS/exFAT
 
 
Disk /dev/sda: 30 GiB, 32212254720 bytes, 62914560 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: 0x6e2369f9
 
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 62914526 62912479 30G 83 Linux
 
 
Disk /dev/sdc: 1023 GiB, 1098437885952 bytes, 2145386496 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: 0x030b81c8
 
Device Boot Start End Sectors Size Id Type
/dev/sdc1 2048 2145386495 2145384448 1023G 83 Linux
 
#Create PV
root@mylnx12:~# pvcreate /dev/sdc1
 Physical volume "/dev/sdc1" successfully created
root@mylnx12:~# pvscan
 PV /dev/sdc1 lvm2 [1023.00 GiB]
 Total: 1 [1023.00 GiB] / in use: 0 [0 ] / in no VG: 1 [1023.00 GiB]
 
#Create VG
root@mylnx12:~# vgcreate -s 32M VolGroup01 /dev/sdc1
 Volume group "VolGroup01" successfully created
 
#Add new LV
root@mylnx12:~# lvcreate -L +400G -n LogVol00 VolGroup01
WARNING: xfs signature detected on /dev/VolGroup01/LogVol00 at offset 0. Wipe it? [y/n]: y
 Wiping xfs signature on /dev/VolGroup01/LogVol00.
 Logical volume "LogVol00" created.
root@mylnx12:~# lvscan
 ACTIVE '/dev/VolGroup01/LogVol00' [400.00 GiB] inherit
 
#Format root@mylnx12:~# mkfs.xfs /dev/VolGroup01/LogVol00
meta-data=/dev/VolGroup01/LogVol00 isize=512 agcount=4, agsize=26214400 blks
   = sectsz=512 attr=2, projid32bit=1
   = crc=1 finobt=1, sparse=0
data = bsize=4096 blocks=104857600, imaxpct=25
   = sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=51200, version=2
   = sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
 
#Mount point settings root@mylnx12:~# mkdir /mysql_data
root@mylnx12:~# mount -t xfs /dev/VolGroup01/LogVol00 /mysql_data
root@mylnx12:~# vgdisplay
 --- Volume group ---
 VG Name VolGroup01
 System ID    
 Format lvm2
 Metadata Areas 1
 Metadata Sequence No 2
 VG Access read/write
 VG Status resizable
 MAX LV 0
 Cur LV 1
 Open LV 0
 Max PV 0
 Cur PV 1
 Act PV 1
 VG Size 1022.97 GiB
 PE Size 32.00 MiB
 Total PE 32735
 Alloc PE / Size 12800 / 400.00 GiB
 Free PE / Size 19935 / 622.97 GiB
 VG UUID 8kutIc-bjId-rNWK-UCHo-TU2l-xkwa-idBXCj
 
#Create another LV
root@mylnx12:~# lvcreate -l 19935 -n LogVol01 VolGroup01
 Logical volume "LogVol01" created.
root@mylnx12:~# mkfs.xfs /dev/VolGroup01/LogVol01
meta-data=/dev/VolGroup01/LogVol01 isize=512 agcount=4, agsize=40826880 blks
   = sectsz=512 attr=2, projid32bit=1
   = crc=1 finobt=1, sparse=0
data = bsize=4096 blocks=163307520, imaxpct=25
   = sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=79740, version=2
   = sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
root@mylnx12:~# mkdir /mysql_backup
root@mylnx12:~# mount -t xfs /dev/VolGroup01/LogVol01 /mysql_backup/
root@mylnx12:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 6.9G 0 6.9G 0% /dev
tmpfs 1.4G 8.6M 1.4G 1% /run
/dev/sda1 30G 2.1G 27G 8% /
tmpfs 6.9G 0 6.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 6.9G 0 6.9G 0% /sys/fs/cgroup
/dev/sdb1 596G 70M 566G 1% /mnt
tmpfs 1.4G 0 1.4G 0% /run/user/1000
/dev/mapper/VolGroup01-LogVol00 400G 441M 400G 1% /mysql_data
/dev/mapper/VolGroup01-LogVol01 623G 668M 623G 1% /mysql_backup

Modify the configuration file /etc/fstab and add the following configuration information to it, as shown below, so that it can be saved permanently to ensure that the relevant mount point information is not lost at the next boot.

UUID="a72bd3f8-eb2d-40cb-92c3-d5e32c30d5ff" /mysql_data xfs defaults 0 2
UUID="33325d87-f3f4-4215-abf7-ee795724697e" /mysql_backup xfs defaults 0 2

In addition, the adjustment command for the ext2/ext3/ext4 file system is resize2fs (supports both increase and decrease), while the adjustment command for the XFS file system is xfs_growfs (only supports increase). Of course, if you insist on reducing the size, you can only reformat the logical partition through the mkfs.xfs command after reducing it before you can mount it. In this case, the original data on the logical partition will be lost. It doesn't really make any sense.

References:

https://www.jb51.net/article/148553.htm

Summarize

The above is the full content of this article. I hope that the content of this article will have certain reference learning value for your study or work. If you have any questions, you can leave a message to communicate. Thank you for your support for 123WORDPRESS.COM.

You may also be interested in:
  • Tutorial on adjusting the size of lvm logical volume partition in Linux (for different file systems such as xfs and ext4)
  • Using XFS file system in Linux environment
  • Detailed steps to create a Linux LVM snapshot (completed using PE)
  • Creating LVM in Linux character interface installation mode
  • LVM disk expansion problem in Centos7 in Linux
  • Steps to create lvm and mount it to a specified directory under Linux system

<<:  Notes on element's form components

>>:  Use of hasOwnProperty method of js attribute object

Recommend

MySQL 5.7.27 winx64 installation and configuration method graphic tutorial

This article shares the installation and configur...

Vue3.0 adaptive operation of computers with different resolutions

First we need to install some dependencies npm i ...

About WSL configuration and modification issues in Docker

https://docs.microsoft.com/en-us/windows/wsl/wsl-...

HTML table layout example explanation

The elements in an HTML document are arranged one...

HTML Nine-grid Layout Implementation Method

Diversifying website layouts is our front-end spe...

Implementation of multiple instances of tomcat on a single machine

1. Introduction First of all, we need to answer a...

Native js encapsulation seamless carousel function

Native js encapsulated seamless carousel plug-in,...

Do you know the common MySQL design errors?

Thanks to the development of the Internet, we can...

Let's talk about parameters in MySQL

Preface: In some previous articles, we often see ...

Detailed explanation of the use of Vue.js render function

Vue recommends using templates to create your HTM...

Solve the problem of Nginx returning 404 after configuring proxy_pass

Table of contents 1. Troubleshooting and locating...

Detailed steps to install python3.7 on CentOS6.5

1. Download Python 3 wget https://www.python.org/...

Basic principles of MySQL scalable design

Table of contents Preface 1. What is scalability?...

HTML basic summary recommendation (text format)

HTML text formatting tags 標簽 描述 <b> 定義粗體文本 ...