硬盘通过USB3.0与外部外壳连接。
$ sudo smartctl -a /dev/sdb
=== START OF INFORMATION SECTION ===
Model Family: Seagate Barracuda 3.5
Device Model: ST4000DM004-2CV104
Firmware Version: 0001
User Capacity: 4,000,787,030,016 bytes [4.00 TB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Rotation Rate: 5425 rpm
Form Factor: 3.5 inches
Device is: In smartctl database [for details use: -P show]
ATA Version is: ACS-3 T13/2161-D revision 5
SATA Version is: SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
SMART support is: Available - device has SMART capability.
SMART support is: Enabled4096 bytes physical。512字节:$ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 3.7 TiB, 4000787030016 bytes, 7814037168 sectors
Disk model: USB3.0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 4096 bytes / 33553920 bytes$ cat /sys/block/sdb/queue/hw_sector_size
512
$ cat /sys/block/sdb/queue/physical_block_size
512$ lsblk -o NAME,PHY-SeC /dev/sdb
NAME PHY-SEC
sdb 512
└─sdb1 512$ sudo blockdev --getbsz /dev/sdb
512那么,真正的硬盘物理扇区大小是多少呢?
我认为应该是4096,但我不知道为什么所有其他命令都给了我错误的结果。
-b 4096时使用badblocks。非常感谢。
4096,那么在Linux中还有其他工具可以显示除smartctl之外的真实结果吗?我发现另一个命令将显示4096:
$ sudo hdparm -I /dev/sdb | grep -i physical
Physical Sector size: 4096 bytes发布于 2021-06-25 15:22:15
根据fdisk,它是一个USB磁盘,所以信息是隐藏的。
smartctl有一个包含多个磁盘的数据库,因此它可以获得物理大小。
事实上,过去几年建造的任何HD,特别是多TB的HD,都会有4096字节的物理块大小。
我刚刚查看了我的小型NVME驱动器和gdisk,它们的逻辑/物理大小都是512字节--但是分区将在2048扇区边界上对齐(即1Mib)。SATA的SSD也是如此。
https://unix.stackexchange.com/questions/655816
复制相似问题