Linux命令-df
场景: df -h查看磁盘信息
/dev/mapper/rl-root 96%
du -h --max-depth=1 命令代表寻找当前目录,哪个文件夹占用空间最大,进入根目录:
[root@localhost ~]#cd /
[root@localhost /]# du -h --max-depth=1
或者一步执行:
[root@lanshan ~]#cd / && du -h --max-depth=1
注意事项:
由于df是计算的进程占用空间,du -h 计算的实际文件占用空间,所以会导致以下情况发生
如果删除了文件,但是磁盘空间还是没有释放,那是进程还在导致的。可以通过以下操作
lsof -n |grep deleted找到占用内存最大的,并且确定不用的可以用kill -9 pid 删除pid为对应的进程号
lsof 命令用法:查看已删除空间却没有释放的进, 在终端中直接执行 lsof 命令,如下所示:
[root@localhost ~]# lsof
COMMAND PID TID USER FD TYPE DEVICE SIZE/OFF NODE NAME
systemd 1 root cwd DIR 253,0 236 64 /
systemd 1 root rtd DIR 253,0 236 64 /
systemd 1 root txt REG 253,0 1616360 67485964 /usr/lib/systemd/systemd
systemd 1 root mem REG 253,0 20112 33750391 /usr/lib64/libuuid.so.1.3.0
systemd 1 root mem REG 253,0 265624 33750457 /usr/lib64/libblkid.so.1.1.0
systemd 1 root mem REG 253,0 90248 33628492 /usr/lib64/libz.so.1.2.7
systemd 1 root mem REG 253,0 157424 33750414 /usr/lib64/liblzma.so.5.2.2
systemd 1 root mem REG 253,0 23968 33750402 /usr/lib64/libcap-ng.so.0.0.0
systemd 1 root mem REG 253,0 19896 33750102 /usr/lib64/libattr.so.1.1.0
systemd 1 root mem REG 253,0 19248 33591164 /usr/lib64/libdl-2.17.so
systemd 1 root mem REG 253,0 402384 33750139 /usr/lib64/libpcre.so.1.2.0
……
……
其中,每列参数的含义如下:
1. COMMAND : 命令名称;
2. PID : 进程ID;
3. TID : 线程ID,如果为空代表列出的是进程;
4. TASKCMD : 任务名称,通常与 COMMAND 相同;
5. USER : 用户ID号或登录名;
6. FD : 文件描述符;
7. TYPE : 与文件关联结点的类型;
8. DEVICE : 设备号;
9. SIZE/OFF : 文件大小/偏移量,以字节为单位;
10. NODE : 文件结点;
11. NAME : 文件挂载点和文件所在的系统;
查看已经删除的文件,空间有没有释放,没有的话kill掉pid
lsof -n |grep deleted
查看根路径 lsof -n / | grep deleted 可以看看空间占用情况
问题描述:
服务报警root分区使用率超过95%,上来查看发现96%使用率;
但是/分区下面的目录,每个查询加起来也不到4G空间,多出来的40G不知道在哪里?
find查询也没有找到大文件;
分析原因:
可能是系统进程占用的空间没有释放掉,导致的;通过命令查看发现,进程一共有3个,都是处于deleted状态,文件大小刚好是40G,正好是多出来的空间.
解决办法:
找到对应的进程号,kill掉即可;
[root@localhost]# lsof -n / |grep deleted
mysqld 2660 mysql 4u REG 8,2 0 524290 /tmp/ibSF7sXt (deleted)
mysqld 2660 mysql 5u REG 8,2 0 524305 /tmp/ibCCM4u4 (deleted)
mysqld 2660 mysql 6u REG 8,2 0 524309 /tmp/ibKuAG2E (deleted)
mysqld 2660 mysql 7u REG 8,2 0 524315 /tmp/ibcLe4Bf (deleted)
mysqld 2660 mysql 11u REG 8,2 0 524316 /tmp/ibW2n1iQ (deleted)
php 7045 root 0r REG 8,2 1172 524374 /tmp/sh-thd-1494029191 (deleted)
php 7045 root 2w REG 8,2 42413952626 657428 /var/spool/at/spool/a0100c017bf37c (deleted)
php 7054 root 0r REG 8,2 1172 524374 /tmp/sh-thd-1494029191 (deleted)
php 7054 root 2w REG 8,2 42413952626 657428 /var/spool/at/spool/a0100c017bf37c (deleted)
php 12730 root 0r REG 8,2 1172 524374 /tmp/sh-thd-1494029191 (deleted)
php 12730 root 2w REG 8,2 42413952626 657428 /var/spool/at/spool/a0100c017bf37c (deleted)
mysqld 17855 mysql 4u REG 8,2 0 524384 /tmp/ibxBS5jf (deleted)
mysqld 17855 mysql 5u REG 8,2 0 524385 /tmp/ibmrNzfL (deleted)
mysqld 17855 mysql 6u REG 8,2 0 524386 /tmp/ibVDS3ah (deleted)
mysqld 17855 mysql 7u REG 8,2 0 524387 /tmp/ibx6YTrj (deleted)
mysqld 17855 mysql 13u REG 8,2 0 524388 /tmp/ibOhb8xQ (deleted)
在对应的目录下并没有发现文件
[root@localhost]# ll /var/spool/at/spool/
总用量 0
[root@localhost]# kill -9 7045
[root@localhost]# kill -9 7054
[root@localhost]# kill -9 12730
再次查看发现没有php的进程
[root@localhost]# lsof -n / |grep deleted
mysqld 2660 mysql 4u REG 8,2 0 524290 /tmp/ibSF7sXt (deleted)
mysqld 2660 mysql 5u REG 8,2 0 524305 /tmp/ibCCM4u4 (deleted)
mysqld 2660 mysql 6u REG 8,2 0 524309 /tmp/ibKuAG2E (deleted)
mysqld 2660 mysql 7u REG 8,2 0 524315 /tmp/ibcLe4Bf (deleted)
mysqld 2660 mysql 11u REG 8,2 0 524316 /tmp/ibW2n1iQ (deleted)
mysqld 17855 mysql 4u REG 8,2 0 524384 /tmp/ibxBS5jf (deleted)
mysqld 17855 mysql 5u REG 8,2 0 524385 /tmp/ibmrNzfL (deleted)
mysqld 17855 mysql 6u REG 8,2 0 524386 /tmp/ibVDS3ah (deleted)
mysqld 17855 mysql 7u REG 8,2 0 524387 /tmp/ibx6YTrj (deleted)
mysqld 17855 mysql 13u REG 8,2 0 524388 /tmp/ibOhb8xQ (deleted)
查看空间已经恢复:
[root@localhost ]# df -h
文件系统 容量 已用 可用 已用%% 挂载点
/dev/sda2 49G 4.4G 42G 10% /
tmpfs 16G 0 16G 0% /dev/shm
Linux命令-df的更多相关文章
- linux命令df中df -h和df -i
df 命令: linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息. 1.命令格式: df [选项] [ ...
- 每天一个linux命令:df 命令
linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息. 1.命令格式: df [选项] [文件] 2.命 ...
- linux命令df中df -h和df -i的区别
df 命令: linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息. 1.命令格式: df [选项] [ ...
- Linux命令——df
参考:12 Useful “df” Commands to Check Disk Space in Linux 简介 df用于查看文件系统磁盘空间使用情况. df 读取的数据几乎都是针对一整个文件系统 ...
- Linux命令——df/du/time
一.df(disk free) df命令可以用来检查 linux服务器的文件系统的磁盘空间占用情况,可以知道硬盘被占用了多少空间,目前还剩下多少空间等信息. 1)命令格式 df [参数] 文件名 2) ...
- 【转】statfs获得硬盘使用情况 模拟linux命令 df
原文网址:http://blog.csdn.net/mociml/article/details/5335474 说明:本文以主要为转载内容,同时加入了我在使用过程中遇到问题对其的修正!!!!!!!! ...
- Linux 命令 - df: 报告磁盘空间的占用情况
df 命令列出指定的文件名所在的文件系统上可用磁盘空间的数量. 如果没有指定文件名,则显示当前所有使用中的文件系统.默认情况下,磁盘空间以 1K 为一块显示,如果设置了环境变量 POSIXLY_COR ...
- 每天一个linux命令:df
1.命令简介 df (disk free) 其功能显示每个文件所在的文件系统的信息,默认是显示所有文件系统. 2.用法 df [选项]... [文件]... 3.选项 4.示例 示例1:显示磁盘使 ...
- statfs获得硬盘使用情况 模拟linux命令 df
转自:http://blog.csdn.net/mociml/article/details/5335474 先说statfs结构:#include <sys/vfs.h> /* 或 ...
- Linux命令 df du
df: 列出文件系统的整体磁盘使用量 du: 评估文件系统的磁盘使用量 $ df [-ahikHTm] [目录或文件名] 参数: -a: 列出所有的文件系统,包括系统特有的/proc 等文件系统 -k ...
随机推荐
- C#获取html标签内容的方法
C# 获取html标签内容的方法: /// <summary> /// 获取html网页标签内容 /// 例如:<span class="index_infoItem__E ...
- 【DS】2.1
线性表:c++各种基础操作里面,有&没&避免错的代码额~ #include <stdio.h> void test(int &x){//没有&就没有带回主函 ...
- cannot load "mso.dll" vs2008 web开发问题
已成功解决办法: ①将VS 2008安装包WCUWebDesignerCoreWebDesignerCore.exe提取并重新安装: ②将C:Program Files/Common Files/Mi ...
- JZOJ 2936. 【NOIP2012模拟8.9】逐个击破
题面 各大 \(OJ\) 都有 分析 从结果入手:所有被敌方军团占领的城市都是分开的 而按最小代价删去若干条边,则剩下的图必然是若干个联通子图组成的 那么我们要使花费最小,可以是留下的边最大 并查集合 ...
- 跳板攻击之:frp代理转发
跳板攻击之:frp代理转发 目录 跳板攻击之:frp代理转发 1 frp 介绍 2 frp 原理 3 实验环境 3.1 实验准备 3.2 实验拓扑 4 frp代理socks 5 frp代理stcp安全 ...
- python中time模块的常用方法的转换关系图
获取当前的时间戳 把时间戳转换成了时间的格式 获取时间 把时间格式数据转换为易识别的字符串 获取到表示时间的字符串,再转换为时间数据.
- 奇迹网站编辑保存的时候提示Access is denied
出现上面这个情况 只有在IIS模式下运行奇迹MU网站系统才会出现这个问题. 解决办法: 给网站目录赋予everyone权限 1.在网站目录右键属性 2在文件夹属性界面,点击"安全" ...
- C语言学习--动态内存分配(未完待续)
内存分配的类型: 在C/C++中内存分为5个区,分别为栈区.堆区.全局/静态存储区.常量存储区.代码区. 静态内存分配:编译时分配.包括:全局.静态全局.静态局部三种变量. 动态内存分配:运行时分配. ...
- .NET 中创建录音机和播放器应用
前言 在本博客中,你将了解如何在 .NET MAUI 中开发录音机和播放器.音频播放器将录制和播放音频文件.此应用程序可以在Android和iOS上部署和使用. 预览 以下是该录音机和播放录音的应用程 ...
- nginx 与 k8s ingress 配置转发websocket
环境 10.1.100.10:70 是后端websocket 服务 需要通过nginx 向后端转发,nginx 配置文件如下 # cat test-ue4.conf map $http_upgrade ...