私はxfsでsuse 11サーバーを使用しており、「xfs_info/srv」コマンドを使用してこれを確認しました。
xfs_info /srv/
meta-data=/dev/mapper/vg01-srvvol isize=256 agcount=38, agsize=1964032 blks
= sectsz=512 attr=2
data = bsize=4096 blocks=73367552, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0
log =internal bsize=4096 blocks=3836, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
だから私はxfsが下線のディスクsectszのサイズを知っていると思いますが、今はsectszが512バイトのディスクを使用していますが、私の質問は、ext3/ext4ファイルシステムを使用してこの種の情報をどのように見つけることができるのですか?
Sectszが4096の新しいディスクを使用したいと思っているので、ext3/ext4は下線のsectszを使用します。
これは、物理ブロックサイズ4096の新しいssdを1つ使用したxfs_infoの出力です。
xfs_info /dev/mapper/vg00-logvol
meta-data=/dev/mapper/vg00-logvol isize=256 agcount=16, agsize=7144576 blks
= sectsz=4096 attr=2, projid32bit=0
data = bsize=4096 blocks=114313216, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0
log =internal bsize=4096 blocks=55817, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
$ Sudo tune2fs -l /dev/vda1
tune2fs 1.42.8 (20-Jun-2013)
Filesystem volume name: <none>
...
Free inodes: 127696
First block: 1
Block size: 1024
Fragment size: 1024
Reserved GDT blocks: 256
Blocks per group: 8192
...
まず、基礎となるdm
デバイスを見つけます:
ls -l /dev/mapper/vg01-srvvol
出力例:
lrwxrwxrwx 1 root root 7 Jan 28 14:32 /dev/mapper/vg01-srvvol -> ../dm-0
dm-0
、dm-1
など、こちらをご覧ください:
cat /sys/block/dm-0/queue/physical_block_size
実際の物理ブロックサイズを確認する唯一の信頼できる方法は、hdparm
を使用してディスクに直接クエリを実行することです。
hdparm -I /dev/sdX | grep Physical
parted
、tune2fs
、fdisk
などのすべてのLinuxツールは、カーネル(/ procで提供された値を介して)から、hdparm
で4Kと示されているディスクに512バイトを出力します。 (5つのHDDがテストされ、2つは4KのHDDです。)