以下内容摘自《鸟哥的私房菜》
在Linux系统中,每个设备都被当成一个文件来对待。比如说:IDE接口的硬盘文件的文件名是/dev/hd[a-d]。
下面列出了一些常见设备在Linux中的文件名
设备 |
设备在Linux内的文件名 |
IDE硬盘 |
/dev/hd[a-d] |
SCSI/SATA/USB硬盘(也就是移动硬盘??) |
/dev/sd[a-p] |
U盘 |
/dev/sd[a-p]同上一样 |
软驱(还有人用???) |
/dev/fd[0-1] |
打印机 |
25针:/dev/lp[0-2]
USB:/dev/usb/lp[0-15]
|
鼠标
|
USB:/dev/usb/mouse[0-15]
PS2:/dev/psaux
|
当前CD ROM/DVD ROM
|
/dev/cdrom |
当前鼠标 |
/dev/mouse |
磁带机(还有人用???) |
IDE:/dev/ht0
IDE:/dev/st0
|
那么下来我们来看看磁盘分区
1)磁盘连接的方式与设备文件名的关系
对着上面的图就可以知道他们之间的关系
Q: 为什么IDE接口的设备名只能是/dev/hd[a-d]四个呢??
A:这是因为一个IDE扁平电缆可以连接两个IDE设备,通常情况下,主机又都只提供2个这样的电缆,因此最多只能连接4个IDE设备。
2)磁盘的组成
我们知道磁盘主要有盘片、机械手臂、磁头与主轴马达等组成,而数据的写入其实只是在盘片上。盘片上面又可以细分为扇区与柱面两种单位,其中每个扇区的大小为512bytes那么大。柱面是文件系统最小的单位,也是分区的最小单位。
一个盘片有多个扇区,但是第一个扇区特别重要,这是因为他记录了整块磁盘的重要信息。最主要的两个信息为:
1)主引导分区(Master Boot Record,MBR):可以安装引导加载程序的地方,大小为446bytes。
MBR非常的重要,因为系统在开机的时候会主动去读取这个区域的信息,这样系统才会知道你的程序放在哪里,且该如何开机。
2)分区表(partition table):记录整块磁盘分区的状态,有64bytes。
在分区表的64bytes容量中,总共分为四组记录区,每组记录区记录了该区段的起始于与结束的柱面号码。如下图所示:

图:磁盘分区表的作用示意图
从上图我们可以得到:
所谓的分区只是针对那个64bytes的分区表进行设置而已
磁盘默认的分区表仅能写入四组分区信息
这四组分区我们成为主分区(Primary)或扩展分区(Extended)
分区最小的单位是柱面(cylinder)
Q:既然第一个磁区所在的分割表只能记录四笔数据, 那我可否利用额外的磁区来记录更多的分割资讯???
A: 可以。如下图所示:

在上图当中,我们知道硬盘的四个分割记录区仅使用到两个,P1为主要分割,而P2则为扩展分配。请注意, 扩展分配的目的是使用额外的磁区来记录分割资讯,扩展分配本身并不能被拿来格式化。 然后我们可以透过扩展分配所指向的那个区块继续作分割的记录。
如上图右下方那个区块有继续分割出五个分割槽, 这五个由扩展分配继续切出来的分割槽,就被称为逻辑分割槽(logical partition)。 同时注意一下,由於逻辑分割槽是由扩展分配继续分割出来的,所以他可以使用的磁柱范围就是扩展分配所配置的范围喔! 也就是图中的101~400啦!
同样的,上述的分割槽在Linux系统中的装置档名分别如下:
- P1:/dev/hda1
- P2:/dev/hda2
- L1:/dev/hda5
- L2:/dev/hda6
- L3:/dev/hda7
- L4:/dev/hda8
- L5:/dev/hda9
仔细看看,怎么装置档名没有/dev/hda3与/dev/hda4呢?因为前面四个号码都是保留给Primary或Extended用的嘛! 所以逻辑分割槽的装置名称号码就由5号开始了!这是个很重要的特性,不能忘记喔!
所以我们总结一下:
1)主分区与扩展分区最多可以有4个
2)扩展分区最多只能有一个
3)逻辑分区时由扩展分区持续切割出来的分区
4)能被格式化后作为数据访问的分区为主分区和逻辑分区,扩展分区是无法格式化的。
5)逻辑分区的数量依操作系统而不同,在Linux系统中,IDE硬盘最多有59个逻辑分区,SATA硬盘则有11个逻辑分区。
3)开机流程与主引导分区(MBR)
简单的说,整个启动流程到操作系统之前的动作应该是这样的:
-
BIOS:启动主动运行的韧体,会认识第一个可启动的装置;
-
MBR:第一个可启动装置的第一个磁区内的主要启动记录区块,内含启动管理程序;
-
启动管理程序(boot loader):一支可读取核心文件来运行的软件;
-
核心文件:开始操作系统的功能...
由上面的说明我们会知道,BIOS与MBR都是硬件本身会支持的功能,至於Boot loader则是操作系统安装在MBR上面的一套软件了。由於MBR仅有446 bytes而已,因此这个启动管理程序是非常小而美的。 这个boot loader的主要任务有底下这些项目:
-
提供菜单:使用者可以选择不同的启动项目,这也是多重启动的重要功能!
-
加载核心文件:直接指向可启动的程序区段来开始操作系统;
-
转交其他loader:将启动管理功能转交给其他loader负责。
上面前两点还容易理解,但是第三点很有趣喔!那表示你的计算机系统里面可能具有两个以上的启动管理程序呢! 有可能吗?我们的硬盘不是只有一个MBR而已?是没错啦!但是启动管理程序除了可以安装在MBR之外, 还可以安装在每个分割槽的启动磁区(boot sector)喔!瞎密?分割槽还有各别的启动磁区喔? 没错啊!这个特色才能造就『多重启动』的功能啊!
我们举一个例子来说,假设你的个人计算机只有一个硬盘,里面切成四个分割槽,其中第一、二分割槽分别安装了Windows及Linux, 你要如何在启动的时候选择用Windows还是Linux启动呢?假设MBR内安装的是可同时认识Windows/Linux操作系统的启动管理程序, 那么整个流程可以图示如下:
在上图中我们可以发现,MBR的启动管理程序提供两个菜单,菜单一(M1)可以直接加载Windows的核心文件来启动; 菜单二(M2)则是将启动管理工作交给第二个分割槽的启动磁区(boot sector)。当使用者在启动的时候选择菜单二时, 那么整个启动管理工作就会交给第二分割槽的启动管理程序了。 当第二个启动管理程序启动后,该启动管理程序内(上图中)仅有一个启动菜单,因此就能够使用Linux的核心文件来启动罗。 这就是多重启动的工作情况啦!我们将上图作个总结:
- 每个分割槽都拥有自己的启动磁区(boot sector)
- 图中的系统槽为第一及第二分割槽,
- 实际可启动的核心文件是放置到各分割槽内的!
- loader只会认识自己的系统槽内的可启动核心文件,以及其他loader而已;
- loader可直接指向或者是间接将管理权转交给另一个管理程序。
那现在请你想一想,为什么人家常常说:『如果要安装多重启动, 最好先安装Windows再安装 Linux』呢?这是因为:
Linux在安装的时候,你可以选择将启动管理程序安装在MBR或各别分割槽的启动磁区, 而且Linux的loader可以手动配置菜单(就是上图的M1, M2...),所以你可以在Linux的boot loader里面加入Windows启动的选项
Windows在安装的时候,他的安装程序会主动的覆盖掉MBR以及自己所在分割槽的启动磁区,你没有选择的机会, 而且他没有让我们自己选择菜单的功能。
分享到:
相关推荐
理解了以上知识点之后,可以更好地进行Linux主机的规划和磁盘分区。这不仅涉及到硬件的物理连接和设备命名规则,还需要了解如何利用分区表进行有效合理的磁盘空间管理,以及如何处理MBR来实现多系统启动等高级功能。...
总的来说,安装和规划 Linux 主机涉及硬件选型、磁盘分区、服务规划等多个方面,每个环节都需要充分的了解和准备。通过深入学习这些知识,可以确保 Linux 系统的稳定运行和高效利用。在后续的学习中,回过头来重新...
任务6 磁盘分区和LVM管理 实验目的 学会磁盘分区 学会LVM管理 学会分区/逻辑卷的格式化及文件系统的建立 学会mount挂载及开机自动挂载 实验内容 注意!实验前,请将主机名修改为zhangsan(zhangsan为自己姓名全拼) ...
在Linux系统管理中,分区是磁盘管理的一个基础且重要的环节。随着存储技术的发展,传统磁盘管理工具fdisk由于其2TB大小的限制已无法满足日益增长的存储需求。在这种背景下,parted应运而生,它可以处理超过2TB大小的...
Linux云主机磁盘挂载与初始化是云服务器管理和运维中的基本操作,对于扩展存储空间、优化数据管理至关重要。本文将详细介绍Linux环境下如何挂载和初始化新的数据盘。 首先,通过命令`fdisk -l`检查当前主机的磁盘...
Linux主机磁盘维护是系统管理中的重要环节,它关乎到系统的稳定性和数据的安全性。本文档将详细讲解如何在Linux环境中进行磁盘的监控、优化和维护。 首先,要了解系统的磁盘分区情况以及文件系统被挂载的位置,可以...
在Linux系统中,磁盘管理是一项重要的任务,主要包括磁盘分区和挂载。 - **分区工具**: 如`fdisk`、`parted`等,用于创建、修改和删除硬盘分区。 - **挂载**: 将分区或外部存储设备连接到文件系统的指定目录的过程...
Linux磁盘挂载是比较常见的对linux系统管理的操作之一,需要耐心才能正确实现自动挂载,便于日后提高...首先,为了需要,新添加一块磁盘到linux主机中,目的是让这个新添加的磁盘分区格式化并可以随系统启动自动挂载。
第3章 主机规划与磁盘分区 第4章 安装Centos5.x 与多重引导小技巧 第5章 首次登入与在线求助(man page) 第6章 Linux的档案权限与目录配置 第7章 Linux档案与目录管理 第8章 Linux磁盘与文件系统管理 第9章 档案与...
此外,Linux系统使用UUID(Universally Unique Identifier)作为磁盘分区的唯一标识,这有助于避免因为磁盘顺序改变而产生的问题,因此推荐在配置文件系统时使用UUID。 主引导记录(MBR)是磁盘上的一个重要部分,...
### Linux主机信息相关知识 #### 一、CPU相关知识 **1.1 相关概念** **1.1.1 CPU内核(Core)** - **定义:** CPU内核(Core)是CPU的重要组成部分,通常指的是CPU内部的核心处理单元,它是执行所有计算任务的基础。...
Linux系统基础篇的知识点涵盖计算机基本概念、Linux操作系统介绍、主机规划与磁盘分区、Linux系统的安装等多个方面。下面将详细介绍这些知识点。 首先,了解计算机的基本概念对于学习Linux操作系统至关重要。计算机...
首先,进行主机规划和磁盘分区是安装Linux前的重要环节。对于中小型企业、学校单位的FTP、mail、WWW等网络服务主机,应考虑以下硬件配置: 1. CPU:建议采用双核以上,等级较高的处理器。 2. RAM:至少1GB,4GB以上...
"实现 Linux 系统在 VHD、Vdi 虚拟磁盘中运行在实体机里" 本文将指导读者如何在 ...可以通过修改 /opt、/usr/local 和 /home 挂载在真实的磁盘分区,实现数据与系统的分离。这可以防止系统出现问题时,导致数据丢失。
在Linux虚拟机中,增加磁盘空间的过程与Windows操作系统下的操作确实有所不同。...请注意,以上操作涉及到对磁盘分区的修改,务必谨慎操作,以免数据丢失。如果不确定操作步骤,建议先备份重要数据。
- **分区方案**:根据实际需求设计合理的磁盘分区方案。例如,对于一个72GB的硬盘,可以设计如下分区方案: - `/dev/sda1`:13G,用于根目录。 - `/dev/sda2`:100MB,用于boot分区。 - `/dev/sda3`:10G,用于...
重启后,通过`fdisk -l`命令可以查看当前系统中的所有磁盘分区信息,包括新添加的硬盘。这个命令会列出所有的硬盘设备(例如/dev/sda、/dev/sdb等)以及它们的分区情况。 接下来,我们关注磁盘添加过程中的小结: ...
使用场景及目标:适用于需要安装Ubuntu作为独立操作系统或在现有宿主机中快速建立Linux测试环境的专业技术人员或计算机爱好者,帮助他们顺利地完成操作系统安装并理解其关键配置要点。 其他说明:由于不同硬件和个人...
接下来,你需要为新安装的Linux系统设置主机名和域名,这可能由你的网络环境的DHCP服务器自动处理。安装程序还会提示你设置用户账户和密码,以及一些其他配置选项。 安装完成后,首次启动Linux系统,你会发现虽然...
华为云平台新发云主机磁盘处理流程包括系统盘空间扩展处理办法和磁盘扩容操作流程。通过了解当前磁盘的情况,创建新分区,同步磁盘,扩展逻辑卷组,扩展逻辑卷,扩展文件系统等操作,可以成功扩展磁盘。