我买了一个新的 NVMe SSD ( SB-ROCKET-256
) 并安装了 Arch 用于gdisk
分区。理论上,这款SSD不支持512e,我认为物理尺寸应该是4096,我错了吗?我该如何设置它?分区表如下:
$ parted --align optimal /dev/nvme0n1
GNU Parted 3.2
Using /dev/nvme0n1
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: Unknown (unknown)
Disk /dev/nvme0n1: 256GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 273MB 272MB fat32 EFI System boot, esp
2 274MB 64.7GB 64.4GB ext4 Linux x86-64 root (/)
3 64.7GB 69.0GB 4295MB linux-swap(v1) Linux swap
4 69.0GB 256GB 187GB ext4 Linux /home
智能输出:
smartctl 7.0 2018-12-30 r4883 [x86_64-linux-5.2.11-1-MANJARO] (local build)
Copyright (C) 2002-18, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Number: Sabrent
Serial Number: 296E0797013700062530
Firmware Version: ECFM12.3
PCI Vendor/Subsystem ID: 0x1987
IEEE OUI Identifier: 0x6479a7
Total NVM Capacity: 256,060,514,304 [256 GB]
Unallocated NVM Capacity: 0
Controller ID: 1
Number of Namespaces: 1
Namespace 1 Size/Capacity: 256,060,514,304 [256 GB]
Namespace 1 Formatted LBA Size: 512
Namespace 1 IEEE EUI-64: 6479a7 2223093330
Local Time is: Sat Oct 5 14:51:26 2019 CEST
据我了解,扇区大小是自动设置的,并且应该是最佳的。这是最优的吗?
答案1
如果你去适用于您的 SSD 的 Sabrent 下载页面,你会发现一个名为“SSC software”的软件包 - 这是一个扇区大小转换器。
有了它,您可以将 SSD 向系统提供的块大小切换为 512 或 4096 字节,但切换过程将破坏 SSD 上当前存储的所有数据。
要查看系统当前的块大小概念,请运行lsblk -t
。对于真正的 512 字节存储设备(据内核所知),您应该看到 PHY-SEC、LOG-SEC 和 MIN-IO 的值全部为 512。
对于 512e 设备,您将看到 MIN-IO 和 PHY-SEC 为 4096,LOG-SEC 为 512,这表明系统知道如果以 4k 字节的块进行访问,设备将实现最佳性能,即使它当前正在模拟经典的 512 字节块大小。
对于真正的 4k 设备,所有三个值都应为 4096。