本帖最後由 阿達金田一 於 2025-1-6 21:07 編輯
感覺說了一堆有點太亂
這裡整裡一下
1. USB Removable
早期的 windows 和 PE , 對於 USB Removable , 只會掛載 第1個 可見分區
所以對於 USB Removable (早期 USB-Flash 大多都是 USB Removable)
一般簡單的做法是 MBR : NTFS + FAT32
NTFS ... 可做一般使用 + Legacy 開機
FAT32 ... 用來 UEFI 開機
UD三分區是
UD ... 做Legacy 開機
NTFS ... 一般使用
FAT32 ... UEFI 開機
把 NTFS 放前是因為要 相容 只會掛載第1分區 的 Win/PE
但因為舊的 Legacy BIOS 可能無法訪問 磁碟高端(後端)磁區
這是 BIOS 和 MBR 定址問題
我個人之前就有推測(忘了哪篇文有提過) , 這個最高大概是到 2T (但實際要看 BIOS)
PS:
MBR 分割表定址是用 分區起始磁區號 4bytes(32bit) 和 分區總磁區數4bytes
2^32= 0 ~ 4,294,967,295 可以用的磁區號 (共 4,294,967,296 磁區) , 1磁區 512bytes = 0.5KB
4,294,967,296 * 0.5 = 2,147,483,648KB = 2,097,152MB = 2048G = 2T
不過實際還是要看 Leagcy BIOS 開機時 , 本身可以讀到的定址
所以用 UD 可以保証 Legacy BIOS 開機時, 由低端(前端)磁區的 UD 來啟動
而 UD 本身又不會被 windows 識別 , 所以對 windows 來說 第1分區還是 NTFS
另外早期 USB Removable 一般根本也不會超過 2T , 只有 USB-HDD 外接硬碟才會超過 2T
而且 超過 2T 原則上也只能去用 GPT 而不是用 MBR
MBR 部份情況是可以大於 2T, 例如用 4k磁區(4k硬碟) 或是 原理極限
MBR 原理極限是到 4T , 起始磁區 4,294,967,295 磁區 , 分區總磁區數 4,294,967,295 , 可以接近 4T (2T +2T ,2個分割)
維基的 MBR 有寫 ... 但通常 > 2T 就乖乖用 MBR , 因為大部份的 分割軟體 很多都會限制 MBR 2T
在MBR分割區表中,一個分割區最大的容量為2T,且每個分割區的起始柱面必須在這個disk的前2T內。你有一個3T的硬碟,根據要求你至少要把它劃分為2個分割區,且最後一個分割區的起始磁區要位於硬碟的前2T空間內。[3]如果硬碟太大則必須改用GPT。
2. PE 中的 orderdrv 或 其它掛載分區程序
這主要是因為早期 Legacy Bios 做 USB 開機
有是主板會把 USB 的硬體位置設為 0x80 ( 第1個硬碟 )
然後進去 XPE 後 , 因為不會重置 , 所以 USB 會變第1個硬碟 , 導致 代號 先分配到 USB
另外還有 USB Removable , XPE 只會分配第1個分區 , 會導致後面分區 不會分配代號
所以 orderdrv 就是解決這些問題
重新排分配代號 + 未分配代號磁碟(分區) 也分配代號
另外 google 資料
1. PECMD 也有掛載分區的指令 SHOW
2. win10 1703 版後好像 USB Removable 處理上 和 USB-HDD 都一樣
所以 未隱藏分區 都會分配代號
3. 隱藏 和 代號分配
先說一下 沒分配代號 不等於 隱藏 , 但在實際使用上 , 大多數常常會 隱藏 = 沒代號
例如
早期 windows 對 USB Removable 和 USB-HDD 的處理不同
會導致 USB-HDD 的分區(未隱藏) , 都會分配代號
但 USB Removable 的分區(未隱藏) , 只有 第1個分區 會分配代號
然後
windows 對 MBR 的 NTFS(0x07) FAT32(0x0c)
MBR 隱藏分區 其實就是改 ID 成 0x17 , 0x1c
ID表可以參考 thread-266-1-1.html
早期 windows 對於隱藏的 NTFS FAT32 , 處理上其實也是 不分配代號 而以
只要 分配代號 依然可見可用
但依我目前在用的 win10 22H2 的測試
現在隱藏就真的隱藏 , 不能分配代號 , 自然也不可用
要分配代號 , 就要先解隱藏
另外我前面說的都是 MBR
GPT 的 隱藏 和 代號 是用 Flag(屬性標籤) , 2者是分開的
( bootice 1.3.4 語言改 簡中 , 可以修改 GPT 屬性 )
GPT 的分區 可以設定 分區屬性 不自動分配代號 , 藏隱 , 唯讀 等等
總結
1.
若 USB Removable , MBR 沒有 隱藏分區
舊版的 Windows , 只會掛載 第1分區 , 後面分區不會掛載
而 PE 中通常都會用 orderdrv , 或其它掛載程序 去掛載
2.
若 USB Removable , MBR 有 隱藏分區
對舊版 Windows (多舊不知道) 隱藏分區 = 不 分配代號 ( mountvol 看的見, 只是不分配 )
但對新版 windows ( 反正 win10 22h2 是這樣)
隱藏分區 = 不能 分配代號 ( mountvol 看不見, 不能分配 )
所以如果你 MBR FAT 沒隱藏 , 那大概是 問題1 (不過推測可能性比較小)
但在PE 中應該會 orderdrv 而且新的 Windows ( win10 1703 後)
USB Removable 處理對比 USB-HDD
反之 MBR FAT 你有設隱藏 , 那大概是 問題2
( 個人感覺這個可能性比較大 , 而且 bear1alex1大的 11PE 有 orderdrv )
也就是 windows/PE 太新, 分區真的隱藏不給用
|