磁盘的分区
为什么要分区
- 易于管理和使用
- 有利于数据的安全
- 节约寻找文件的时间
分区类型
- 主分区:最多只能有4个。
- 扩展分区:
- 最多只能有1个;
- 主分区加扩展分区最多有4个;
- 扩展分区不能写入数据,只能包含逻辑分区
- 逻辑分区
1 2 3 为主分区 ;4 为扩展分区 ;5 6 为逻辑分区
分区 | 设备文件名 |
---|---|
主分区1 | /dev/sda1 |
主分区2 | /dev/sda2 |
主分区3 | /dev/sda3 |
扩展分区 | /dev/sda4 |
逻辑分区1 | /dev/sda5 |
逻辑分区2 | /dev/sda6 |
sd表示SATA或者SAS硬盘接口,a表示第一块硬盘(不完全是),1,2,3,4表示分区号。
就是不论磁盘有几个主分区,第一个逻辑分区一定是从sda5开始
磁盘的分区
以创建1个1G的分区为例:
- 在进行分区时,首先我们需要查看当前磁盘的一个分区状况,使用命令:
fdisk -l
注意:上图中/dev/sda1 后面有个*,表示该磁盘用于引导系统进行启动。
- sda1:存放的是与系统相关的文件
- sda2:虚拟内存交换分区
- sda3:为我们系统上的跟分区
- start、end表示分区开始的扇区位置和结束的扇区位置。
- blocks:表示块的信息,一个块里面有多个扇区。
- Id:表示磁盘编号
- system:表示Linux系统分区的一个分区信息。
- 然后使用命令:
fdisk /dev/sda
,让硬盘进入分区模式
此时命令栏提示输入m来寻求帮助,那么我们输入m,来看一下都有哪些选项
上图中:画横线的标记为经常会用到的,然后我们来解释一下其中的一些选项
n | 添加一个新分区 | q | 不保存就退出 | p | 打印分区表 | m | 打印选项菜单 |
---|---|---|---|---|---|---|---|
d | 删除一个分区 | w | 保存退出 | t | 改变系统id号 |
- 开始创建分区,因此我们输入n,然后回车如下图。
我们看到黄颜色线条上显示的是3个主要分区,0个扩展分区,还有1个闲置分区。
绿色光标前的default e表示的是默认为扩展分区。我们除了直接回车进入下一步,也可以输入e进入下一步。
①此时光标所在的位置表示选择输入起始位置,也就是起始扇区。当然,我们不用输入,直接回车就好进入下一步。它就是为了能够将后面的所有可用扇区充分的利用上,而默认选择可用扇区的起始最小扇区。
回车后进入下一步,如下:
②此时光标所在的位置表示选择输入终了位置,也就是结束扇区。当然,我们不用输入,直接回车就可以把上面剩余的全部空间充分的利用上。
回车后如下:
③到这里我们创建的扩展分区已经创建好了,我们在命令行界面输入p查看一下分区情况:
黄颜色框框所框取的信息就是我们创建的扩展分区,以及他的起始,终了扇区位置信息;块信息;id编号信息,分区信息。
④有了扩展分区,那么我们才可以创建逻辑分区。
我们在命令行输入n添加一个新分区,此时添加的分区就是逻辑分区
这时它询问设置逻辑分区的起始扇区,为了充分利用,我们选择默认值,然后回车
到这里它在询问扇区结束位置,说白了就是我们在设置逻辑分区大小。输入格式为:+扇区 或者 +数值大小{单位}
然后我们输入:+1G 表示设置大小为的1G的逻辑空间。回车之后就完成了新的分区的设置。
紧接着我们输入p打印分区表查看分区信息。
上图中黄颜色的线上的文字为提示信息:提示分区5大小为1GB且已经创建。
⑤此时不要着急,我们一定要记住要保存,在命令行输入w
保存分区信息。
我们通过w
保存并退出后,使用fdisk -l
可以查看到磁盘的分区信息。
⑥但是当你在格式化的时候,有可能找不到这个分区。这是因为Linux没有把分区信息读到内核来,我们需要输入partprobe
这个命令,来使我们内核重读一下我们的分区信息。
到这里我们已经成功地创建了一个1G大小的分区,但是我们能用吗?不能,因为我们要对磁盘进行格式化后才可以进行数据的存储。
磁盘的格式化
认识格式化
格式化:指将分区格式化成不同的文件系统。
那什么是文件系统呢?
文件系统:指操作系统用于明确存储设备或分区上的文件的方法和数据结构:即在存储设备上组织文件的方法。
就好比一个大衣柜,将衣柜内部分割成一个个同大小的格子,每个格子上可以存放东西。 文件系统存放数据也是这么个道理。
Linux系统下的文件类型
Linux下的文件类型有ext2、ext3、ext4、xfs等等
我们可以使用命令:mkfs.
然后用按2下TAB键来查看都有哪些文件类型
磁盘的格式化
我们现在要对刚才创建的逻辑分区5进行格式化。
- 在命令行输入
mkfs.ext3 /dev/sda5
意思就是格式化根下的sda5分区,格式化类型为.ext3。
当done都出现完毕后,意味着格式化已经进行完毕。
- 格式化完毕后我们使用命令:
ll
来查看我们格式化完毕后的分区的文件类型信息。
我们从信息中可以看出来sda5为一个块设备文件。8表示主设备号,5表示的为从设备号。
到这里已经格式化好的sda5能用吗?答案是不能,要想用这个磁盘我们还需要挂载。
磁盘的挂载
认识挂载
(1)Linux的宗旨是一切皆文件,从以上我们也看到。我们存储的所有文件都在sda3下存放着,sda3也就是我们的根。那我们要在sda5中写入文件时,首先要sda5要与sda3先建立一个联系,这个联系就是一个目录。建立联系的过程我们叫做挂载。
(2)当我们访问sda3底下的这个目录的时候,实际上我们访问的才是sda5这个设备文件。这个目录相当于一个访问sda5的入口,可以理解为一个接口,有了这个接口才可以访问这个磁盘。
磁盘的挂载
临时挂载
将指定的一个目录作为挂载点目录时,如果挂载点的目录有文件,那么文件会被隐藏。
因此当我们需要挂载目录时,最好新建一个空文件夹来作为挂在点目录。(重启后失效)
①首先在根下创建一个test目录用于测试,在test目录中创建一个文件file,和一个目录directory。
②然后我们挂载sda5,使用命令:mount /dev/sda5 /test
意思就是说将/dev/sda5挂载到test目录中
③现在我们在test目录下的操作就相当于在sda5中进行操作,我们在里面写一个文件吧。
④按照上一步,我们的colour文件是在sda5中,那么我们将挂载的sda5给卸载掉。我们再进入test查看里面的文件有什么。
注意卸载时一定要退出目录,不然无法进行卸载。卸载的命令:umount /dev/sda5
或者是umount /test
⑤同理根据第③步的操作,我们在sda5里面写入一个文件。那么我们这次将这个sda5直接挂载到新建的一个目录test2。同理我们应该能想到,挂载后这个空文件夹也能够读到colour这个文件。
到这里就能说明colour这个文件是属于磁盘里的而非目录里的。
现在我们回到开头,我们之前说过,我们这种挂载方式为临时挂载,因此你在命令行中输入reboot重启Linux后,进入test2中是看不到任何文件的。
永久挂载
使用永久挂载,就意味着它开机会自动挂载。
①使用df -h
命令查看到当前系统上所有磁盘的挂载信息,包括文件的大小,已经使用的分区大小,总共可用分区的大小,使用率,以及挂载的位置。
②使用命令:blkid
查看对应分区的UUID(编号)。UUID唯一标识每一个分区,防止错误的挂载。除此之外,还会显示分区的类型。(建议先复制一下sda5的UUID,一会儿会用到)
③使用vim编辑/etc/fstab
,实现开机自动挂载。
在将光标移到UUID行,在命令模式下按o键进入插入模式,同时换行。将②步骤中复制好的sda5的UUID编号,粘贴进来。/test挂载点目录,ext3文件系统类型,第一个0表示不备份,第二个0表示不检查。注意格式一定要正确,可以不用对齐,最好的判断依据是依照颜色。
写完之后保存退出。
编辑上面文件后,你使用mount命令,是看不到test挂载信息的,只有开机时才会读取那个文件.
我们可以使用 mount -a
这个命令来让内核读取这个文件。然后用mount | grep /test
来过滤信息,查看是否挂上
总结
- 分区:把大硬盘分为小的逻辑分区
- 格式化:写入文件系统
- 分区设备文件名:给每个分区定义设备文件名
- 挂载:给每个分区分配挂载点
本节所用到的主要Linux的命令总结:
命令 | 该命令的注释 |
---|---|
fdisk -l | 查看当前磁盘的分区状况 |
fdisk /dev/sda | 让硬盘进入分区模式,所分的磁盘在 /dev 下的 sda 这块磁盘 |
partprobe | 将分区信息读到内核中 |
mkfs.ext3 /dev/sda5 | 将 /dev下的 sda5 磁盘格式化为 ext3 的格式类型 |
mount /dev/sda5/test | 将 /dev/sda5 挂载到 test 中 |
umount /dev/sda5或者umount /test | 卸载已经挂载的 /dev/sda5 磁盘也就是作为挂载接口的test目录 |
mount | 查看当前磁盘的详细挂载信息 |
df -h | 查看磁盘的信息(推荐) |
blkid | 查看对应分区的UUID(编号) |
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。