Linux磁盘分区、挂载

1、分区基础知识

1.1、分区的方式

1)、mbr分区:
(1)、最多支持四个主分区。
(2)、系统只能安装在主分区。
(3)、扩展分区要占一个主分区。
(4)、MBR最大只支持2TB,但拥有最好的兼容性。
2)、gtp分区:
(1)、支持无限多的主分区(但操作系统可能限制,比如windows下最多128个分区)。
(2)、最大支持18EB的大容量(1EB=1024PB,1PB=1024TB)。
(3)、windows7 64位以后支持gtp。

1.2、windows下的磁盘分区

2、Linux分区

2.1、原理介绍

1)、Linux来说无论有几个分区,分给哪一个目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构,Linux中每个分区都是用来组成整个文件系统的一部分。
2)、Linux采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录联系起来。这是要载入的一个分区将使它的存储空间在一个目录下获得。
3)、示意图


2.2、硬盘说明

1)、Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘。
2)、对于IDE硬盘,驱动器标识符为"hdx~",其中“hd”表明分区所在设备的类型,这里是指IDE硬盘了。“x”为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘),"~"代表分区,前四个分区用数字1到4表示,它们是主分区或扩展分区,从5开始就是逻辑分区。例,hda3表示为第一个IDE硬盘上的第三个主分区或扩展分区,hdb2表示为第二个IDE硬盘上的第二个主分区或扩展分区。
3)、对于SCSI硬盘则标识为“sdx~”,SCSI硬盘是用“sd”来表示分区所在设备的类型的,其余则和IDE硬盘的表示方法一样。

2.3、使用lsblk指令查看当前系统的分区情况

lsblk -f 或者lsblk

3、挂载的经典案例

需求是给我们的Linux系统增加一个新的硬盘,并且挂载到/home/newdisk目录下


3.1、如何增加一块硬盘

1)、虚拟机添加硬盘
2)、分区 fdisk/dev/sdb
3)、格式化 mkfs -t ext4 /dev/sdb1
4)、挂载 先创建一个/home/newdisk,挂载mount /dev/sdb1 /home/newdisk
5)、设置可以自动挂载(永久挂载,当你重启系统,仍然可以挂载到/home/newdisk).
vim /etc/fstab
添加内容为:

/dev/sdb1   /home/newdisk   ext4  defaults 0 0

4、具体的操作步骤整理

4.1、虚拟机增加硬盘步骤1

在【虚拟机】菜单中,选择【设置】,然后设备列表里添加硬盘,然后一路【下一步】,中间只有选择磁盘大小的地方需要修改,直到完成。然后重启系统(才能识别)。

4.2、虚拟机增加硬盘步骤2

分区命令 : fdisk /dev/sdb
开始对/sdb分区
常用选项:
m :显示命令列表
p :显示磁盘分区,同fdisk -l
n :新增分区
d :删除分区
w :写入并退出
说明:开始分区后输入n,新增分区,然后选择p,分区类型为主分区,两次回车默认剩余全部空间,最后输入w写入分区并退出,若不保存退出输入q。



4.3、虚拟机增加硬盘步骤3

格式化磁盘
分区命令:mkfs -t ext4 /dev/sdb1
其中ext4是分区类型


4.4、虚拟机增加硬盘步骤4

挂载:将一个分区与一个目录联系起来。
挂载:mount 设备名称 挂载目录
例如:mount /dev/sdb1 /newdisk
卸载:unmount 设备名称 或者 挂载目录
例如:unmount /dev/sdb1 或者umount /newdisk

4.5、虚拟机增加硬盘步骤5

永久挂载:通过修改/etc/fstab实现挂载
vim /etc/fstab

添加完成后 执行mount -a 即刻生效。

5、磁盘情况查询

5.1、查询系统整体磁盘使用情况

  • 基本语法
    df -h
  • 应用实例
    查询系统整体磁盘使用情况

5.2、查询指定目录的磁盘占用情况

  • 基本语法
    du -h /目录
    查询指定目录的磁盘占用情况,默认为当前目录
  • 其他参数:
    -s: 指定目录占用大小汇总
    -h : 带计量单位
    -a :含文件
    --max-depth=1 :子目录深度
    -c:列出明细的同时,增加汇总值
  • 应用实例
    查询/opt目录的磁盘占用情况,深度为1
    du -ach --max-depth=1 /opt

6、磁盘情况-工作实用指令

1)、统计/home文件夹下文件的个数
ls -l /home | grep "^-" | wc -l

2)、统计/home文件夹下目录的个数
ls -l /home | grep "^d" | wc -l

3)、统计/home文件夹下文件的个数,包括子文件夹里的。
ls -lR /home | grep "^-" | wc -l

4)、统计文件夹下目录的个数,包括子文件里的。
ls -lR /home | grep "^d" | wc -l

5)、以树状显示目录结构。
tree
如果没有tree指令就安装一个tree指令
yum install tree


推荐阅读更多精彩内容