Linux中du命令和df命令有什么区别?
df命令、du命令是Linux运维课程中非常常见的命令,它们都能显示一个系统目录所占空间大小,那么你知道du命令和df命令有什么区别吗?我们来看看详细的内容介绍。
当我们使用这两个命令分别查看根目录大小的时候,是不是用du命令查看速度非常慢,因为du命令会扫描整个目录,最终显示这个目录文件的大小,所以会非常占用系统资源,所以du命令不要在服务器的高峰期进行查看。
然后我们还发现用两个命令查看根目录大小竟然不同,什么原因?下面是他们的区别:
1、df命令是从文件系统考虑的,不光要考虑文件占用的空间,还要统计被命令或程序占用的空间;
也就是说df命令不但把这个目录下所有文件的大小都统计在内,而且还把这个目录所有的正在运行的进程以及没有删除干净的缓存文件都计算在内。所以用df命令查看的结果会更准确。
2、du命令是面向文件的,只会计算文件或目录占用的空间。
而du命令查看的只是这个目录下所有文件占用的空间而已。
那么就会出现一种情况,比如一台服务器一年都没有重启一次,那么你就会发现用df命令查看的时候根目录已经占用几百G了,但是用du命令查看可能才占用几十G,相差非常多。
因为服务器在一直不重启动的情况下,每天都会有一些未释放的进程,或者被删除而没有释放的临时文件,所以日积月累时间长了就会积攒非常多的垃圾程序导致占用空间。
所以我们平时在维护服务器的时候一定要注意定期重启动服务器释放空间。
一般游戏服务器,电影服务器等等这些负载比较重的服务器至少一周就要重新启动一次,比如我们平时玩游戏都会发现每周二是大部分游戏服务器维护的时间,其实就是在重新启动服务器。
而一些对系统负载不是很重的服务器,比如网站服务器我们也至少要每个月重新启动一次。
转自:https://baijiahao.baidu.com/s?id=1709666864674037357&wfr=spider&for=pc