學(xué)習(xí) Linux,101: 建設(shè)分區(qū)和文件系統(tǒng)
概述
在本文中,學(xué)習(xí)硬盤分區(qū)和 Linux 文件系統(tǒng)有關(guān)內(nèi)容。學(xué)習(xí):
創(chuàng)立分區(qū);
運(yùn)用 mkfs 命令來配置 ext2、ext3、xfs、reiserfs v3 和 vfat 文件系統(tǒng);
創(chuàng)立和維護(hù)交流空間。
本文協(xié)助您預(yù)備 Linux Professional Institute's Junior Level Administration (LPIC-1) 考試 101 中主題 104 下的目標(biāo) 104.1。該目標(biāo)的權(quán)值為 2。
先決條件
為了最有效地使用本系列中的文章,您應(yīng)該具有根本的 Linux 知識,并須要預(yù)備一個(gè) Linux 系統(tǒng),用于練習(xí)本文引見的命令。有時(shí)分不一樣版本的順序輸出格式不一樣,因而您所得到的后果未必總是與這里所示的清單和圖類似。
您還應(yīng)該熟識我們的文章 “學(xué)習(xí) Linux,101:硬盤規(guī)劃” 中的內(nèi)容。
塊配備和分區(qū)
我們的文章 “學(xué)習(xí) Linux,101:硬盤規(guī)劃” 引見了硬盤驅(qū)動(dòng)器規(guī)劃、分區(qū)、以及運(yùn)用 fdisk 命令來檢查分區(qū)信息的根本知識。您學(xué)習(xí)了主分區(qū)、擴(kuò)展分區(qū) 和邏輯分區(qū) 等分區(qū)的有關(guān)知識,明白到 Linux 文件系統(tǒng)包含一些文件,它們存儲(chǔ)在硬盤上或目錄 中的塊存儲(chǔ)配備 上。與許多其他系一致樣,Linux 系統(tǒng)上的目錄也可以夠包含其他目錄,這些目錄稱為子目錄。這篇文章還探討了一些指點(diǎn)您舉行分區(qū)挑選的留意事項(xiàng)。
本文將最先回憶一下塊配備和分區(qū),然后進(jìn)一步展現(xiàn)如何運(yùn)用 fdisk 命令創(chuàng)立、修正或刪除塊配備上的分區(qū)。您還將學(xué)習(xí) mkfs(mkfs 代表 make filesystem) 命令的各種方式;mkfs 命令用于將分區(qū)格式化為一種特殊的文件系統(tǒng)類型。
留意:除了 LPI 考試要求的工具和文件系統(tǒng)外,您能夠會(huì)遇到或須要其他工具和文件系統(tǒng)。其他工具和文件系統(tǒng) 小節(jié)提供了其他可用工具的一個(gè)容易摘要。
塊配備
塊配備 是能夠以固定大小塊 格式化的恣意存儲(chǔ)配備的籠統(tǒng)層。單獨(dú)的塊的訪問能夠獨(dú)立于其他塊的訪問。這樣的訪問通常稱為隨機(jī)訪問。
隨機(jī)可訪問的固定大小塊的籠統(tǒng)層準(zhǔn)許順序運(yùn)用這些塊配備,而無需擔(dān)憂底層配備是硬盤驅(qū)動(dòng)器、軟盤、CD、固態(tài)(solid-state)驅(qū)動(dòng)器、網(wǎng)絡(luò)驅(qū)動(dòng)器,仍舊某種虛擬配備,比如內(nèi)存中文件系統(tǒng)。
塊配備示例包含系統(tǒng)上的第一 IDE 硬盤驅(qū)動(dòng)器(/dev/sda 或 /dev/hda)或第二 SCSI、IDE 或 USB 驅(qū)動(dòng)器(/dev/sdb)。運(yùn)用 ls -l 命令來顯示 /dev 條目。每行輸出的第一個(gè)字符是 b(針對一個(gè)塊 設(shè) 備,比如軟盤、CD 驅(qū)動(dòng)器、IDE 硬盤驅(qū)動(dòng)器或 SCSI 硬盤驅(qū)動(dòng)器)和 c(針對一個(gè)字符配備,比如 a、終端(tty)或空配備。清單 1 展現(xiàn)了一些示例。
清單 1. Linux 塊配備和字符配備
[ian@echidna ~]$ ls -l /dev/loop1 /dev/null /dev/sd[ab] /dev/sr0 /dev/tty0
brw-rw----. 1 root disk 7, 1 2010-06-14 07:25 /dev/loop1
crw-rw-rw-. 1 root root 1, 3 2010-06-14 07:25 /dev/null
brw-rw----. 1 root disk 8, 0 2010-06-14 07:25 /dev/sda
brw-rw----. 1 root disk 8, 16 2010-06-14 07:25 /dev/sdb
brw-rw----+ 1 root cdrom 11, 0 2010-06-14 07:25 /dev/sr0
crw--w----. 1 root root 4, 0 2010-06-14 07:25 /dev/tty0
分區(qū)
關(guān)于某些塊配備,比如軟盤和 CD 或 DVD 硬盤,通常運(yùn)用整個(gè)媒體作為單個(gè)文件系統(tǒng)。但是,關(guān)于大型硬盤驅(qū)動(dòng)器,甚至是 USB 存儲(chǔ)器,更罕見的用法是將可用空間劃分為多個(gè)不一樣的分區(qū)。
分區(qū)的大小能夠不一樣,不一樣的分區(qū)上能夠擁有不一樣的文件系統(tǒng),因而一個(gè)硬盤能夠用于多種目標(biāo),包含在多個(gè)操作系統(tǒng)之間共享該硬盤。比如,我運(yùn)用的測試系統(tǒng)包含多個(gè)不一樣的 Linux 發(fā)行版,有時(shí)還包含一個(gè) Windows® 系統(tǒng),它們都共享一個(gè)或兩個(gè)硬盤驅(qū)動(dòng)器。
文章 “學(xué)習(xí) Linux,101:硬盤規(guī)劃” 引見過,硬盤驅(qū)動(dòng)器擁有一個(gè)幾何參數(shù)(geometry),依據(jù)術(shù)語柱面、磁頭和扇區(qū)定義。即便是當(dāng)今驅(qū)動(dòng)器也運(yùn)用邏輯塊尋址 (LBA),這使得幾何參數(shù)變得幾乎沒關(guān)緊要,用于分區(qū)目標(biāo)的根本分配單元通常照舊是柱面。
顯示分區(qū)信息
分區(qū)信息存儲(chǔ)在硬盤上的分區(qū)表 中。分區(qū)表列示每個(gè)分區(qū)的起始柱面和完畢柱面的有關(guān)信息,關(guān)于它的類型 的信息,以及它能不能標(biāo)志為可引導(dǎo)。要?jiǎng)?chuàng)立和刪除分區(qū),須要運(yùn)用一個(gè)專門設(shè)計(jì)的順序來編輯分區(qū)表。關(guān)于 LPI 考試,您須要明白 fdisk 順序,這也是本文引見的順序,雖然也可以夠運(yùn)用其他多個(gè)工具。本文末尾將提到其中多個(gè)工具。
fdisk 命令加上 -l 選項(xiàng)用于列示分區(qū)。假設(shè)想檢查一個(gè)特定驅(qū)動(dòng)器上的分區(qū),須要添加一個(gè)配備稱號,比如 /dev/sda。留意,分區(qū)工具須要根訪問權(quán)限。清單 2 展現(xiàn)了我的系統(tǒng)的兩個(gè)主硬盤驅(qū)動(dòng)器上的分區(qū)。
清單 2. 運(yùn)用 fdisk 列示分區(qū)
[root@attic4 ~]# fdisk -l /dev/sda
Disk /dev/sda: 640.1 GB, 640135028736 bytes
255 heads, 63 sectors/track, 77825 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00064a1a
Device Boot Start End Blocks Id System
/dev/sda1 1 127 1020096 83 Linux
/dev/sda2 128 1402 10241437+ 82 Linux swap / Solaris
/dev/sda3 * 46340 56538 81920000 83 Linux
/dev/sda4 1403 46339 360956422 5 Extended
/dev/sda5 1403 10420 72437053+ 83 Linux
/dev/sda6 10421 19344 71681998+ 83 Linux
/dev/sda7 19345 28350 72340663+ 83 Linux
/dev/sda8 28351 37354 72324598+ 83 Linux
/dev/sda9 37355 46339 72171981 83 Linux[!--empirenews.page--]
Partition table entries are not in disk order
[root@echidna ~]# fdisk -l /dev/sda
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000de20f
Device Boot Start End Blocks Id System
/dev/sda1 * 1 9111 73184076 7 HPFS/NTFS
/dev/sda2 9634 9730 779152+ 83 Linux
/dev/sda3 9731 116679 859067842+ 5 Extended
/dev/sda5 9731 20917 89859546 83 Linux
/dev/sda6 20918 39644 150424596 83 Linux
/dev/sda7 39645 53905 114551451 83 Linux
留意:
標(biāo)題信息顯示硬盤大小和幾何參數(shù)。大非少數(shù)運(yùn)用 LBA 的硬盤每個(gè)柱面擁有 255 個(gè)磁頭,每個(gè)磁道擁有 63 個(gè)扇區(qū),總共擁有 16065 個(gè)扇區(qū),或許每個(gè)柱面 8225280 字節(jié)。
在第二個(gè)示例中,第一個(gè)主分區(qū)(/dev/sda1)標(biāo)志為 bootable(或 active)。這準(zhǔn)許規(guī)范 DOS PC 主引導(dǎo)記載引導(dǎo)該分區(qū)。這個(gè)標(biāo)志對 LILO 或 GRUB 引導(dǎo)裝載順序沒有意義。第一個(gè)示例運(yùn)用 GRUB 作為引導(dǎo)裝載順序,/dev/sda3 被標(biāo)志為 bootable 的原由能夠是我以前運(yùn)用這個(gè)驅(qū)動(dòng)器的一次不測。
Start 和 End 列顯示每個(gè)分區(qū)的起始和完畢柱面。這些分區(qū)不能堆疊且通常應(yīng)該相鄰,即中間沒有空間。
Blocks 列顯示大小為 1K(1024 字節(jié))的塊的數(shù)目。關(guān)于本文撰寫之時(shí)運(yùn)用的大非少數(shù)硬盤而言,扇區(qū)大小是 512 字節(jié),因而一個(gè)分區(qū)中的塊的最大數(shù)目是柱面數(shù)目(End + 1 - Start)和每個(gè)柱面的扇區(qū)數(shù)目標(biāo)乘積的一半。塊數(shù)目后面的 + 號示意分區(qū)中的扇區(qū)沒有所有運(yùn)用。
Id 列示意分區(qū)的預(yù)定用途。類型 82 是示意 Linux 交流分區(qū),類型 83 示意 Linux 數(shù)據(jù)分區(qū)。已定義的分區(qū)類型大約有 100 種。第二個(gè)硬盤由多個(gè)操作系統(tǒng)共享,其中包含 Windows/xp,因而出現(xiàn)了 Windows NTFS(也可以夠是 FAT32)分區(qū)。
運(yùn)用 fdisk 舉行分區(qū)
您剛剛曾經(jīng)看到如何運(yùn)用 fdisk 命令來顯示分區(qū)信息。這個(gè)命令還提供了一個(gè)菜單驅(qū)動(dòng)的環(huán)境來編輯分區(qū)表,以便創(chuàng)立或移除分區(qū)。
勸誡
開端修正分區(qū)之前,須要記得一些首要事項(xiàng)。假設(shè)不恪守以下這些準(zhǔn)繩,就會(huì)出現(xiàn)喪失您的現(xiàn)有限據(jù)的風(fēng)險(xiǎn)。
開端之前備份首要數(shù)據(jù),舉行任何能夠會(huì)招致數(shù)據(jù)喪失的操作之前都應(yīng)這樣做。
不要更矯正在運(yùn)用的分區(qū)。事前細(xì)致方案,然后留意執(zhí)行。從 CD、DVD 或 USB 啟動(dòng)一個(gè)及時(shí)發(fā)行版是確保沒有硬盤驅(qū)動(dòng)器分區(qū)正在運(yùn)用的一個(gè)好辦法。
明白您的工具。fdisk 命令不會(huì)向您的硬盤提交任何修改,除非您要求它那樣做。其他工具,其中包含 parted 能夠會(huì)隨著您的操作提交修改。
假設(shè)確實(shí)犯了錯(cuò)誤,那么應(yīng)立刻中止。分區(qū)工具對分區(qū)表舉行寫操作。除非您運(yùn)用的工具還包含對您的硬盤的數(shù)據(jù)區(qū)域的挪動(dòng)、大小重置、格式化等寫操作功用,否則您的數(shù)據(jù)將不會(huì)遭到影響。假設(shè)您確實(shí)犯了錯(cuò)誤,盡快中止操作并尋求協(xié)助。您仍然有能夠恢復(fù)此前的分區(qū)表定義,從而恢復(fù)您的分區(qū)和數(shù)據(jù)。
啟動(dòng) fdisk
要以交互方式啟動(dòng) fdisk,只需提供一個(gè)硬盤的稱號(比如 /dev/hda 或 /dev/sdb)作為參數(shù)。以下示例啟動(dòng)一個(gè) Knoppix 及時(shí) DVD。您須要根權(quán)限,并將看到類似于清單 3 的輸出。
清單 3. 啟動(dòng)交互式 fdisk
knoppix@Microknoppix:~$ su -
root@Microknoppix:~# fdisk /dev/sda
The number of cylinders for this disk is set to 121601.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)
Command (m for help):
大非少數(shù)硬盤擁有超越 1024 個(gè)柱面,因而您通常會(huì)看到清單 3 中顯示的勸誡。類型 m 將顯示一個(gè)可用的單字母命令列表,如清單 4 所示。
清單 4. fdisk 中的協(xié)助
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help):
運(yùn)用 p 命令來顯示這個(gè)特定硬盤上的現(xiàn)有分區(qū),清單 5 顯示輸出。
清單 5. 顯示現(xiàn)有分區(qū)表
Command (m for help): p
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000de20f
Device Boot Start End Blocks Id System
/dev/sda1 * 1 9111 73184076 7 HPFS/NTFS[!--empirenews.page--]
/dev/sda2 9634 9730 779152+ 83 Linux
/dev/sda3 9731 116679 859067842+ 5 Extended
/dev/sda5 9731 20917 89859546 83 Linux
/dev/sda6 20918 39644 150424596 83 Linux
/dev/sda7 39645 53905 114551451 83 Linux
Command (m for help):
這個(gè)特殊硬盤是一個(gè) 1TB 硬盤,包含一個(gè)略低于 80GB 的 Windows/xp 分區(qū)。它是一個(gè)主分區(qū),標(biāo)志為 bootable,這是 Windows 系統(tǒng)的典型特征。
添加分區(qū)
如今我們運(yùn)用局部閑置空間來添加一些分區(qū)。
我們將創(chuàng)立一個(gè)交流分區(qū):/dev/sda4。這將是一個(gè)主分區(qū),填充 /dev/sda1 的完畢柱面和 /dev/sda2 的起始柱面之間的 521 個(gè)柱面空隙。您不用對招致這個(gè)空隙的奇異原由感到獵奇;我只是為了撰寫本文而創(chuàng)立這個(gè)空隙。
我們將創(chuàng)立一個(gè) 40GB 的邏輯分區(qū):/dev/sda8。
結(jié)尾,我們將創(chuàng)立一個(gè) 2000MB 的小型邏輯分區(qū),以便在 Linux 和 Windows 系統(tǒng)之間共享數(shù)據(jù)。這個(gè)分區(qū)結(jié)尾將格式化為 FAT32(或 vfat)。這個(gè)分區(qū)將命名為 /dev/sda9。
創(chuàng)立我們的分區(qū)
我們最先運(yùn)用 n 命令來創(chuàng)立一個(gè)新分區(qū),如清單 6 所示。
清單 6. 創(chuàng)立第一個(gè)分區(qū)
Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
p
Selected partition 4
First cylinder (9112-121601, default 9112):
Using default value 9112
Last cylinder, +cylinders or +size{K,M,G} (9112-9633, default 9633): +521
Command (m for help): p
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000de20f
Device Boot Start End Blocks Id System
/dev/sda1 * 1 9111 73184076 7 HPFS/NTFS
/dev/sda2 9634 9730 779152+ 83 Linux
/dev/sda3 9731 116679 859067842+ 5 Extended
/dev/sda4 9112 9633 4192965 83 Linux
/dev/sda5 9731 20917 89859546 83 Linux
/dev/sda6 20918 39644 150424596 83 Linux
/dev/sda7 39645 53905 114551451 83 Linux
Partition table entries are not in disk order
Command (m for help):
我們采用默許值作為第一個(gè)柱面并指定值 +521 作為柱面的數(shù)目。清單 6 顯示,我們的分區(qū)大小約為 4GB。由于它是一個(gè)主分區(qū),因而它的編號必需為 1 至 4。順序指定分區(qū)編號是個(gè)好主意;否則一些工具會(huì)報(bào)告錯(cuò)誤,fdisk 將勸誡我們:我們的分區(qū)表?xiàng)l目不再按硬盤順序陳列。
還要留意一點(diǎn):我們的新分區(qū)類型被指定為 83,標(biāo)明這是一個(gè) Linux 數(shù)據(jù)分區(qū)。能夠?qū)⑦@個(gè)數(shù)字視為分區(qū)預(yù)定用途的操作系統(tǒng)的指示符。分區(qū)的結(jié)尾用途應(yīng)該婚配這個(gè)配置,但這時(shí)我們的分區(qū)甚至還沒有格式化,更談不上有限據(jù)了。我們將最先創(chuàng)立其他分區(qū),然后引見如何修改分區(qū)類型。
您能夠曾經(jīng)留意到,當(dāng)我們輸進(jìn) n 子命令創(chuàng)立一個(gè)新分區(qū)時(shí),唯一的挑選是 “l”(示意邏輯分區(qū))和 “p”(示意主分區(qū))。您只好看到剩余的能夠分區(qū)類型的選項(xiàng)。假設(shè)驅(qū)動(dòng)器還沒有擴(kuò)展分區(qū),您將看到選項(xiàng) “e”(示意擴(kuò)展分區(qū))。還要留意,我們的擴(kuò)展分區(qū)(/dev/sda3)為類型 5。
如今我們來定義 40GB Linux 分區(qū)和 2000MB FAT32 分區(qū)。這次我們只需指定大小 +40G 和 +2000M,辨別示意 40GB 和 2000MB。后果如清單 7 所示。
清單 7. 創(chuàng)立數(shù)據(jù)分區(qū)
Command (m for help): n
First cylinder (53906-116679, default 53906):
Using default value 53906
Last cylinder, +cylinders or +size{K,M,G} (53906-116679, default 116679): +40G
Command (m for help): n
First cylinder (59129-116679, default 59129):
Using default value 59129
Last cylinder, +cylinders or +size{K,M,G} (59129-116679, default 116679): +2000M
Command (m for help): p
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000de20f
Device Boot Start End Blocks Id System
/dev/sda1 * 1 9111 73184076 7 HPFS/NTFS
/dev/sda2 9634 9730 779152+ 83 Linux
/dev/sda3 9731 116679 859067842+ 5 Extended
/dev/sda4 9112 9633 4192965 83 Linux
/dev/sda5 9731 20917 89859546 83 Linux
/dev/sda6 20918 39644 150424596 83 Linux
/dev/sda7 39645 53905 114551451 83 Linux
/dev/sda8 53906 59128 41953716 83 Linux
/dev/sda9 59129 59384 2056288+ 83 Linux
Partition table entries are not in disk order
Command (m for help):
修改分區(qū)類型
在分開 fdisk 之前,我們將修改 swap 和 vfat 分區(qū)的分區(qū)類型。為此,我們運(yùn)用 t 子命令來配置分區(qū)類型。我們將 /dev/sda4 配置為類型 82(Linux 交流分區(qū)),將 /dev/sda9 配置為類型 9(FAT32)。假設(shè)您想檢查受支持類型的完壁列表,請輸進(jìn) L,如清單 8 所示。[!--empirenews.page--]
清單 8. 修改分區(qū)類型
Command (m for help): t
Partition number (1-9): 4
Hex code (type L to list codes): 82
Changed system type of partition 4 to 82 (Linux swap / Solaris)
Command (m for help): t
Partition number (1-9): 9
Hex code (type L to list codes): b
Changed system type of partition 9 to b (W95 FAT32)
Command (m for help):
保管分區(qū)表
到當(dāng)前為止,我們只是對分區(qū)表舉行了內(nèi)存中編輯。我們能夠用 q 命令退出,不保管修改。假設(shè)某些分區(qū)不能滿足您的要求,您能夠運(yùn)用 d 命令來刪除一個(gè)或多個(gè)分區(qū),以便重新定義它們。假設(shè)您對配置滿意,則能夠運(yùn)用 v 命令來驗(yàn)證您的配置,然后運(yùn)用 w 命令來寫入新的分區(qū)表并退出。參見清單 9。假設(shè)您再次運(yùn)轉(zhuǎn) fdisk -l 命令,您將看到,Linux 如今已能夠識別新分區(qū)。與其他操作系統(tǒng)不一樣的是,Linux 并不總是須要重新啟動(dòng)才干看到修改。舉例來說,假設(shè) /dev/hda3 變成 /dev/hda2,則須要重新啟動(dòng),由于原來的 /dev/hda2 已被刪除。假設(shè)須要重新啟動(dòng),fdisk 應(yīng)該會(huì)通知您。
清單 9. 保管分區(qū)表
Command (m for help): v
999521580 unallocated 512-byte sectors
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
root@Microknoppix:~# fdisk -l /dev/sda
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000de20f
Device Boot Start End Blocks Id System
/dev/sda1 * 1 9111 73184076 7 HPFS/NTFS
/dev/sda2 9634 9730 779152+ 83 Linux
/dev/sda3 9731 116679 859067842+ 5 Extended
/dev/sda4 9112 9633 4192965 82 Linux swap / Solaris
/dev/sda5 9731 20917 89859546 83 Linux
/dev/sda6 20918 39644 150424596 83 Linux
/dev/sda7 39645 53905 114551451 83 Linux
/dev/sda8 53906 59128 41953716 83 Linux
/dev/sda9 59129 59384 2056288+ b W95 FAT32
Partition table entries are not in disk order
高級 fdisk
您能夠已留意到,我們沒有修改恣意分區(qū)上的 bootable 標(biāo)志。如今,我們的硬盤尚有 Windows Master Boot Record (MBR),因而將啟動(dòng)標(biāo)志為 bootable 的第一個(gè)主分區(qū)(我們的示例中為 NTFS 分區(qū))。
LILO 和 GRUB 都不運(yùn)用 bootable 標(biāo)志。假設(shè)其中一個(gè)裝置在 MBR 中,那么它就能夠引導(dǎo) Windows/xp 分區(qū)。您也可以夠?qū)? LILO 或 GRUB 裝置到您的 /boot 分區(qū)(/dev/hda2)中,將該分區(qū)標(biāo)志為 bootable 并移除 /dev/hda1 的 bootable 標(biāo)志。假設(shè)機(jī)器今后將恢復(fù)為 Windows 自用機(jī)器,那么保管原始 MBR 能夠會(huì)有用。
假設(shè)須要,您還能夠運(yùn)用 fdisk 來修正分區(qū)表中的分區(qū)順序。這通常將會(huì)修改分區(qū)編號,因而您能夠須要完成其他任務(wù)才干將您的系統(tǒng)恢復(fù)為任務(wù)系統(tǒng)。要舉行這個(gè)修改,運(yùn)用 f 子命令切換到專家方式,然后運(yùn)用 r 子命令修正分區(qū)順序,如清單 10 所示。假設(shè)您只是想看看新的分區(qū)順序而不實(shí)踐修改,能夠運(yùn)用 q 子命令退出(本例的做法),而不是將更新后的分區(qū)表寫到硬盤中。
清單 10. 修正分區(qū)表順序
Command (m for help): p
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000de20f
Device Boot Start End Blocks Id System
/dev/sda1 * 1 9111 73184076 7 HPFS/NTFS
/dev/sda2 9634 9730 779152+ 83 Linux
/dev/sda3 9731 116679 859067842+ 5 Extended
/dev/sda4 9112 9633 4192965 82 Linux swap / Solaris
/dev/sda5 9731 20917 89859546 83 Linux
/dev/sda6 20918 39644 150424596 83 Linux
/dev/sda7 39645 53905 114551451 83 Linux
/dev/sda8 53906 59128 41953716 83 Linux
/dev/sda9 59129 59384 2056288+ b W95 FAT32
Partition table entries are not in disk order
Command (m for help): x
Expert command (m for help): f
Done.
Expert command (m for help): r
Command (m for help): p
Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000de20f
Device Boot Start End Blocks Id System
/dev/sda1 * 1 9111 73184076 7 HPFS/NTFS[!--empirenews.page--]
/dev/sda2 9112 9633 4192965 82 Linux swap / Solaris
/dev/sda3 9634 9730 779152+ 83 Linux
/dev/sda4 9731 116679 859067842+ 5 Extended
/dev/sda5 9731 20917 89859546 83 Linux
/dev/sda6 20918 39644 150424596 83 Linux
/dev/sda7 39645 53905 114551451 83 Linux
/dev/sda8 53906 59128 41953716 83 Linux
/dev/sda9 59129 59384 2056288+ b W95 FAT32
Command (m for help): q