单分区磁盘配置的使用

use*_*500 8 linux hard-drive partitioning

我在我公司的 IT 安装中看到有许多磁盘,其中一个分区占用了磁盘上的所有空间。通常有一个类似/dev/sdb分区的东西/dev/sdb1,其大小/dev/sdb1是整个块设备的大小。然后使用所需的文件系统格式、挂载点等挂载分区。

我不明白为什么我们会使用一个分区而不是整个磁盘来进行这种(1 个分区)配置。在这种情况下为什么要使用分区而不是整个磁盘,有什么理由吗?是否有推荐这种方法的最佳实践?

例如,我们可以在整个原始块设备上创建一个文件系统并在不需要任何分区的情况下挂载它:

mkfs.ext4 -E stride=16,stripe-width=64 /dev/xvde
mount /dev/xvde /mnt/abc
Run Code Online (Sandbox Code Playgroud)

这将创建一个没有指定分区的挂载点。作为验证:

# sfdisk -l /dev/xvde

Disk /dev/xvde: 6527 cylinders, 255 heads, 63 sectors/track

# fdisk -l /dev/xvde

Disk /dev/xvde: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Run Code Online (Sandbox Code Playgroud)

对于有分区的东西,我们得到它下面的分区列表:

# fdisk -l /dev/sdb

Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes, 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x00082e8c

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048  3907026943  1953512448   83  Linux
Run Code Online (Sandbox Code Playgroud)

我的基本问题是:与在整个磁盘上创建文件系统然后挂载整个磁盘相比,创建一个分区然后在该分区上创建一个文件系统是否有一些优势?

Kam*_*ski 9

在这种情况下是否有任何理由使用分区而不是整个磁盘?

我能想到的几个原因:

  • 人们(阅读:未来的管理员)期望分区表。拥有它们可以节省 WTF 时刻。整个设备上的文件系统可能看起来更简单——“我正在保存一个抽象层,耶!” – 但它不是少了一层抽象层,而是多了一种可能性
  • 程序可能首先需要分区表,然后是文件系统。看看出现问题时会发生什么

在我看来,仅第一个原因就足够了。此外(尽管这些可能不适用于您的情况):

  • 如果您需要缩小文件系统并创建多分区设置,当您已经有一个分区表时会更容易。
  • 如果您需要在某处放置引导加载程序,与整个设备上的文件系统相比,具有某个标准偏移量的单个分区的 MBR 是一个更好的起点。我猜用 GPT 问题会收敛到上面的点。

但是,如果您需要在破坏其逻辑扇区大小的机箱和任何不破坏其逻辑扇区大小的机箱之间来回移动磁盘,则整个设备上的文件系统将使您更容易安装。比较这个问题和我在那里的回答。


归档时间:

查看次数:

1888 次

最近记录:

6 年,5 月 前