62

How do I determine the block size of an ext3 partition on Linux?

mike
  • 3,853
  • 11
  • 29
  • 27

8 Answers8

75
# tune2fs -l /dev/sda1 | grep -i 'block size'
Block size:               1024

Replace /dev/sda1 with the partition you want to check.

skraggy
  • 1,723
  • 13
  • 10
49

Without root, without writing, and for any filesystem type, you can do:

stat -fc %s .

This will give block size of the filesystem mounted in current directory (or any other directory specified instead of the dot).

mik
  • 591
  • 5
  • 6
13
dumpe2fs -h /dev/md2

will output something with:

Block size:               4096
Fragment size:            4096
quanta
  • 50,327
  • 19
  • 152
  • 213
evcz
  • 151
  • 1
  • 6
10

In the case where you don't have the right to run tune2fs on a device (e.g. in a corporate environment) you can try writing a single byte to a file on the partition in question and check the disk usage:

echo 1 > test
du -h test
narthi
  • 201
  • 2
  • 2
7

On x86, a filesystem block is just about always 4KiB - the default size - and never larger than the size of a memory page (which is 4KiB).

wzzrd
  • 10,269
  • 2
  • 32
  • 47
  • 1
    This is the same on every platform, the largest block size is supported by ext2/3 is 4096 bytes. – Dave Cheney Jun 23 '09 at 10:06
  • Thanks Dave! I learned something today ;-) I originally thought the ext3 blocksize could be 8k on platforms that supported 8k memory pages. – wzzrd Jun 23 '09 at 12:44
  • Wikipedia says it can be 8k: http://en.wikipedia.org/wiki/Ext3#Size_limits – dfrankow Apr 25 '12 at 22:41
  • 1
    @dfrankow: if you have 8k memory pages, such as on Alpha hardware, yes. But you do not have those on x86 hardware and that is what I was talking about. – wzzrd Apr 26 '12 at 08:03
5

To detect block size of required partition:

  1. Detect partition name:

    $ df -h
    

    for example we have /dev/sda1

  2. Detect block size for this partition:

    $ sudo blockdev --getbsz /dev/sda1
    
Pablo A
  • 169
  • 9
lospejos
  • 756
  • 1
  • 8
  • 7
0

Use

sudo dumpe2fs /dev/sda1 | grep "Block size"

where /dev/sda1 is the device partition. You can get it from lsblk

Pablo A
  • 169
  • 9
0
stat <<Filename>>

will also give file size in blocks

Michael Hampton
  • 237,123
  • 42
  • 477
  • 940
Mayur
  • 21