Linux 磁盘满了的解决方案

步骤说明:

第一步:查看磁盘情况

我们要知道哪个磁盘,我们首先要知道各个磁盘占用情况!可以使用以下命令

# 查看磁盘状态
df -h

解释一下:

df: 用于显示目前在Linux系统上的文件系统的磁盘使用情况统计。

-h:以K,M,G为单位,提高信息的可读性。

Size:总内存数

Used:使用内存数

Avail:剩余内存数

Mounted on:挂载点

第二步:查看文件夹下面的磁盘使用情况

当然你可能并不关系磁盘还剩余多少空间,你是需要知道当前的文件夹下的磁盘使用情况:

# 需要进入根路径
cd ~
du --max-depth=1 -h

解释一下这条命令:

du:会显示指定的目录或文件所占用的磁盘空间。

--max-depth-1:--max-depth=<目录层数> 超过指定层数的目录后,予以忽略。

-h:以K,M,G为单位,提高信息的可读性。

执行结果:

 

这个应该一看就明白,前面一列占用大小,后面是文件名,这个我们就知道哪个文件占用大了,如果这个文件没有用我们就可以删了。

第三步:如果删除完了,我们磁盘占用情况没变怎么办

接下来我们来解释一下这个问题

在Linux中,当我们使用rm在linux上删除了大文件,但是如果有进程打开了这个大文件,却没有关闭这个文件的句柄,那么linux内核还是不会释放这个文件的磁盘空间,最后造成磁盘空间占用100%,整个系统无法正常运行。这种情况下,通过df和du命令查找的磁盘空间,两者是无法匹配的,可能df显示磁盘100%,而du查找目录的磁盘容量占用却很小。遇到这种情况,基本可以断定是某些大文件被某些程序占用了,并且这些大文件已经被删除了,但是对应的文件句柄没有被某些程序关闭,造成内核无法收回这些文件占用的空间。简而言之,就是你把这个文件删了,但是进程还占用着这个文件。

第四步:查看哪些文件被哪些程序占用

可以使用以下命令:

lsof -n | grep deleted

 

解释一下:

lsof:列出当前系统打开文件的工具

下面列出部分:

 

 请注意,上面mysqld如果关闭可能会导致mysql服务不可用,我是把上面pid为22054的进程kill掉后即释放大量空间。

 

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux环境下,处理磁盘空间已,导致数据库无法正常使用的处理方法: 第一步:查看磁盘空间的使用情况 df -f 第二步:找到日志文件,并清理 1) 进入跟目录 cd / 2)查找日志文件(区分大小写) find -name *.Log; find -name *.log; find -name *.000; 第三步:进入到相应的目录,并删除日志文件 如: cd ./home1/data/db2inst2/NODE0000/SQL00001/SQLOGDIR/; rm -f *.LOG; 或者 rm -f *.log; 或者 rm -f *.000; linux下DB2管理命令 1:进入实例 su - db2inst2 2:查看某个库的表空间 db2pd -tablespaces -db mcmxfb 3:查看这个模式下所有活动库的表空间 db2pd -tablespaces -alldbs option and active database; 4: 系统重启后,对数据库的重启,首先要进入到实例下,再执行重启数据库的命令。系统会重启这个实例下的各个数据库 db2start; (注意,不同的实例,要分别进入各个实例,再重启); root用户下,重启系统的方法: 重启命令: 1、reboot 2、shutdown -r now 立刻重启(root用户使用) 3、shutdown -r 10 过10分钟自动重启(root用户使用) 4、shutdown -r 20:35 在时间为20:35时候重启(root用户使用) 关机命令: 1、halt 立刻关机 2、poweroff 立刻关机 3、shutdown -h now 立刻关机(root用户使用) 4、shutdown -h 10 10分钟后自动关机 Linux环境下,磁盘空间已,导致db2数据库无法正常使用。这里解决的,主要是日志文件和环境文件占用磁盘空间太多所引起问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值