--- ubuntu磁盘空间用满的处理方法 linux查看磁盘占用 清空log文件。 --- # linux下空间满可能有两种情况 可以通过命令 df -h 查看磁盘空间占用,实际上是查看磁盘块占用的文件(block) ```bash alidata@iZbp1cq5gi0iolgls1efdmZ:~$ df -h Filesystem Size Used Avail Use% Mounted on udev 922M 0 922M 0% /dev tmpfs 189M 5.9M 184M 4% /run /dev/vda1 40G 11G 27G 29% / tmpfs 945M 0 945M 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 945M 0 945M 0% /sys/fs/cgroup tmpfs 189M 0 189M 0% /run/user/10001 ``` df -i 查看索引节点的占用(Inodes) ```bash alidata@iZbp1cq5gi0iolgls1efdmZ:~$ df -i Filesystem Inodes IUsed IFree IUse% Mounted on udev 235911 404 235507 1% /dev tmpfs 241870 1813 240057 1% /run /dev/vda1 2621440 227650 2393790 9% / tmpfs 241870 2 241868 1% /dev/shm tmpfs 241870 2 241868 1% /run/lock tmpfs 241870 18 241852 1% /sys/fs/cgroup tmpfs 241870 10 241860 1% /run/user/10001 ``` ![查看索引节点的占用](http://www.codingyun.com/articleDirectory/3350CC0EF4F95B908014F6B7EC477977.png)
图一:查看索引节点的占用
## 磁盘块和索引节点其中之一满,都会导致无法创建文件,提示磁盘空间已满。 所以请注意,查看磁盘还有空间,但是创建文件提示空间满,可能是inodes节点已满 通过以下命令列出系统内大于100M的文件: ```bash find / -size +100M |xargs ls -lh ``` ![列出系统内大于100M的文件](http://www.codingyun.com/articleDirectory/85F300BC3F8A7F85F77E29946F98D0B9.png)
图二:列出系统内大于100M的文件
## 如上图红框内,发现都是log文件,果断清空! 清空log文件命令: ```bash cat /dev/null > /opt/git/catalina.out ``` 如下图,清空完后,查看下磁盘空间,好清爽! ![清空后磁盘空间](http://www.codingyun.com/articleDirectory/617BEC79AED195E77C793A4C5ED2DEE3.png)
图三:清空后的磁盘空间
查看当前目录内文件夹的大小:du -h --max-depth=1 ```bash alidata@iZbp1cq5gi0iolgls1efdmZ:~$ du -h --max-depth=1 41M ./logs 8.0K ./.gnupg 32M ./frp 4.0K ./.cache 312M ./myDocker 808K ./cloudDisk 3.0G ./dataFile 139M ./soft 8.0K ./.vim 3.5G . ``` **可以两种方式都测试下,有些时候,占用了大量空间的其实是系统日志或业务附件等小文件, 所以根据文件大小去查找不一定能查出正在占用硬盘空间的【目录】或文件,建议使用第二种** ## 日志文件较大 web访问日志,建议做定时任务日志切割,以天为单位做压缩备份(可以通过脚本实现),保留一定时间以备查看,有需要可以做日志分析。 以一键安装包的环境为例,/alidata/log/ 目录下是是日志文件,可以检查文件大小是否占满磁盘使用,通常,access目录下文件为访问日志,error为错误日志。如磁盘占慢,这些日志又不重要,那么可以做清空处理 清空log文件命令: ```bash cat /dev/null > /opt/git/error.log ```
打赏
  • 微信
  • 支付宝

评论
来发评论吧~