Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 1 | .\" -*- nroff -*- |
Theodore Ts'o | ffd8078 | 2009-08-22 23:41:49 -0400 | [diff] [blame] | 2 | .TH E2FREEFRAG 8 "@E2FSPROGS_MONTH@ @E2FSPROGS_YEAR@" "E2fsprogs version @E2FSPROGS_VERSION@" |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 3 | .SH NAME |
| 4 | e2freefrag \- report free space fragmentation information |
| 5 | .SH SYNOPSIS |
| 6 | .B e2freefrag |
| 7 | [ |
| 8 | .B \-c chunk_kb |
| 9 | ] |
| 10 | [ |
| 11 | .B \-h |
| 12 | ] |
| 13 | .B filesys |
| 14 | |
| 15 | .SH DESCRIPTION |
| 16 | .B e2freefrag |
| 17 | is used to report free space fragmentation on ext2/3/4 file systems. |
| 18 | .I filesys |
| 19 | is the filesystem device name (e.g. |
| 20 | .IR /dev/hdc1 ", " /dev/md0 ). |
| 21 | The |
| 22 | .B e2freefrag |
| 23 | program will scan the block bitmap information to check how many free blocks |
| 24 | are present as contiguous and aligned free space. The percentage of contiguous |
| 25 | free blocks of size and of alignment |
| 26 | .IR chunk_kb |
| 27 | is reported. It also displays the minimum/maximum/average free chunk size in |
| 28 | the filesystem, along with a histogram of all free chunks. This information |
| 29 | can be used to gauge the level of free space fragmentation in the filesystem. |
| 30 | .SH OPTIONS |
| 31 | .TP |
| 32 | .BI \-c " chunk_kb" |
Theodore Ts'o | cba91c4 | 2009-08-09 19:40:14 -0400 | [diff] [blame] | 33 | If a chunk size is specified, then |
| 34 | .B e2freefrag |
| 35 | will print how many free chunks of size |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 36 | .I chunk_kb |
Theodore Ts'o | cba91c4 | 2009-08-09 19:40:14 -0400 | [diff] [blame] | 37 | are available in units of kilobytes (Kb). The chunk size must be a |
| 38 | power of two and be larger than filesystem block size. |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 39 | .TP |
| 40 | .BI \-h |
| 41 | Print the usage of the program. |
| 42 | .SH EXAMPLE |
| 43 | # e2freefrag /dev/vgroot/lvhome |
| 44 | .br |
| 45 | Device: /dev/vgroot/lvhome |
| 46 | .br |
| 47 | Blocksize: 4096 bytes |
| 48 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 49 | Total blocks: 1504085 |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 50 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 51 | Free blocks: 292995 (19.5%) |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 52 | .br |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 53 | |
Theodore Ts'o | aff2cf8 | 2009-08-09 19:29:30 -0400 | [diff] [blame] | 54 | Min. free extent: 4 KB |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 55 | .br |
Theodore Ts'o | aff2cf8 | 2009-08-09 19:29:30 -0400 | [diff] [blame] | 56 | Max. free extent: 24008 KB |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 57 | .br |
Theodore Ts'o | aff2cf8 | 2009-08-09 19:29:30 -0400 | [diff] [blame] | 58 | Avg. free extent: 252 KB |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 59 | .br |
| 60 | |
Theodore Ts'o | aff2cf8 | 2009-08-09 19:29:30 -0400 | [diff] [blame] | 61 | HISTOGRAM OF FREE EXTENT SIZES: |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 62 | .br |
Theodore Ts'o | aff2cf8 | 2009-08-09 19:29:30 -0400 | [diff] [blame] | 63 | Extent Size Range : Free extents Free Blocks Percent |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 64 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 65 | 4K... 8K- : 704 704 0.2% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 66 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 67 | 8K... 16K- : 810 1979 0.7% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 68 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 69 | 16K... 32K- : 843 4467 1.5% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 70 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 71 | 32K... 64K- : 579 6263 2.1% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 72 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 73 | 64K... 128K- : 493 11067 3.8% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 74 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 75 | 128K... 256K- : 394 18097 6.2% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 76 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 77 | 256K... 512K- : 281 25477 8.7% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 78 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 79 | 512K... 1024K- : 253 44914 15.3% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 80 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 81 | 1M... 2M- : 143 51897 17.7% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 82 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 83 | 2M... 4M- : 73 50683 17.3% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 84 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 85 | 4M... 8M- : 37 52417 17.9% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 86 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 87 | 8M... 16M- : 7 19028 6.5% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 88 | .br |
Andreas Dilger | ad751f1 | 2009-07-24 18:32:25 -0400 | [diff] [blame] | 89 | 16M... 32M- : 1 6002 2.0% |
Theodore Ts'o | 0b2681f | 2009-07-22 03:40:58 -0400 | [diff] [blame] | 90 | .SH AUTHOR |
| 91 | This version of e2freefrag was written by Rupesh Thakare, and modified by |
| 92 | Andreas Dilger <adilger@sun.com>, and Kalpak Shah. |
| 93 | .SH SEE ALSO |
| 94 | .IR debugfs (8), |
| 95 | .IR dumpe2fs (8), |
| 96 | .IR e2fsck (8) |