zoukankan      html  css  js  c++  java
  • Linux磁盘分区扩容与缩减

    xfs与ext文件系统不同,对其进行扩容与缩减部分命令不同。下面是简介与详细步骤

    文字描述
    说明:linux文件系统格式转换需要清除数据,同windows一样
    *****xfs文件系统格式下
    说明:
    1、任何分区只可以扩展,不可以缩减
    2、想要缩减,需要备份重建
    减少home等可卸载的文件系统
    正常登陆系统,备份home,删除home,创建home,还原home
    减少var等不可卸载的文件系统
    需要进入救援模式
    先正常登陆系统,备份var;再进入救援模式,删除var,创建var;再正常登陆系统,还原var
    还原之前,无法使用ssh工具登陆,需要在本机服务器上执行还原
    减少root
    无法实现,删除根分区无法恢复
    *****ext文件系统格式下
    说明
    1、不是根分区都可是在线扩容和缩小
    2、根分区是可以在线扩容,但不可以在线缩小
    3、根分区缩小需要进入救援模式
    ext系列文件系统 可扩展可收缩
    1、缩小home等可卸载文件系统,移到root
    2、缩小var等不可卸载文件系统,移到root
    2、缩小root,移到home
    查看文件系统格式
    cat /etc/fstab


    *****xfs文件系统格式下******
    说明:因xfs文件系统,只能扩展无法收缩,要收缩需要采用备份重建方式。
    如果要收缩的文件系统很大且很重要,请谨慎使用该方法。
    一、减少home等可卸载的文件系统,移到root或者其他
    1、备份home目录 xfsdump -f /root/home.img /home
    如果xfsdump无法使用,安装xfsdump,yum -y install xfsdump
    或者使用cp -R /home /root
    2、卸载home目录 umount /home
    如果提示 umount: /home: device is busy,则使用fuser命令查看process ID,
    如fuser -cu /home 或者fuser -mv /home


    使用fuser -ck /home 命令kill所有进程或者使用kill -9 进程id1,进程id2.... 命令杀死进程
    如果fuser无法使用,安装yum -y install psmisc
    3、删除home逻辑卷(确认数据已备份)
    df -hT


    lvremove /dev/mapper/centos_lfm-home
    4、扩展root逻辑卷
    lvresize -L +10G /dev/mapper/centos_lfm-root
    5、拓展文件系统根目录
    xfs_growfs /dev/mapper/centos_lfm-root 或者xfs_growfs /
    6、重新创建home逻辑卷并格式化
    lvcrete -L 1G -n home centos_lfm
    格式化home mkfs.xfs /dev/mapper/centos_lfm-home ,如果无法格式化,加参数-f
    7、挂载home

    挂载前需要修改/etc/fstab,因本次逻辑卷和挂载点名称都不变,所有无需修改/etc//fstab

    挂载home mount /home
    查看df -hT
    注:如果文件系统类型等改变,需要修改配置文件/etc/fstab
    8、还原并查看原文件
    xfsrestore -f /root/home.img /home
    ll /home
    注:使用系统自带的xfs_metadump无法备份,待测
    二、减少var等不可卸载的文件系统,移到root或者其他
    0、var目录无法卸载,root用户一直在占用,想要减少var逻辑卷,需要进救援模式

    1、备份var目录
    xfsdump /root/var.img /var
    2、进入救援模式
    插入系统光盘,在系统启动时按下ESC键,进入启动项菜单,选择从光盘启动


    选择光盘启动

    或者按F2键进入bios,然后选择启动顺序

     

     


    选择跳过shell,即不加载systemshell


    3、删除var逻辑卷
    查看


    删除var lvremove /dev/centos_lfm/var
    4、扩展root逻辑卷
    lvresize -L +1G /dev/centos_lfm/root
    5、创建var逻辑卷
    lvcreate -L 1G -n var centos_lfm
    6、退出救援模式,重启进入启动项管理,修改启动项顺序
    重启reboot
    修改启动项,退出保存


    7、扩展根目录文件系统
    xfs_growfs /dev/mapper/centos_lfm-root 或者 xfs_growfs /
    8、格式化var逻辑卷
    mkfs.xfs -f /dev/mapper/centos_lfm-var
    9、挂载var,因系统启动,自动挂载,此步省略
    挂载前需要修改/etc/fstab,因本次逻辑卷和挂载点名称都不变,所有无需修改/etc//fstab
    9、还原var并查看原文件,
    xfsrestore -f /root/var.img /var
    注:在还原var前,无法使用远程ssh,需要在本机服务器上执行还原后才可以使用
    三、减少root
    无法实现,删除根分区无法恢复
    *****ext文件系统格式下
    说明
    1、不是根分区都可是在线扩容和缩小
    2、根分区是可以在线扩容,但不可以在线缩小
    3、根分区缩小需要进入救援模式
    一、缩小home等可卸载逻辑卷,移到root
    1、查看磁盘情况,卸载home目录,
    df -Th
    umount /home
    如果无法卸载,使用fuser命令查看占用目录的进程并结束进程,
    查看/home进程占用 fuser -mv /home,
    结束所有占用/home的进程 fuser -ck /home


    2、调整分区大小
    resize2fs -p /dev/mapper/centos_lfm2-home 1G
    如果提示先执行下面这条命令,则去执行
    e2fsck -f /dev/mapper/centos_lfm2-home
    3、挂载/home,查看磁盘情况
    mount /home
    df -h
    4、设置空闲空间
    使用lvreduce命令用于减少lvm逻辑卷占用空间的大小。可能会删除逻辑卷上已有的数据,所以在操作前必须进行确
    认。
    lvreduce -L -1G /dev/mapper/centos_lfm2-home
    lvreduce -L -1G表示当前文件系统减少1G,
    lvreduce -L 1G表示设置当前文件系统为1G
    注:设置后的文件系统大小不能小于已存放在此目录下文件的大小,否则会丢失数据
    可以使用vgdiskplay查看剩余的空闲空间


    5、把空闲空间添加到根目录下
    lvextend -L +0.98G /dev/mapper/centos_lfm2-root
    resize2fs -p /dev/mapper/centos_lfm2-root
    df -Th
    注意:vgdisplay显示空闲空间大小为1G,实际可使用小于1G
    二、缩小var等不可卸载逻辑卷,移到root
    1、var目录进程一直占用,杀不死,修改var目录大小需要进入救援模式
    2、不要让系统根挂载到/mnt/sysimage上,选择跳过"skip"
    3、查看逻辑卷
    lvscan


    4、在修改逻辑卷大小前,需要激活此卷
    lvchange -ay /dev/centos_lfm2/var
    5、缩小文件系统
    在执行resize2fs /dev/centos_lfm2/var前需要还行
    强行修复 e2fsck -f /dev/centos_lfm2/var
    6、缩小lvm,产生空闲空间
    lvreduce -L 1G /dev/centos_lfm2/var
    7、查看空闲空间并将其添加到/root
    vgdisplay
    lvchange -ay /dev/centos_lfm2/root
    lvextend -L +0.98G /dev/centos_lfm2/root
    resize2fs -p /dev/mapper/centos_lfm2-root
    df -Th
    注意:vgdisplay显示空闲空间大小为1G,实际可使用小于1G
    二、缩小root,移到home
    1、修改root目录大小需要进入救援模式
    2、不要让系统根挂载到/mnt/sysimage上,选择跳过"skip"
    3、查看逻辑卷
    lvscan
    4、在修改逻辑卷大小前,需要激活此卷
    lvchange -ay /dev/centos_lfm2/root
    5、缩小文件系统
    resize2fs /dev/centos_lfm2/root 10G
    在执行此命令前可能还需要还执行
    强行修复 e2fsck -f /dev/centos_lfm2/root
    6、缩小lvm,产生空闲空间
    lvreduce -L 1G /dev/centos_lfm2/root
    7、查看空闲空间并将其添加到/root
    vgdisplay
    lvchange -ay /dev/centos_lfm2/home
    lvextend -L +0.98G /dev/centos_lfm2/home
    resize2fs -p /dev/mapper/centos_lfm2-home
    df -Th
    注意:vgdisplay显示空闲空间大小为1G,实际可使用小于1G

  • 相关阅读:
    错题
    URL和URI区别
    适配器
    JAVA 反射机制
    JAVA 面试题
    JAVA 继承
    多态 JAVA
    Java面向对象编辑
    [LeetCode] Merge k Sorted Lists
    [LeetCode] Valid Palindrome
  • 原文地址:https://www.cnblogs.com/gpysir/p/13186134.html
Copyright © 2011-2022 走看看