我用来演示的系统使用CentOS Linux release 7.9.2009 (Core),内核版本是3.10.0-1160.71.1.el7.x86_64。
 
fdisk
fdisk -l可以查看分区,因为我这里使用的不是root用户,所以前边加上sudo。
 
 可以看到当前只有sda一块磁盘,第二磁盘叫做sdb,第三块磁盘叫做sdc,这样以此类推。
ls -l /dev/sd?可以看一下以sd+另外一个字符开头的块设备。
 
 一般块设备的权限不要更改,因为系统需要使用。图中8, 0,8代表主设备号,表示什么样的驱动程序;0代表从设备号,表示地址开始的位置。
ls -l /dev/sd??可以看到sda划分了两个分区,而sda最多只能划分15个分区。
 
sudo fdisk -l可以查看分区,下边解释一下含义。
 
Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors,21GB是磁盘总大小,21474836480是磁盘总大小换算成字节,41943040是扇区总量。
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    41943039    19921920   8e  Linux LVM
Start列是每个分区开始的扇区,End列是每个分区结束的扇区。
 System是扇区分类,LVM是逻辑卷。
 Boot列有*的表示系统从这个扇区启动。
parted
sudo parted -l看到的内容跟fdisk -l基本上一样,只是显示的格式不一样。
 
df
sudo df -h可以看到文件大小(Size)、使用大小(Used)、可用大小(Avail)、使用量占比(Use%)和挂载点(Mounted on)。

ls
ls -lh 文件名也可以看到文件的大小。
 
du
du -h 文件名可以查看文件的实际大小。
 
dd
dd的作用是以块为大小,有可能进行转化地将一个文件里边的内容复制到另一个文件里边。
 dd if=/dev/zero bs=4M count=10 of=outputfiletest就是把if后边跟着的文件,以count个bs大小内容复制到of里边,针对这个简单的示例说明一下,就是把/dev/zero文件中复制10个4M大小内容到outputfiletest。
 
可以看到ls -lh outputfiletest和du -h outputfiletest显示的文件大小是一样的,说明outputfiletest不是一个空洞文件。
 
dd if=/dev/zero bs=4M count=10 seek=20 of=holefile,这个会创建一个30块4M的空洞文件,但是前边20(seek的数值)块,每块4M为文件空洞。
 
ls -lh holefile看到的文件大小为120M,记录从文件开始到结束的大小。du -h holefile显示出来的文件大小为40M,显示实际大小。
 
此文章为7月Day 3学习笔记,内容来源于极客时间《Linux 实战技能 100 讲》。



















