1,硬盤結(jié)構(gòu):由多個(gè)盤片組成,劃分成扇區(qū)、磁道、柱面三元素組成(盤片劃分成一圈一圈的磁道,每個(gè)磁盤劃分成一個(gè)一個(gè)扇區(qū),盤片相同磁道為柱面)。
存儲(chǔ)容量 = 磁頭數(shù) × 磁道(柱面)數(shù) × 每道扇區(qū)數(shù) × 每扇區(qū)字節(jié)數(shù)
2,操作系統(tǒng)讀取單位:硬盤的基本讀寫單位是“扇區(qū)”,扇區(qū)又分成物理扇區(qū)和邏輯扇區(qū)。邏輯扇區(qū)是與操作系統(tǒng)交互的基本單位,硬盤固件負(fù)責(zé)邏輯扇區(qū)與物理扇區(qū)之間進(jìn)行轉(zhuǎn)換(如4096字節(jié)大小扇區(qū)邏輯上劃分成8個(gè)512字節(jié)的邏輯扇區(qū))。操作系統(tǒng)讀寫文件是以簇/塊(IO Block)進(jìn)行的,1個(gè)簇大小是扇區(qū)的2的N次方扇區(qū)大小(1、2,4、8、16扇區(qū))。頁(yè)是內(nèi)存的最小存儲(chǔ)單元,頁(yè)的大小為磁盤塊大小的 2^n 倍。簇/塊過(guò)大,浪費(fèi)空間,簇/塊過(guò)小影響性能(硬盤讀寫比較頻繁)。
fsutil fsinfo nftsinfo c:
3,分區(qū)及其格式化:分區(qū)是指將磁盤上一大片連續(xù)的扇區(qū)為劃分為1個(gè)分區(qū);格式化是將分區(qū)內(nèi)扇區(qū)進(jìn)行規(guī)劃,如用FAT、NTFS、EXT3等文件系統(tǒng)格式來(lái)規(guī)劃文件的存儲(chǔ)結(jié)構(gòu)。
常用分區(qū)工具:fdisk、diskpart 、parted、gdisk,常用格式工具:format、mkfs
fdisk
format
4,4K對(duì)齊:傳統(tǒng)機(jī)械硬盤1個(gè)扇區(qū)為512字節(jié),由于磁盤容量的不斷增加和讀寫效率需求提,也將每個(gè)扇區(qū)的大小調(diào)整為4096個(gè)字節(jié),也就是4KB,目的是讓分區(qū)的起始扇區(qū)位于某一個(gè)4K扇區(qū)的起始位置,增加讀寫效率(如一個(gè)簇/塊等于4KB里(正好一個(gè)扇區(qū)))。但為了兼容以前的標(biāo)準(zhǔn),保證依靠扇區(qū)識(shí)別的舊的系統(tǒng)不會(huì)出錯(cuò),把一個(gè)物理扇區(qū)虛擬成8個(gè)512B邏輯扇區(qū)(從這8個(gè)扇區(qū)中的第一個(gè)扇區(qū)開(kāi)始的分區(qū),就是4K對(duì)齊,從其他7個(gè)扇區(qū)開(kāi)始的分區(qū),就是4K沒(méi)有對(duì)齊的)。固態(tài)硬盤由于采用閃存顆粒,最小單位是頁(yè)(4KB),4K對(duì)齊對(duì)其速度影響比較大。只要對(duì)齊到8個(gè)扇區(qū)的整倍數(shù)(512B*8),都屬于4K對(duì)齊,對(duì)于物理扇區(qū)大小與邏輯扇區(qū)大小不一致的磁盤,分區(qū)4K對(duì)齊才能充分發(fā)揮磁盤的讀寫性能。
5,MBR(Master Boot Record)分區(qū):MBR是硬盤上第1個(gè)扇區(qū),總計(jì)512字節(jié)(由引導(dǎo)程序446字節(jié)和分區(qū)表及分隔標(biāo)識(shí)組成),開(kāi)機(jī)BIOS自檢后,下一步會(huì)用MBR進(jìn)行引導(dǎo),MBR引導(dǎo)成功后,下一步會(huì)進(jìn)入激活的主分區(qū),然后引導(dǎo)操作系統(tǒng)(Windows2003及以前版本,引導(dǎo)根目錄下的NTLDR(8扇區(qū));Windows VIsta/7及以上引導(dǎo)根目錄下的BootMRG(NTFS下NTLDR優(yōu)先)(12扇區(qū))),加載BCD,執(zhí)行\(zhòng)winload.exe。
MBR模式
6,GPT(GUID Partition Table)分區(qū):4K物理扇區(qū)的出現(xiàn),為了兼容以前的模式,分成8個(gè)邏輯扇區(qū)(512KB),GPT采用邏輯區(qū)塊地址LBA(Logical Block Address,LBA)來(lái)規(guī)劃硬盤。第1個(gè)扇區(qū)用LBA0表示,使用34個(gè)LBA區(qū)塊記錄分區(qū)信息,并且把整個(gè)磁盤的最后34個(gè)LBA也拿來(lái)做一個(gè)備份。為了與MBR兼容,LBA0內(nèi)容是保護(hù)性MBR內(nèi)容(446字節(jié)啟動(dòng)引導(dǎo)程序,余下的空間是一個(gè)特殊標(biāo)識(shí)符用于表示該磁盤為GPT格式)。
GPT模式
GPT分區(qū)表類型
7,開(kāi)機(jī)CMOS選項(xiàng):BIOS(Basic Input Output System)和UEFI(Unified Extensible Firmware Interface)啟動(dòng):
7.1, BIOS + MBR:傳統(tǒng)啟動(dòng)方式,MBR可以找到活動(dòng)(acitve)分區(qū),并由活動(dòng)分區(qū)內(nèi)的引導(dǎo)程序啟動(dòng)系統(tǒng)。
BIOS -> MBR記錄 -> 激活的分區(qū) -> PBR記錄
7.2,BIOS + GPT:一般情況不能啟動(dòng)系統(tǒng),可以作為資料盤;但BIOS + GPT + GRUB 是可以啟動(dòng)系統(tǒng)的。
BIOS boot partition
7.3,UEFI + Legacy + MBR:CSM兼容模塊下可以啟動(dòng)系統(tǒng)。
efi + gpt; legay(CSM) + mbr;
7.4,UEFI + MBR:UEFI啟動(dòng)的必要條件是1個(gè)100M的FAT16或FAT32分區(qū),ESP不是必須和GPT綁定的,也可以是MBR。(步聚:建立一個(gè)FAT16 的主分區(qū),分區(qū)類型設(shè)置為EFI(分區(qū)標(biāo)識(shí)為0xEF))
bcdboot c:\windows /f UEFI /s X: /l zh-cn(寫啟動(dòng)文件到FAT分區(qū)中)
UEFI -> ESP分區(qū)/激活的FAT分區(qū) -> 默認(rèn)的efi可執(zhí)行程序(/EFI/BOOT/BOOTX64.efi)
7.5,UEFI + GPT:可以啟動(dòng)系統(tǒng),GPT分區(qū)模式下有ESP(EFI system partition)分區(qū)(FAT格式),UEFI啟動(dòng)時(shí)需要ESP分區(qū),并利用EFI分區(qū)內(nèi)的程序(.efi)啟動(dòng)系統(tǒng);efi引導(dǎo)必須有單獨(dú)的分區(qū)存放引導(dǎo)文件。
UEFI -> ESP分區(qū)(必須為FAT) -> efi可執(zhí)行程序
插入U(xiǎn)盤,以管理員身份運(yùn)行命令提示符,或Windows PowerShell ,在執(zhí)行diskpart命令,進(jìn)入diskpart提示符狀態(tài)。
執(zhí)行下面的list(列表)命令,列出所有磁盤
list disk
根據(jù)磁盤大小信息,認(rèn)準(zhǔn)###列的磁盤編號(hào)(本例中我的U盤是3號(hào)盤),執(zhí)行下面的select(選擇)命令選中磁盤:
select disk 3
注:在命令提示符下,操作任何對(duì)象都需要先選擇(select),這如同在圖形界面下的鼠標(biāo)點(diǎn)選對(duì)象。
執(zhí)行clean命令,清零整個(gè)磁盤(該命令可以清除一些磁盤工具創(chuàng)建的隱藏分區(qū))
clean
現(xiàn)在我們有一個(gè)數(shù)據(jù)被完全清除的U盤了,按照下面的命令依次執(zhí)行,創(chuàng)建我們所需要的分區(qū)。
convert mbr
create partition primary size=1024
create partition primary
list part
convert mbr,是將GPT模式的磁盤轉(zhuǎn)換成MBR模式,如果你的U盤已經(jīng)是MBR,不需要這個(gè)步驟(list出來(lái)的列表中,Gpt列帶*號(hào)說(shuō)明是Gpt模式)。
create partition primary size=1024 命令創(chuàng)建一個(gè)主分區(qū),大小為1024M(默認(rèn)單位為M),即1G。這個(gè)分區(qū)的大小,在win7的時(shí)代800M夠用,但windows10的時(shí)代,1G為好。
create partition primary將剩余的空間再建立成主分區(qū)(省略size則使用所有剩余空間)。
list part命令列出當(dāng)前磁盤上的所有分區(qū)。
接下來(lái)我們需要分別對(duì)兩個(gè)分區(qū)進(jìn)行格式化,執(zhí)行下面的命令:
sel part 1
format quick fs=fat32 label=boot
active
assign letter=x
sel part 2
format quick fs=ntfs label=system
assign letter=y
sel part 1,選中第一個(gè)分區(qū),我們也可以用完整的命令 select partition 1。
format quick fs=fat32 label=boot ,快速(quick)格式化(format)當(dāng)前選中分區(qū),文件系統(tǒng)格式(fs)為FAT32,并設(shè)卷標(biāo)(label)為boot。
active,設(shè)置當(dāng)前分區(qū)為活動(dòng)分區(qū),關(guān)于磁盤模式、文件系統(tǒng)的概念,請(qǐng)看超級(jí)大網(wǎng)管的相關(guān)文章。
assign letter=x ,指定當(dāng)前分區(qū)的盤符為x,你可以根據(jù)自己的需要更改盤符,不與其他盤符沖突即可。
這個(gè)時(shí)候我們可以退出diskpart了,執(zhí)行 exit命令即可。
總結(jié):進(jìn)行完上述的操作,我們就得到一個(gè)MBR模式的可啟動(dòng)U盤,U盤有兩個(gè)分區(qū),分區(qū)文件系統(tǒng)格式分別為FAT32和NTFS。之所以第二個(gè)分區(qū)為NTFS格式,因?yàn)槲覀兗磳⒎湃氲膇nstall.wim文件超過(guò)了4G,F(xiàn)AT32分區(qū)不支持超過(guò)這個(gè)大小的文件。
接下來(lái)我們開(kāi)始拷貝文件。
將windows10原盤中,除sources目錄外的所有內(nèi)容復(fù)制到boot盤中。
然后在boot盤中建立一個(gè)sources目錄,把window10原盤sources目錄下的boot.wim文件復(fù)制到此目錄中。
在我們的system盤中建立sources目錄,把windows10原盤sources目錄下,除boot.wim文件外的所有內(nèi)容復(fù)制到此目錄中。
文件都復(fù)制到位了,我們還需要向我們的boot盤寫入引導(dǎo)記錄,請(qǐng)執(zhí)行下面的命令:
I:\boot\bootsect.exe /nt60 x: /mbr
I盤是我們的windows10原始安裝光盤,當(dāng)然,你也可以解壓出來(lái)放到你想要的目錄,只需要找到bootsect.exe這個(gè)文件執(zhí)行即可。
好了,我們一個(gè)支持雙模式啟動(dòng)的windows原版安裝U盤就制作完成了。