分区是一种将单个硬盘分为一个或多个部分或“片”(称为分区)的方法,分区是驱动器上被视为独立磁盘并包含单一类型文件系统的部分,而分区表是将硬盘驱动器的这些物理部分与分区标识相关联的索引。
在Linux系统中,管理IBM PC兼容系统中的MBR分区(截止~2009)的传统工具是fdisk命令。对于GPT分区(~2010及更高版本),将使用gdisk工具。这些工具中的每一个都可以通过键入其名称后跟设备名称(例如/dev/sdb)来调用。
使用fdisk管理MBR分区
首先介绍fdisk工具:
# fdisk /dev/sdb
出现提示,要求进行下一步操作。如果不确定,可以按“ m
”键显示帮助内容。
在上图中,突出显示了最常用的选项。可以随时按“ p
”键显示当前分区表:
Id列显示fdisk已分配给分区的分区类型(或分区ID)。分区类型充当文件系统的指示符,分区包含在该分区中访问数据的方式。请注意,对每种分区类型的全面介绍超出本文内容,感兴趣的朋友可自己找些资料看看。
fdisk命令用法
fdisk使用的一些选项如下:
- 可以通过按“
l
”选项(小写l)列出fdisk可以管理的所有分区类型。 - 按“
d
”删除现有分区。如果在驱动器中发现多个分区,系统会询问你应删除哪一个。 - 输入相应的编号,然后按“
w
”(将修改写入分区表)以应用更改。
在下面的示例中,小编将删除/dev/sdb2
,然后输出 ( p
) 分区表来验证修改。
按“ n
”创建新分区,然后按“ p
”表示它将成为主分区。最后,可以接受所有默认值(在这种情况下分区将占用所有可用空间),或指定如下大小:
如果fdisk选择的分区ID不适合我们的设置,可以按“ t ”来更改它,如下图所示:
完成分区设置后,按“ w
”将更改提交到磁盘。
使用gdisk管理GPT分区
在下面的示例中,将使用gdisk /dev/sdb
命令:
# gdisk /dev/sdb
必须注意,gdisk可用于创建MBR或GPT分区,如下图所示:
使用GPT分区的优点是我们可以在同一个磁盘上创建最多128个分区,其大小可达PB量级,而MBR分区的最大大小为2TB。请注意, fdisk中的大多数选项与gdisk中的相同。因此,这里不会详细介绍它们,以下是该操作过程的部分截图:
在Linux中格式化文件系统
一旦创建了所有必要的分区,就必须创建文件系统。要查找系统支持的文件系统列表,请运行以下ls命令:
# ls /sbin/mk*
你应该选择的文件系统类型取决于你的要求。尽量应该考虑每个文件系统及其自身功能集的优缺点。在文件系统中需要寻找的两个重要属性是:
- 日志支持;可以在系统崩溃时更快地恢复数据。
- 安全增强型Linux(SELinux)支持;它是“对Linux的安全增强,允许用户和管理员对访问控制进行更多控制”。
在下一个示例中,小编将使用mkfs在/dev/sdb1上创建一个标记为Tecmint的ext4文件系统(支持日志记录和SELinux) ,其基本语法为:
# mkfs -t [filesystem] -L [label] device 或者 # mkfs.[filesystem] -L [label] device
创建和使用交换分区
如果需要Linux系统访问虚拟内存,则交换分区是必要的,虚拟内存是当主系统内存(RAM)全部使用时指定用作内存的硬盘部分。因此,在具有足够RAM来满足所有要求的系统上可能不需要交换分区。然而,即使在这种情况下,也由系统管理员决定是否使用交换分区。决定交换分区大小的简单经验法则如下。
对于最多2GB的物理RAM ,交换通常应等于2倍物理RAM,然后对于超过2GB的任意数量,应额外增加1倍物理 RAM ,但绝不能小于32MB。
因此,如果M=RAM量(以GB为单位),S=交换量(以GB为单位),则有:
If M < 2 S = M *2 Else S = M + 2
请记住,以上只是一个公式,只有你作为系统管理员才能对交换分区的使用和大小拥有最终决定权。
另外,要配置交换分区,请创建一个常规分区(如前面所示)并具有所需的大小。接下来,需要将以下条目添加到/etc/fstab文件中(X可以是b或c):
/dev/sdX1 swap swap sw 0 0
最后,让我们格式化并启用交换分区:
# mkswap /dev/sdX1 # swapon -v /dev/sdX1
显示交换分区的快照:
# cat /proc/swaps
禁用交换分区命令如下:
# swapoff /dev/sdX1
接下来我们将使用/dev/sdc1(=512MB,对于具有256MB RAM的系统)来设置一个带有fdisk的分区,并且将按照上面详细说明的步骤将其用作交换区。请注意,在这种情况下我们将指定固定大小:
结论
在Linux系统当中,创建分区(包括交换)和格式化文件系统对于你的系统管理之路至关重要。在上述内容中,小编简单介绍使用不同的命令对Linux存储设备进行分区,希望能够帮助大家更好的操作。