1、实验环境
企业原来安装Centos服务器采用了自动分区方案,随着使用服务器的系统用户数量不断增多,根分区经常面临磁盘空间耗尽的情况,甚至有几次还导致系统无法启动。为了解决这些问题,向需要为服务器新增加一块SCSI硬盘,并将用户目录/home中的数据迁移至该硬盘中,要求迁移后不能影响原有用户账号的使用。
2、需求描述
- 虚拟机添加一块80GB的SCSI硬盘
- 在新硬盘中建立一个20GB的分区,用于存放所有普通用户的宿主目录
- 新建的分区仍然挂载到/home目录下,需要导入系统中原有用户的数据
- 服务器在每次开机后能够自动挂载该分区
3、推荐步骤
3.1、添加硬盘
3.2、建立一个20GB的主分区(/dev/sdb1),并格式化为xfs类型文件系统
3.2.1、查看分区情况
[root@node1 ~]# fdisk -l ##查看分区情况
3.2.2、配置分区
[root@node1 ~]# fdisk /dev/sdb ##fdisk进入/dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x367363be 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n ##输入n,新建分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p ##输入p,新建主分区
分区号 (1-4,默认 1):1 ##输入1,进入1号主分区
起始 扇区 (2048-167772159,默认为 2048): ##起始分区按Enter按键
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-167772159,默认为 167772159):+20G ##分区容量为20G
分区 1 已设置为 Linux 类型,大小设为 20 GiB
命令(输入 m 获取帮助):w ##保存退出
3.2.3、格式化分区(xfs)
[root@node1 ~]# mkfs -t xfs /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=1310720 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=5242880, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
3.3、迁移/home分区
3.3.1、先把/home目录打包下来以便后面恢复
[root@node1 ~]# tar zcvf home.tar.gz /home/*
[root@node1 ~]# ll -h home.tar.gz
-rw-r--r-- 1 root root 558 6月 6 16:52 home.tar.gz
3.3.2、设置开机挂载
[root@node1 ~]# vim /etc/fstab
...省略...
/dev/sdb1 /home xfs defaults 0 0
3.3.3、重启并把home.tar.gz恢复至/home
3.3.3.1、重启机器
[root@node1 ~]# reboot
3.3.3.2、把操作3.3.1打包好的文件home.tar.gz解压至/home目录
[root@node1 ~]# tar zxvf home.tar.gz -C /home/
3.3.4、检查硬盘挂载情况
[root@node1 ~]# df -Th