|
2楼
楼主 |
发表于 2010-8-5 20:57:33
|
只看该作者
清单 6. 创建第一个分区
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):
我们采用默认值作为第一个柱面并指定值 +521 作为柱面的数量。清单 6 显示,我们的分区大小约为 4GB。由于它是一个主分区,因此它的编号必须为 1 至 4。顺序指定分区编号是个好主意;否则一些工具会报告错误,fdisk 将警告我们:我们的分区表条目不再按磁盘顺序排列。
还要注意一点:我们的新分区类型被指定为 83,表明这是一个 Linux 数据分区。可以将这个数字视为分区预定用途的操作系统的指示符。分区的最终用途应该匹配这个设置,但这时我们的分区甚至还没有格式化,更谈不上有数据了。我们将首先创建其他分区,然后介绍如何更改分区类型。
您可能已经注意到,当我们输入 n 子命令创建一个新分区时,惟一的选择是 “l”(表示逻辑分区)和 “p”(表示主分区)。您只能看到剩余的可能分区类型的选项。如果驱动器还没有扩展分区,您将看到选项 “e”(表示扩展分区)。还要注意,我们的扩展分区(/dev/sda3)为类型 5。
现在我们来定义 40GB Linux 分区和 2000MB FAT32 分区。这次我们只需指定大小 +40G 和 +2000M,分别表示 40GB 和 2000MB。结果如清单 7 所示。
清单 7. 创建数据分区
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):
更改分区类型
在离开 fdisk 之前,我们将更改 swap 和 vfat 分区的分区类型。为此,我们使用 t 子命令来设置分区类型。我们将 /dev/sda4 设置为类型 82(Linux 交换分区),将 /dev/sda9 设置为类型 9(FAT32)。如果您想查看受支持类型的完整列表,请输入 L,如清单 8 所示。
清单 8. 更改分区类型
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 命令来删除一个或多个分区,以便重新定义它们。如果您对设置满意,则可以使用 v 命令来验证您的设置,然后使用 w 命令来写入新的分区表并退出。参见清单 9。如果您再次运行 fdisk -l 命令,您将看到,Linux 现在已能够识别新分区。与其他操作系统不同的是,Linux 并不总是需要重新启动才能看到更改。举例来说,如果 /dev/hda3 变成 /dev/hda2,则需要重新启动,因为原来的 /dev/hda2 已被删除。如果需要重新启动,fdisk 应该会告诉您。
清单 9. 保存分区表
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
您可能已注意到,我们没有更改任意分区上的 bootable 标志。现在,我们的磁盘还有 Windows Master Boot Record (MBR),因此将启动标记为 bootable 的第一个主分区(我们的示例中为 NTFS 分区)。
LILO 和 GRUB 都不使用 bootable 标志。如果其中一个安装在 MBR 中,那么它就能够引导 Windows/XP 分区。您也可以将 LILO 或 GRUB 安装到您的 /boot 分区(/dev/hda2)中,将该分区标记为 bootable 并移除 /dev/hda1 的 bootable 标志。如果机器今后将恢复为 Windows 专用机器,那么保留原始 MBR 可能会有用。
如果需要,您还可以使用 fdisk 来修复分区表中的分区顺序。这通常将会更改分区编号,因此您可能需要完成其他工作才能将您的系统恢复为工作系统。要进行这个更改,使用 f 子命令切换到专家模式,然后使用 r 子命令修复分区顺序,如清单 10 所示。如果您只是想看看新的分区顺序而不实际更改,可以使用 q 子命令退出(本例的做法),而不是将更新后的分区表写到磁盘中。
清单 10. 修复分区表顺序
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
/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
您现在已经了解了向 Linux 工作站添加分区的一种方法。文章 “学习 Linux,101:查找并放置文件系统” 介绍了其他可能的方法。 |
|