from

引言:
  ①、分区的方式
    a)mbr分区:
      最多支持四个主分区、系统只能安装在主分区、扩展分区要占一个主分区、MBR最大支持2TB,但拥有最好的兼容性
    b)gtp分区:
      支持无限多个主分区(说是这么说,但是操作系统可能会限制,比如Windows下最多128个分区)、最大支持18EB的大容量、Windows7 64以后支持gtp

1)Linux分区

  ①、原理介绍

  Linux来说无论有几个分区,分给哪一个目录使用(挂载),他归根结底就只有一个根目录,一个独立且卫衣的文件结构,Linux中每个分区都是用来组成整个文件系统的一部分的。
  Linux采用了一种叫 “载入” 的处理方法,他的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录联系起来。
  简单来说,一个分区代表了一块具体的存储空间,Linux通过挂载的技术将这块空间挂载了一个具体的目录下面。
  原理图:
  Linux磁盘分区、挂载 - 图1
  ②、硬盘说明
  Linux硬盘分为IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘
  对于IDE硬盘,驱动器标识符为“hdx~”,其中“hd”表明分区所在设备的类型,这里是指IDE硬盘。“x”为盘号(x为a时为基本盘,为b时值辅助主盘,为d是辅助从属盘),“~”代表分区,前四个分区用数字1到4表示,他们是主分区或扩展分区,从5开始就是逻辑分区。比如:hda3 表示为第一个IDE硬盘上的第三个主分区或扩展分区,hdb2表示为第二个IDE硬盘上的第二个主分区或扩展分区。
  对于SCSI硬盘则标识符为“sdx~”,SCSI硬盘使用“sd”来表示分区所在设备的类型的,其余则和IDE硬盘的表示方法一样。

2)使用lsblk(老师不离开)指令查看当前系统的分区情况

  Linux磁盘分区、挂载 - 图2
  Linux磁盘分区、挂载 - 图3

3)挂载的经典案例【非常重要】

  需求:当目前的硬盘不够用时,就要尝试给Linux新增硬盘了,并且挂载到某一个具体的目录下面/home/newdisk
  原理:新增一块硬盘sdb1,并挂载到/home/newdisk,此时对/home/newdisk的操作其实就是在操作sdb1这块硬盘。
  Linux磁盘分区、挂载 - 图4
  ①、先增加一块硬盘
    a)虚拟机添加硬盘
  Linux磁盘分区、挂载 - 图5
  当添加硬盘后使用 lsblk -f 发现并没有叫sdb的硬盘,需要重启才能看到。
  Linux磁盘分区、挂载 - 图6
  Linux磁盘分区、挂载 - 图7
  此时的硬盘并没有分区,所以显示sdb 后面没有数字
    b)分区
      分区命令 fdisk /dev/sdb
      开始对/sdb分区
      m  显示命令列表
      
p  显示磁盘分区  与fdisk -l效果相同
      n  新增分区
      
d  删除分区
      *w  写入并退出
    书名分区命令后,输入n新增分区,然后选择p,分区类型为主分区。两次回车默认剩余全部空间,最后输入w写入分区并退出,若不保存退出输入q。
    Linux磁盘分区、挂载 - 图8
    Linux磁盘分区、挂载 - 图9
    此时就分区成功了
    c)格式化
    mkfs -t ext4 /dev/sdb1    ext4是分区命令
    d)挂载:将一个分区与一个目录联系起来
    mount 设备名 挂载目录
    例如:mount /dev/sdb1 /home/newdisk
    Linux磁盘分区、挂载 - 图10
    附:卸载:umount 设备名称 或者 挂载目录
      例如:umount /dev/sdb1 或者 umount /home/newdisk
    f) 设置自动挂载
     通过修改/etc/fstab实现自动挂载
     添加完成后,执行mount -a 即可生效
     Linux磁盘分区、挂载 - 图11
     至此。新增硬盘的挂载完成

4)磁盘情况查询

  ①、查询磁盘整体使用情况
    df -h指令
    Linux磁盘分区、挂载 - 图12
  ②、查询指定目录的擦盘占用情况
    du -【选项】 目录
    常用选项:-s  指定目录占用大小汇总
         -h  带计量单位
         -a  含文件
         —max-depth=1  子目录深度
         -c  列出明细的同时,增加汇总值
    Linux磁盘分区、挂载 - 图13
5)磁盘情况【工作实用】
  ①、统计/root文件夹下文件的个数
  Linux磁盘分区、挂载 - 图14
  ②、统计/home文件夹下目录的个数
  ls -l /home | grep “^d” | wc -l
  ③、统计/home文件夹下文件的个数,包括子文件夹下的
  ls -lR /home | grep “^-“ | wc -l
  ④、统计文件夹下目录的个数,包括子文件夹里的
  ls -lR /home | grep “^d” | wc -l
  ⑤、以树状显示目录结构
  tree