baidut / baidut/windowsSystemHelper

磁盘管理

Aperta
#2 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
CSS
Stelle
19
Fork
0
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

作为一个搞计算机的童鞋,帮别人的电脑分分区、重做系统是经常有的事。本文旨在介绍一下鄙人对此的一点经验,仅供参考。因水平有限,错误难免,请见谅。
- 如果你需要快速了解如何进行分区、装系统,直接跳到 解决方案 部分。
- 如果你想了解一下相关的知识,那么就听我慢慢道来:

所谓"授之于鱼不如授之于渔",本节不会枯燥地讲解如何解决问题,而是以一个不太形象却方便理解的对比引入:

磁盘就像一个国家,我们知道有时候国家大了不方便管理,所以需要分而治之;如果你的国家需要多种管理制度并存,则必然需要**分区**治理。把磁盘上的文件比作人的住所,**分区**使得一个地区的人集居在一起,方便调度(小地区更容易治理),而且不同地区相对独立,某个地区发生了暴乱可以仅治理该地区而不影响其他地区;同时如果要在多个地区之间移民则会遇到一些麻烦(搬迁住所,并在新的地区注册登记)。

操作系统就好比是管理国家的首席大臣,如果不为操作系统文件单独设立一个分区,那么就可能会有诸多的麻烦:
- 不小心误杀了首席大臣——误删操作系统文件
- 国家需要改朝换代的时候,如果首席大臣们集中在一个分区,那么直接替换这个分区即可,而不过同在这个分区的还有其他人的话,就麻烦了,如果你不找到这些无辜的人并将它们移动到其他地方去,那么你就可能错杀平民百姓。——重装系统比较麻烦

所以,系统是需要占一个单独的分区的。如果你的电脑是多系统,那么这些系统都需要独立地分配一个分区。
## 电脑的启动过程

我们有必要了解电脑的启动过程。

打开电源首先唤醒的是主板上的BIOS,在进行完一系列检测和配置以后,开始按设定的系统引导顺序引导系统,比如启动顺序清单上写着:U盘、移动硬盘、本地磁盘,那么BIOS就会先试着从U盘启动,再尝试移动硬盘启动,最后前两者都无法启动时再从本地磁盘启动。

从U盘启动可以通过U盘里的系统安装文件把系统安装到本地磁盘里,这样可以方便地重做系统;同时u盘里也可以安装操作系统,让电脑直接访问U盘里的系统,并可以借此操作本地磁盘,得益于windowstogo技术,不仅仅是winpe这类特殊的系统可以装在u盘里,win8/7都支持。当然,u盘可以做的,移动硬盘也可以做。

BIOS的使命就是找到一个可以启动的设备,而设备上必然会有一个区域是启动程序,对于MBR引导的磁盘,这个启动程序就在磁盘第一扇区MBR(主要启动记录区Master Boot Record),第一扇区还有一个非常重要的东西就是分区表。BIOS找到启动盘后,电脑会载入启动盘MBR里的开机管理程序,通过分区表得到磁盘的分区信息。
## 主分区,扩展分区,逻辑分区

由于用于启动的第一扇区的分区表大小有限,最多只能记录4个分区项,如果要划分4个以上的分区该怎么办呢?考虑到这个问题,我们引入了一个扩展分区,这个扩展分区可以进一步地划分为若干个逻辑分区。4个分区项每个分区项可以是主分区P,也可以是扩展分区L,这样,我们的分区方案就可以是 4P、3P+L、3P、2P+L、2P、P+L、P
记住**总共4项,至少有一个P,至多有一个L**就行了。因为系统分区必须是在主分区

## 解决方案

windows系统下,无需安装软件,请高调地[以管理员身份打开cmd](电脑基本操作.md#以管理员身份打开cmd):
输入diskpart回车
输入help回车获取diskpart使用帮助
输入help 命令 了解某个命令的详细使用方法

相信大多数人都是直接按照网上的方法试就行了,我不推荐这样,你凭什么相信网上的步骤?网上那些发经验的人懂么?
网上的东西只是用来参考的,比如我通过网上可以获知那些工具可以实现磁盘分区,再了解一下别人的实现步骤,然后看这些步骤都做了什么,而不是直接全部傻乎乎地直接照做,磁盘全盘格式化了都不知道,参见[直播小白悲惨世界 已给Diskpart clean命令跪下了](http://tieba.baidu.com/p/2887881245)。

常见情境:
- PPPP 分区表项已满,不能再创建分区
- PPPL 扩展分区没有分配完全,后面的空闲空间被浪费 :选择最后一个卷,extend
- 磁盘上没有足够的空间进行此操作
- 无法在此未分配空间中创建新卷,因为该磁盘已经包含最大分区数。
## 补充FAQ
- 分区为什么只能向后扩展?—— 因为编址问题,1 2 3 4 5 ... 右边可以直接扩展,左边无法直接扩展

# 参考资料
- [硬盘分区表知识——详解硬盘MBR](http://www.blogjava.net/galaxyp/archive/2010/04/25/319344.html)
- 《鸟哥的linux私房菜》
- [DiskPart使用方法(ZT)](http://www.cnblogs.com/samcn/archive/2011/01/10/1931637.html)
- [使用diskpart工具划分扩展分区的详细步骤](http://support1.lenovo.com.cn/lenovo/wsi/htmls/detail_20131016145015277.html)

# 扩展阅读
- [【讨论】Windows启动过程(MBR分析)](http://bbs.pediy.com/showthread.php?t=178914)
- 《30天自制操作系统》
- 《ORANGE'S:一个操作系统的实现》

![capture](https://cloud.githubusercontent.com/assets/6234266/13008069/2aec31e8-d1cf-11e5-951d-a4a8fd456f75.JPG)

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

La issue contiene una bozza in cinese che tratta il partizionamento dei dischi, l’avvio BIOS/MBR e Windows diskpart, e rimanda a 电脑基本操作.md#以管理员身份打开cmd. Inizia individuando il documento sorgente e verificandone i link e le affermazioni tecniche. La issue non definisce una modifica specifica né criteri di accettazione, quindi l’ambito previsto della documentazione deve essere chiarito prima che il lavoro possa essere considerato completato.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Ambito
documentation, operating-systems
Tipo di issue
Documentazione
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.