硬盘扇区解疑

缘起

最近使用希捷硬盘盒装的3T硬盘满了,准备搞一个8T的硬盘换上去,就涉及到把老的3T硬盘克隆过去,遇到了扇区不对应的问题,这里解惑记录下。

折腾过程

问题情况

由于要克隆硬盘,就把希捷硬盘盒里的3T硬盘和新的8T硬盘都插到一个多盘位的硬盘盒上,然后使用winhex顺利的拷贝完成。

接下来问题来了,把克隆完成的8T硬盘插到希捷硬盘盒上,发现硬盘在nas上没办法使用了,能看到分区,但是只要格式化或者拓展分区到8T(因为是克隆的3T分区,显示分区大小还是3T)就会操作失败或者卡死。

同时呢,表现非常像是只读保护了,能读取但是写入或等操作均不行。

那么问题是啥呢?硬盘坏了?这块8T硬盘确实05黄了有告警,但是不至于完全写不了吧?

分析情况

为了分析问题的原因,把有问题状态的希捷硬盘盒查到windows机器上,依然是可以看到分区,正常看到文件的,但是在调节分区大小等操作时,一样是卡死的状态,没有办法操作成功。

分析到这里,感觉应该是硬盘和硬盘盒的兼容性问题,或者时分区兼容性问题。

于是把8T硬盘从硬盘盒拿出来,再插到另一个多盘位硬盘盒上,把分区啥的完全删除,然后再插入到硬盘盒上,再次操作分区和格式化,发现就完全好了。

那么,问题的原因是什么呢?

问题原因

经过详细对比分区情况,发现多盘位的硬盘盒上,磁盘的逻辑分区是512,物理分区是4096,而在希捷硬盘盒上,逻辑分区是4096,物理分区是4096,这里也是不一致的地方了。

可能是希捷硬盘盒的主控,只支持4096的逻辑分区,直接格式化后就都是4096,而在多盘位硬盘盒上克隆的硬盘,分区的逻辑扇区是512的,而不是4096

因此希捷硬盘盒检测到不一致后,为了保护数据或者安全考虑,直接就只读保护了。。。。

什么是逻辑扇区和物理扇区

在早期,硬盘的物理扇区都是512的,但是随着技术发展,硬盘的物理扇区都是4096了,但是出于兼容性考虑,大量的系统的默认逻辑分区仍然是512的。

而普通的或者说大部分的硬盘盒为了兼容性,都是512的逻辑扇区,即使在4096物理扇区的硬盘上。

那么这里的逻辑扇区在哪里确定的呢?逻辑扇区是操作系统层面+硬盘确定的,大部分的新系统都支持4k扇区了,现在主流的linux系统都支持指定硬盘的逻辑扇区。

因此当前系统上,使用多少的逻辑扇区,取决于硬盘告诉系统他的逻辑扇区是多少,要是像希捷硬盘盒一样告诉是4k,那就应用4k,否则就是512

可以使用下面命令查看磁盘的扇区参数:

sudo fdisk /dev/sda

然后输入p即可

但是像这次的希捷硬盘盒,它这一层由于有主控,包装了一层,这里也是可以确定硬盘的逻辑扇区大小的。

那么不同逻辑扇区大小的硬盘,可以互相克隆吗?答案是否定的,一般的克隆软件也会检测后报错的。


那么还有一个问题,操作系统层面上,扇区或者操作的最小单位是多少呢?


现在主流的操作系统,这个值都是4k,即1字节的文件,占用也是4k磁盘大小。

总结

这么看下来,4k的逻辑扇区是未来的趋势,可以承载更大的容量和数据存储效率,硬盘厂商在大力推广,基本都是4k的物理扇区;但是现在的系统好像支持就完全是另外一回事了,基本都还在512字节的逻辑扇区。

参考资料

https://www.cnblogs.com/pipci/p/13276784.html


发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。