“no space left on device”与根目录扩容

“no space left on device”与根目录扩容

尝试cp时报出了这个"no space left on device"错误,磁盘空间不足。检查一下


可以看到根目录满了,可以删掉些不用的文件或者拓展根目录文件系统,这台服务器有一个巨大用不上的/home,就把它分一些给/,就不冒风险去删除文件了。

还有一种可能是inodes满了,通过df -ih 来检查这个问题

  1. 首先缩小/home , 文件系统检查会花费很多时间,耐心等待一下,-C 选项会提供一个进度条。
# umount /home
# e2fsck -f -C /dev/mapper/vg_pcshost-lv_home
# resize2fs -p /dev/mapper/vg_pcshost-lv_home 10T
  1. 可以把/home 装载回来了
# mount /home

3.通过df查看,此时/home的文件系统已经缩小了,但是逻辑卷lv还是没有变。有些blog写此时通过fdisk调整,这样的大硬盘需要使用parted,其实没有必要。使用lv*工具即可

# lvreduce -L 10T /dev/mapper/vg_pcshost-lv_home 
把home的逻辑卷缩小到10T
# vgdisplay 
查看一下上一个操作释放了多少空间
# lvextend -L +4.9T /dev/mapper/vg_pcshost-lv_root 
root逻辑卷增加4.9T
# resize2fs -p /dev/mapper/vg_pcshost-lv_root
resize根目录文件系统
  1. 根目录就拓展了,再尝试cp就不会报错了。

磁盘分配自低向上分别是pv(物理卷) -> vg(卷组) -> lv(逻辑卷) -> filesystem 。调整大小通常操作到lv这一层就够了,如果修改了物理硬盘则还需要操作更底层的vg。同样有一系列的vg*工具可供使用。

posted @ 2021-05-18 10:59  D&H的幸福学习生活  阅读(447)  评论(0)    收藏  举报