创建Linux时分配磁盘空间随着使用的增加,使用率逐渐升高,需要对/root进行扩容,此时需要在添加或者扩展一下磁盘。
查看Linux版本信息
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
注意:扩容磁盘的方式分为 [添加磁盘]、[扩展磁盘] ; 扩展磁盘需要在此虚拟机停止的状态下进行,同时扩展的数字是扩展后的预期大小,比如之前是100G,希望扩展300G,那么我们应该输入400G。
1、VMware修改硬盘大小
关闭客户机
右键需要扩容的服务器——设置——硬件——磁盘——实用工具——扩展
2、确认状态
扩展后,重新启动linux,使用df -kh命令发现磁盘目录大小没有变化
# df -kh
使用fdisk确认磁盘空间是否已经扩展
# fdisk -l
可以看到“Disk /dev/sda: 400 GB”,已经扩展了300G空间。
建议通过 ls /dev/ 命令查找到新添加的挂载盘,然后对新增加的盘进行分区操作。
3、扩展分区
# fdisk /dev/sda
输入p
,查看已分区数量(如果之前扩容过,一般分区有三个sda1,sda2,sda3,如果未扩容过只有前两个)
输入n
,新增加一个分区
输入p
,分区类型选择为主分区
输入分区号1
,(如果上面已经有4个分区,可以 d 删除一个分区在创建)
起始扇区 回车
结束扇区 回车
输入t
,修改分区类型
输入刚才的分区号4
输入分区类型 8e
输入w
,将以上改动写入分区表
4、对新增加的硬盘格式化
# mkfs.ext4 /dev/sda4 (注意:如果分区号是3,应该执行mkfs.ext3 /dev/sda3)
5、添加新LVM到已有的LVM组,实现扩容
#lvm /*进入lvm管理*/
lvm>pvcreate /dev/sda4 /*这是初始化刚才的分区,必须的*/
lvm>vgextend centos /dev/sda4 /*将初始化过的分区加入到虚拟卷组*/
lvm>lvextend -L +300G /dev/mapper/centos-root /*扩展已有卷的容量(注意容量大小)*/
lvm>pvdisplay /*查看卷容量,这时你会看到一个很大的卷了*/
lvm>quit /*退出*/
6、以上只是卷扩容,下面是文件系统的真正扩容
# cat /etc/fstab | grep centos-root #文件系统格式
#xfs_growfs /dev/mapper/centos-root #文件系统是xfs
#resize2fs /dev/mapper/centos-root #文件系统是ext
以上是对磁盘扩容
Linux磁盘空间转移
磁盘空间转移适用于相同系统中,一个分区空间大,另外一个分区空间不足,将一个分区的空间转移一部分到另一个分区的情况。
1.减少cl-home磁盘大小
# lvreduce -L -200G /dev/mapper/cl-home
2.增加cl-root磁盘大小
# lvextend -L +200G /dev/mapper/cl-root
3.刷新磁盘
# xfs_growfs /dev/mapper/cl-home
# xfs_growfs /dev/mapper/cl-root
4.显示文件系统信息
# df -h
sd一般是指sata或scsi接口的硬盘(sda是第一块,sdb是第二块);hd一般是指IDE接口的硬盘;vd一般是指虚拟硬盘。
硬盘接口分为:
- ide (integrated drive electronics) 把盘体和控制器集成在一起
- sata (serial ATA(advanced technology attachment))
- scsi (small computer system interface)
- 光纤通道 fibre channel