一、Linux分区背景
linux中,每个磁盘是以挂载到目录的形式使用。
例如:
当磁盘1挂载到/(根)目录、磁盘2挂载到/home目录时,
在/(根)目录下创建文件夹或文件时,存储在磁盘1中,
在/home目录下创建文件夹或文件时,存储在磁盘2中。
二、具体步骤
1. 查看当前磁盘分区情况
# 别忘了先切root用户
[root@localhost ~]# df -lh
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 925G 47G 879G 6% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 116K 1.9G 1% /dev/shm
tmpfs 1.9G 191M 1.7G 11% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 494M 97M 398M 20% /boot
tmpfs 376M 0 376M 0% /run/user/0
/dev/mapper/centos-home 2.0G 33M 2.0G 2% /home
注:只需注意/dev/目录下的就好,其他应该是系统处理不用管。
可以看到这里只有三个,分别是/dev/mapper/centos-root、/dev/sda1、/dev/mapper/centos-home
2. 删除/home分区
# 把/home内容备份,然后将/home文件系统所在的逻辑卷删除,扩大/root文件系统,新建/home:
tar cvf /tmp/home.tar /home #备份/home 没东西可以不备份
# 记录一下 home下有多少可用空间 ,比如2G,后面扩展根目录要用
# 如果无法卸载,先终止使用/home文件系统的进程,kill
# 卸载/home
umount /home
# 删除/home所在的lv,如果提示正在文件系统正在使用中,就先终止进程,使用下面第一段的命令找到进程并杀死
fuser -m /dev/mapper/centos-home
kill -9 <把上一条命令得到的所有结果的字母去掉,纯数字复制到这里>
lvremove /dev/centos/home
3. 扩展/(根)目录
# 扩展/root所在的lv,增加/home的大小
lvextend -L +2G /dev/centos/root
#扩展/root文件系统,(xfs系统必要)
xfs_growfs /dev/centos/root
4. 恢复/home目录文件
# 重新创建home目录
mkdir -p /home && cd /home
# 恢复备份的文件
tar xvf /tmp/home.tar
5. 编辑/usr/stab文件
三、完工
# 现在如下:
[root@localhost ~]# df -lh
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 925G 47G 879G 6% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 116K 1.9G 1% /dev/shm
tmpfs 1.9G 191M 1.7G 11% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
/dev/sda1 494M 97M 398M 20% /boot
tmpfs 376M 0 376M 0% /run/user/0
/dev/mapper/centos-home 2.0G 33M 2.0G 2% /home