当前位置: 首页 > article >正文

CentOS7原有磁盘扩容实战记录(LVM非LVM)【针对GPT分区】

一、环境

在这里插入图片描述

二、命令及含义

  • fdisk
    ‌ ‌ fdisk‌是一个较老的分区表创建和管理工具,主要支持MBR(Master Boot Record)格式的分区表。MBR分区表支持的硬盘单个分区最大容量为2TB,最多可以有4个主分区。fdisk通过命令行界面进行操作,主要命令包括查看分区表(p)、创建新分区(n)、删除分区(d)、改变分区类型(t)等。fdisk适用于处理较小的硬盘和MBR分区表,但对于大于2TB的硬盘或需要GPT分区表的场景则不适用‌
  • parted
     ‌ parted‌是一个功能强大的磁盘分区工具,支持MBRGPT两种分区表。与fdisk不同,parted可以直接对GPT格式的磁盘进行操作,适用于大容量硬盘(如大于2TB)的分区需求。parted也通过命令行界面进行操作,提供了更多高级功能,如调整分区大小、格式化分区等。其基本命令包括查看分区(p)、删除分区(rm)、创建新分区(mkpart)等。parted在处理GPT分区表时更为灵活和强大‌
  • gdisk
     ‌ gdisk是一个功能强大的GPT分区表管理工具,专门用于GPT分区表。gdisk支持大容量硬盘和复杂的分区需求,可以通过命令行进行操作。其基本命令包括查看GPT分区表、创建新分区、删除分区等。gdiskparted类似,但专注于GPT分区表的操作‌

总结
fdisk‌适用于处理较小的硬盘和MBR分区表,操作简单但功能有限。
parted‌支持MBR和GPT分区表,功能强大,适用于大容量硬盘和复杂需求。
gdisk‌专注于GPT分区表,功能与parted类似,但更专注于GPT的支持。

三、步骤

1.准备测试环境(非lvm)

lsblk
fdisk -l

在这里插入图片描述

parted -s /dev/sdc mklabel gpt mkpart  xfs  0% 100%      //静默扩容gpt模式
mkfs.xfs /dev/sdc1										 //格式化xfs
mkdir /test												 //创建测试目录
mount /dev/sdc1 /test/									 //挂载目录
df -h
# 创建测试数据
touch /test/{1,2,3,4,5,6}
echo "data" > /test/1
lsblk

在这里插入图片描述

# 给sdb原有基础上加100G
umount /test
partprobe /dev/sdc    //取消挂载刷新或者reboot
lsblk

在这里插入图片描述

2.扩容(非lvm)

lsblk
fdisk -l

在这里插入图片描述

umount /dev/sdc1      //扩容前一定要取消挂载
parted /dev/sdc
print 
resizepart 1 100%    //因为centos7自带的是3.1版本则不支持此命令,改用gdisk

在这里插入图片描述

yum install -y gdisk 
gdisk -l /dev/sdc    //查看起始位置
gdisk /dev/sdc
d
n
1                    //原始分区号
回车
回车
回车
w
y
partprobe /dev/sdc   //如果没生效需要reboot

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

说明:这里因为内核没有识别 重启过所以sdc识别变成sdb了

mount /dev/sdb1 /test
xfs_growfs /test 
# 验证数据
df -h 
ls /test/
cat /test/1

在这里插入图片描述

3.准备测试环境(lvm)

lsblk
fdisk -l

在这里插入图片描述

parted -s /dev/sdb mklabel gpt mkpart  xfs  0% 100%
pvcreate /dev/sdb1
vgcreate vg1  /dev/sdb1
vgs && pvslvcreate  -l  100%FREE   -n    lv1      vg1
lvs && vgs
ls -l /dev/vg1/lv1
mkfs.xfs /dev/vg1/lv1
mount /dev/vg1/lv1 /test/

命令详解:
parted -s /dev/sdb mklabel gpt mkpart xfs 0% 100%
作用:在 /dev/sdb 上创建一个 GPT 分区表,并划出一个 100% 大小的分区。
-s:silent 模式,非交互式
mklabel gpt:创建 GPT 分区表(支持 2TB 以上磁盘)
mkpart xfs 0% 100%:新建一个分区,类型为 xfs(只是标注,实际格式化在后面),从磁盘起始到末尾
结果:你会得到一个新分区 /dev/sdb1,占满整个 /dev/sdb
pvcreate /dev/sdb1
作用:把 /dev/sdb1 初始化为一个 LVM 物理卷(PV)
这一步是让 LVM 能够接管这块分区作为底层存储
执行后可以用 pvs 查看这个 PV 状态
vgcreate vg1 /dev/sdb1
作用:创建一个新的 LVM卷组(VG),名字叫 vg1,并将 /dev/sdb1 加入其中
卷组是多个 PV 的逻辑聚合体,可以像资源池一样分配空间
vgs && pvs
作用:分别查看卷组(VG)和物理卷(PV)的状态
vgs:显示卷组名、可用容量等信息
pvs:显示物理卷的位置、属于哪个 VG、大小等
lvcreate -l 100%FREE -n lv1 vg1
作用:在卷组 vg1 中创建一个新的 逻辑卷(LV),名称为 lv1
-l 100%FREE:使用卷组中所有剩余的空间
-n lv1:设置逻辑卷名为 lv1
创建完成后,会生成 /dev/vg1/lv1
lvs && vgs
作用:查看逻辑卷(LV)和卷组(VG)的状态
lvs:列出逻辑卷的大小、路径、所属卷组等
vgs:确认剩余空间、逻辑卷数量等
ls -l /dev/vg1/lv1
作用:确认逻辑卷设备文件已生成(本质上是一个块设备)
你会看到:/dev/vg1/lv1 -> /dev/mapper/vg1-lv1(LVM 使用 dm 设备映射)
mkfs.xfs /dev/vg1/lv1
作用:将逻辑卷格式化为 XFS 文件系统
注意:你之前在 parted 中声明了 xfs,那只是“标签”,真正格式化要靠这一步
如果你想用 ext4 或其他,也可以改为 mkfs.ext4
mount /dev/vg1/lv1 /test/
作用:将逻辑卷挂载到 /test 目录
前提:目录 /test 必须存在
完成后你就可以在 /test 下读写新磁盘空间了

在这里插入图片描述

df -h
touch /test/{1,2,3,4,5,6}
echo "data" > /test/1

在这里插入图片描述

# 给sdb原有基础上加100G
umount /test
partprobe /dev/sdb    //取消挂载刷新,如果没变那就需要重启reboot使内核识别
lsblk

在这里插入图片描述

4.扩容(lvm)

# 记得卸载挂载 umount /test
gdisk -l /dev/sdb    //查看起始位置

在这里插入图片描述

gdisk /dev/sdb
d
n
1              //原始分区号
回车
回车
回车
w
y				//如果输入了两次y 那么就需要重新在执行一遍gdisk分区

在这里插入图片描述

说明:
警告!次级标头在磁盘上放置得太早!你想吗
纠正这个问题?(Y/N):Y
已将第二个标题和分区表移动到正确位置。

因出现警告所以需要在执行一遍gdisk
gdisk /dev/sdb
d
n
1              //原始分区号
回车
回车
回车
w
y	
partprobe /dev/sdb 

在这里插入图片描述

说明:出现这个意思就是需要reboot才可以让内核识别变动。

reboot
lsblk

在这里插入图片描述

pvresize /dev/sdb1   //扩容物理卷 PV
lvextend -r -l +100%FREE /dev/vg1/lv1   // -r就是扩容文件系统

在这里插入图片描述
在这里插入图片描述

# 数据验证
mount /dev/vg1/lv1 /test
ls /test/
cat /test/1
df -h
lsblk

在这里插入图片描述

四、结束语

  本次GPT原有磁盘扩容实战记录LVM非LVM就到此结束了,后期会给大家带来更多的脚本,感谢认真读完,如果觉得还可以,那么给作者点赞、收藏、关注吧!

相关文章:

CentOS7原有磁盘扩容实战记录(LVM非LVM)【针对GPT分区】

一、环境 二、命令及含义 fdisk ‌ ‌ fdisk‌是一个较老的分区表创建和管理工具,主要支持MBR(Master Boot Record)格式的分区表。MBR分区表支持的硬盘单个分区最大容量为2TB,最多可以有4个主分区。fdisk通过命令行界面进行操…...

机器学习07-归一化与标准化

归一化与标准化 一、基本概念 归一化(Normalization) 定义:将数据缩放到一个固定的区间,通常是[0,1]或[-1,1],以消除不同特征之间的量纲影响和数值范围差异。公式:对于数据 ( x ),归一化后的值…...

AI agent与lang chain的学习笔记 (1)

文章目录 智能体的4大要素一些上手的例子与思考。创建简单的AI agent.从本地读取文件,然后让AI智能体总结。 也可以自己定义一些工具 来完成一些特定的任务。我们可以使用智能体总结一个视频。用户可以随意问关于视频的问题。 智能体的4大要素 AI 智能体有以下几个…...

优化 Spring Boot 应用启动性能的实践指南

1. 引言 Spring Boot 以其“开箱即用”的特性深受开发者喜爱,但随着项目复杂度的增加,应用的启动时间也可能会变得较长。对于云原生、Serverless 等场景而言,快速启动是一个非常关键的指标。 2. 分析启动过程 2.1 启动阶段概述 Spring Boot 的启动流程主要包括以下几个阶…...

谢赛宁团队提出 BLIP3-o:融合自回归与扩散模型的统一多模态架构,开创CLIP特征驱动的图像理解与生成新范式

BLIP3-o 是一个统一的多模态模型,它将自回归模型的推理和指令遵循优势与扩散模型的生成能力相结合。与之前扩散 VAE 特征或原始像素的研究不同,BLIP3-o 扩散了语义丰富的CLIP 图像特征,从而为图像理解和生成构建了强大而高效的架构。 此外还…...

【idea】调试篇 idea调试技巧合集

前言:之前博主写过一篇idea技巧合集的文章,由于技巧过于多了,文章很庞大,所以特地将调试相关的技巧单独成章, 调试和我们日常开发是息息相关的,用好调试可以事半功倍 文章目录 1. idea调试异步线程2. idea调试stream流…...

二叉树深搜:在算法森林中寻找路径

专栏:算法的魔法世界 个人主页:手握风云 目录 一、搜索算法 二、回溯算法 三、例题讲解 3.1. 计算布尔二叉树的值 3.2. 求根节点到叶节点数字之和 3.3. 二叉树剪枝 3.4. 验证二叉搜索树 3.5. 二叉搜索树中第 K 小的元素 3.6. 二叉树的所有路径 …...

golang 安装gin包、创建路由基本总结

文章目录 一、安装gin包和热加载包二、路由简单场景总结 一、安装gin包和热加载包 首先终端新建一个main.go然后go mod init ‘项目名称’执行以下命令 安装gin包 go get -u github.com/gin-gonic/gin终端安装热加载包 go get github.com/pilu/fresh终端输入fresh 运行 &…...

BMVC2023 | 多样化高层特征以提升对抗迁移性

Diversifying the High-level Features for better Adversarial Transferability 摘要-Abstract引言-Introduction相关工作-Related Work方法-Methodology实验-Experiments结论-Conclusion 论文链接 GitHub链接 本文 “Diversifying the High-level Features for better Adve…...

有哪些GIF图片转换的开源工具

以下是关于GIF图片转换的开源工具的详细总结,涵盖功能特点、适用场景及用户评价: 1. FFmpeg 功能特点: 作为开源命令行工具,FFmpeg支持视频转GIF、调整帧率、分辨率、截取片段等操作,可通过脚本批量处理。适用场景: 适合开发者或技术用户进行高效批处理,常用于服务器端自…...

C++—特殊类设计设计模式

目录 C—特殊类设计&设计模式1.设计模式2.特殊类设计2.1设计一个无法被拷贝的类2.2设计一个只能在堆上创建对象的类2.3设计一个只能在栈上创建对象的类2.4设计一个类,无法被继承2.5设计一个类。这个类只能创建一个对象【单例模式】2.5.1懒汉模式实现2.5.2饿汉模…...

Android 手写签名功能详解:从原理到实践

Android 手写签名功能详解 1. 引言2. 手写签名核心实现:SignatureView 类3. 交互层实现:MainActivity 类4. 布局与配置5. 性能优化与扩展方向 1. 引言 在电子政务、金融服务等移动应用场景中,手写签名功能已成为提升用户体验与业务合规性的关…...

Level2.8蛇与海龟(游戏)

#小龟快跑游戏 输入难度(1-5),蛇追到龟,游戏结束 #分析问题:从局部>整体 #游戏画面:创建画笔(海龟蛇)>1.海龟移动(键盘控制)>2.蛇(自动追踪,海龟位置)>3.海龟(限定范围,防止跑出画布之外)>4.游戏&…...

【Android构建系统】如何在Camera Hal的Android.bp中选择性引用某个模块

背景描述 本篇文章是一个Android.bp中选择性引用某个模块的实例。 如果是Android.mk编译时期,在编译阶段通过某个条件判断是不是引用某个模块A, 是比较好实现的。Android15使用Android.bp构建后,要想在Android.bp中通过自定义的一个变量或者条件实现选…...

【Canvas与诗词】醉里挑灯看剑 梦回吹角连营

【成图】 【代码】 <!DOCTYPE html> <html lang"utf-8"> <meta http-equiv"Content-Type" content"text/html; charsetutf-8"/> <head><title>醉里挑灯看剑梦回吹角连营 Draft1</title><style type"…...

Hue面试内容整理-Hue 架构与前后端通信

Cloudera Hue 是一个基于 Web 的 SQL 助手,旨在为数据分析师和工程师提供统一的界面,以便与 Hadoop 生态系统中的各个组件(如 Hive、Impala、HDFS 等)进行交互。其架构设计强调前后端的分离与高效通信,确保系统的可扩展性和可维护性。以下是 Hue 架构及其前后端通信机制的…...

Linux搜索

假如我们要搜索 struct sockaddr_in 我们在命令终端输入 cd/usr/include/ //进入头文件目录地址 /usr/include/ grep " struct sockaddr_in { " *-nir &#xff08;*是在当前目录&#xff0c;n 是找出来显示行数…...

Git基础原理和使用

Git 初识 一、版本管理痛点 在日常工作和学习中&#xff0c;我们经常遇到以下问题&#xff1a; - 通过不断复制文件来保存历史版本&#xff08;如报告-v1、报告-最终版等&#xff09; - 版本数量增多后无法清晰记住每个版本的修改内容 - 项目代码管理存在同样问题 二、版本控…...

实现视频分片上传 OSS

访问 OSS 有两种方式&#xff0c;本文用到的是使用临时访问凭证上传到 OSS&#xff0c;不同语言版本的代码参考&#xff1a; 使用STS临时访问凭证访问OSS_对象存储(OSS)-阿里云帮助中心 1.安装并使用 首先我们要安装 OSS&#xff1a; npm install ali-oss --save 接着我们…...

网络I/O学习(一)

一、什么是网络IO&#xff1f; 就是客户端和服务端之间的进行通信的通道(fd)。 二、网络IO通信步骤 1、建立套接字 int socketfd socket(AF_INET, SOCK_STREAM, 0);struct sockaddr_in servaddr; servaddr.sin_family AF_INET; servaddr.sin_addr.s_addr htonl(INADDR_A…...

4:OpenCV—保存图像

将图像和视频保存到文件 在许多现实世界的计算机视觉应用中&#xff0c;需要保留图像和视频以供将来参考。最常见的持久化方法是将图像或视频保存到文件中。因此&#xff0c;本教程准备解释如何使用 OpenCV C将图像和视频保存到文件中。 将图像保存到文件 可以学习如何保存从…...

Selenium-Java版(css表达式)

css表达式 前言 根据 tag名、id、class 选择元素 tag名 #id .class 选择子元素和后代元素 定义 语法 根据属性选择 验证CSS Selector 组选择 按次序选择子节点 父元素的第n个子节点 父元素的倒数第n个子节点 父元素的第几个某类型的子节点 父元素的…...

产品更新丨谷云科技 iPaaS 集成平台 V7.5 版本发布

五月&#xff0c;谷云科技 iPaaS 集成平台保持月度更新&#xff0c; V7.5 版本于近日正式发布。我们一起来看看新版本有哪些升级和优化。 核心新增功能&#xff1a;深化API治理&#xff0c;释放连接价值 API网关&#xff1a;全链路可控&#xff0c;精准管控业务状态 业务状态…...

深度学习让鱼与熊掌兼得

通常,一个大的复杂的模型的loss会低,但是拟合方面不够,小的模型在拟合方面更好,但是loss高,我们可以通过深度学习来得到一个有着低loss的小模型 我们之前学过,peacewise linear可以用常数加上一堆这个阶梯型函数得到,然后因为peacewise linear可以逼近任何function,所以理论上…...

TDuckX 2.6 正式发布|API 能力开放,核心表单逻辑重构,多项实用功能上线。

大家好&#xff0c;TDuckX 2.6 已正式发布。 本次更新以可集成性提升、数据处理能力增强和交互体验优化为核心&#xff0c;新增了包括 新增OpenAPI 模块、表单数据批量修改、字段导出分列 等多个面向开发者和实际业务落地场景的功能。 我们也重构了部分底层逻辑模块&#xff…...

LeetCode Hot100刷题——除自身以外数组的乘积

238. 除自身以外数组的乘积 给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&a…...

JAVA EE(进阶)_进阶的开端

别放弃浸透泪水的昨天&#xff0c;晨光已为明天掀开新篇 ——陳長生. ❀主页&#xff1a;陳長生.-CSDN博客❀ &#x1f4d5;上一篇&#xff1a;JAVA EE_HTTP-CSDN博客 1.什么是Java EE Java EE&#xff08;Java Pla…...

PDF批量合并拆分+加水印转换 编辑 加密 OCR 识别

各位办公小能手们&#xff01;你们有没有遇到过被PDF文件折腾得晕头转向的时候呀&#xff1f;其实啊&#xff0c;有专门处理、编辑、管理和优化PDF文件的软件&#xff0c;那就是PDF工具。它功能老多了&#xff0c;有文档格式转换、内容编辑、页面管理、安全保护这些核心功能。下…...

Go语言交替打印问题及多种实现方法

Go语言交替打印问题及多种实现方法 在并发编程中&#xff0c;多个线程&#xff08;或 goroutine&#xff09;交替执行任务是一个经典问题。本文将以 Go 语言为例&#xff0c;介绍如何实现多个 goroutine 交替打印数字的功能&#xff0c;并展示几种不同的实现方法。 Go 语言相关…...

ArcGIS Pro调用多期历史影像

一、访问World Imagery Wayback&#xff0c;基本在我国范围 如下图&#xff1a; 二、 放大到您感兴趣的区域 三、 查看影像版本信息 点击第二步的按钮后&#xff0c;便可跳转至World Imagery (Wayback 2025-04-24)的相关信息。 四 、点击上图影像版本信息&#xff0c;页面跳转…...