我的笔记本电脑上有一块硬盘,有两个分区(一个安装了 Ubuntu 12.04 的 ext3 分区和一个交换分区)。
fdisk
给了我以下警告:
Partition 1 does not start on physical sector boundary
原因是什么?我需要修复吗?如果需要,该怎么做?
这是sudo fdisk -l
:
Disk /dev/sda: 750.2 GB, 750156374016 bytes
255 testine, 63 settori/tracce, 91201 cilindri, totale 1465149168 settori
Unità = settori di 1 * 512 = 512 byte
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Identificativo disco: 0x5a25087f
Dispositivo Boot Start End Blocks Id System
/dev/sda1 * 63 1448577023 724288480+ 83 Linux
Partition 1 does not start on physical sector boundary.
/dev/sda2 1448577024 1465147391 8285184 82 Linux swap / Solaris
这是sudo lshw
相关结果:
*-disk
description: ATA Disk
product: WDC WD7500BPKT-0
vendor: Western Digital
physical id: 0
bus info: scsi@0:0.0.0
logical name: /dev/sda
version: 01.0
serial: WD-WX21CC1T0847
size: 698GiB (750GB)
capabilities: partitioned partitioned:dos
configuration: ansiversion=5 signature=5a25087f
*-volume:0
description: EXT3 volume
vendor: Linux
physical id: 1
bus info: scsi@0:0.0.0,1
logical name: /dev/sda1
logical name: /
version: 1.0
serial: cc5c562a-bc59-4a37-b589-805b27b2cbd7
size: 690GiB
capacity: 690GiB
capabilities: primary bootable journaled extended_attributes large_files recover ext3 ext2 initialized
configuration: created=2010-02-27 09:18:28 filesystem=ext3 modified=2012-06-23 18:33:59 mount.fstype=ext3 mount.options=rw,relatime,errors=remount-ro,user_xattr,barrier=1,data=ordered mounted=2012-06-28 00:20:47 state=mounted
*-volume:1
description: Linux swap volume
physical id: 2
bus info: scsi@0:0.0.0,2
logical name: /dev/sda2
version: 1
serial: 16a7fee0-be9e-4e34-9dc3-28f4eeb61bf6
size: 8091MiB
capacity: 8091MiB
capabilities: primary nofs swap initialized
configuration: filesystem=swap pagesize=4096
以下是相关/etc/fstab
行:
UUID=cc5c562a-bc59-4a37-b589-805b27b2cbd7 / ext3 errors=remount-ro,user_xattr 0 1
UUID=16a7fee0-be9e-4e34-9dc3-28f4eeb61bf6 none swap sw 0 0
答案1
你的硬盘有高级格式分区未完全对齐的 4096 字节扇区
此行解释了警告:
扇区大小(逻辑/物理):512 字节 /4096 字节
- 您的硬盘是较新的型号之一,它使用高级格式每个物理扇区有 4096 字节,而不是原来的 512 字节/扇区。
- 这些 HDD 仍然可以提供 512 字节/扇区的“传统”模拟,这就是您看到逻辑扇区大小为 512 的原因。
- 事实上,
lshw
显示它是西部数据硬盘,第一家转向 AF 的公司。他们有一个内容丰富的页面,上面有很多信息,您可能希望查看一下。
因此,出现警告的原因是分区 1 从逻辑扇区 63 = 字节 32256 开始,这个数字不能被 4096 整除;实际上,它接近第 7 个物理扇区的末尾(准确地说是位置 7.875:)
你应该修复它吗?如果修复,该怎么做?[始终备份!]
理论上,这种划分可能在一定程度上影响读/写 IO 速率,具体取决于驱动器的固件。如果您现在对性能感到满意,请忽略警告,无需执行任何操作。如果不满意,首先备份所有重要数据,然后使用 Gparted 移动分区,使其从 4096 字节扇区开始;将起始边界设置为1 米布是一种简单的方法。
- 从技术上讲,你可以将起始位置设置为任何逻辑扇区是 8 的倍数,例如 64 是好的,256 是好的,等等,但是 63、255……则不可以。
答案2
对于您的新硬盘,首先根据您的意愿使用 gparted 创建分区。
然后使用以下方式访问您的硬盘命令fdisk设备名称。 米fdisk 中的命令将打印帮助菜单。
npcompete@npcompete-desktop:~$ sudo fdisk /dev/sda 该设备显示的逻辑扇区大小小于 物理扇区大小。对齐到物理扇区(或最佳 建议使用不超过 I/O 大小边界的值,否则性能可能会受到影响。 命令(m 获取帮助):p 磁盘 /dev/sda:1000.2 GB,1000204886016 字节 255 个磁头,63 个扇区/磁道,121601 个磁柱,共计 1953525168 个扇区 单位 = 1 * 512 = 512 字节的扇区 扇区大小(逻辑/物理):512 字节 / 4096 字节 I/O 大小(最小/最佳):4096 字节 / 4096 字节 磁盘标识符:0x0008e009 设备启动开始结束块ID系统 /dev/sda1 2048 209717247 104857600 83 Linux /dev/sda2 209717248 1953525167 871903960 5 扩展 /dev/sda5 600349113 795667319 97659103+ 83 Linux 分区 5 未从物理扇区边界开始。 /dev/sda6 795667383 990985589 97659103+ 83 Linux 分区 6 不是从物理扇区边界开始的。 /dev/sda7 990985653 1953520064 481267206 83 Linux 分区 7 不是从物理扇区边界开始的。 /dev/sda8 209719296 600349112 195314908+ 83 Linux 分区表条目不按磁盘顺序排列 命令(m 表示帮助):d 分区数(1-8):5 命令(m 获取帮助):p 磁盘 /dev/sda:1000.2 GB,1000204886016 字节 255 个磁头,63 个扇区/磁道,121601 个磁柱,共计 1953525168 个扇区 单位 = 1 * 512 = 512 字节的扇区 扇区大小(逻辑/物理):512 字节 / 4096 字节 I/O 大小(最小/最佳):4096 字节 / 4096 字节 磁盘标识符:0x0008e009 设备启动开始结束块ID系统 /dev/sda1 2048 209717247 104857600 83 Linux /dev/sda2 209717248 1953525167 871903960 5 扩展 /dev/sda5 795667383 990985589 97659103+ 83 Linux 分区 5 未从物理扇区边界开始。 /dev/sda6 990985653 1953520064 481267206 83 Linux 分区 6 不是从物理扇区边界开始的。 /dev/sda7 209719296 600349112 195314908+ 83 Linux 分区表条目不按磁盘顺序排列 命令(m 获取帮助):w 分区表已被改变! 调用ioctl()重新读取分区表。 同步磁盘。 npcompete@npcompete-desktop:~$ sudo fdisk /dev/sda 该设备显示的逻辑扇区大小小于 物理扇区大小。对齐到物理扇区(或最佳 建议使用不超过 I/O 大小边界的值,否则性能可能会受到影响。 命令(m 表示帮助):n 分区类型: p 主要(1 个主要、1 个扩展、2 个免费) l 逻辑(从 5 开始编号) 选择(默认 p):l 添加逻辑分区 8 第一个扇区(600351161-1953525167,默认600352768): 使用默认值 600352768 最后一个扇区,+sectors 或 +size{K,M,G} (600352768-795667382,默认 795667382): 使用默认值 795667382 命令(m 获取帮助):p 磁盘 /dev/sda:1000.2 GB,1000204886016 字节 255 个磁头,63 个扇区/磁道,121601 个磁柱,共计 1953525168 个扇区 单位 = 1 * 512 = 512 字节的扇区 扇区大小(逻辑/物理):512 字节 / 4096 字节 I/O 大小(最小/最佳):4096 字节 / 4096 字节 磁盘标识符:0x0008e009 设备启动开始结束块ID系统 /dev/sda1 2048 209717247 104857600 83 Linux /dev/sda2 209717248 1953525167 871903960 5 扩展 /dev/sda5 795667383 990985589 97659103+ 83 Linux 分区 5 未从物理扇区边界开始。 /dev/sda6 990985653 1953520064 481267206 83 Linux 分区 6 不是从物理扇区边界开始的。 /dev/sda7 209719296 600349112 195314908+ 83 Linux /dev/sda8 600352768 795667382 97657307+ 83 Linux 分区表条目不按磁盘顺序排列 命令(m 获取帮助):w 分区表已被改变! 调用ioctl()重新读取分区表。 同步磁盘。
现在删除给出警告的分区dfdisk 中的选项。
第一个命令d,然后是分区号(警告中提到)。
现在使用以下方法将更改写入磁盘瓦命令。它将退出 fdisk。
第二次使用您的 HDD命令fdisk设备名称。
现在使用可用空间创建一个新分区(之前我们删除了一个分区,这将是可用空间或未分配的空间)nfdisk 中的命令。
在新分区命令中,不要输入第一个和最后一个扇区的任何值,只需按进入.它将采用默认值。
现在使用以下方法将更改写入磁盘瓦命令。它将退出 fdisk。
对所有分区执行上述步骤。完成此操作后,使用分区。(这就是我所做的对我有用的事情。 fdisk -l 输出中没有警告。)
答案3
正如韋萊:
您的硬盘具有高级格式 4096 字节扇区,但分区并未完全对齐。
高级格式规范及其对用户端硬盘分区实践的影响很好地解释了本文。
要解决此问题,您必须备份你的数据进而:
- 将错误大小的分区调整为正确的大小;
- 或者删除错误大小的分区并创建一个适当大小的新分区。
要使用名为 GParted 的图形硬盘分区软件实现此目的,您可以:
以超级用户权限启动 Gparted 应用程序;谨慎行事!
gksudo gparted
从 GParted 菜单右上角的下拉菜单中选择包含错误大小分区的存储设备。
通过在矩形分区图中单击来选择大小错误的分区。
现在您可以选择删除并创建一个新分区,也可以选择调整现有分区的大小。无论您选择哪种方式,您都会看到一个菜单,允许您设置分区的大小。您必须清除“四舍五入到磁柱”复选框,并将前面的可用空间大小设置为 1MiB。它看起来类似于
。
答案4
1. 解决它
我也遇到了这个问题,这就是我抑制烦人的警告的方法!
重点是:set the start to any logical sector, which is a multiple of 8
。
我设置了204800
(因为我只能从65535-976773167中选择)。
步骤1 fdisk
$ fdisk /dev/sdf
The device presents a logical sector size that is smaller than
the physical sector size. Aligning to a physical sector (or optimal
I/O) size boundary is recommended, or performance may be impacted.
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
命令(输入 m 获取帮助):d
已选择分区 1
分区 1 已删除
命令(输入 m 获取帮助):p
磁盘 /dev/sdf:500.1 GB, 500107862016 字节,976773168 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 4096 字节
I/O 大小(最小/最佳):4096 字节 / 33553920 字节
磁盘标签类型:dos
磁盘标识符:0xa2254a70
设备 Boot Start End Blocks Id System
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
# the key point
# ⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬⏬
起始 扇区 (65535-976773167,默认为 65535): 204800 (chose a multiple of 8)
Last 扇区, +扇区 or +size{K,M,G} (204800-976773167,默认为 976773167):
将使用默认值 976773167
分区 1 已设置为 Linux 类型,大小设为 465.7 GiB
#