linux df命令功能,Linux df命令简要介绍

日常工作生活中,我们常需要查看系统当前的磁盘空间使用情况。在windows下,只需简单点击我的电脑,就看到带进度条的系统磁盘使用情况,非常直观。那linux命令行下如何实现同样的功能呢?这就是我们今天要介绍的df命令。

df(disk free)用来显示文件系统的使用情况。首先直接输入df命令,结果显示如下:

xie@xie-VirtualBox:~$ df

Filesystem 1K-blocks Used Available Use% Mounted on

udev 502424 4 502420 1% /dev

tmpfs 102488 960 101528 1% /run

/dev/sda1 7350760 3970620 2983700 58% /

none 4 0 4 0% /sys/fs/cgroup

none 5120 0 5120 0% /run/lock

none 512424 152 512272 1% /run/shm

none 102400 44 102356 1% /run/user

第1列是设备文件的路径名,一般即指文件的分区,第2列是该分区的大小,1K-blocks表示一个数据块的大小为1024字节,第3、4列分别表示已用和可用的数据块数量,第6列表示该分区挂载的文件位置。需要注意的是,可能有的读者终端上显示的第3、4列的和并不等于第2列,原因是每个分区都留有一定的空间给管理员使用,造成两者间有一定的差值。

df命令格式为: df [选项] [文件],如果选项和文件名都没指定,则所有当前被挂载的文件系统的可用空间将被显示,并且磁盘空间将以1KB为单位进行显示,除非环境变量POSIXLY_CORRECT被指定。以下是df常用的选项。

-h 选项

不带参数的df命令默认显示1k数据块的数量,不便于阅读,可以加上-h或--human-readable参数,这样的结果就比较友好了。

xie@xie-VirtualBox:~$ df -h

Filesystem Size Used Avail Use% Mounted on

udev 491M 4.0K 491M 1% /dev

tmpfs 101M 960K 100M 1% /run

/dev/sda1 7.1G 3.8G 2.9G 58% /

none 4.0K 0 4.0K 0% /sys/fs/cgroup

none 5.0M 0 5.0M 0% /run/lock

none 501M 152K 501M 1% /run/shm

none 100M 44K 100M 1% /run/user

-i 选项

-i选项用于查看文件系统的inode使用情况。inode是用来存储特定文件的元数据的一种数据结构。在创建一个文件系统时,inode的预先定义数量将被分配。这意味着,一个文件系统既可能因为大文件耗尽所有可用空间,也可能因为inode空间被小文件用完而无法添加新的文件。因此,这也是个很有用的选项。

xie@xie-VirtualBox:~$ df -i

Filesystem Inodes IUsed IFree IUse% Mounted on

udev 125606 459 125147 1% /dev

tmpfs 128106 439 127667 1% /run

/dev/sda1 475136 205768 269368 44% /

none 128106 2 128104 1% /sys/fs/cgroup

none 128106 4 128102 1% /run/lock

none 128106 6 128100 1% /run/shm

none 128106 28 128078 1% /run/user

-a 选项

-a选项用于查看所有的文件系统,包括/sysfs、/proc等虚拟文件系统的使用情况

xie@xie-VirtualBox:~$ df -a

Filesystem 1K-blocks Used Available Use% Mounted on

sysfs 0 0 0 - /sys

proc 0 0 0 - /proc

udev 502424 4 502420 1% /dev

devpts 0 0 0 - /dev/pts

tmpfs 102488 960 101528 1% /run

/dev/sda1 7350760 3970620 2983700 58% /

none 4 0 4 0% /sys/fs/cgroup

none 0 0 0 - /sys/fs/fuse/connections

none 0 0 0 - /sys/kernel/debug

none 0 0 0 - /sys/kernel/security

none 5120 0 5120 0% /run/lock

none 512424 152 512272 1% /run/shm

none 102400 44 102356 1% /run/user

none 0 0 0 - /sys/fs/pstore

binfmt_misc 0 0 0 - /proc/sys/fs/binfmt_misc

systemd 0 0 0 - /sys/fs/cgroup/systemd

其他用法实例

df -i / :用于查看/目录下挂载的文件系统的节点使用情况

xie@xie-VirtualBox:~$ df -i /

Filesystem Inodes IUsed IFree IUse% Mounted on

/dev/disk/by-uuid/33056931-031d-4efa-9e1d-92e0c9b76058 475136 205771 269365 44% /

总的来说,df各个选项的简要介绍如下:

-a:显示所有文件系统的磁盘使用情况,包括虚拟的文件系统,如/proc文件系统。

-k:以k字节为单位显示。

-i:显示i节点信息,而不是磁盘块。

-t:显示各指定类型的文件系统的磁盘空间使用情况。

-x:列出不是某一指定类型文件系统的磁盘空间使用情况(与t选项相反)。

-T:显示文件系统类型。

实现思路

在涉及具体实现思路之前,我们必须对/etc/mtab文件有一定的了解。/etc/mtab实时记录了当前系统中文件分区的挂载信息,并且包含了操作系统生成的虚拟文件系统信息。比如你通过mount命令临时挂载了一个文件分区,那么/etc/mtab就会实时更新,记录刚挂载的信息。与之类似的还有/etc/fstab文件,同样存储了系统的文件分区信息,但只包含了物理文件系统信息,不包含虚拟文件系统信息,并且是静态的,不会实时更新mount命令的结果。/etc/fstab更像一个配置文件,记录了开机之后自动挂载的文件系统信息,比如挂载根文件系统/。所以,如果想要实现开机之后自动挂载特定文件分区,直接修改/etc/fstab即可。这里只是简单地介绍这两个文件,具体文件内容格式,请谷歌一下。

df读取分析/etc/mtab文件,对其中的每个文件分区执行系统调用statfs(),获取更多的描述信息。除了物理分区外,df还能获得运行时系统构建的虚拟文件系统, 比如/dev下的udev,/run下的tmpfs。

注意事项

有时删除文件后,用df再查看文件系统,可能会发现磁盘空间并没有释放,删除命令也没有报错,这是为什么呢?主要原因是执行删除命令之后,如果还有进程使用这个文件进行读写,那么这个文件就没有被真正的删除,可以通过关闭这个进程或清空覆盖可写文件,实现真正的删除。出现这种情况时,可以用lsof命令获取一个已经被删除但仍然被应用程序占用的文件列表。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/277332.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

spring集成RabbitMQ配置文件详解(生产者和消费者)

1&#xff0c;首先引入配置文件org.springframework.amqp&#xff0c;如下&#xff1a; <dependency><groupId>org.springframework.amqp</groupId><artifactId>spring-rabbit</artifactId><version>1.7.1.RELEASE</version></de…

一天的学习成果:hash输出,dcache工作原理,include的home directory,fist optype的含义...

最先获得突破的是解决了下午的崩溃问题。其实原因很简单&#xff0c;我声明了一个unsigned int型指针&#xff0c;但是没有给它分配空间…… 解决了这个问题之后就很简单了&#xff0c;调用定义在linux/dcache.c文件中的full_name_hash函数对文件名进行hash计算。这里发现了一个…

linux显示fio为非法指令,FORTRAN运行错误消息列表中英对照.doc

FORTRAN运行错误消息列表中英对照Fortran的运行时错误消息列表本节列出了英特尔Fortran运行时库(RTL)处理的错误。对于每一个错误&#xff0c;该表提供了错误号&#xff0c;严重性代码&#xff0c;错误信息文本&#xff0c;条件符号名称&#xff0c;而错误的详细说明。在程序中…

各种证书

软考高级信息系统项目管理师https://www.zhihu.com/question/29904891 转载于:https://www.cnblogs.com/trumbull/p/11154514.html

linux面试题中的简答题,[计算机]linux面试题简答题部分.doc

[计算机]linux面试题简答题部分linux面试题(简答题部分)2 简述进程的启动、终止的方式以及如何查看进程&#xff1f;答&#xff1a;启动进程的方式分为手动启动和自动启动两种方式,其中手动启动的方法用services 服务名 start;或者是./脚本名称,自动启动进程的方法有将进程服务…

const用法

const的用法很让人荤菜&#xff0c;现在总结以下&#xff1a;1&#xff0c;必须初始化2&#xff0c;作为函数的参数是个好习惯&#xff0c;const在*号左边所指常量值&#xff0c;在右边所指的是常量指针3&#xff0c;const成员函数的目的是指明该函数可以在const对象上调用,也就…

Multiverse: Revolutionary Backend for Alembic // Multiverse: 下一代Alembic后端

J CUBE&#xff0c;日本最大的动画公司Polygon Picture&#xff08;以下简称PPI&#xff09;公司成立的专职R&D公司隆重推出Multiverse&#xff0c;下一代Alembic存储后端。 我们还开发了针对Autodesk Maya的工具&#xff0c;运用Multiverse在流程中。 "multiverse&qu…

c语言 程序延时 校准,c语言实现系统时间校正工具代码分享

//*******************************************************************//Time Protocol是一种非常简单的应用层协议。它返回一个未格式化的32位二进制数字,//这个数字描述了从1900年1月1日午夜到现在的秒数。服务器在端口37监听协议请求&#xff0c;以//TCP/IP或者UDP/IP格式…

近半年能力没进步原因分析与求助

2019独角兽企业重金招聘Python工程师标准>>> 20180907 思维方式有缺陷&#xff0c;想到的解决方法经常不是最有效率的。导致工作时间内基本没自由学习的时间。 业余时间不够专注&#xff0c;学习方向经常变&#xff0c;没能坚持搞透一个点就换书看&#xff0c;没有总…

疑问:关于Microsoft Office InfoPath 2003 Toolkit for Visual Studio 2005 Beta 2

因开发急须这个东西&#xff0c;但我不是msdn的subscriber用户不能单独下载&#xff0c;但微软这样提示http://blogs.msdn.com/vsto2/archive/2005/05/05/415003.aspxIf you need the Toolkit, but you are not an MSDN Universal subscriber, if you go to http://msdn.micros…

windows下安装Redis并部署成服务

文章来源&#xff1a;https://www.cnblogs.com/weiqinl/p/6490372.html windows下安装Redis并部署成服务 Redis 是一个开源&#xff08;BSD许可&#xff09;的&#xff0c;内存中的数据结构存储系统&#xff0c;它可以用作数据库、缓存和消息中间件。 一&#xff1a;下载 下载地…

c语言编写程序计算行列式值,新手作品:行列式计算C语言版

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼对话 ControlHeightDecrease ShiftUp Arrow 向上调整选定的控件或对话一个对话单位对话 ControlHeightIncrease ShiftDown Arrow 向下调整选定的控件或对话一个对话单位对话 ControlMoveDown Dow…

.net core高性能通讯开源组件BeetleX

BeetleX beetleX是基于dotnet core实现的轻量级高性能的TCP通讯组件&#xff0c;使用方便、性能高效和安全可靠是组件设计的出发点&#xff01;开发人员可以在Beetlx组件的支持下快带地构建高性能的TCP通讯服务程序&#xff0c;在安全通讯方面只需要简单地设置一下SSL信息即可实…

按组排名

rank() over,dense_rank() over,row_number() over的区别 1.rank() over&#xff1a;查出指定条件后的进行排名。特点是&#xff0c;加入是对学生排名&#xff0c;使用这个函数&#xff0c;成绩相同的两名是并列&#xff0c;下一位同学空出所占的名次。 select name,subject,sc…

《Excel与VBA程序设计》第一章

点击下载&#xff1a;http://files.cnblogs.com/maweifeng/Excel_VBA_001.rar转载于:https://www.cnblogs.com/maweifeng/archive/2005/06/23/179729.html

linux java环境变量设置

JAVA环境变量设置&#xff1a; #vi /etc/profile#在文件最后添加以下内容&#xff1a; export JAVA_HOME/usr/java/jdk1.8.0_91 export PATH$JAVA_HOME/bin:$PATH export CLASSPATH.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar 执行如下命令使环境变量生效&#xff1a; s…

win7 磁盘分区

右键点击“我的电脑”&#xff0c;选择“管理”命令。在打开的“计算机管理”窗口中&#xff0c;依次展开“计算机管理”→“存储”→“磁盘管理”项。之后&#xff0c;在右侧窗格中即可看到当前硬盘的分区情况。 在“未指派”的磁盘空间上点击右键&#xff0c;选择“新建磁盘…

[FxCop.设计规则]13. 定义自定义属性参数的访问属性

13. 定义自定义属性参数的访问属性 翻译概述&#xff1a; 一个比较无聊的规则&#xff0c;实在看不出在什么情况下&#xff0c;一个开发者会做出违反这条规则的设计。没有别的内容&#xff0c;只是说应该为自定义特性的构造函数中的参数提供一个相关的属性去读取它们的值。…

C语言程序设计实验最短路径,7最短路径C语言程序设计.pdf

最短路径旅行家的困扰第4章 图结构 解放军理工大学旅行家的困扰新疆特克斯县“八卦城”第4章 图结构 解放军理工大学旅行家的困扰特克斯县怎么样帮助困扰的旅行家找到去各个地点的最短路线呢&#xff1f;旅行家居住的旅馆旅行家想去的地点第4章 图结构 解放军理工大学问题建模使…

centos7安装Cloudera Manager

第一部分&#xff1a;准备工作一&#xff0c;修改hostname $vim /etc/sysconfig/network $source /etc/sysconfig/network例如&#xff1a; NETWORKINGyes HOSTNAMEspark01reboot重启服务器 二&#xff0c;关闭selinux查看SELinux状态1&#xff0c;/usr/sbin/sestatus -v #如果…