一、查看分区和文件系统
1.运行fdisk -lu <DeviceName>确认数据盘是否分区。
本示例中,原有的数据盘空间已做分区/dev/vdb1。
- 如果”System”=”Linux”,说明数据盘使用的是MBR分区格式。
- 如果”System”=”GPT”,说明数据盘使用的是GPT格式。
[root@ecshost ~]# fdisk -lu /dev/vdb Disk /dev/vdb: 42.9 GB, 42949672960 bytes, 83886080 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x9277b47b Device Boot Start End Blocks Id System /dev/vdb1 2048 41943039 20970496 83 Linux
2. 运行blkid <PartitionName>确认文件系统的类型。
本示例中,/dev/vdb1的文件系统类型为ext4。
[root@ecshost ~]# blkid /dev/vdb1 /dev/vdb1: UUID="e97bf1e2-fc84-4c11-9652-73********24" TYPE="ext4"
说明 未分区并且未创建文件系统的数据盘,以及已分区但未创建文件系统的数据盘,不会返回结果。
3. 运行以下命令确认文件系统的状态。
- ext*文件系统:e2fsck -n <dst_dev_part_path>
- xfs文件系统:xfs_repair -n <dst_dev_part_path>
[root@ecshost ~]# e2fsck -n /dev/vdb1 e2fsck 1.42.9 (28-Dec-2013) Warning! /dev/vdb1 is mounted. Warning: skipping journal recovery because doing a read-only filesystem check. /dev/vdb1: clean, 11/1310720 files, 126322/5242624 blocks
二、选择分区或文件系统扩容方式
1.扩展MBR分区
- 实例内核版本 < 3.6:先取消挂载该分区,再修改分区表,最后扩容文件系统。
- 实例内核版本 ≥ 3.6:先修改对应分区表,再通知内核更新分区表,最后扩容文件系统。
1)查看分区表。
运行fdisk -lu /dev/vdb,并记录旧分区的起始和结束的扇区位置。
[root@ecshost ~]# fdisk -lu /dev/vdb Disk /dev/vdb: 42.9 GB, 42949672960 bytes, 83886080 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x9277b47b Device Boot Start End Blocks Id System /dev/vdb1 2048 41943039 20970496 83 Linux
2)卸载挂载分区
[root@nagios_server ~]# umount /dev/sdc /data1
3)用fdisk工具删除旧分区保存后,创建新分区并保存。
使用fdisk工具删除旧分区。
- 运行fdisk -u /dev/vdb:分区数据盘。
- 输入p:打印分区表。
- 输入d:删除分区。
- 输入p:确认分区已删除。
- 输入w:保存修改并退出。
使用fdisk命令新建分区。
- 运行fdisk -u /dev/vdb:分区数据盘。
- 输入p:打印分区表。
- 输入n:新建分区。
- 输入p:选择分区类型为主分区。
警告: 新分区的起始位置必须和旧分区的起始位置相同,结束位置必须大于旧分区的结束位置,否则会导致扩容失败。
4)确认分区表已添加
运行lsblk /dev/vdb确保分区表已经增加。
运行e2fsck -n /dev/vdb1再次检查文件系统,确认扩容分区后的文件系统状态为clean。
5)通知内核更新分区表。
扩容文件系统。
- ext*文件系统(例如ext3和ext4):运行resize2fs /dev/vdb1并重新挂载分区。
- xfs文件系统:先运行mount /dev/vdb1 /mnt/命令,再运行xfs_growfs /dev/vdb1。
2.扩展GPT分区
1.使用fdisk工具查看待扩展的数据盘分区信息
2.卸载已挂载磁盘
3.使用parted工具为分区分配容量。
1) 运行parted /dev/vdb进入parted分区工具。
2) 可选: 运行help查看工具使用说明。
3) 运行print查看待扩容的分区号(Number)和容量(Size)。
本示例中,待扩容的分区为1号分区,已有容量为1100GiB,以下步骤会将所有新增容量分配到该分区。
4) 运行resizepart <分区号> <容量分配百分比>扩展分区。示例操作为resizepart 1 100%。
5) 运行print查看分区号(Number)和容量(Size)是否发生变化
运行quit退出parted分区工具
4. 运行fsck -f /dev/vdb1确认文件系统一致性。
[root@ecshost ~]# fsck -f /dev/vdb1 fsck from util-linux 2.23.2 e2fsck 1.42.9 (28-Dec-2013) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/vdb1: 11/67108864 files (0.0% non-contiguous), 4265369/268435200 blocks
5. 扩展分区对应的文件系统并重新挂载分区
- ext*文件系统(例如ext3和ext4):运行resize2fs /dev/vdb1并重新挂载分区。
[root@ecshost ~]# resize2fs /dev/vdb1 resize2fs 1.42.9 (28-Dec-2013) Resizing the filesystem on /dev/vdb1 to 8589934331 (4k) blocks. The filesystem on /dev/vdb1 is now 8589934331 blocks long. [root@ecshost ~]# mount /dev/vdb1 /mnt
- xfs文件系统:先运行mount /dev/vdb1 /mnt/命令,再运行xfs_growfs /dev/vdb1。
[root@ecshost ~]# mount /dev/vdb1 /mnt/ [root@ecshost ~]# xfs_growfs /dev/vdb1
三、其他磁盘扩容方法总结
1、查看系统信息:
[root@nagios_server ~]# uname -a Linux nagios_server 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux [root@nagios_server ~]# more /etc/redhat-release CentOS Linux release 7.3.1611 (Core)
2、目前 /dev/sdb对应的文件系统 /data 为 50G
[root@nagios_server ~]# df -lh 文件系统 容量 已用 可用 已用% 挂载点 /dev/sda1 40G 12G 29G 29% / devtmpfs 3.9G 0 3.9G 0% /dev tmpfs 3.9G 168K 3.9G 1% /dev/shm tmpfs 3.9G 8.9M 3.9G 1% /run tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup tmpfs 783M 48K 783M 1% /run/user/0 tmpfs 783M 12K 783M 1% /run/user/42 /dev/sdb 50G 33M 50G 1% /data
注意:
1、若某磁盘作为一个分区按如下操作,保证不会出错;若有多个分区要用fdisk工具扩容;
2、注意:若用fdisk命令删除/dev/sdb分区,重建/dev/sdb分区的话,有可能要格式化分区会丢失数据,建议备份后操作;
4、通过blkid查看/dev/sdb文件系统格式
a、如果文件系统是”xfs”类型,如下:
可在线扩容(不用卸载文件)
[root@nagios_server /]# blkid /dev/sdb /dev/sdb: UUID="b7896cb5-a520-4046-85ea-a0319acbc632" TYPE="xfs"
1)、直接xfs_growfs /dev/sdb就可以直接将/dev/sdb扩展到最大容量,即100G,如下:
[root@nagios_server ~]# xfs_growfs /dev/sdb meta-data=/dev/sdb isize=512 agcount=4, agsize=3276800 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=0 spinodes=0 data = bsize=4096 blocks=13107200, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 ftype=1 log =internal bsize=4096 blocks=6400, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 data blocks changed from 13107200 to 26214400
2)、查看磁盘信息,如下显示挂载成功,即/data增到100G
[root@nagios_server ~]# df -lh 文件系统 容量 已用 可用 已用% 挂载点 /dev/sda1 40G 12G 29G 29% / devtmpfs 3.9G 0 3.9G 0% /dev tmpfs 3.9G 168K 3.9G 1% /dev/shm tmpfs 3.9G 8.9M 3.9G 1% /run tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup tmpfs 783M 48K 783M 1% /run/user/0 tmpfs 783M 16K 783M 1% /run/user/42 /dev/sdb 100G 33M 100G 1% /data
b、如果文件系统是ext2/3/4类型,如下是”ext4″,需要先卸载文件系统(若要缩小文件系统,也需要先卸载文件系统)
[root@nagios_server /]# blkid /dev/sdc /dev/sdc: UUID="56fea796-5743-4050-ad89-12e06a450839" TYPE="ext4"
1)卸载 /data1
[root@nagios_server ~]# umount /dev/sdc /data1
如果报错如下:
umount: /data: target is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1)) umount: /data: target is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))
解决办法一:
您暂时无权查看此隐藏内容!
可以使用 kill 命令杀掉查到对应的进程 。
强制 kill 进程可能会导致数据丢失,请确保数据得到有效备份后,再进行相关操作。
2)检查/dev/sdc文件系统
[root@nagios_server ~]# e2fsck -f /dev/sdc e2fsck 1.42.9 (28-Dec-2013) 第一步: 检查inode,块,和大小 第二步: 检查目录结构 第3步: 检查目录连接性 Pass 4: Checking reference counts 第5步: 检查簇概要信息 /dev/sdc: 11/3276800 files (0.0% non-contiguous), 251790/13107200 blocks
3)扩容/dev/sdc到100G(提示:如不指定大小,默认增加到磁盘最大值)
[root@nagios_server ~]# resize2fs /dev/sdc 100G resize2fs 1.42.9 (28-Dec-2013) Resizing the filesystem on /dev/sdc to 26214400 (4k) blocks. The filesystem on /dev/sdc is now 26214400 blocks long.
4)然后再挂载
[root@nagios_server ~]# mount /dev/sdc /data
5、扩容后查看磁盘信息如下:
提示:此时可以使用挂载的文件,检查是否有错!
[root@nagios_server ~]# df -lh 文件系统 容量 已用 可用 已用% 挂载点 /dev/sda1 40G 12G 29G 29% / devtmpfs 3.9G 0 3.9G 0% /dev tmpfs 3.9G 168K 3.9G 1% /dev/shm tmpfs 3.9G 8.9M 3.9G 1% /run tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/sdb 100G 33M 100G 1% /data /dev/sdc 99G 60M 94G 1% /data1 tmpfs 783M 48K 783M 1% /run/user/0 tmpfs 783M 16K 783M 1% /run/user/42
温馨提示:
评论前必须登录!
注册