linux和windows下的分区管理

linux和windows下的分区管理

引入

在linux下我们经常会看到诸如
sda,sdb,sda0,sda1 这样的文件或者名称
那么这些 "东西" 是什么呢?
其实这些 "东西" 是就是外存,俗称硬盘,是硬盘文件在操作系统上的映射,是一个文件。
在windows上就是C盘,D盘之类的"磁盘驱动器",其实就是硬盘分区。
当然这是一个笼统的说法

接下来我们往下看
假若我的电脑上有如下三个外置存储器:

品牌 西部数据 三星 镁光
接口 STAT3 m.2 Nvme m.2
容量 1T 256G 256G

那么在linux的分区管理上就会出现三个文件夹
名为 sda,sdb,sdc
分别依次对应三个硬盘(无论是机械还是固态)
无论是在linux还是在Windows下都是称为disk
sda0 sda1sda的分区,称为part
在windows上常见的CDEF盘可能来自一个disk,
也可能分别来自不同的disk

示例1:window下的磁盘管理我的电脑 右键管理 找到磁盘管理



如上图,共有三个disk分别是磁盘0,磁盘1,磁盘2
而他们的分区数有的多达五个有的却只有一个
这取决于用户个人的想法,倘若想要功能清晰一些那么多分几个便是。
这三个disk其实也就对应着linux上的sda,sdb,sdc
(安卓手机上也有 sdcard 的文件夹,其实就是常规用户所拥有权限的文件,对应着安卓手机的内置存储)

window下的磁盘管理的功能简介

示例中的磁盘管理拥有许多功能,举例几个功能如下:

  • 驱动器号修改 可以修改某一分区的驱动器号,如将D盘改为W盘
  • 删除卷 将该分区的内容清除 等同于格式化并清除驱动器号
  • 新建卷 给未分配的存储资源分配路径和驱动器号 还可以指定新的盘符大小,文件格式
  • 压缩卷 像挤海绵一样,将尚有储存资源的A盘的空间压缩出来作为未分配储存资源
  • 拓展卷 将某一盘符的空间变大等等。。

看了几个功能,想必对路径和驱动器号有些疑惑吧,
驱动器号,某盘的编号。
至于路径我们就需要先了解什么是未分配的存储空间,
未分配的存储空间,即未被使用的存储空间,那么如何使用它呢,需要一个指向它的路标,路径。
给它分配了路径的意思就是,它映射在了操作系统上了

window下的Diskpart功能简介

细心的朋友可能会看到上图windows磁盘管理上有分区是没有驱动器号的
在磁盘管理下也执行不了如上所说的功能
卷名直接叫磁盘1上的磁盘分区1和磁盘分区3
分别是EFI系统分区 OEM系统分区 其实就是windows系统的引导分区和恢复分区
这样的分区不适合用户进行操作,容易引起系统崩溃
倘若是真需要操纵该如何呢
这就有一个应用叫做DISKPART,通过命令行管理员模式打开。
基本操作如下


常用于启动项管理和引导修复

示例2:linux下的分区管理

第一步. 分区

  • 查看设备信息
$ find /dev -name 'sd*' -print
>> /dev/sdc
>> /dev/sda2
>> /dev/sda1
>> /dev/sdb
>> /dev/sda

  • 运行fdisk命令
$ fdisk /dev/sdb
>> Command  (m  for  help): _

此处要我们输入m,查看命令大全


简单介绍几个如下:
m 查看命令大全
p 查看分区情况
n 创建分区
d 删除分区
w 保存分区结果并退出
q 直接退出(并不保存)

  • 开始创建分区 n
$ n
>> Partition type:
>>     p  primary (0 primary, 0 extended, 4 free)
>>     e  extended
>> Select  (defalut  p)

此处可以选择主分区还是拓展分区

& p
>> Partition number (1-4),  defalut  1): _
& 1
>> First  sector (2048-1048575,  default 2048): _
& 按照范围输入分区的开始位置
>> Last sector, +sectors or +size{K,M,G} (2048-1048575, defalut 1048575}: _ 
& 同上输入分区的结束位置  如 +128M
>> Partition 1 of type Linux and of size 128 MiB is set
  • 查看分区状况 p

我们建立了三个主分区和一个拓展分区 Blocks 代表的其实就是分区大小

  • 保存分区 w
>> Command  (m  for  help):  w
>> The  partition table has been altered!
>>
>> Calling ioctl() to re-read partition table.
>> Syncing disks .

于是又返回linux主界面了

第二步. 格式化

  • 此时我们再通过find命令查看dev目录下的sd*文件
$ find /dev -name 'sd*' -print


得到结果,与第一次的结果相比多了四个分区,显然这是之前我们通过fdisk产生的分区。
但是到这里并不算走到完结,就如同windows上的未分配空间,还未分配地址驱动器号
首先我们将分区格式化

$ mkfs.ext4 /dev/sdb1


依次类推将四个文件都按照指定的文件格式进行格式
此处mkfs其实就是make file sytem的缩写

$ mkfs.ext4 /dev/sdb4


当我们格式化第四个分区的时候却发现并没有像之前三个那么顺利
这到底是为什么呢?
其实这就在于两种分区之间的关系了
之前得知,分区分为主分区拓展分区
主分区最多只能有四个

硬盘中有存储着分区表,分区表中记录着分区信息,但分区表的大小只有64字节,而每个分区的的信息占16字节,因此最多只能记录四个主分区。
拓展分区更像是一个拓展的分区表,实际上并不算实质的分区,是为了再创建新的分区而设定的,为了与主分区区分,便称为逻辑分区
逻辑分区是再拓展分区的基础上,如同拓展分区申请了一片区域,而逻辑分区是再拓展分区内申请空间
逻辑分区拓展分区

  • 我们再通过fdisk命令进行分区管理
$ fdisk /dev/sdb


发现只能选择逻辑分区了,接下来的操纵就和上面的方式一致了

第三步 挂载

你可能感兴趣的:(linux和windows下的分区管理)