在服务器管理中,我们会关心硬盘用了多少,还有多少剩余空间,哪些文件占用空间最大等等。以便我们在合适的时机为服务器添加硬盘分区以及管理磁盘文件等操作,让磁盘的利用率最大化,现在我们看下linux系统中和磁盘相关的操作命令。

Linux磁盘管理常用三个命令为df、du和fdisk。

  • df:列出文件系统的整体磁盘使用量
  • du:检查磁盘空间使用量
  • fdisk:用于磁盘分区

df:查看磁盘分区的使用状况。

主要参数

  • l :仅显示本地磁盘(默认参数)。
  • a :显示所有文件系统的磁盘使用情况,包括0字节分区比如/proc/ 。
  • h :以1024进制计算最合适的单位显示磁盘容量 。
  • H :以1000进制计算最合适的单位显示磁盘容量。
  • T :显示磁盘分区类型。
  • t :显示指定类型文件系统的磁盘分区。
  • X :不显示指定类型文件系统的磁盘分区,和上面参数t互逆。

- 先看下df命令什么参数都不加默认显示的效果。

[root@localhost tmp]# df
文件系统 1K-块 已用 可用 已用% 挂载点
/dev/mapper/centos-root % /
devtmpfs % /dev
tmpfs % /dev/shm
tmpfs % /run
tmpfs % /sys/fs/cgroup
/dev/sda1 % /boot
/dev/mapper/centos-home % /home
.host:/ % /mnt/hgfs
tmpfs % /run/user/
tmpfs % /run/user/

加上参数a可以查看到更完整的磁盘信息,包括0字节分区

[root@localhost tmp]# df -a
文件系统 1K-块 已用 可用 已用% 挂载点
rootfs % /
sysfs - /sys
proc - /proc
devtmpfs % /dev
securityfs - /sys/kernel/security
tmpfs % /dev/shm
devpts - /dev/pts
tmpfs % /run
tmpfs % /sys/fs/cgroup
cgroup - /sys/fs/cgroup/systemd
pstore - /sys/fs/pstore
cgroup - /sys/fs/cgroup/blkio
cgroup - /sys/fs/cgroup/devices
cgroup - /sys/fs/cgroup/cpuset
cgroup - /sys/fs/cgroup/perf_event
cgroup - /sys/fs/cgroup/memory
cgroup - /sys/fs/cgroup/cpu,cpuacct
cgroup - /sys/fs/cgroup/pids
cgroup - /sys/fs/cgroup/freezer
cgroup - /sys/fs/cgroup/net_cls,net_prio
cgroup - /sys/fs/cgroup/hugetlb
configfs - /sys/kernel/config
/dev/mapper/centos-root % /
systemd- - /proc/sys/fs/binfmt_misc
mqueue - /dev/mqueue
hugetlbfs - /dev/hugepages
debugfs - /sys/kernel/debug
/dev/sda1 % /boot
/dev/mapper/centos-home % /home
.host:/ % /mnt/hgfs
tmpfs % /run/user/
tmpfs % /run/user/
binfmt_misc - /proc/sys/fs/binfmt_misc

上面显示分区大小不够直观,可以使用h参数

[root@localhost tmp]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 38G 29G .5G % /
devtmpfs 902M 902M % /dev
tmpfs 912M 80K 912M % /dev/shm
tmpfs 912M 98M 815M % /run
tmpfs 912M 912M % /sys/fs/cgroup
/dev/sda1 497M 174M 324M % /boot
/dev/mapper/centos-home 19G 33M 19G % /home
.host:/ 133G 38G 96G % /mnt/hgfs
tmpfs 183M 12K 183M % /run/user/
tmpfs 183M 183M % /run/user/

如果想看各个分区的文件类型使用T参数,下面就多了一列。

[root@localhost tmp]# df -hT
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 38G 29G .5G % /
devtmpfs devtmpfs 902M 902M % /dev
tmpfs tmpfs 912M 80K 912M % /dev/shm
tmpfs tmpfs 912M 98M 815M % /run
tmpfs tmpfs 912M 912M % /sys/fs/cgroup
/dev/sda1 xfs 497M 174M 324M % /boot
/dev/mapper/centos-home xfs 19G 33M 19G % /home
.host:/ vmhgfs 133G 38G 96G % /mnt/hgfs
tmpfs tmpfs 183M 12K 183M % /run/user/
tmpfs tmpfs 183M 183M % /run/user/

du:统计磁盘文件大小。
       主要参数

  • b: 以byte为单位统计文件。
  • k :以KB为单位统计文件.
  • m: 以MB为单位统计文件.
  • h :按照1024进制以最适合的单位统计文件。
  • H: 按照1000进制以最适合的单位统计文件。
  • s :指定统计目标

du不加参数会把当前目录下文件遍历一遍,列出目录中所有文件的大小。

[root@localhost tmp]# du
./.X11-unix
./.ICE-unix
./.XIM-unix
./.font-unix
./.Test-unix
./systemd-private-121552bb5e694455a1422768087037e1-rtkit-daemon.service-hgj6sf/tmp
./systemd-private-121552bb5e694455a1422768087037e1-rtkit-daemon.service-hgj6sf
./systemd-private-121552bb5e694455a1422768087037e1-colord.service-tycXc0/tmp

统计某个目录或者文件大小加上s参数后面跟上目录或者文件名。

root@localhost tmp]# du -s vmware-tools-distrib
vmware-tools-distrib

也可以用对人友好的方式显示大小

[root@localhost tmp]# du -skh vmware-tools-distrib
2.1M vmware-tools-distrib

查看某个后缀的文件大小

[root@localhost lib]# du -sh *.js
12K assert.js
28K buffer.js
28K child_process.js
20K cluster.js
.0K console.js
.0K constants.js
20K crypto.js
40K _debugger.js
12K dgram.js

检查目录底下每个目录所占用的容量

[root@172.16.0.55:/opt/case/frame/vendor → test]$ du -smh ./*
4.0K ./autoload.php
48K ./composer
64K ./jichupingtai

fdisk:linux磁盘分区表操作工具

  列出所有分区信息

[root@172.16.0.55:/opt/case/frame → test]$ fdisk -l

Disk /dev/vda: 214.7 GB,  bytes
heads, sectors/track, cylinders
Units = cylinders of * = bytes
Sector size (logical/physical): bytes / bytes
I/O size (minimum/optimal): bytes / bytes
Disk identifier: 0x0002162a Device Boot Start End Blocks Id System
/dev/vda1 * Linux
Partition does not end on cylinder boundary.
/dev/vda2 Linux
Partition does not end on cylinder boundary.
/dev/vda3 Linux swap / Solaris
Partition does not end on cylinder boundary.
/dev/vda4 Extended
/dev/vda5 + Linux

linux磁盘分区特点:

主分区和扩展分区总数不能超过4个。

扩展分区最多只能有一个。

扩展分区不能直接存储数据。

blkid命令对查询设备上所采用文件系统类型进行查询

[root@localhost ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root
% /
tmpfs % /dev/shm
/dev/sda1 % /boot
/dev/mapper/VolGroup-lv_home
% /home
vagrant % /vagrant
alidata_www % /alidata/www
[root@localhost ~]# blkid /dev/sda1
/dev/sda1: UUID="0daf08fb-9df2-4124-a037-eaf1de267ff0" TYPE="ext4"
[root@172.16.0.55:/opt/case/frame → test]$ blkid
/dev/vda2: UUID="fd42d4a2-aaa9-4a82-ac78-2788c9d98a86" TYPE="ext4"
/dev/vda1: UUID="018586ca-97b7-442b-9e13-0d5980648462" TYPE="ext4"
/dev/vda3: UUID="7d2b22c9-608c-4e62-93a9-a815e8c6b886" TYPE="swap"
/dev/vda5: UUID="787a790a-1650-4278-bb83-9c27ae51605a" TYPE="ext4"

显示指定设备 UUID

[root@172.16.0.55:/opt/case/frame → test]$ blkid -s UUID /dev/vda2
/dev/vda2: UUID="fd42d4a2-aaa9-4a82-ac78-27d5c9d98a86"

显示所有设备 UUID

[root@172.16.0.55:/opt/case/frame → test]$ blkid -s UUID
/dev/vda2: UUID="fd42d4a2-aaa9-4a82-ac78-27d5c9d98a86"
/dev/vda1: UUID="018586ca-97b7-442b-9e13-0d5960648462"
/dev/vda3: UUID="7d2b22c9-608c-4e62-93a9-a815e4c6b886"
/dev/vda5: UUID="787a790a-1650-4278-bbf3-9c27ae51605a"

显示所有设备

[root@172.16.0.55:/opt/case/frame → test]$ blkid -o device
/dev/vda2
/dev/vda1
/dev/vda3
/dev/vda5

显示所有设备文件系统

[root@172.16.0.55:/opt/case/frame → test]$ blkid -s TYPE
/dev/vda2: TYPE="ext4"
/dev/vda1: TYPE="ext4"
/dev/vda3: TYPE="swap"
/dev/vda5: TYPE="ext4"

【Linux】linux磁盘管理的更多相关文章

  1. LINUX的磁盘管理du命令详解

    LINUX的磁盘管理du命令详解 du(disk usage)命令可以计算文件或目录所占的磁盘空间.没有指定任何选项时, 它会测量当前工作目录与其所有子目录,分别显示各个目录所占的快数,最后才显示工作 ...

  2. Linux命令——磁盘管理

    Linux命令--磁盘管理 命令df 作用:查看已挂载磁盘的总容量.使用容量.剩余容量等 参数:-i,查看inodes的使用状况 参数:-h,使用合适的单位显示(推荐) 命令du 作用:查看某个目录或 ...

  3. centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpfs ,nr_inodes, LVM,传统方式扩容文件系统 第七节课

    centos Linux下磁盘管理   parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpf ...

  4. Linux下磁盘管理命令df与du

    Linux下磁盘管理命令df与du  对磁盘进行查看和控制的两个linux命令,df和du.  一.du命令 首先看一下du的help说明: [root@misdwh opt]# du --help ...

  5. Linux RAID 磁盘管理

    Linux RAID 磁盘管理 RAID工作模式介绍:https://www.cnblogs.com/xiangsikai/p/8441440.html 本章主要讲解 Linux下 RAID5 与 R ...

  6. Linux命令-磁盘管理(二)

    Linux命令-磁盘管理(二) Linux mmount命令 Linux mmount命令用于挂入MS-DOS文件系统. mmount为mtools工具指令,可根据[mount参数]中的设置,将磁盘内 ...

  7. Linux命令-磁盘管理(一)

    Linux命令-磁盘管理(一) Linux cd命令 Linux cd命令用于切换当前工作目录至 dirName(目录参数). 其中 dirName 表示法可为绝对路径或相对路径.若目录名称省略,则变 ...

  8. linux 系统磁盘管理体系

    目录 linux 系统磁盘管理体系 一.磁盘的基本概念 二.磁盘的内部结构 三.磁盘的外部结构 四.磁盘的接口及类型 五.fdisk磁盘分区实践 六.gdisk 分区 七.parted 高级分区工具. ...

  9. linux 系统磁盘管理(主分区和逻辑分区)

    摘要:linux系统磁盘管理主分区和逻辑分区 1.linux系统分区应了解的常识 硬盘分区实质上是对硬盘的一种格式化,然后才能使用硬盘保存各种信息,在创建分区时,就已经设置好了硬盘的各项物理参数,指定 ...

  10. Linux系统磁盘管理

    1 Linux磁盘管理体系简介 Linux磁盘管理分为五个步骤:首先在服务器上添加相应的硬盘(如/dev/sda.sdb.sdc等),对全新的服务器(即没有操作系统)做硬RAID0.RAID1.RAI ...

随机推荐

  1. python里的def 方法中->代表什么意思?

    功能注释 函数注释是关于用户定义函数使用的类型的完全可选元数据信息(请参阅PEP 3107和 PEP 484了解更多信息). 注释__annotations__ 作为字典存储在函数的属性中,对函数的任 ...

  2. tools.sublime.ConvertToUTF8

    sublime乱码,GBK乱码,安装插件ConvertToUTF8 下载ConvertToUTF8,解压,文件夹命名为ConvertToUTF8 sublime->Preferences-> ...

  3. Educational Codeforces Round 63 选做

    D. Beautiful Array 题意 给你一个长度为 \(n\) 的序列.你可以选择至多一个子段,将该子段所有数乘上给定常数 \(x\) .求操作后最大的最大子段和. 题解 考虑最大子段和的子段 ...

  4. Arrays类常用方法

    Arrays类 3.1 概述 java.util.Arrays 此类包含用来操作数组的各种方法,比如排序和搜索等.其所有方法均为静态方法. 3.2 操作数组的方法 1.将参数数组变成字符串 publi ...

  5. pyhton中pandas数据分析模块快速入门(非常容易懂)

    //2019.07.16python中pandas模块应用1.pandas是python进行数据分析的数据分析库,它提供了对于大量数据进行分析的函数库和各种方法,它的官网是http://pandas. ...

  6. 《ES6标准入门》(阮一峰)--3.变量的解构赋值

    1.数组的解构赋值 基本用法 ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). 以前,为变量赋值,只能直接指定值. let a = 1; l ...

  7. Nachos-Lab1-完善线程机制

    Nachos是什么 Nachos (Not Another Completely Heuristic Operating System),是一个教学用操作系统,提供了操作系统框架: 线程 中断 虚拟内 ...

  8. python面试题整理(二)

    1.进程,线程,协程定义,有什么区别 进程是操作系统分配资源的最小单位,一个进程对应一块CPU 线程是进程中的某一个控制单元,是CPU调度的最小单元,线程之间相互独立,进程结束线程也会结束,一个进程至 ...

  9. (转载)wchar_t类型和char类型变量相互转换

    转载连接:https://www.cnblogs.com/zhangdewang/p/11420410.html和https://www.cnblogs.com/lanhaicode/p/105742 ...

  10. HDU_4965 Fast Matrix Calculation 2014多校9 矩阵快速幂+机智的矩阵结合律

    一开始看这个题目以为是个裸的矩阵快速幂的题目, 后来发现会超时,超就超在  M = C^(N*N). 这个操作,而C本身是个N*N的矩阵,N最大为1000. 但是这里有个巧妙的地方就是 C的来源其实 ...