linux du 排除文件系统,Linux文件系统管理 常见命令df、du、fsck、dumpe2fs

本文详细介绍了Linux系统中用于文件系统管理的几个重要命令:df用于查看已挂载文件系统的使用情况,du用于统计目录或文件的磁盘占用空间,fsck用于检测和修复文件系统,dumpe2fs则用于显示文件系统的详细信息。通过这些命令,系统管理员可以有效地监控和维护Linux文件系统的健康状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概述

Linux文件系统管理 常见命令df、du、fsck、dumpe2fs。

文件系统查看命令:df

通过 df 命令可以査看已经挂载的文件系统的信息包括设备文件名、文件系统总大小、已经使用的大小、剩余大小、使用率和挂载点等。df 命令格式如下:

[root@localhost ~]# df [选项] [挂载点或分区设备文件名]

选项:

选项

选项说明

-a

显示所有文件系统信息,包括特殊文件系统,如 /proc、/sysfs

-h

使用习惯单位显示容量,如 KB、MB 或 GB 等

-T

显示文件系统类型

-m

以 MB 为单位显示容量

-k

以 KB 为单位显示容量。默认以 KB 为单位

1. 显示系统内的文件系统信息

[root@localhost ~]# df

文件系统 块 已用 可用 已用% 挂载点/dev/sda1 194235 135531 44368 76% /boot 、

#内存虚拟出来的磁盘空间

tmpfs934328 100 934228 1% /dev/shm

说明一下命令的输出结果。

第一列

第二列

第三列

第四列

第五列

第六列

设备文件名

文件系统总大小,默认以 KB 为单位

已用空间大小

未用空间大小

空间使用百分比

文件系统的挂载点

2. 带选项查询系统内的文件系统信息

#-a显示特殊文件系统,这些文件系统几乎都是保存在内存中的,如/proc。因为是挂载在内存中的,所以占用量是0

#-h单位不再只用KB,而是换算成习惯单位

#-T多出了文件系统类型一列

[root@localhost ~]# df -ahT

文件系统 类型 容量 已用 可用 已用% 挂载点

sysfs sysfs0 0 0 - /sys

proc proc0 0 0 - /proc

tmpfs tmpfs 913M 100K 913M1% /dev/shm

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

configfs configfs0 0 0 - /sys/kernel/config/dev/sda1 ext4 190M 133M 44M 76% /boot/dev/sr0 iso9660 4.1G 4.1G 0 100% /run/media/lizhouwei/CentOS 7x86_64

........省略部分输出.........

统计目录或文件所占磁盘空间大小:du

du 是统计目录或文件所占磁盘空间大小的命令。需要注意的是,使用"ls -l"命令是可以看到文件的大小的。但是在使用"ls -l"命令査看目录大小时,目录的大小多数是 4KB,这是因为目录下的子目录名和子文件名是保存到父目录的 block(默认大小为 4KB)中的,如果父目录下的子目录和子文件并不多,一个 block 就能放下,那么这个父目录就只占用了一个 block 大小。

但是我们在统计目录时,不是想看父目录下的子目录名和子文件名到底占用了多少空间,而是想看父目录下的子目录和子文件的总磁盘占用量大小,这时就需要使用 du 命令才能统计目录的真正磁盘占用量大小。

du 命令的格式如下:

[root@localhost ~]# du [选项] [目录或文件名]

选项:

选项

选项说明

-a

显示每个子文件的磁盘占用量。默认只统计子目录的磁盘占用量

-h

使用习惯单位显示磁盘占用量,如 KB、MB 或 GB 等

-s

统计总磁盘占用量,而不列出子目录和子文件的磁盘占用量

1. 统计当前目录的总磁盘占用量大小

同时会统计当前目录下所有子目录的磁盘占用量大小,不统计子文件磁盘占用量的大小。默认单位为KB

[root@localhost ~]# du4 ./.config/abrt8 ./.config8 ./.cache/abrt12 ./.cache76 .

2.统计当前目录总大小

统计当前目录的总大小,同时会统计当前目录下所有子文件和子目录磁盘占用量的大小。默认单位为 KB

[root@localhost ~]# du -a4 ./anaconda-ks.cfg4 ./.viminfo4 ./.bash_history4 ./.bashrc4 ./.config/abrt8 ./.config4 ./.bash_profile8 ./.cache/abrt12 ./.cache4 ./.bash_logout76.

…省略部分输出…

3. 只统计磁盘占用量总的大小,同时使用习惯单位显示

[root@localhost ~]# du -sh

[root@localhost ~]# du -sh

76K .

du命令和df命令的区别

使用 du 命令和 df 命令去统计分区的使用情况时,得到的数据是不一样的。那是因为df命令是从文件系统的角度考虑的,通过文件系统中未分配的空间来确定文件系统中已经分配的空间大小。也就是说,在使用 df 命令统计分区时,不仅要考虑文件占用的空间,还要统计被命令或程序占用的空间(最常见的就是文件已经删除,但是程序并没有释放空间)。

而 du 命令是面向文件的,只会计算文件或目录占用的磁盘空间。也就是说,df 命令统计的分区更准确,是真正的空闲空间。

检测和修复文件系统命令:fsck

计算机系统难免会因为人为的误操作或系统的原因而出现死机或突然断电的情况,这种情况下非常容易造成文件系统的崩溃,严重时甚至会造成硬件损坏。这也是我们一直在强调的服务器一定要先关闭服务再进行重启的原因所在。

如果真出现了文件系统损坏的情况, fsck 命令就是用来进行文件系统检侧与修复的。

fsck 命令格式如下:

[root@localhost ~]# fsck [选项] 分区设备文件名

选项:

选项

选项说明

-t

文件系统:指定分区的文件系统

-A

按照配置文件 /etc/fstab 检查所有分区

-a

不用显示用户提示,自动修复文件系统

-C

显示检查分区的进度条

-f

强制检测。一般 fsck 命令如果没有发现分区有问题,则是不会检测的。如果强制检测,那么不管是否发现问题,都会检测

-y

自动修复。和 -a 作用一致,不过有些文件系统只支持 -y

1. 修复某个分区

如果想要自动修复修复某个分区,则只需执行如下命令:

[root@localhost ~]#fsck -y /dev/sdb1

显示磁盘状态命令:dumpe2fs

命令:

[root@localhost ~]# dumpe2fs /dev/sda1dumpe2fs1.42.9 (28-Dec-2013)Filesystem volume name:#卷标名

Last mounted on:/boot #挂载点

Filesystem UUID: b71bedac-fe5d-411b-a67a-3d8a7d0d2c65

Filesystem magic number:0xEF53Filesystem revision #:1(dynamic)

Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent 64bit flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize

Filesystem flags: signed_directory_hash

Default mount options: user_xattr acl #挂载参数

Filesystem state: clean #文件系统状态,正常

Errors behavior: Continue

Filesystem OS type: Linux

Inode count:51200#inode总数

Block count:204800#块总数

Reserved block count:10240Free blocks:58704Free inodes:50862First block:1Block size:1024#块大小

Fragment size:1024Group descriptor size:64Reserved GDT blocks:256Blocks per group:8192Fragments per group:8192Inodes per group:2048Inode blocks per group:256Flex block group size:16Filesystem created: Mon Nov5 20:06:30 2018Last mount time: Sun Nov18 08:30:31 2018Last write time: Sun Nov18 08:30:31 2018Mount count:6Maximum mount count:-1Last checked: Mon Nov5 20:06:30 2018Check interval:0 ()

Lifetime writes:197MB

Reserved blocks uid:0(user root)

Reserved blocks gid:0(group root)

First inode:11Inode size:128Journal inode:8Default directory hash: half_md4

Directory Hash Seed: bda20e55-b95f-48f1-a723-2fe197bd2e78

Journal backup: inode blocks

Journal features: journal_64bit

Journal size: 4096k

Journal length:4096Journal sequence:0x0000017dJournal start:1Group0: (Blocks 1-8192) [ITABLE_ZEROED] #第一组的内容

Checksum0x1300, unused inodes 1710 #校验和0x1300,1710外未使用的inodePrimary superblock at1, Group descriptors at 2-3Reserved GDT blocksat4-259 #保留的GDT块位于1-259Block bitmap at260 (+259), Inode bitmap at 276 (+275)

Inode table at292-547 (+291)3773 free blocks, 1710 free inodes, 9 directories, 1710unused inodesFree blocks:4420-8192 可用块数:4420-8192Free inodes:339-2048

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值