您当前的位置:首页 > 电脑百科 > 软件技术 > 操作系统 > linux百科

Linux 系统在线扩容磁盘空间

时间:2023-04-19 13:59:33  来源:今日头条  作者:大数据老司机

一、概述

linux系统中,目录的大小是动态的,随着其中的文件和子目录的添加、删除和修改而变化。当目录中的文件和子目录越来越多时,可能需要对该目录进行动态扩容,以便为其提供足够的空间。

以下是Linux目录动态扩容的概述:

  1. 确定当前目录的大小:使用命令du可以获取目录的大小信息。例如,运行命令du -sh /path/to/directory可以显示指定目录的大小。
  2. 确定当前目录的文件系统类型:使用命令df -T /path/to/directory可以获取指定目录所在的文件系统类型。通常,Linux系统使用ext2、ext3、ext4等文件系统类型。
  3. 检查当前目录所在的文件系统是否支持动态扩容:不是所有文件系统都支持动态扩容,因此需要检查当前目录所在的文件系统是否支持。通常情况下,ext2、ext3、ext4等常用的Linux文件系统都支持动态扩容。
  4. 对文件系统进行扩容:如果文件系统支持动态扩容,可以使用工具对其进行扩容。对于ext2、ext3、ext4等文件系统,可以使用resize2fs命令来扩展文件系统。例如,如果要将/dev/sda1文件系统扩展到10GB,可以使用命令resize2fs /dev/sda1 10G。
  5. 扩容目录所在的分区:在对文件系统进行扩容后,需要将目录所在的分区进行扩容。可以使用fdisk命令或其他分区管理工具对分区进行扩容。注意,在扩容分区之前,必须先对文件系统进行扩容,否则扩容分区可能会导致数据丢失。
  6. 检查目录是否已经扩容成功:使用du命令再次检查目录的大小,以确保已经成功扩容。

需要注意的是,在扩容文件系统和分区时,必须备份所有重要数据,以免发生数据丢失。

二、开始实战操作演示

第一步:添加一块10G的硬盘

第二步:查看添加的硬盘

fdisk -l

如果看不到新添加的磁盘块,则如下解决

# 重新扫描SCSI总线添加设备

echo "- - -" > /sys/class/scsi_host/host0/scan
echo "- - -" > /sys/class/scsi_host/host1/scan
echo "- - -" > /sys/class/scsi_host/host2/scan

注意,如果扫描这三个文件不成,就全部扫描一遍

cat /usr/local/src/test.sh

#!/usr/bin/bash

scsisum=`ll /sys/class/scsi_host/host*|wc -l`

for ((i=0;i<${scsisum};i++))
do
    echo "- - -" > /sys/class/scsi_host/host${i}/scan
done

#echo "- - -" > /sys/class/scsi_host/host0/scan 这三个值代表通道,SCSI目标ID和LUN。破折号充当通配符,意思是“重新扫描一切”

第三步:对磁盘进行分区

注意:不同操作系统的磁盘命名方式不同,有些是/dev/vdc。具体使用方式参考第三步中fdisk -l首行显示Disk。
按照下面Linux操作进行分区。

$ fdisk /dev/sdc
# fdisk的交互模式,依次输入

n  --创建新分区
p  --创建主分区
<回车>  --默认分区编号
<回车>  --默认起始扇区位置。
<回车>  --默认结束扇区位置。
t  --设置分区类型
8e  类型为LVM
w  --写入分区表

# 查看分区情况

fdisk -l /dev/sdc

第四步:扩充根分区:将新分区扩展根:/

1、查看卷分组

[root@compute2 ~]# vgdisplay -v
--- Volume group ---
VG Name centos    # 卷分组名,后面会用到这个名字
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size 12.00 GiB
PE Size 4.00 MiB
Total PE 3073
Alloc PE / Size 3072 / 12.00 GiB
Free PE / Size 1 / 4.00 MiB # 这一项表示目前该系统上还存在4.00G的空闲空间,可以增加到其它分区上使用
VG UUID gjNdOE-1caE-oOKW-CzOU-3JTz-NUFY-f5R5my

2、为新增的分区创建物理卷

# 注意3表示上面设置分区编号
pvcreate /dev/sdc3

3、查看新建的物理卷和大小,使用pvdisplay命令。

[root@compute2 ~]# pvdisplay /dev/sdc3
"/dev/sdc3" is a new physical volume of "<10.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdc3
VG Name
PV Size <10.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID w7wpuN-2kvs-v8Zp-3y6V-ptpC-QvFq-BAWQ9O

4、扩展卷分组,"centos"是vgdisplay命令查到的卷分组名:这里的卷分组名跟上面呼应

[root@compute2 ~]# vgextend centos /dev/sdc3
  Volume group "centos" successfully extended

5、查看文件根系统名称

[root@compute2 ~]# df -h|grep '/$'
/dev/mApper/centos-root 10G 6.7G 3.4G 67% /

6、扩展逻辑卷空间5G

[root@compute2 ~]# **lvextend -L +5G /dev/mapper/centos-root**
Size of logical volume centos/root changed from 10.00 GiB (2560 extents) to 15.00 GiB (3840 extents).
Logical volume centos/root successfully resized.

7、最后扩容文件系统

# 使用 resize2fs或xfs_growfs 对挂载目录在线扩容
# resize2fs 针对文件系统ext2 ext3 ext4
# xfs_growfs 针对文件系统xfs
[root@compute2 ~]# xfs_growfs /dev/mapper/centos-root 
meta-data=/dev/mapper/centos-root isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 2621440 to 3932160

8、最后查看文件系统

df -h

在线扩容到此为止了,有任何疑问欢迎给我留言或关注我公众号【大数据与云原生技术分享】加群交流或私信沟通,后续会持续更新技术文章,请小伙伴耐心等待~



Tags:Linux   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
Linux获取Redis 性能指标方法
一、监控指标&Oslash; 性能指标:Performance&Oslash; 内存指标: Memory&Oslash; 基本活动指标:Basic activity&Oslash; 持久性指标: Persistence&Oslash; 错误指标:Error二、监...【详细内容】
2024-04-11  Search: Linux  点击:(2)  评论:(0)  加入收藏
微软 Win11 Linux 子系统(WSL)发布 2.2.2 版本
IT之家 4 月 8 日消息,微软近日更新 Windows Subsystem for Linux(WSL),最新 2.2.2 版本中带来了诸多改进,重点更新了 nft 规则,可以让 IPv6 流量通过 Linux 容器。图源: dev.to,AI...【详细内容】
2024-04-08  Search: Linux  点击:(6)  评论:(0)  加入收藏
从原理到实践:深入探索Linux安全机制
Linux 是一种开源的类Unix操作系统内核,由Linus Torvalds在1991年首次发布,其后又衍生出许多不同的发行版(如Ubuntu、Debian、CentOS等)。前言本文将从用户和权限管理、文件系统...【详细内容】
2024-03-27  Search: Linux  点击:(16)  评论:(0)  加入收藏
在Linux系统中,如何处理内存管理和优化的问题?
本文对 Linux 内存管理和优化的一些高级技巧的详细介绍,通过高级的内存管理技巧,可以帮助系统管理员和开发人员更好地优化 Linux 系统的内存使用情况,提高系统性能和稳定性。在...【详细内容】
2024-03-26  Search: Linux  点击:(10)  评论:(0)  加入收藏
Linux 6.9-rc1 内核发布:AMD P-State 首选核心、BH 工作队列
IT之家 3 月 25 日消息,Linus Torvalds 宣布,Linux 6.9 内核的首个 RC(候选发布)版 Linux 6.9-rc1 发布。▲ Linux 6.9-rc1Linus 表示,Linux 内核 6.9 看起来是一个“相当正常”...【详细内容】
2024-03-25  Search: Linux  点击:(11)  评论:(0)  加入收藏
Linux发行版 Ubuntu 迎更新 界面设计灵感来自 Windows 11
近日,一位第三方开发者推出了一款名为“Wubuntu”的特殊Linux发行版。这款系统源自主流的Ubuntu版本,但在界面设计上却借鉴了微软最新的Windows 11风格,甚至在其中融入了微软标...【详细内容】
2024-02-27  Search: Linux  点击:(43)  评论:(0)  加入收藏
Win + Ubuntu 缝合怪:第三方开发者推出“Wubuntu”Linux 发行版
IT之家 2 月 26 日消息,一位第三方开发者推出了一款名为“Wubuntu”的缝合怪 Linux 发行版,系统本身基于 Ubuntu,但界面为微软 Windows 11 风格,甚至存在微软 Windows 徽标。据...【详细内容】
2024-02-27  Search: Linux  点击:(49)  评论:(0)  加入收藏
Linux中磁盘和文件系统工作原理解析
在Linux系统中,一切皆文件的概念意味着所有的资源,包括普通文件、目录以及设备文件等,都以文件的形式存在。这种统一的文件系统管理方式使得Linux系统具有高度的灵活性和可扩展...【详细内容】
2024-02-20  Search: Linux  点击:(51)  评论:(0)  加入收藏
Linux子系统概览
inux操作系统是一个模块化的系统,由多个子系统组成。这些子系统协同工作,使Linux能够执行各种任务。了解Linux的子系统有助于更好地理解整个操作系统的运作机制。以下是Linux...【详细内容】
2024-02-01  Search: Linux  点击:(76)  评论:(0)  加入收藏
Linux内核:系统之魂与交互之源
内核,作为任何基于Linux的操作系统的心脏,扮演着至关重要的角色。它不仅是计算机系统软件与硬件之间的桥梁,更是确保系统稳定、高效运行的关键。内核提供了一系列核心功能,为上...【详细内容】
2024-02-01  Search: Linux  点击:(68)  评论:(0)  加入收藏
▌简易百科推荐
微软 Win11 Linux 子系统(WSL)发布 2.2.2 版本
IT之家 4 月 8 日消息,微软近日更新 Windows Subsystem for Linux(WSL),最新 2.2.2 版本中带来了诸多改进,重点更新了 nft 规则,可以让 IPv6 流量通过 Linux 容器。图源: dev.to,AI...【详细内容】
2024-04-08    IT之家  Tags:Linux   点击:(6)  评论:(0)  加入收藏
从原理到实践:深入探索Linux安全机制
Linux 是一种开源的类Unix操作系统内核,由Linus Torvalds在1991年首次发布,其后又衍生出许多不同的发行版(如Ubuntu、Debian、CentOS等)。前言本文将从用户和权限管理、文件系统...【详细内容】
2024-03-27  凡夫编程  微信公众号  Tags:Linux安全   点击:(16)  评论:(0)  加入收藏
在Linux系统中,如何处理内存管理和优化的问题?
本文对 Linux 内存管理和优化的一些高级技巧的详细介绍,通过高级的内存管理技巧,可以帮助系统管理员和开发人员更好地优化 Linux 系统的内存使用情况,提高系统性能和稳定性。在...【详细内容】
2024-03-26  编程技术汇  微信公众号  Tags:Linux   点击:(10)  评论:(0)  加入收藏
Linux 6.9-rc1 内核发布:AMD P-State 首选核心、BH 工作队列
IT之家 3 月 25 日消息,Linus Torvalds 宣布,Linux 6.9 内核的首个 RC(候选发布)版 Linux 6.9-rc1 发布。▲ Linux 6.9-rc1Linus 表示,Linux 内核 6.9 看起来是一个“相当正常”...【详细内容】
2024-03-25    IT之家  Tags:Linux   点击:(11)  评论:(0)  加入收藏
轻松实现Centos系统的软件包安装管理:yum指令实战详解
yum 是一种用于在 CentOS、Red Hat Enterprise Linux (RHEL) 等基于 RPM 的 Linux 发行版上安装、更新和管理软件包的命令行工具。它可以自动解决软件包依赖关系,自动下载并...【详细内容】
2024-02-27  凡夫贬夫  微信公众号  Tags:Centos   点击:(54)  评论:(0)  加入收藏
Win + Ubuntu 缝合怪:第三方开发者推出“Wubuntu”Linux 发行版
IT之家 2 月 26 日消息,一位第三方开发者推出了一款名为“Wubuntu”的缝合怪 Linux 发行版,系统本身基于 Ubuntu,但界面为微软 Windows 11 风格,甚至存在微软 Windows 徽标。据...【详细内容】
2024-02-27    IT之家  Tags:Ubuntu   点击:(49)  评论:(0)  加入收藏
Linux中磁盘和文件系统工作原理解析
在Linux系统中,一切皆文件的概念意味着所有的资源,包括普通文件、目录以及设备文件等,都以文件的形式存在。这种统一的文件系统管理方式使得Linux系统具有高度的灵活性和可扩展...【详细内容】
2024-02-20  王建立    Tags:Linux   点击:(51)  评论:(0)  加入收藏
Linux子系统概览
inux操作系统是一个模块化的系统,由多个子系统组成。这些子系统协同工作,使Linux能够执行各种任务。了解Linux的子系统有助于更好地理解整个操作系统的运作机制。以下是Linux...【详细内容】
2024-02-01    简易百科  Tags:Linux   点击:(76)  评论:(0)  加入收藏
Linux内核:系统之魂与交互之源
内核,作为任何基于Linux的操作系统的心脏,扮演着至关重要的角色。它不仅是计算机系统软件与硬件之间的桥梁,更是确保系统稳定、高效运行的关键。内核提供了一系列核心功能,为上...【详细内容】
2024-02-01  松鼠宝贝    Tags:Linux内核   点击:(68)  评论:(0)  加入收藏
如何确保Linux进程稳定与持久
在Linux系统中,进程的稳定性与持久性对于维持系统的持续运行至关重要。然而,由于各种原因,进程可能会面临崩溃或系统重启的情况。为了确保关键进程能够持续运行,我们必须采取一...【详细内容】
2024-01-19  松鼠宝贝    Tags:Linux进程   点击:(85)  评论:(0)  加入收藏
站内最新
站内热门
站内头条