首页 > 系统相关 >Linux磁盘-磁盘操作命令

Linux磁盘-磁盘操作命令

时间:2024-07-16 23:30:16浏览次数:20  
标签:文件 显示 df 磁盘操作 文件系统 Linux 磁盘 du

作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。

Linux磁盘涉及到的命令不是很多,但是在实际运维中的作用却很大,因为Linux系统及业务都会承载到硬盘上。如果磁盘使用和配置不合理,可能会引起系统无法启动或者业务系统无法提供预期的服务。

主要从以下几个方面来介绍:

1.分区介绍

2.创建分区

3.MBR&GPT

4.格式化&挂载

5.inode&硬连接

6.磁盘操作命令(本章节)

7.小结

df 命令

df 命令(磁盘空间使用情况查询)是一个常用于查看文件系统磁盘空间使用情况的命令。它能够显示指定文件系统的总空间、已使用空间、可用空间以及使用率等信息。

基本用法

基本的 df 命令使用格式如下:

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

如果不指定文件或目录,则默认显示所有挂载的文件系统的磁盘空间使用情况。

常用选项

以下是常用的 df 命令选项:

  • -h:以人类可读的方式显示输出结果,使用 K(千字节)、M(兆字节)、G(吉字节)等单位。

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

  • -i:显示 inode 的使用情况而不是磁盘块的使用情况。

  • -t <文件系统类型>:仅显示指定文件系统类型的信息。

  • -x <文件系统类型>:排除指定文件系统类型的信息。

示例

1. 显示所有文件系统的磁盘空间使用情况(以人类可读的格式):

df -h//最常用的命令

示例输出:​​​​​​​

文件系统        容量  已用  可用 已用% 挂载点/dev/sda2        20G  1.8G   18G   10% //dev/sda1       497M  124M  374M   25% /boot

这里列出了两个文件系统(/dev/sda1 和 /dev/sda2)的信息,包括总大小、已用空间、可用空间和使用率。

2. 仅显示特定类型的文件系统(比如 ext4 文件系统):

df -t ext4

3. 显示指定目录的文件系统磁盘空间使用情况:

df -h /home/user

这会显示 /home/user 目录所在的文件系统的使用情况。

注意事项

  • df 命令显示的信息依赖于文件系统的挂载状态和权限,通常需要以管理员或超级用户权限运行以获得完整的信息。

  • 使用 -h 选项可以更方便地查看磁盘空间使用情况,以人类可读的格式显示。

  • df 命令用于快速查看文件系统的整体状况,特别是在管理存储空间、排查空间不足问题时非常有用。

du 命令

du 命令用于查看目录或文件的磁盘使用情况,即显示指定路径下文件和目录的磁盘使用量。它可以帮助你快速了解文件或目录占用的存储空间大小。

基本用法

基本的 du 命令使用格式如下:

du [选项] [文件或目录]

如果不指定文件或目录,则默认显示当前目录(.)的磁盘使用情况。

常用选项

以下是常用的 du 命令选项:

  • -h:以人类可读的方式显示输出结果,使用 K(千字节)、M(兆字节)、G(吉字节)等单位。

  • -s:仅显示总计信息,而不显示每个文件或目录的详细大小。

  • -c:同时显示所有列出的目录或文件的总计大小。

  • -a:显示所有文件和目录的大小,而不仅仅是目录。

  • -k:以 KB 单位显示磁盘使用量,这是默认的单位。

示例

1. 显示当前目录及其子目录的磁盘使用情况(以人类可读的格式):​​​​​​​

du -h//显示内容太多,一般不怎么用

示例输出:​​​​​​​

4.0K    ./file1.txt8.0K    ./folder112K     ./folder220K     .

这里显示了当前目录下各个文件和子目录的大小,以及总计(最后一行)。

2. 显示特定目录或文件的磁盘使用情况(以人类可读的格式):​​​​​​​

du -sh /home/user/docs//最常用的统计指定目录或者分区的大小

这会显示 /home/user/docs 目录及其子目录的大小。

3. 显示目录的总计大小,包括所有子目录和文件:

du -sh *

这将显示当前目录下所有子目录和文件的总大小。

4. 显示目录或文件的详细大小并按大小排序:

du -ah | sort -rh

这条命令将详细显示当前目录下所有文件和子目录的大小,并按照从大到小的顺序排序显示。

注意事项

  • du 命令计算磁盘使用量时,默认只统计文件的物理大小,而不包括间接块、块大小或磁盘分配的大小。

  • 使用 -h 选项可以更方便地查看磁盘使用情况,以人类可读的格式显示。

  • du 命令通常用于快速评估目录或文件占用的存储空间,特别是在管理磁盘空间、查找大文件或清理存储空间时非常有用。

总结

这2个命令都是对磁盘检查或者使用情况统计的情况

1.df 是从文件系统来统计的,du是从文件来统计的,正常的情况下这这种统计数据是很接近的,有两种意外情况。

2.df 使用量远大于du统计数据量,这个问题是文件句柄未释放,重启系统可以解决,不重启解决问题后面单独再讲。

3.du统计数量已经超过df看到的磁盘总量,比如磁盘20G,du统计出来有25G,这个时候可以添加-x参数就可以规避掉这个问题(主要出现在有Docker的环境)

图片

4.df -h 如果卡住不输出,那么这个系统肯定是有问题的(常出现在nfs客户端,这个时候nfs服务端挂掉,nfs客户端执行这个命令就会卡住)。

这3个问题也是再统计磁盘当中最常见的问题,尤其是df大于du最为常见。

关注微信公众号《运维小路》获取更多内容。

标签:文件,显示,df,磁盘操作,文件系统,Linux,磁盘,du
From: https://blog.csdn.net/dessler/article/details/140479486

相关文章

  • Linux磁盘-MBR&GPT
    作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。Linux磁盘涉及到的命令不是很多,但是在实际运维中的作用却很大,因为Linux系统及业务都会承载到硬盘上。如果磁盘使用和配置不合理,可能会引起系统无法启......
  • Linux多线程
    目录一、认识线程1.1线程的概念1.2线程vs进程1.3地址空间详解二、线程函数 2.1pthread_create 线程创建函数2.2pthread库的引入2.3pthread_exit线程退出函数2.4pthread_cancel线程退出函数2.5 pthread_join线程等待函数2.6pthread_detach线程分离......
  • Linux自己制作rpm包
    制作rpm包由源码包---->rpm包安装制作rpm包工具包rpm-build在制作过程中需要源码包和配置文件rpmbuild制作rpm包的原理:1、首先rpmbuild会先将源码包进行编译安装2、再将编译安装好的文件打包为rpm包#安装rpm-buildyuminstall-yrpm-build#执行rpmbuild,虽然目前执......
  • Linux 【disk】磁盘管理
    Linux磁盘管理好坏直接关系到整个系统的性能问题。Linux磁盘管理常用三个命令为df、du和fdiskdf:diskfree:列出文件系统的整体磁盘使用量du:diskused:检查磁盘空间使用量fdisk:用于磁盘分区磁盘管理磁盘分区-->格式化(获得文件系统)-->挂载磁盘的分类:SCSI硬盘......
  • Linux 【systemctl 】服务管理器
    1.start/stop#启动一个服务并在后台运行它systemctlstart[service]#停止当前正在运行的服务systemctlstop[service]#停止正在运行的服务,然后重新启动它systemctlrestart[service]#-------------------------------#示例:开启sshd服务systemctlstartsshd#示例:......
  • Linux基础命令
    1.pwd查看当前所在目录(用处:拷贝目录到一些配置文件)2.cd切换目录(需要到特定的目录执行命令),用法:cd目录名:进入指定目录绝对路径,相对路径./当前../上一级cd..:退回上一级cd~:切到用户home目录3.tab补全文件名或者命令4.ls/ll=ls-al查看目录文件信息ls......
  • 基于Linux的Flappy bird游戏开发
    gitee源码获取链接:一、项目功能按下空格键小鸟上升,不按空格键小鸟下降。搭建小鸟需要穿过的管道。管道自动左移和创建。小鸟与管道碰撞游戏结束。二、知识储备C语言。数据结构——链表。Ncurses库。信号机制。三、项目框图四、Ncurses库问题引入?如何显示游戏界......
  • 服务器上数据定时同步到网络磁盘
    背景:由于权限问题无法将网络磁盘直接挂载到HPC上,但是可以挂载到本地,解决思路是通过rsyncd进行同步,每次同步的时候都将网络磁盘挂载到本地。我想把服务器上/home/s222552331/LUTO2_XH/Custom_runs/下的文件同步到网络磁盘的z/LUF-Modelling/LUTO2_XH/LUTO2/output一、Window本地操......
  • Linux命令行指令大全(Ⅰ)
    前言:     首先,我们需要明白为什么要掌握linux命令行指令。因为在日常生活中我们最为熟悉的还是windows操作系统和IOS操作系统,所以为了能对Linux操作系统可以更方便的使用,所以我们需要掌握相关的指令来让开发的过程更加便捷。    此外在本文中像ls,cd,pwd这几个......
  • Linux安装mongodb
    1.安装包下载wgethttps://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.27.tgz2.安装和启动2.1解压tar-zxvfmongodb-linux-x86_64-rhel70-4.0.27.tgz2.2将解压后的目录移动到/usr/local目录下,并改名为mongodbmvmongodb-linux-x86_64-rhel7......