Skip to content

磁盘查看和分区

常见的Linux管理操作和命令行操作

1. du 查看文件和目录占用的磁盘空间

du: disk usage 磁盘占用情况
基本语法: du 目录/文件 (功能描述:显示目录下每个子目录的磁盘使用情况)

选项功能
-h以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
-a不仅查看子目录大小,还要包括文件
-c显示所有的文件和子目录大小后,显示总和
-s只显示总和
--max-depth=n指定统计子目录的深度为第 n 层
sh
## 查看当前用户主目录占用的磁盘空间大小
[root@hadoop100 ~]# du -sh
## 查看/目录占用情况
[root@hadoop100 /]# du -ah --max-depth=1 /
128M    /boot
0    /dev
du: 无法访问"/proc/55920/task/55920/fd/4": 没有那个文件或目录
du: 无法访问"/proc/55920/task/55920/fdinfo/4": 没有那个文件或目录
du: 无法访问"/proc/55920/fd/3": 没有那个文件或目录
du: 无法访问"/proc/55920/fdinfo/3": 没有那个文件或目录
0    /proc
7.7M    /run
0    /sys
36M    /etc
32K    /root
307M    /var
1.0M    /tmp
1.2G    /usr
0    /bin
0    /sbin
0    /lib
0    /lib64
20K    /home
0    /media
0    /mnt
0    /opt
0    /srv
1.7G    /

1.1 查找linux下占用空间最大的文件

sh
# 先看看根目录下面
du -sh /* 
[root@hadoop103 ~]# du -sh /*
0       /bin
129M    /boot
0       /dev
36M     /etc
116K    /home
0       /lib
0       /lib64
0       /media
0       /mnt
15G     /opt
0       /proc
36K     /root
20M     /run
0       /sbin
0       /srv
0       /sys
192K    /tmp
1.5G    /usr
630M    /var
# 发现/opt占用磁盘较大,接着我们看opt目录
du -sh /opt/*
15G     /opt/module
662M    /opt/software

2. df 查看磁盘空间使用情况

df: disk free 空余磁盘

基本语法

df 选项 (功能描述:列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占用情况) 选项说明:-h 以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;

sh
## 查看磁盘使用情况
[root@hadoop100 /]# df -h
文件系统        容量  已用  可用 已用% 挂载点
devtmpfs        476M     0  476M    0% /dev
tmpfs           487M     0  487M    0% /dev/shm
tmpfs           487M  7.7M  479M    2% /run
tmpfs           487M     0  487M    0% /sys/fs/cgroup
/dev/sda3        21G  1.7G   19G    9% /
/dev/sda1       497M  153M  344M   31% /boot
tmpfs            98M     0   98M    0% /run/user/0

tempfs是内存、虚拟内存中的文件

3. lsblk 查看设备挂载情况

lsblk: list block 列出块设备

基本语法

lsblk (功能描述:查看设备挂载情况) 选项说明:-f 查看详细的设备挂载情况,显示文件系统信息

sh
## 列出块设备挂载情况
[root@hadoop100 /]# lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   25G  0 disk 
├─sda1   8:1    0  500M  0 part /boot
├─sda2   8:2    0    4G  0 part [SWAP]
└─sda3   8:3    0 20.5G  0 part /
sr0     11:0    1 1024M  0 rom

sr0就是光盘

sh
[root@hadoop100 ~]# vi /etc/hostname

4. mount/umount 挂载/卸载

对于Linux用户来讲,不论有几个分区,分别分给哪一个目录使用,它总归就是一个根目录、一个独立且唯一的文件结构。Linux中每个分区都是用来组成整个文件系统的一部分,它在用一种叫做"挂载"的处理方法,它整个文件系统中包含了一整套的文件和目录,并将一个分区和一个目录联系起来,要载入的那个分区将使它的存储空间在这个目录下获得。

基本语法

mount [-t vfstype] [-o options] device dir (功能描述:挂载设备)

umount 设备文件名或挂载点 (功能描述:卸载设备)

参数功能
-t vfstype指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有:光盘或光盘镜像:iso9660DOS fat16 文件系统:msdosWindows 9x fat32 文件系统:vfatWindows NT ntfs 文件系统:ntfsMount Windows 文件网络共享:smbfsUNIX(LINUX) 文件网络共享:nfs
-o options主要用来描述设备或档案的挂接方式。常用的参数有:loop:用来把一个文件当成硬盘分区挂接上系统ro:采用只读方式挂接设备rw:采用读写方式挂接设备iocharset:指定访问文件系统所用字符集
device要挂接(mount)的设备
dir设备在系统上的挂接点(mount point)
sh
## sr0 光驱设备其实就是/dev/cdrom  
[root@hadoop100 /]# ls /dev/cdrom/
ls: 无法访问/dev/cdrom/: 不是目录
## 挂载光盘镜像文件 建立挂载点cdrom
[root@hadoop100 /]# mkdir /mnt/cdrom/ 
## 挂载到挂载点: /mnt/cdrom 中
[root@hadoop100 /]# mount -t iso9660 /dev/cdrom /mnt/cdrom/
mount: /dev/sr0 写保护,将以只读方式挂载 
[root@hadoop100 /]# ls /mnt/cdrom/
CentOS_BuildTag  EFI  EULA  GPL  images  isolinux  LiveOS  Packages  repodata  RPM-GPG-KEY-CentOS-7  RPM-GPG-KEY-CentOS-Testing-7  TRANS.TBL
## 卸载光盘镜像文件
[root@hadoop100 /]# umount /mnt/cdrom

可以知道直接访问设备不能看到信息,挂载之后就可以访问。

设置开机自动挂载:

修改/etc/fstab文件, 添加以下内容,保存退出。

/dev/cdrom /mnt/cdrom iso9660 defaults 0 0

其中后面两个0: 第一个0 表示是否dump(磁盘备份), 第二个0 表示是否开机磁盘检查

5. fdisk 分区

基本语法 fdisk -l (功能描述:查看磁盘分区详情) 选项说明: -l 显示所有硬盘的分区列表
fdisk 硬盘设备名 (功能描述:对新增硬盘进行分区操作)

警告

该命令必须在 root 用户下才能使用

sh
[root@hadoop100 /]# fdisk -l

磁盘 /dev/sda:26.8 GB, 26843545600 字节,52428800 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000c62d6

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     1026047      512000   83  Linux
/dev/sda2         1026048     9414655     4194304   82  Linux swap / Solaris
/dev/sda3         9414656    52428799    21507072   83  Linux