tft每日頭條

 > 生活

 > 磁盤分區讀取寫入速度

磁盤分區讀取寫入速度

生活 更新时间:2025-01-11 22:48:19

磁盤分區讀取寫入速度(磁盤的動态擴容和縮減)1

主旨

在日常運維過程中,經常會出現磁盤爆滿,不足以維持未來業務量,或者磁盤太大,造成資源浪費的情況,這種情況下最好的方式就是采用磁盤的動态擴容和縮減。

lvm是什麼

在這裡我們推薦使用LVM邏輯卷的方式,為什麼使用這個方式呢,這個方式有什麼值得推崇的呢,我們在這裡不進行一堆原理上的介紹,隻需要知道如果我們使用了lvm,就可以動态的控制某個磁盤的大小,而不至于每次都要删除重建磁盤即可。話不多說,下面我們直接進入正文。

名詞解釋

PS:包括但不限于以下三個(因為越多越亂)

PV:物理卷。可以是單獨磁盤,也可以是磁盤分區; vg:卷組。是PV的組合,可以看成單獨的邏輯磁盤; LV:邏輯分區。相當于物理分區的/dev/sd*

他們的關系如下圖:

磁盤分區讀取寫入速度(磁盤的動态擴容和縮減)2

環境

一台linux服務器 一個新磁盤

檢查

輸入 fdisk -l 命令,檢查下是否有一塊磁盤未使用,如下,“/dev/sdb”就是未被使用的磁盤。

[root@localhost ~]# fdisk -l 磁盤 /dev/sda:21.5 GB, 21474836480 字節,41943040 個扇區 Units = 扇區 of 1 * 512 = 512 bytes 扇區大小(邏輯/物理):512 字節 / 512 字節 I/O 大小(最小/最佳):512 字節 / 512 字節 磁盤标簽類型:dos 磁盤标識符:0x000aa7ff 設備 Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 41943039 19921920 8e Linux LVM 磁盤 /dev/sdb:10.7 GB, 10737418240 字節,20971520 個扇區 Units = 扇區 of 1 * 512 = 512 bytes 扇區大小(邏輯/物理):512 字節 / 512 字節 I/O 大小(最小/最佳):512 字節 / 512 字節 磁盤 /dev/mapper/centos-root:18.2 GB, 18249416704 字節,35643392 個扇區 Units = 扇區 of 1 * 512 = 512 bytes 扇區大小(邏輯/物理):512 字節 / 512 字節 I/O 大小(最小/最佳):512字節/512字節 磁盤 /dev/mapper/centos-swap:2147 MB, 2147483648 字節,4194304 個扇區 Units = 扇區 of 1 * 512 = 512 bytes 扇區大小(邏輯/物理):512 字節 / 512 字節 I/O 大小(最小/最佳):512 字節 / 512 字節 [root@localhost ~]#

劃分磁盤分區

PS:是否進行此步驟,根據實際情況進行操作,這裡是做實驗。

将 /dev/sdb 磁盤劃分成sdb1、sdb2、sdb3,每個磁盤3g的空間

PS:如果要做 lvm,不需要額外使用mkfs命令進行格式化

[root@localhost~]#fdisk/dev/sdb#開始劃分磁盤/dev/sdb 歡迎使用 fdisk (util-linux 2.23.2)。 更改将停留在内存中,直到您決定将更改寫入磁盤。 使用寫入命令前請三思。 Device does not contain a recognized partition table 使用磁盤标識符 0x6fc1e4e0 創建新的 DOS 磁盤标簽。 命令(輸入 m 獲取幫助):n #輸入 n 新建磁盤 Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select(defaultp):#直接回車 Using default response p 分區号 (1-4,默認 1):# 直接回車 起始 扇區 (2048-20971519,默認為 2048):# 直接回車 将使用默認值 2048 Last 扇區, 扇區 or size{K,M,G}(2048-20971519,默認為 20971519): 3G #分給3g 的空間 分區 1 已設置為 Linux 類型,大小設為 3 GiB 命令(輸入 m 獲取幫助):n #輸入n新建磁盤 Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): # 直接回車 Using default response p 分區号 (2-4,默認 2):# 直接回車 起始 扇區 (6293504-20971519,默認為 6293504):# 直接回車 将使用默認值 6293504 Last 扇區, 扇區 or size{K,M,G} (6293504-20971519,默認為 20971519): 3G # 分給 3g 的空間 分區 2 已設置為 Linux 類型,大小設為 3 GiB 命令(輸入 m 獲取幫助):n # 輸入 n 新建磁盤 Partition type: p primary (2 primary, 0 extended, 2 free) e extended Select (default p): # 直接回車 Using default response p 分區号(3,4,默認 3):#直接回車 起始扇區(12584960-20971519,默認為 12584960):# 直接回車 将使用默認值 12584960 Last 扇區, 扇區 or size{K,M,G}(12584960-20971519,默認為 20971519): 3G #分給3g的空間 分區 3 已設置為 Linux 類型,大小設為 3 GiB 命令(輸入 m 獲取幫助):p # 查看分區情況,是否和規劃的一樣 磁盤 /dev/sdb:10.7 GB, 10737418240 字節,20971520 個扇區 Units = 扇區 of 1 * 512 = 512 bytes 扇區大小(邏輯/物理):512 字節 / 512 字節 I/O 大小(最小/最佳):512 字節 / 512 字節 磁盤标簽類型:dos 磁盤标識符:0x6fc1e4e0 設備 Boot Start End Blocks Id System /dev/sdb1 2048 6293503 3145728 83 Linux /dev/sdb2 6293504 12584959 3145728 83 Linux /dev/sdb3 12584960 18876415 3145728 83 Linux 命令(輸入 m 獲取幫助):w # 報錯退出 The partition table has been altered! Calling ioctl() to re-read partition table. 正在同步磁盤。 [root@localhost ~]#

創建pv

命令集合:

pvcreate将物理分區新建為PV pvs/pvscan查看系統裡有pv的磁盤 pvdisplay顯示系統上面的pv狀态 pvremove 删除pv

實操:

[root@localhost~]#pvcreate/dev/sdb1/dev/sdb2#将sdb2和sdb3變成pv Physical volume "/dev/sdb1" successfully created. Physical volume "/dev/sdb2" successfully created. [root@localhost~]#pvs#查看系統中pv PV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- <19.00g 0 /dev/sdb1 lvm2 --- 3.00g 3.00g /dev/sdb2 lvm2 --- 3.00g 3.00g [root@localhost ~]#

創建vg

命令集合:

vgcreate新建vg,-s後面接pe的大小 vgextend擴展vg,就是增加vp vgs/vgscan查看系統裡有vg的磁盤 vgdisplay顯示系統上面的vg狀态 vgremove 删除vg vgreduce在vg裡面删除pv

實操:

[root@localhost~]#vgcreatejier/dev/sdb1/dev/sdb2#創建一個名為 jier 的vg Volume group "jier" successfully created [root@localhost~]#vgs#查看是否成功,兩個3g 的,就是6g VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- <19.00g 0 jier 2 0 0 wz--n- 5.99g 5.99g [root@localhost ~]#

創建lv

命令集合:

lvcreate新建lv,-L指定容量,M,G lvextent 增加容量 lvs/lvscan 查看系統裡有lv的磁盤 lsdisplay顯示系統上面的lv的狀态 lsremove 删除lv lvreduce 在lv裡減少容量

實操:

[root@localhost~]#lvcreate-L500M-njier01jier#在jier卷組上,新建一個名為jier01的lv,且容量為 500M Logical volume "jier01" created. [root@localhost~]#lvs#查看是否創建成功 LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert root centos -wi-ao---- <17.00g swap centos -wi-ao---- 2.00g jier01 jier -wi-a----- 500.00m [root@localhost~]#mkfs.ext4/dev/jier/jier01#格式化jier01,推薦使用ext4的格式 mke2fs 1.42.9 (28-Dec-2013) 文件系統标簽= OS type: Linux 塊大小=1024 (log=0) 分塊大小=1024 (log=0) Stride=0 blocks, Stripe width=0 blocks 128016 inodes, 512000 blocks 25600 blocks (5.00%) reserved for the super user 第一個數據塊=1 Maximum Filesystem blocks=34078720 63 block groups 8192 blocks per group, 8192 fragments per group 2032 inodes per group Superblock backups stored on blocks: 8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409 Allocating group tables: 完成 正在寫入inode表: 完成 Creating journal (8192 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 [root@localhost ~]# mkdir /jier01 # 新建目錄,此目錄為挂載點,名字随意 [root@localhost~]#mount/dev/jier/jier01/jier01/#将jier01挂載到/jier01目錄下 [root@localhost ~]# df -h # 查看容量 文件系統 容量 已用 可用 已用% 挂載點 /dev/mapper/centos-root 17G 1.8G 16G 11% / devtmpfs 808M 0 808M 0% /dev tmpfs 820M 0 820M 0% /dev/shm tmpfs 820M 9.6M 810M 2% /run tmpfs 820M 0 820M 0% /sys/fs/cgroup /dev/sda1 1014M 130M 885M 13% /boot tmpfs 164M 0 164M 0% /run/user/0 /dev/mapper/jier-jier01 477M 2.3M 445M 1% /jier01 [root@localhost ~]#

擴容lv/目錄

命令集合:

resize2fs 文件系統擴容

實操:

[root@localhost ~]# lvextend -L 200M /dev/jier/jier01 # 磁盤添加200M的空間 Size of logical volume jier/jier01 changed from 500.00 MiB (125 extents) to 700.00 MiB (175 extents). Logical volume jier/jier01 successfully resized. [root@localhost~]#resize2fs/dev/jier/jier01#文件系統重新加載,此部署必須,如果發現報錯了,可以使用xfs_growfs試一下,有可能是你格式化的時候,格式化成為額xfs格式 resize2fs 1.42.9 (28-Dec-2013) Filesystem at /dev/jier/jier01 is mounted on /jier01; on-line resizing required old_desc_blocks = 4, new_desc_blocks = 6 The filesystem on /dev/jier/jier01 is now 716800 blocks long. [root@localhost~]#df-h#查看容量,已經新增了200M的内容 文件系統 容量 已用 可用 已用% 挂載點 /dev/mapper/centos-root 17G 1.8G 16G 11% / devtmpfs 808M 0 808M 0% /dev tmpfs 820M 0 820M 0% /dev/shm tmpfs 820M 9.6M 810M 2% /run tmpfs 820M 0 820M 0% /sys/fs/cgroup /dev/sda1 1014M 130M 885M 13% /boot tmpfs 164M 0 164M 0% /run/user/0 /dev/mapper/jier-jier01 670M 2.5M 631M 1% /jier01 [root@localhost ~]#

擴容vg/卷組

[root@localhost~]#pvcreate/dev/sdb3#将sdb3 變成pv Physical volume "/dev/sdb3" successfully created. [root@localhost~]#vgextendjier/dev/sdb3#給jier這個卷組,新增一個pv Volume group "jier" successfully extended [root@localhost~]#vgs#查看容量,由6g變成了9g VG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- <19.00g 0 jier 3 1 0 wz--n- <8.99g 8.30g [root@localhost ~]#

縮減lv/目錄

PS:縮減必須卸載磁盤挂載,方可進行操作

命令:umount

[root@localhost~]#umount/jier01/#卸載 [root@localhost~]#e2fsck-f/dev/jier/jier01#檢查 e2fsck 1.42.9 (28-Dec-2013) 第一步: 檢查inode,塊,和大小 第二步: 檢查目錄結構 第3步: 檢查目錄連接性 Pass 4: Checking reference counts 第5步: 檢查簇概要信息 /dev/jier/jier01: 11/178816 files (0.0% non-contiguous), 33345/716800 blocks [root@localhost~]#resize2fs/dev/jier/jier01400M#文件系統縮減 resize2fs 1.42.9 (28-Dec-2013) Resizing the filesystem on /dev/jier/jier01 to 409600 (1k) blocks. The filesystem on /dev/jier/jier01 is now 409600 blocks long. [root@localhost ~]# lvreduce -L 400M /dev/jier/jier01 # 磁盤縮減 WARNING: Reducing active logical volume to 400.00 MiB. THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce jier/jier01? [y/n]: y # 輸入 y 回車 Size of logical volume jier/jier01 changed from 700.00 MiB (175 extents) to 400.00 MiB (100 extents). Logical volume jier/jier01 successfully resized. [root@localhost ~]# mount /dev/jier/jier01 /jier01/ # 重新進行挂載 [root@localhost ~]# df -h # 查看容量 文件系統 容量 已用 可用 已用% 挂載點 /dev/mapper/centos-root 17G 1.8G 16G 11% / devtmpfs 808M 0 808M 0% /dev tmpfs 820M 0 820M 0% /dev/shm tmpfs 820M 9.6M 810M 2% /run tmpfs 820M 0 820M 0% /sys/fs/cgroup /dev/sda1 1014M 130M 885M 13% /boot tmpfs 164M 0 164M 0% /run/user/0 /dev/mapper/jier-jier01 380M 2.3M 355M 1% /jier01 [root@localhost ~]#

至此,磁盤的動态增大和縮減已經全部實現完畢。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved