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

2024-06-03 06:52

本文主要是介绍Linux服务器扩容及磁盘分区(LVM和非LVM),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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 1LC_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;扩展分区e2  #分区号  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/vdb1sudo mkfs -t ext4 /dev/vdb2sudo mkfs -t ext4 /dev/vdb3

3、创建物理卷并查看

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

# 将物理设备 创建物理卷pvcreate /dev/vdb1 /dev/vdb2 /dev/vdb3

(

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

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

)

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

# 查看物理卷pvdisplay

4、创建物理卷组

# 创建物理卷组vgcreate vgdata /dev/vdb1 vgcreate vgusr /dev/vdb2vgcreate vgvar /dev/vdb3

5、创建逻辑卷

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

lvcreate -n lvdata -l 5119 vgdata lvcreate -n lvusr -l 5119 vgusrlvcreate -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、查看是否有空闲的物理卷或逻辑卷

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

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博客

这篇关于Linux服务器扩容及磁盘分区(LVM和非LVM)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1026264

相关文章

Web服务器-Nginx-高并发问题

《Web服务器-Nginx-高并发问题》Nginx通过事件驱动、I/O多路复用和异步非阻塞技术高效处理高并发,结合动静分离和限流策略,提升性能与稳定性... 目录前言一、架构1. 原生多进程架构2. 事件驱动模型3. IO多路复用4. 异步非阻塞 I/O5. Nginx高并发配置实战二、动静分离1. 职责2

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

Linux系统管理与进程任务管理方式

《Linux系统管理与进程任务管理方式》本文系统讲解Linux管理核心技能,涵盖引导流程、服务控制(Systemd与GRUB2)、进程管理(前台/后台运行、工具使用)、计划任务(at/cron)及常用... 目录引言一、linux系统引导过程与服务控制1.1 系统引导的五个关键阶段1.2 GRUB2的进化优

Linux查询服务器 IP 地址的命令详解

《Linux查询服务器IP地址的命令详解》在服务器管理和网络运维中,快速准确地获取服务器的IP地址是一项基本但至关重要的技能,下面我们来看看Linux中查询服务器IP的相关命令使用吧... 目录一、hostname 命令:简单高效的 IP 查询工具命令详解实际应用技巧注意事项二、ip 命令:新一代网络配置全

linux安装、更新、卸载anaconda实践

《linux安装、更新、卸载anaconda实践》Anaconda是基于conda的科学计算环境,集成1400+包及依赖,安装需下载脚本、接受协议、设置路径、配置环境变量,更新与卸载通过conda命令... 目录随意找一个目录下载安装脚本检查许可证协议,ENTER就可以安装完毕之后激活anaconda安装更

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详

Linux grep 命令的使用指南

《Linuxgrep命令的使用指南》本文给大家介绍Linuxgrep命令的使用指南,包括基础搜索语法、实践指南,感兴趣的朋友跟随小编一起看看吧... 目录linux grep 命令全面使用指南一、基础搜索语法1. 基本文本搜索2. 多文件搜索二、常用选项详解1. 输出控制选项2. 上下文控制选项三、正则表达