共计 793 个字符,预计需要花费 2 分钟才能阅读完成。
背景:在 3A 云服务器上扩容磁盘,随着业务减少一直扩容磁盘,起初发现扩容超过 16T 就报错,报的错莫名其妙。我在想,我是单机,不是群集啊,咋回事?
我切换到英文界面看到原话,原来微软中文版是把 clusters 当 ” 群集 ” 翻译了,实际上 clusters 还有 ” 簇 ” 的意思,在磁盘方面,cluster size 其实就是 unit size(簇大小,单元大小,块大小),磁盘分区时格式化环节有个中央能够指定它
对于磁盘块大小差别对分区的影响,参考微软官网文档
在腾讯云上最间接的影响就是,如果采纳 Windows 零碎默认的块大小,那么云盘后续一直扩容,文件系统大小最大只能到 16T,即使你云盘硬件大小扩容空间到 16T 以上,文件系统层面最大只能反对到 16T。如果要文件系统反对大于 16T,倡议设置块大小为 8192。
新盘咱们分区的时候,倡议分区模式选 GPT(默认是 MBR),而后 ” 调配单元大小 ” 选 8192,不要选默认值或小于 8192 的值。
如果曾经分好区了,如何确定已分区的块大小?
以 C 分区为例
办法①
cmd 命令行:
fsutil fsinfo ntfsInfo C:
办法②
cmd 命令行按箭头程序执行
diskpart → sel disk 0 → sel part 1 → filesystems
办法③
cmd 命令行:
wmic volume where “driveletter=’C:'” get driveletter,blocksize
办法④
powershell 命令行:
(Get-Volume C).AllocationUnitSize
Get-Volume | Format-List AllocationUnitSize, FileSystemLabel
办法⑤
powershell 命令行:(Get-WmiObject win32_volume | where { $_.driveletter -eq ‘C:’}).BlockSize
办法⑥
chkdsk 盘符:
例如 chkdsk c: