linux扩容根目录空间_Linux系统扩容根目录磁盘空间的操作方法

Linux系统扩容根目录磁盘空间的操作方法

一、使用背景

Linux根目录磁盘空间不够用了,当修改了虚拟机模版增加磁盘大小或者插入了一块新硬盘,但是发现系统里的大小还是没改变。

产生的原因是没有给磁盘格式化,没有增加分区。

二、操作方法

1.查看磁盘空间大小,使用df -h 命令,发现挂载根目录节点的/dev/mapper/vg_node003-lv_root 只有7.1G容量。

[root@node-002 ~]# df -h

Filesystem Size Used Avail Use% Mounted on

/dev/mapper/vg_node003-lv_root 18G 9.3G 7.1G 57% /

tmpfs 491M 0 491M 0% /dev/shm

/dev/sda1 477M 42M 411M 10% /boot

2.增加磁盘空间,例如下图使用VM虚拟机增加的方式。

3.使用fdisk -l命令查看磁盘信息。当看到第一行Disk /dev/sda: 53.7 GB与实际df -h显示内容不符时,说明增加磁盘成功了。

[root@node-002 ~]# fdisk -l

Disk /dev/sda: 53.7 GB, 53687091200 bytes

255 heads, 63 sectors/track, 6527 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00092cf6

Device Boot Start End Blocks Id System

/dev/sda1 * 1 64 512000 83 Linux

Partition 1 does not end on cylinder boundary.

/dev/sda2 64 2611 20458496 8e Linux LVM

Disk /dev/mapper/vg_node003-lv_root: 18.8 GB, 18798870528 bytes

255 heads, 63 sectors/track, 2285 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

Disk /dev/mapper/vg_node003-lv_swap: 2147 MB, 2147483648 bytes

255 heads, 63 sectors/track, 261 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x00000000

4.使用fdisk /dev/sda, 创建新分区。

注意:不同操作系统的磁盘命名方式不同,有些是/dev/vda。具体使用方式参考第三步中fdisk -l首行显示Disk。如笔者在该系统中首行显示为Disk /dev/sda: 53.7 GB, 53687091200 bytes ,故使用命令fdisk /dev/sda)

按照下面Linux操作进行分区。

[root@node-002 ~]# fdisk /dev/vda

命令(输入 m 获取帮助): m

命令操作

a toggle a bootable flag

b edit bsd disklabel

c toggle the dos compatibility flag

d delete a partition

l list known partition types

m print this menu

n add a new partition

o create a new empty DOS partition table

p print the partition table

q quit without saving changes

s create a new empty Sun disklabel

t change a partition's system id

u change display/entry units

v verify the partition table

w write table to disk and exit

x extra functionality (experts only)

命令(输入 m 获取帮助): n #new 新分区

Partition type:

p primary (1 primary, 1 extended, 2 free)

l logical (numbered from 5)

Select (default p): p #选择主分区

分区号 (1-4,默认为 3): 3 #分区序号

起始 sector (499712-314572799,默认为 499712): #分区开始回车默认

将使用默认值 499712

Last sector, +扇区 or +size{K,M,G} (499712-501757,默认为 501757):

将使用默认值 501757

命令(输入 m 获取帮助): n #new 新分区

Partition type:

p primary (2 primary, 1 extended, 1 free)

l logical (numbered from 5)

Select (default p): p #选择主分区

Selected partition 4 #分区序号

起始 sector (62912512-314572799,默认为 62912512): #分区开始回车默认

将使用默认值 62912512

Last sector, +扇区 or +size{K,M,G} (62912512-314572799,默认为 314572799):

将使用默认值 314572799

命令(输入 m 获取帮助): t #修改分区格式

分区号 (1-5): 4 #修改分区号

Hex code (type L to list codes): 8e #格式选择8e linux LVM

Changed system type of partition 4 to 8e (Linux LVM)

命令(输入 m 获取帮助): p #显示分区信息

Disk /dev/sda: 161.1 GB, 161061273600 bytes

16 heads, 63 sectors/track, 312076 cylinders, total 314572800 sectors

Units = 扇区 of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x0001a023

设备 启动 起点 终点 块数 Id 系统

/dev/sda1 * 2048 499711 248832 83 Linux

/dev/sda2 501758 62912511 31205377 5 扩展

/dev/sda3 499712 501757 1023 83 Linux

Partition table entries are not in disk order

命令(输入 m 获取帮助): w #保存信息

The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.

The kernel still uses the old table. The new table will be used at

the next reboot or after you run partprobe(8) or kpartx(8)

Syncing disks.

5.重启Linux操作系统,使用reboot命令。

6.创建物理卷,使用pvcreate /dev/sda3命令。

[root@node-002 dev]# pvcreate /dev/sda3

Physical volume "/dev/sda3" successfully created

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

[root@node-002 dev]# pvdisplay

--- Physical volume ---

PV Name /dev/sda2

VG Name vg_node003

PV Size 19.51 GiB / not usable 3.00 MiB

Allocatable yes (but full)

PE Size 4.00 MiB

Total PE 4994

Free PE 0

Allocated PE 4994

PV UUID UC4j5m-rJO4-DroW-E92L-n5Vj-SU0U-PJyfJf

"/dev/sda3" is a new physical volume of "30.00 GiB"

--- NEW Physical volume ---

PV Name /dev/sda3

VG Name

PV Size 30.00 GiB

Allocatable NO

PE Size 0

Total PE 0

Free PE 0

Allocated PE 0

PV UUID nng8Gx-51fP-DIBH-YeF4-Sw7B-S0jQ-oGXfpa

8.将添加新的物理卷,加载到vg_node003卷组,使用vgextend vg_node003 /dev/sda3命令。

[root@node-002 dev]# vgextend vg_node003 /dev/sda3

Volume group "vg_node003" successfully extended

9.查看卷组信息,使用vgdisplay命令。

[root@node-002 dev]# vgdisplay

--- Volume group ---

VG Name vg_node003

System ID

Format lvm2

Metadata Areas 2

Metadata Sequence No 4

VG Access read/write

VG Status resizable

MAX LV 0

Cur LV 2

Open LV 2

Max PV 0

Cur PV 2

Act PV 2

VG Size 49.50 GiB

PE Size 4.00 MiB

Total PE 12673

Alloc PE / Size 4994 / 19.51 GiB

Free PE / Size 7679 / 30.00 GiB

VG UUID v37e5T-4iPX-olm0-Claw-8EfO-axHf-evCAfc

10.增加vg_node003大小,增加30G。使用lvresize -L +30G /dev/mapper/vg_node003-lv_root命令。

注:vg_node003-lv_root在/dev/mapper里面查看

[root@node-002 mapper]# lvresize -L +29.99G /dev/mapper/vg_node003-lv_root

Rounding size to boundary between physical extents: 29.99 GiB

Size of logical volume vg_node003/lv_root changed from 17.51 GiB (4482 extents) to 47.50 GiB (12160 extents).

Logical volume lv_root successfully resized

11.重新识别vg_node003大小,使用resize2fs /dev/mapper/vg_node003-lv_root命令。

[root@node-002 mapper]# resize2fs /dev/mapper/vg_node003-lv_root

resize2fs 1.41.12 (17-May-2010)

Filesystem at /dev/mapper/vg_node003-lv_root is mounted on /; on-line resizing required

old desc_blocks = 2, new_desc_blocks = 3

Performing an on-line resize of /dev/mapper/vg_node003-lv_root to 12451840 (4k) blocks.

The filesystem on /dev/mapper/vg_node003-lv_root is now 12451840 blocks long.

如出现下列情况

resize2fs: Bad magic number in super-block 当尝试打开 /dev/mapper/vg_node003-lv_root 时 找不到有效的文件系统超级块.

请使用xfs_growfs /dev/mapper/vg_node003-lv_root

[root@node-002 ~]# xfs_growfs /dev/mapper/vg_node003-lv_root

meta-data=/dev/mapper/centos-root isize=512  agcount=4, agsize=2891264 blks

= sectsz=512  attr=2, projid32bit=1

=               crc=1     finobt=0 spinodes=0

data =               bsize=4096 blocks=11565056, imaxpct=25

=               sunit=0 swidth=0 blks

naming = version 2         bsize=4096 ascii-ci=0 ftype=1

log    = internal          bsize=4096 blocks=5647, version=2

=               sectsz=512 sunit=0 blks, lazy-count=1

realtime =none extsz=4096 blocks=0, rtextents=0

data blocks changed from 11565056 to 24672256

12.查看扩容后的大小 ,使用df -h命令。

[root@node-002 mapper]# df -h

Filesystem Size Used Avail Use% Mounted on

/dev/mapper/vg_node003-lv_root 47G 9.3G 36G 21% /

tmpfs 491M 0 491M 0% /dev/shm

/dev/sda1 477M 42M 411M 10% /boot

当看到/dev/mapper/vg_node003-lv_root 已经更新到新的大小时,则表示增加成功。

三、总结

以上所述是小编给大家介绍的Linux系统扩容根目录磁盘空间的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。

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

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

相关文章

【ASP】文件上传

描述:在button事件中注册一个上传事件 代码详解: protected void FileUpload_Click(object sender, EventArgs e) { bool fileIsvaild false; //初始化一个bool型为false的fileIsvaild if (this.FileUpload1.HasFile)…

哈夫曼字符串编码c语言实现,基于哈夫曼(haffuman)算法的文件压缩的实现(C语言)(原创)...

本文首先简要阐述哈夫曼算法的基本思想,然后介绍了使用哈夫曼算法进行文件压缩和解压缩的处理步骤,最后给出了C语言实现的文件压缩和解压缩的源代码。哈夫曼算法的主要思想是:①首先遍历要处理的字符串,得到每个字符的出现的次数&…

html 长文本 截断 jquery 扩展脚本

(function ($){$.LongTextFormat function (selector, fmlength){var re /\s/g;$(selector).each(function (i){//获取td当前对象的文本,如果长度大于25; var jobj $(this);var text jobj.text();if (text){text text.replace(re, "");if (text.length > fml…

rn 滑动验证_rn-fetch-blob

1.前言 最近开发react-native的app,上传图片功能需要使用相机,发现Genymotion默认的相机不工作.查看同行的博客解决了,归纳整理一下. 2.步骤 2.1安装Genymotion:http://www.genymotion.net/ 2.2在windows电脑上安装ManyCam ...ziguiyu2019-05-15React Native最近有大动作&#…

md5生成一个加盐程序c语言,MD5在编程中的实现 (C语言)

在C语言中实现MD5算法———————————————————————————————————————————*/#ifndef PROTOTYPES#define PROTOTYPES 0#endiftypedef unsigned char *POINTER;typedef unsigned short int UINT2;typedef unsigned long int UINT4;#if PROT…

用matlab画大数据曲线_基于MATLAB的大数据分析

王媚摘要:传统计算机模式与MATLAB软件技术相比较,传统软件运行起来较为复杂。以此基于MATLAB软件下的网络数据技术,它以高速化、关联化的优势成为人们眼中的焦点。本文针对传统网络软件模式中出现的问题,对基于MATLAB大数据技术进…

代码之谜(三)- 运算符

从最简单的运算符加号()说起,加号()是个二元运算符——也就是说,加号只把两个数联接起来,从来不把第三个或者更多的联接起来。 因此,“1加2加3” 在计算机中被表述为: (1 2) 3 // a 或者 1 (2 3) // b 虽…

非培训的前端转行之路(根据个人真实经历)

我是歌谣 放弃很很难 但是坚持一定很酷 本文乃本人真实经历书写 希望对你的工作和学习有所帮助 感谢你得阅读 前言 我是歌谣,当然真名不是叫歌谣。 歌谣的原因 1. 歌谣可以传承很久 影响比较大 2. 歌谣可以让人心情愉悦 让人积极向上 3. 名字里面有个谐音 哈哈 …

c语言做贪吃蛇vs2015,熬书几个月,终于编出简易的贪吃蛇了,VS2013

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼#include#include#include#include#define X 30#define Y 15void guozi(int *x, int *y);int main(void){char map[X][Y];int x;int y;//横纵坐标int i;int j;//标记蛇头int p, q;//标记蛇尾int t, d;//寻找蛇尾int n 4;//蛇的长度…

java零钱换整程序_贪心算法换零钱(java)

贪心算法思想贪心算法总是做出在当前看来做好的选择。也就是说贪心算法并不从整体最后考虑,他做出的选择只是局部最优选择。他所做出的仅是在某种意义上的局部最优解。贪心算法不是对所有问题都能得到整体最优解,但对范围相当广泛的许多问题他能产生整体…

[LeetCode] Sqrt(x)

Implement int sqrt(int x). Compute and return the square root of x. 牛顿迭代 1 class Solution {2 public:3 int sqrt(int x) {4 // Start typing your C/C solution below5 // DO NOT write int main() function6 double ans x;7 8…

c语言江宝钏实验六答案,C语言程序设计江宝钏著实验六答案

C语言程序设计江宝钏著实验六答案6.4 实验六 数组一、 实验目的与要求1. 掌握一维数组的定义、赋值和输入输出的方法。2. 理解一维数组的存储方法及下标的表示方法。3. 掌握与数组有关的算法(特别是排序算法 )。4. 掌握二维数组的定义、赋值和输入输出的方法。5. 理解二维数组的…

一文带你理解vue创建一个后台管理系统流程(Vue+Element)

我是歌谣 放弃很容易 但是坚持一定很酷 1前言 本文根据自己工作经历编写,若有不合理之处,欢迎吐槽 2定义 后台管理系统什么 对一个页面进行增删改查 是不是有点像,不重复定义 3第一次接触后台管理系统 第一次接触后台管理系统是某b站的一…

glibc的头文件 linux_求助,编译glibc头文件时出错

我用的软件包如下:binutils-2.16.tar.gzgcc-3.4.4.tar.bz2glibc-2.3.5.tar.gzglibc-linuxthreads-2.3.5.tar.gzlinux-2.6.14.1.tar.gz补丁:ioperm.c.diffflow.c.difft-linux.diff想编译交叉工具链,用的编译指令是这样的:[rootlocalhost build-glibc-headers]#../glibc-2.3.5/co…

多表查询的一些技巧

1、基本方法:From 后面可以接多个表名,表与表之间用逗号隔开,查询字段之间要加上表的名字。 例如:Select table1.column1, table2.column1 from table1, table2 2、表别名:可以为表设置别名,以简化输入&…

c语言 将结构体放在flash,如何将 结构体 的 数据 定义在flash里面,并如何读出来,求各位达人帮助……...

如题,本人不太熟悉GCC,特别是定义在flash和eeprom的数据,所以在做液晶的字库时遇到问题,讲解下思路:用查表的方式,定义一个结构体来装载字符的内码和字符数据。程序如下:/*********************…

“数万行代码“教你用html和css编写一个精美的网页

我是歌谣 放弃很容易 但是坚持一定很酷 1前言 作为一名前端开发工程师 开发一个完美的网页也是我们的必修课之一 逻辑写起来有时候不是那么的难 据说页面样式才是最难的一课 本文内容纯属自己个人观点 欢迎一起交流吐槽 2网页基础版(divcss) 我第一次接触…

C#中在主窗体中用ShowDialog方法显示子窗体的使用技巧

显示和关闭子窗体: 方法1:源代码: EatGood.FoodManageUI.MessageForm.ConfirmDelFeelkindOrFeelsForm feelkindform new MessageForm.ConfirmDelFeelkindOrFeelsForm(); //创建一个窗体对象 feelkindform.ShowDialog() ; //显示窗体 子窗体中…