gparted 下把centos的root改小 调整给home
下载最新的gparted一般都是64位的了
把iso文件直接挂载到虚拟机
先建立个快照
在vm中刚开始的按F2
进入BIOS把cd设置到harddisk 前面
在图形界面把在vm设置中给虚拟硬盘增加的容量给到前面的分区
但是前面分是lvm得通过指令来修改
默认这一部分的分区是给到root了
sudo lvm
一管理员身份运行LVM
lvscan 现在几个分区的大小
然后就把root分区减小到10G,这得根据你们自己的系统的大小决定
我目前知道的只能在系统启动后在终端里通过df查看
lvreduce -L 10G /dev/centos/root
直接减小将会摧毁你数据,除非你能保证这个全部数据都是写在10G之前的
如果不小心运行了lvreduce直接通过
lvextend -l 100%FREE /dev/centos/root
因为具体数据没变只是改了分区列表的大小
==============================================
xfs 原则上不可以减少。。。
利用 xfsdump先备份,然后把备份的数据重新写入调整完的分区
继续进入gparted
sudo mkdir /mnt/root
sudo mount /dev/centos/root /mnt/root
再mount一个足够大的空间做img
sudo mkdir /mnt/s
sudo mount /dev/sdb1 /mnt/s
把这个空间挂到mnt下新建的s目录下
sudo xfsdump -f /mnt/s/root.img /mnt/root
剩下的就输入回车 两次
等待显示 SUCCESS (成功)
卸载root
sudo umount /mnt/root
修改大小
sudo lvreduce -L 10G /dev/centos/root
把丫格式化了
sudo mkfs.xfs -f /dev/centos/root
再加载到mnt/root上
sudo mount /dev/centos/root /mnt/root
把刚才xfsdump的数据恢复过来
sudo xfsrestore -f /mnt/s/root.img /mnt/root
===============================
下面把多出来的空间加给home。。。没错的home需要更大。。。软件安装到sdb1映射的software下了
sudo lvextend -l 100%FREE /dev/centos/home
再把home挂在上来对其做xfs_growfs
sudo mkdir /mnt/home
sudo mount /dev/centos/home /mnt/home
sudo xfs_growfs /mnt/home
尝试重启系统,毕竟gparted的系统实际上是光盘上,mnt下的挂在只是临时方便处理文件
出现XFS: Superblock has unknown read-only compatible features (0x4) enabled
应该是引导出什么问题了
root格式化完后应该是具体标识变了
lvdisplay
恢复快照。。。
lsblk -o name,uuid
查看uuid并没有变。。。
=============================================================
上面让root缩小的没有实现,那就把home直接跟root在一个目录吧。。。
所以还是
在系统运行下,关闭home目录的加载。。。
sudo vim /etc/fstab
home前面加#
重启,把原来的home加载到另外一个文件夹比如说home_old
因为没有home文件肯定没有桌面 ctrl alt F2 文字界面登录
cp -ar /home_old/* /home
然后 shutdown -r now
重启后删除原来的dev/home
sudo lvremove /dev/centos/home
sudo lvextend -l +100%FREE /dev/centos/root
sudo xfs_growfs /dev/centos/root
***从linux私房菜查到xfsdump只能备份文件系统,http://shouce.jb51.net/vbird-linux-basic-4/72.html
具体什么原因导致xfs备份的root无法正常启动依旧是个迷。。。
拓展阅读:https://unix.stackexchange.com/questions/347150/centos-7-freezing-a-root-file-system-before-xfs-dumping-it