前言:df -h 查看磁盘,opt是负数了,百度了以后没有找到解决方法,最后重新做了LVM
早上监控到测试用的服务器/opt使用成为负数了,这对监控照成了干扰,需要纠正,以前也遇到过一次,是直接从装了系统。这次想找到原因。
一、测试了百度上的两种方法,
第一种说是Linux系统服务器的磁盘分区有保留区的概念,会给root或指定用户预留5%或更大的空间,当使用到这块保留区的空间时,fdisk的计算将会是负数。
百度的解决方案
需要通过rm命令删除磁盘中的大文件,释放预留空间的占用后,即可恢复正常
但是我把/opt的所有文件都删除完了,还是负数。
二、文件系统损坏,修复文件系统
1、挂载镜像后救援模式把磁盘修复了一遍,也没有用我的思路和解决方法
我的解决思路和方案
一、刚开始以为是我的文件系统例出现了两个home的lvm导致,使用命令lvrename命令把/dev/mapper/centos-home 修改成了/dev/mapper/centos-opt ,
1、备份/opt目录的文件
2、解除挂载:由于opt是挂载在名叫home 的lvm 目录下的,需要解除挂载
umount /dev/mapper/centos-home
如果提示umount: /opt:目标忙。
就进入/etc/fstab 目录中把opt挂载这一行注释掉,然后重启就解除挂载了。重新启动后df -h先查看已经没有挂载opt了,然后从命名lvm
lvrename /dev/centos/home /dev/centos/opt
重命名完成后重新挂载后还是负数。没办法了只能删除/dev/mapper/centos-home的LVM,从新建立后挂载,
二、删除名叫/dev/mapper/centos-home 的LVM,前面已经备份过了,就不备份了。
1、解除挂载
2、删除lvremove /dev/centos/home 的LVM
lvremove /dev/centos/home
3、新建lvremove /dev/centos/opt 的LVM,并把所有空间分给opt
lvcreate -l 100%free -n opt centos
4、格式化新建的lvm
mkfs.xfs /dev/mapper/centos-opt
5、重新挂载查看,
查看opt正常了,这样就可以把原来数据拷贝过去,系统正常。