Linux服务器扩容及磁盘分区(LVM和非LVM)

news2024/11/15 17:48:53

Linux扩容及磁盘分区(LVM和非LVM)

      本文主要介绍了阿里云服务器centos的扩容方法:非LVM分区扩容方法(系统盘),以及磁盘改LVM并分区(数据盘)。主要是ext4文件系统及xfs磁盘scsi  MBR分区。

根目录为系统盘分区。

由于系统盘分区方式为非LVM, 难以跨磁盘或跨分区扩容,只能扩容原有分区。

但可以拆分根目录下的子目录,挂载到数据盘,将数据盘进行LVM分区,便于后续跨磁盘、跨分区扩容。

一、系统盘(非LVM),直接扩容

set -eu

# 1. 安装growpart工具

type growpart || yum install -y cloud-utils-growpart

#

# 2. 扩容分区:运行命令 growpart /dev/vda 1

LC_ALL=en_US.UTF-8 growpart /dev/vda 1

# 扩容文件系统:文件系统为ext4,因此运行resize2fs命令

resize2fs /dev/vda1

Df -Th

可见根目录有扩大

二、数据盘(LVM分区)准备工作:查看挂载和磁盘使用情况

1、安装lvm工具

sudo yum install lvm2

2、查看磁盘挂载情况

lsblk

3、查看磁盘容量和挂载情况

df -TH

4、查看磁盘数据盘

sudo fdisk -lu

获取数据盘的设备名称。

运行结果如下所示,表示当前ECS实例有两块云盘,/dev/vda是系统盘,/dev/vdb是新增数据盘,有100G,微分区

5、查找大文件目录,确定要分区挂载的目录 

du -h --max-depth=1 /

打算预计:

/usr  扩容至20G

/var 扩容至 50G

/data 扩容至 15G

三、LVM扩容

数据盘/dev/vdb

改为lvm

1、分区

sudo fdisk -u /dev/vdb
n  #创建分区

p  #主分区p;扩展分区e

2  #分区号  2-4

起止扇区

起止扇区

P  #检测是否分区完成

W  # 如分区正常w保存;否正q退出不保存
查看分区

fdisk -lu /dev/vdb

创建成功

/dev/vdb1 15G

/dev/vdb2 20G

/dev/vdb3 50G

#将磁盘分区表变化信息通知内核,请求操作系统重新加载分区表

partprobe /dev/vdb

2、初始化分区和文件系统

sudo mkfs -t ext4 /dev/vdb1

sudo mkfs -t ext4 /dev/vdb2

sudo mkfs -t ext4 /dev/vdb3

3、创建物理卷并查看

# 查看可以使用的物理设备(分区/磁盘)

parted -l

# 将物理设备 创建物理卷

pvcreate /dev/vdb1 /dev/vdb2 /dev/vdb3

(

如果你要擦除现有的文件系统以创建新的 ext4 文件系统,并且确定分区上没有重要数据或者已经备份,可以按 'y' 键。

如果分区上有重要数据,或者你不确定是否要擦除,应该选择 'n' 并考虑备份数据,或者先进行数据恢复工作。

)

# partprobe #如果创建时报错磁盘不存在,执行partprobe

cat /proc/partitions

# 查看物理卷

pvdisplay

4、创建物理卷组

# 创建物理卷组

vgcreate vgdata /dev/vdb1 

vgcreate vgusr /dev/vdb2

vgcreate vgvar /dev/vdb3

5、创建逻辑卷

也可以物理卷合并成一个逻辑卷

lvcreate -n lvdata -l 5119 vgdata 

lvcreate -n lvusr -l 5119 vgusr

lvcreate -n lvvar -l 5119 vgvar 

查看逻辑卷

lvdisplay

6、格式化逻辑卷

sudo mkfs -t ext4 /dev/mapper/vgdata-lvdata 

sudo mkfs -t ext4 /dev/mapper/vgvar-lvvar 

sudo mkfs -t ext4 /dev/mapper/vgusr-lvusr 

7、挂载逻辑卷到目录

mount /dev/vgdata/lvdata /data/

mount /dev/vgvar/lvvar /var/

mount /dev/vgusr/lvusr /usr/

四、后续逻辑卷扩容

Eg:/data目录扩容  ==>对应逻辑卷:/dev/mapper/vgdata-lvdata

对vdb进行分区(同第三步)/dev/vdb4

1、查看是否有空闲的物理卷或逻辑卷

# 查看是否有空闲的物理卷或逻辑卷

vgs

pvs

2、扩展物理卷组

#扩展物理卷组:将空闲物理卷加入/data对应卷组

vgextend vgdata /dev/vdb4

# 是否加入成功

vgdisplay

3、扩展逻辑卷组

# 扩展逻辑卷组

lvextend -l +5119 /dev/vgdata/lvdata

4、更新文件系统

# 更新文件系统

resize2fs /dev/mapper/vgdata-lvdata

5、查看验证

# 查看验证

lvs

vgs

df -lh

五、收缩大小

对于ext4文件系统可以收缩大小

1、卸载逻辑卷

#卸载逻辑卷

unmount /dev/vdb1

2、更新文件系统

#更新文件系统

resize2fs  /dev/mapper/vgdata-lvdata 10G

3、收缩逻辑卷

#收缩逻辑卷

lvreduce /dev/vgdata/lvdata

4、重新挂载逻辑卷

#重新挂载逻辑卷

mount /dev/vgdata/lvdata /data/

六、小结

1、LVM分区概念:

物理卷PV==>物理卷组PG==>逻辑卷LV==>逻辑卷组VG==>文件系统

2、LVM常用命令

序号功能PV 物理卷命令VG 卷组命令LV 逻辑卷命令
01扫描功能pvscanvgscanlvscan
02建⽴功能pvcreatevgcreatelvcreate
03查询功能pvdisplayvgdisplaylvdisplay
04删除功能pvremovevgremovelvremove
05扩容功能vgextendlvextend
06缩容功能vgreducelvreduce

主要参考文件:

Linux磁盘分区与LVM详解_linux标准分区和lvm分区-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1793231.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

GD32/STM32系列GPIO工作模式

知不足而奋进 望远山而前行 目录 文章目录 前言 浮空输入 上拉输入 下拉输入 模拟输入 推挽输出 开漏输出 复用推挽输出 复用开漏输出 附录(了解) 总结 前言 在嵌入式系统开发中,对于GPIO(通用输入输出端口)的配置和使用是至关重…

各大AI模型训练成本大比拼

像OpenAI的ChatGPT、谷歌的Gemini Ultra这样的高级AI模型,训练它们通常需要数百万美元的费用,且该成本还在迅速上升。随着计算需求的增加,训练它们所需的计算能力的费用也在飙升。为此,AI公司正在重新考虑如何训练这些生成式AI系统…

定制高温隧道炉,如何判断质量好坏

在现代工业生产中,高温隧道炉扮演着不可或缺的角色。对于特定工艺要求,如陶瓷烧制、金属热处理等,定制化的高温隧道炉更是不可或缺。然而,面对市场上琳琅满目的产品,如何判断高温隧道炉的质量好坏成为了企业决策者面临…

灵动岛动效:打造沉浸式用户体验

灵动岛是专属于 iPhone 14 Pro 系列交互UI,通过通知消息的展示和状态的查看与硬件相结合,让 iPhone 14 Pro 系列的前置摄像头和传感器的“感叹号”,发生不同形状的变化。这样做的好处是让虚拟软件和硬件的交互变得更为流畅,以便让…

Git 版本控制系统详解

目录 Git 版本控制系统详解一、Git 的作用1. 版本控制2. 分支管理3. 分布式开发4. 协作开发 二、Git 的安装和基本使用1. 安装 Git1.1 Windows1.2 macOS1.3 Linux 2. 配置 Git3. 创建和克隆仓库3.1 创建本地仓库3.2 克隆远程仓库 4. 基本操作4.1 添加文件到暂存区4.2 提交更改4…

【C++修行之道】类和对象(五)日期类的实现、const成员、取地址及const取地址操作符重载

目录 一、 日期类的实现 Date.h 1.1 GetMonthDay函数(获取某年某月的天数) 问:这个函数为什么不和其他的函数一样放在Date.cpp文件中实现呢? 1.2 CheckDate函数(检查日期有效性)、Print函数(打…

JAVA小案例-输出100-150中能被3整除的数,每5个换行

JAVA小案例-输出100-150中能被3整除的数,每5个换行 代码如下: public class Continue {/*** continue练习,输出100-150中能被3整除的数,每5个换行* param args*/public static void main(String[] args) {int count 0;//计数器…

Mysql root用户远程连接失败解决方案

最近,踩坑云服务器通过root用户远程连接Mysql数据库失败,Mysql 版本为 5.7.44,原因如下,因为root用户权限过大,可能会有风险操作,可以新增其他用户来解决此问题,如果一定要用root用户&#xff0…

【Vue】工程化开发和脚手架

一、开发Vue的两种方式 核心包传统开发模式:基于 html / css / js 文件,直接引入核心包,开发 Vue。工程化开发模式:基于构建工具(例如:webpack)的环境中开发Vue。 工程化开发模式优点&#xff…

你会用Nginx的第三方模块吗?

你好,我是赵兴晨,97年文科程序员。 你使用过Nginx的第三方模块吗?今天咱们来聊聊Nginx的第三方模块。 在深入了解Nginx的高性能与灵活性的过程中,我们不可避免地会接触到第三方模块。 这些模块是对Nginx原生功能的有力扩展&…

618哪些品牌好入手?四款主流数码产品,必看!

随着618购物狂欢节的钟声逐渐敲响,你是否在面对繁多的商品时感到一丝迷茫,想要找到那些既引领潮流又极具实用价值的商品?团团精心为你准备了一份个人实测后的好物推荐清单。这些商品不仅紧跟时尚潮流,更是你生活中的得力助手&…

跟阳仔一起学AI CNN 和 RNN

目录 卷积神经网络(CNN) 循环神经网络(RNN) 应用场景 代码示例 列举讲解 图像分类(使用 CNN) 语言翻译(使用 RNN) 总结 实例:OCR 大家好,我是阳仔,一…

[数据集][目标检测]脑溢血检测数据集VOC+YOLO格式767张2类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):767 标注数量(xml文件个数):767 标注数量(txt文件个数):767 标注类别…

暑期社会实践来了,这份投稿攻略你收藏好!

一、文字投稿要求 (一)实践纪实类 1.内容充实,字数不低于1500字,标题10-30字,不允许用“精彩飞扬——大学实践队”形式,要求用一句话标题。导语新闻五要素齐全(即何人、何时、何地、何事、何因…

【CentOS 7】CentOS 7极致指南:高级部署PyCharm 2022.3.3专业版,实现定制化配置与无缝桌面集成

【CentOS 7】CentOS 7极致指南:高级部署PyCharm 2022.3.3专业版,实现定制化配置与无缝桌面集成 大家好 我是寸铁👊 总结了一篇CentOS 7极致指南:高级部署PyCharm 2022.3.3专业版,实现定制化配置与无缝桌面集成✨ 喜欢的…

libevent源码跨平台编译(windows/macos/linux)

1.windows编译: 克隆: git clone https://github.com/libevent/libevent.git 克隆成功 生成makefile 生成成功 默认不支持OpenSSL,MbedTLS,ZLIB这三个库 编译: cmake --build . --config release

数学建模 —— 聚类分析(3)

目录 一、聚类分析概述 1.1 常用聚类要素的数据处理 1.1.1 总和标准化 1.1.2 标准差标准化 1.1.3 极大值标准化 1.1.4 极差的标准化 1.2 分类 1.2.1 快速聚类法(K-均值聚类) 1.2.2 系统聚类法(分层聚类法) 二、分类统计…

vue3 递归循环展示下级盒子

index.vue主文件 <template><div><RecursiveCard :data"rootTask" /></div> </template><script> import { reactive } from vue; import RecursiveCard from ./test.vue; // 递归组件的路径export default {components: {Recu…

使用HTML、CSS和JavaScript编写一个注册界面(一)

倘若文章或代码中有任何错误或疑惑&#xff0c;欢迎提出交流哦~ HTML和CSS 首先&#xff0c;我们需要编写一个简洁的注册界面。 简单编写下&#xff0c;如下&#xff1a; 呈现效果为&#xff1a; <!DOCTYPE html> <html lang"en"><head><me…

DockerCompose中部署Jenkins(Docker Desktop在windows上数据卷映射)

场景 DockerJenkinsGiteeMaven项目配置jdk、maven、gitee等拉取代码并自动构建以及遇到的那些坑&#xff1a; DockerJenkinsGiteeMaven项目配置jdk、maven、gitee等拉取代码并自动构建以及遇到的那些坑_jenkins的安装以及集成jdkgitmaven 提示警告-CSDN博客 Windows10(家庭版…