博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CentOS分区扩容
阅读量:4298 次
发布时间:2019-05-27

本文共 4077 字,大约阅读时间需要 13 分钟。

CentOS分区扩容

一.前言

  • 操作系统

Linux发行版:CentOS-7-x86_64-DVD-1804.iso

linux 磁盘分区:

Swap 分区:

linux 命令手册:

分区扩容:

CentOS 操作命令:

二.扩容准备

1.分区规则

  • 1至4个主分区 或者 1至3个主分区和1个扩展分区(扩展分区中可再分区为逻辑分区)

2.分区工具

  • fdisk:单个分区最大只能创建2T的空间
  • parted:单个分区可超过2T的空间

3.分区类型

分区类型 空间分配 扩容命令
ext2、ext3、ext4 可扩容、可缩容 resize2fs
xfs(centos7默认) 仅扩容 xfs_growfs

4.硬盘设备名规则

  • SCSI接口:/dev/sd [a-z] ;设备名后追加的数字,表示此设备的第几个分区,例如:/dev/sda1、/dev/sda2
  • IDE接口:/dev/hd [a-z]

5.分区说明

  • /dev/mapper/centos-root:根分区(根文件系统)
  • /dev/mapper/contos-home:用户分区
  • /dev/mapper/centos-swap:交换分区(一般设置为物理内存容量的 1 至 2 倍)

三.具体操作

场景说明

  • 使用一块 4T 容量的硬盘,硬盘接口是 SCSI,分别对 root、home 和 swap 分区进行扩容
  • 两种方案选择:
    1. 一块硬盘上创建 3 个分区,然后扩容
    2. 一块硬盘上创建 1 个分区,然后扩容

1.容量分配

  • 首先考虑 swap 分区,设置为物理内存容量的 2 倍
  • 然后考虑 root 分区和 home 分区,root 分区需要部署项目或软件安装,所以分配多一点空间,而 home 分区,一般放一些用户文件,所以可以分配少一点(如果不确定目录在那个分区,可以使用下方命令查询)
  • 最终确定,root 和 home 的分配比例为 7 : 3
#-- 查询目录的所在分区,例如:/opt 在 /dev/mapper/centos-root 分区下# df -hl /opt#-- 查看硬盘列表# lsblk
  • 例如:目前服务器中,新插入 4 T 的硬盘,物理内存容量为 64 GB, swap 分区为 32 GB
  • swap 分区扩容 = (64 * 2) - 32 = 96 GB
  • home 分区扩容 = (4000 - 96) * 0.3 = 1171 GB (取整)
  • root 分区扩容 = 4000 - 96 - 1171 = 2733 GB

2.第一种方案

  • 一块硬盘上创建 3 个分区,然后扩容

1)分区

  • 查看硬盘信息,找到分区的硬盘
#--查看硬盘使用情况# df -Th#-- 查看硬盘列表# lsblk#--查看硬盘信息# fdisk -l
  • 分区操作,例如:分区硬盘是 /dev/sdb
#-- 使用 parted 工具,操作分区硬盘# parted /dev/sdb#-- 打印硬盘和分区信息,Disk /dev/sdb: 4000GB# p#-- 将 MBR 磁盘格式化为 GPT# mklabel gpt#-- 打印硬盘和分区信息,Partition Table: unknown 变为 Partition Table: gpt# p#-- 根据上一步的容量分配,创建三个主分区,期间忽略警告,根据提示输入 Ignore 或 Yes# mkpart primary 0 96GB# mkpart primary 96GB 1267GB# mkpart primary 1266GB 4000GB#-- 打印硬盘和分区信息,Disk Flags: 分区列表# p#-- 退出工具# quit
  • 格式化分区
#-- 查看硬盘信息,找到需要格式化的分区# fdisk -l#-- 格式化分区# mkfs.ext4 /dev/sdb1# mkfs.ext4 /dev/sdb2# mkfs.ext4 /dev/sdb3

2)逻辑卷管理(LVM)和扩容

  • swap 分区扩容:/dev/sdb1
#-- 查看硬盘列表# lsblk#-- 查看 Volume group 信息,关注 VG Name 和 Free PE / Size# vgdisplay#-- 创建 pv,指定分区 (物理硬盘分区初始化为物理卷)# pvcreate /dev/sdb1# y#-- vg 扩容(动态扩展 LVM 卷组)# vgextend centos /dev/sdb1#-- lv 扩容(在线扩展逻辑卷的空间大小,而不中断应用程序对逻辑卷的访问)# lvextend /dev/mapper/centos-swap /dev/sdb1#-- 查看 swap 分区的情况# free -h#-- 卸载、创建、挂载 swap 分区# swapoff /dev/mapper/centos-swap# mkswap /dev/mapper/centos-swap# swapon /dev/mapper/centos-swap
  • home 分区扩容:/dev/sdb2
#-- 创建 pv,指定分区 (物理硬盘分区初始化为物理卷)# pvcreate /dev/sdb2# y#-- vg 扩容(动态扩展 LVM 卷组)# vgextend centos /dev/sdb2#-- lv 扩容(在线扩展逻辑卷的空间大小,且不中断应用程序对逻辑卷的访问)# lvextend /dev/mapper/centos-home /dev/sdb2#-- xfs_growfs 扩容# xfs_growfs /dev/mapper/centos-home
  • root 分区扩容:/dev/sdb3
#-- 创建 pv,指定分区 (物理硬盘分区初始化为物理卷)# pvcreate /dev/sdb3# y#-- vg 扩容(动态扩展 LVM 卷组)# vgextend centos /dev/sdb3#-- lv 扩容(在线扩展逻辑卷的空间大小,且不中断应用程序对逻辑卷的访问)# lvextend /dev/mapper/centos-root /dev/sdb3#-- xfs_growfs 扩容# xfs_growfs /dev/mapper/centos-root

3.第二种方案

  • 一块硬盘上创建 1 个分区,然后扩容

1)分区

  • 查看硬盘信息,找到分区的硬盘
#--查看硬盘使用情况# df -Th#-- 查看硬盘列表# lsblk#--查看硬盘信息# fdisk -l
  • 分区操作,例如:分区硬盘是 /dev/sdb
#-- 使用 parted 工具,操作分区硬盘# parted /dev/sdb#-- 打印硬盘和分区信息,Disk /dev/sdb: 4000GB# p#-- 将 MBR 磁盘格式化为 GPT# mklabel gpt#-- 打印硬盘和分区信息,Partition Table: unknown 变为 Partition Table: gpt# p#-- 创建一个主分区,期间忽略警告,根据提示输入 Ignore# mkpart primary 0 4000GB#-- 打印硬盘和分区信息,Disk Flags: 分区列表# p#-- 退出工具# quit
  • 格式化分区
#-- 查看硬盘信息,找到需要格式化的分区# fdisk -l#-- 格式化分区# mkfs.ext4 /dev/sdb1

2)逻辑卷管理(LVM)和扩容

  • LVM
#-- 查看硬盘列表# lsblk#-- 查看 Volume group 信息,关注 VG Name 和 Free PE / Size# vgdisplay#-- 创建 pv,指定分区 (物理硬盘分区初始化为物理卷)# pvcreate /dev/sdb1# y#-- vg 扩容(动态扩展 LVM 卷组)# vgextend centos /dev/sdb1
  • swap 分区扩容
#-- lv 扩容(在线扩展逻辑卷的空间大小,而不中断应用程序对逻辑卷的访问)# lvextend -L +96G /dev/mapper/centos-swap#-- 查看 swap 分区的情况# free -h#-- 卸载、创建、挂载 swap 分区# swapoff /dev/mapper/centos-swap# mkswap /dev/mapper/centos-swap# swapon /dev/mapper/centos-swap
  • home 分区扩容
#-- lv扩容(在线扩展逻辑卷的空间大小,且不中断应用程序对逻辑卷的访问)# lvextend -L +1171G /dev/mapper/centos-home#-- xfs_growfs 扩容# xfs_growfs /dev/mapper/centos-home
  • root 分区扩容
#-- lv扩容(在线扩展逻辑卷的空间大小,且不中断应用程序对逻辑卷的访问)#-- 如果提示空间不足,使用 vgdisplay 命令查看剩余空间 Free PE / Size# lvextend -L +2733G /dev/mapper/centos-root#-- xfs_growfs 扩容# xfs_growfs /dev/mapper/centos-root

四.其它

1.删除分区

  • fdisk 删除分区
# fdisk /dev/sdb# --根据输入 m 的提示,输入 d 可删除分区,如果只有1个分区,自动删除,如果多个分区,需要输入分区数字Command (m for help): d#--退出# quit
  • parted 删除分区
# parted /dev/sdb#--输入 p 显示硬盘信息# (parted) p#--删除 1 分区# (parted) rm 1#--退出# quit

转载地址:http://xznws.baihongyu.com/

你可能感兴趣的文章
通知机制 (Notifications)
查看>>
10 Things You Need To Know About Cocoa Auto Layout
查看>>
C指针声明解读之左右法则
查看>>
一个异步网络请求的坑:关于NSURLConnection和NSRunLoopCommonModes
查看>>
iOS 如何放大按钮点击热区
查看>>
ios设备唯一标识获取策略
查看>>
获取推送通知的DeviceToken
查看>>
Could not find a storyboard named 'Main' in bundle NSBundle
查看>>
CocoaPods安装和使用教程
查看>>
Beginning Auto Layout Tutorial
查看>>
block使用小结、在arc中使用block、如何防止循环引用
查看>>
iPhone开发学习笔记002——Xib设计UITableViewCell然后动态加载
查看>>
iOS开发中遇到的问题整理 (一)
查看>>
Swift code into Object-C 出现 ***-swift have not found this file 的问题
查看>>
为什么你的App介绍写得像一坨翔?
查看>>
RTImageAssets插件--@3x可自动生成@2x图片
查看>>
iOS开发的一些奇巧淫技
查看>>
常浏览的博客和网站
查看>>
Xcode 工程文件打开不出来, cannot be opened because the project file cannot be parsed.
查看>>
点击button实现Storyboard中TabBar Controller的tab切换
查看>>