当前位置: 首页 > 编程日记 > 正文

轻松管理Linux磁盘空间命令:df

在Linux系统中,df(Disk Free)命令是一个用于显示磁盘空间使用情况的实用工具。通过df命令,用户可以轻松了解系统中每个文件系统的可用空间、已用空间、以及总空间大小等关键信息。

Linux服务器通常具有多个文件系统,而了解磁盘空间的使用情况对系统管理员和普通用户来说至关重要。df命令不仅能够帮助及时发现空间不足的问题,还可以在规划磁盘空间、排查故障时提供有用的信息。

df命令的语法和选项

df命令的基本语法为:

df [选项] [文件/目录]

常用选项:

  • -h:以人类可读的方式显示磁盘空间信息。
  • -T:显示文件系统类型。
  • --total:显示总计行,汇总所有文件系统的信息。

当你运行df命令时,它会返回一张表格,其中包含有关每个文件系统的信息。

  1. 文件系统(Filesystem):显示文件系统的挂载点或设备路径。例如,/dev/sda1 表示磁盘上的一个分区。

  2. 1K-块数(1K-blocks):以1KB块的形式显示文件系统的总容量。

  3. 已用(Used):显示文件系统已经使用的空间大小,同样以1KB块的形式表示。

  4. 可用(Available):表示文件系统中仍然可用的空间大小,同样以1KB块的形式表示。

  5. 已用百分比(Use%):显示已用空间相对于总空间的百分比。

  6. 挂载点(Mounted on):指示文件系统的挂载点,也就是文件系统在目录树中的位置。

Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda1        20511324 4473352  14965420  24% /
tmpfs             4089224       0   4089224   0% /dev/shm
/dev/sdb1       15481840 4380100   10376432  30% /data

在这个示例中:

  • /dev/sda1 是根文件系统,总容量为 20511324 KB,已用 4473352 KB,可用 14965420 KB,已用百分比为 24%。
  • tmpfs 是一个虚拟文件系统,总容量为 4089224 KB,已用 0 KB,可用 4089224 KB,已用百分比为 0%。
  • /dev/sdb1 是一个挂载在 /data 目录下的文件系统,总容量为 15481840 KB,已用 4380100 KB,可用 10376432 KB,已用百分比为 30%。

df 基本用法

查看整个系统的磁盘空间

要查看整个系统的磁盘空间使用情况,只需运行简单的df命令:

df

该命令将显示所有挂载的文件系统的信息,包括文件系统的名称、总空间、已用空间、可用空间以及使用百分比。

指定文件系统查看空间使用情况

如果只对特定文件系统感兴趣,可以通过指定文件系统的路径来获取详细信息:

df /dev/sda1

此命令将显示特定文件系统的磁盘空间使用情况。

以人类可读的格式显示

使用-h选项,以更易读的方式显示磁盘空间大小:

df -h

这样,磁盘空间的大小将以K、M、G等单位进行显示,方便用户理解。

df 进阶用法

显示inode信息

除了磁盘空间大小外,df命令还可以用于查看文件系统的inode(索引节点)使用情况。每个文件和目录在文件系统中都有一个唯一的inode号,通过df命令可以查看inode的相关信息:

df -i

此命令将显示每个文件系统的inode总数、已用inode数、可用inode数以及inode使用百分比。

指定文件系统类型

使用-t选项,可以筛选并显示指定类型的文件系统。例如,只显示ext4类型的文件系统:

df -t ext4

这对于在多个文件系统中找到特定类型的文件系统非常有用。

df 命令实际案例和场景应用

监控磁盘空间变化

为了实时监控磁盘空间的变化,可以使用watch命令结合df命令:

watch -n 1 df -h

这将每秒刷新一次磁盘空间信息,帮助及时发现空间不足或异常情况。

磁盘空间不足的解决方案

当磁盘空间不足时,可以使用df命令查找占用空间大的目录或文件:

du -h --max-depth=1 /

然后进一步定位并处理问题。

结合其他命令使用

结合du、ls等命令,可以获得更全面的信息。例如,查看指定目录下各子目录的磁盘空间占用情况:

du -h --max-depth=1 /path | sort -hr

这将按磁盘空间大小降序列出各子目录。

df 命令实用技巧和注意事项

自定义输出格式

通过使用--output选项,可以自定义df命令的输出格式,选择显示的列以及它们的顺序。例如,只显示文件系统、已用空间和可用空间:

df --output=source,used,avail

这对于筛选特定信息以便进一步处理非常有用。

定时任务与自动化

利用cron等工具,可以定期执行df命令,以便自动监控磁盘空间。例如,每天凌晨执行:

0 0 * * * df -h > /path/to/logfile.log

这将把磁盘空间信息输出到指定的日志文件,以备查阅。

注意事项和最佳实践

  • 定期清理不必要的文件:通过df命令监控磁盘空间,及时清理不必要的文件,确保系统正常运行。
  • 备份关键数据:在执行磁盘清理或调整分区大小等操作前,务必进行数据备份,以免意外数据丢失。
  • 谨慎调整分区大小:调整分区大小是一项敏感操作,需要仔细计划和谨慎执行,以避免潜在风险。

总结

本文我们介绍了Linux系统上的df命令,包括基本用法、进阶用法、实际案例和场景应用,以及一些实用技巧和注意事项。df命令是系统管理中的一个重要工具,能够帮助用户有效管理磁盘空间,预防和解决潜在问题。

在实际使用中,请根据具体情况选择合适的df命令选项和参数,并结合其他命令,以获取更全面的系统信息。

相关文章:

[Ubuntu 22.04] Docker安装及使用

容器的生命周期由用户控制,用户可以选择手动删除容器或让其保留在系统中以供之后使用。选项允许你在容器内部创建一个交互式的终端会话,使你可以像在本地终端一样与容器进行交互。你可以在容器内执行命令,查看输出并输入命令。镜像拉取完成后,可以使用以下命令创建并启动一个基于 Ubuntu 20.04 镜像的容器。列出所有正在运行的容器,并显示它们的容器ID、镜像、命令、创建时间、状态等信息。以下命令可以中止容器,改命令将向容器发送一个停止信号,使其正常停止并退出。这将显示所有容器的列表,包括正在运行的和已停止的容器。

CSS局限属性contain:优化渲染性能的利器

在网页开发中,优化渲染性能是一个重要的目标。CSS局限属性contain是一个强大的工具,可以帮助我们提高网页的渲染性能。本文将介绍contain属性的基本概念、用法和优势,以及如何使用它来优化网页的渲染过程。

Docker exec命令详细使用指南

Docker exec命令是Docker提供的一个强大工具,用于在正在运行的容器中执行命令。本文将详细介绍Docker exec命令的用法和示例,帮助大家更好地理解和使用这个命令。Docker是一种流行的容器化平台,允许我们在容器中运行应用程序。有时候,在容器内执行命令可以帮助我们调试、排查问题或进行其他操作。这就是Docker exec命令发挥作用的时候。本文详细介绍了Docker exec命令的用法和示例。

10个常用python自动化脚本

大家好,Python凭借其简单和通用性,能够为解决每天重复同样的工作提供最佳方案。本文将探索10个Python脚本,这些脚本可以帮助自动化完成任务,提高工作效率。无论是开发者、数据分析师还是仅仅想简化工作流程的普通用户,这些脚本都能提供帮助。

TCP服务器最多支持多少客户端连接

本文从理论和实际两个方面介绍了一个 TCP 服务器支持的最大连接数

C程序的内存空间布局(栈、堆、数据区、常量区、代码区)

较详细的介绍了栈、堆、数据区、常量区、代码区

给服务器开通telnet的流程

但一些特殊场景下,比如要升级ssh,ssh不能用时,需要使用telnet,用过要关闭此服务。需要首先安装,如果telnet-server服务在xinetd之前安装了,要先删除telnet-server,再安装xinetd。安装顺序:xinetd--》telnet--》telnet-server。安装顺序:xinetd--》telnet--》telnet-server。2、卸载rpm包(如果已经安装了,又不清楚顺序,可以都卸载后统一安装)注意:telnet-server服务启动依赖xinetd服务,

如何在Nginx中配置防盗链?

防盗链是一种防止网站资源被非法下载的技术。当用户尝试直接访问一个受保护的资源时,服务器会返回一个403 Forbidden错误,提示用户该资源受到保护,不能直接访问。这样可以避免用户通过搜索引擎或其他方式获取到未经授权的资源。通过以上步骤,我们可以在Linux系统中的Nginx Web服务器中使用Shell脚本实现防盗链的配置。这种方法可以有效地保护网站资源不被非法下载,提高用户体验,同时防止恶意攻击。在实际项目中,我们可以根据实际需求灵活配置受保护资源的URL和处理方式。

使用DockerFile构建镜像与镜像上传

首先Dockerfile 是一个文本格式的配置文件, 用户可以使用 Dockerfile 来快速创建自定义的镜像。

python基础小知识:引用和赋值的区别

通过引用,就可以在程序范围内任何地方传递大型对象而不必在途中进行开销巨大的赋值操作。不过需要注意的是,这种赋值仅能做到顶层赋值,如果出现嵌套的情况下仍不能进行深层赋值。赋值与引用不同,复制后会产生一个新的对象,原对象修改后不会影响到新的对象。如果在原位置修改这个可变对象时,可能会影响程序其他位置对这个对象的引用

k8s 使用tomcat官方镜像部署集群并解决访问页面404

官方镜像这里有个坑,使用kubectl启动之后,页面报错404,仔细检查发现,是因为tomcat的webapp目录下没有对应的文件,所以连初始界面都无法显示。要想显示,必须要根据官方镜像自己构建一个Dockerfile。根据上面的信息可以看出,该POD部署在k8s-node1上,映射POD的8080端口到master的30088端口上。这里需要将镜像上传到自己搭建的registry,并配置nodes节点都可以正常访问5000端口。三、根据官方镜像自己构建一个一次性就能启动的Tomcat镜像。

Centos系统上安装PostgreSQL和常用PostgreSQL功能

PostgreSQL安装成功之后,会默认创建一个名为postgres的Linux用户,初始化数据库后,会有名为postgres的数据库,来存储数据库的基础信息,例如用户信息等等,相当于MySQL中默认的名为mysql数据库。权限代码:SELECT、INSERT、UPDATE、DELETE、TRUNCATE、REFERENCES、TRIGGER、CREATE、CONNECT、TEMPORARY、EXECUTE、USAGE。为了方便我们使用postgres账号进行管理,我们可以修改该账号的密码。

linux切换root用户su - root和su root的区别

通过tty客户端登陆的shell就是login shell,通过在图形界面使用ctrl+shift+t的方式新建的shell是no login shell。登录的流程,会执行 /etc/profile,/etc/profile.d/下定义的*.sh都会执行。su - root,产生一个登录shell去执行后面的指令。no login shell 读取的文件和顺序为:/etc/bashrc和~/.bashrc。su root,产生一个非登录交互shell,非登录交互shell,只执行用户目录下。

Python中如何简化if...else...语句

我们通常在Python中采用if...else..语句对结果进行判断,根据条件来返回不同的结果,如下面的例子。这段代码是一个简单的Python代码片段,让用户输入姓名并将其赋值给变量user_input。我们能不能把这几行代码进行简化,优化代码的执行效率呢?以下是对各行代码的解读。这里使用了or这个逻辑运算符,当user_input不为空时,user_input为真,name就被赋于user_input的值。采用这种方法可以轻松实现if...else语句的简化。我们可以使用一行简短的代码来实现上面的任务。

使用docker部署RStudio容器并结合内网穿透实现公网访问

RStudio Server 使你能够在 Linux 服务器上运行你所熟悉和喜爱的 RStudio IDE,并通过 Web 浏览器进行访问,从而将 RStudio IDE 的强大功能和工作效率带到基于服务器的集中式环境中。下面介绍在Linux docker中安装RStudio Server并结合cpolar内网穿透工具,实现远程访问,docker方式安装可以避免很多问题,一键安装,如设备没有安装docker,需提前安装docker。

Docker网络配置&网络模式

网络相关概念,子网掩码、网关、规则的介绍及网络模式bridge、host详解,Dockers自定义网络配置

Linux grep命令教程:强大的文本搜索工具(附案例详解和注意事项)

grep(Global Regular Expression Print)命令用来在文件中查找包含或者不包含某个字符串的行,它是强大的文本搜索工具,并可以使用正则表达式进行搜索。当你需要在文件或者多个文件中搜寻特定信息时,grep就显得无比重要啦。

保持Python程序在Linux上持续运行的几种方法

主要是用来定时执行任务的,但你也可以利用它来监控你的Python脚本是否正在运行,并在需要时重新启动它。是一个非常实用的命令,它可以让你的Python脚本在你退出shell后继续运行。总结起来,根据你的具体需求和环境,你可以选择以上任何一种方法来保持Python程序在Linux上的持续运行。使用这些工具,你可以随时断开SSH连接,而不用担心脚本会停止运行。通过这种方式,你可以安全地关闭终端,而脚本会继续在后台执行。这样,你的Python脚本就会作为系统服务运行,并且会在系统启动时自动启动。

linux环境中一次启动多个jar包,并且设置脚本开机自启

我们在通过jar启动项目时,有时候会比较多,启动会比较麻烦,需要编写shell脚本启动,将启动脚本存放在需要启动的jar包路径下。(文档存放在 /home/process_parent )PORTS 端口号,多个用空格隔开MODULES 模块,多个用空格隔开MODULE_NAMES 模块名称,多个用空格隔开。

windows11通过虚拟机安装Ubuntu20.04

window11通过虚拟机VMware Workstation 17 Player安装ubuntu20.04

开发版ubuntu系统上如何进行开机自启(四种方法一览)

如果省略该字段,则 systemd 将默认将当前服务的启动顺序设置为与其他服务无关,即在启动过程中没有任何依赖性关系,服务的启动顺序由系统自行决定。【ExecStart】 关键字段,服务启动命令,指定服务启动时需要执行的命令或脚本【WantedBy】用于指定服务的自动启动级别,在 Linux 系统中,多用户模式是指允许多个用户同时登录并使用系统资源的模式,与之相对的是单用户模式,只有一个用户可以登录并使用系统资源。保存文件的方法根据所使用的编辑器而有所不同,通常是按下特定的键组合,然后选择保存并退出。

你了解计算机网络的发展历史吗?

计算机网络是指将一群具有独立功能的计算机通过被互联起来的,在通信软件的支持下,实现的系统。计算机网络是计算机技术与通信技术紧密结合的产物,两者的迅速发展渗透形成了计算机网络技术。简而言之呢,计算机网络就是实现两台计算机相互沟通的介质。

Docker的介绍及安装&基本操作命令

在讲到Docker之前,我们先了解虚拟机与容器之间的区别VM(VMware)在宿主机器、宿主机器操作系统的基础上创建虚拟层、虚拟化的操作系统、虚拟化的仓库,然后再安装应用;容器,在宿主机器、宿主机器操作系统上创建Docker引擎,在引擎的基础上再安装应用。特性容器虚拟机启动秒级分钟级硬盘使用一般为MB一般为GB性能接近原生弱于系统支持量单机支持上千个容器一般几十个。

Linux安装MongoDB教程

将解压后的 mongodb-linux-x86_64-rhel70-4.2.23 中的所有文件全部移动到 /usr/local/mongodb 中 :注意/*是所有子文件。也可以不用设置环境变量进行启动,但是不设置环境变量启动的话要每次启动写很多启动参数,比较麻烦,所以做好配置环境变量。在 mongodb 下创建 data 和 logs 目录,以及日志文件mongodb.log。在 /usr/local 目录中创建 mongodb 文件夹。启动 MongoDB(-conf 使用配置文件方式启动)

Linux之后台执行命令:nohup和&的使用

如果不将 nohup 命令的输出重定向,输出将附加到当前目录的 nohup.out 文件中。command>out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。2>&1是将标准错误(2)重定向到标准输出(&1),标准输出(&1)再被重定向输入到out.file文件中。作业在后台运行的时候,可以把输出重定向到某个文件中,相当于一个日志文件,记录运行过程中的输出。将sh test.sh任务放到后台,但是依然可以使用标准输入,

CentOS 7 设置 Jar包、MinIO、Nginx 开机自启动

根据需要,自己修改 Description 和 ExecStart 的内容即可(ExecStart后面的java命令需要全路径)ExecStart 服务运行执行的命令,放上面创建的脚本位置。[Install] 服务安装的相关设置,可设置为多用户。如果用 yum install 命令安装的,如果使用源码手动编译的则需要手动创建。文件,xxx 就是自定义的服务名称。After:设置在某个服务启动后启动。Description:服务的描述。可以使用这个命令来查看服务启动日志。里面的环境变量是必须的,将。

Linux系统中Java new Date()的时间和系统时间不一致

出现问题:new Date(),的时间和当前时间不一样,发现差了8小时,看到8小时就应该明白了,时区的问题。

linux中&和&&,|和||及分号(;)的用法

在linux中,我们经常会用到&和&&,|和||及分号,但是好多人对其会混淆,不明白其中的意思,今天为大家讲解一下&和&&,|和||及分号(;)各自的说明和用法。

docker-宿主机与容器的命令执行方法

宿主机命令容器执行程序、容器命令宿主机执行程序的方法。

Nginx实战 | 高性能HTTP和反向代理神器Nginx前世今生,以及它的“繁花之境”

Nginx 的历史可以追溯到 1990 年代末期,当时互联网开始迅速发展,传统的 HTTP 服务器如 Apache 开始显得力不从心,无法满足日益增长的访问量和并发请求。Nginx 的设计理念是追求极高的性能和稳定性,同时还具有较低的内存消耗和资源占用,这使得它能够处理大量并发请求,非常适合于需要处理高负载的服务器环境。通过这些测试和优化方法,你可以了解 Nginx 的性能瓶颈,并采取相应的措施来提高其性能。Nginx 的测试和优化可以通过多种方式进行,包括负载测试、性能测试、配置优化和代码级优化。