tune2fs adjusts tunable filesystem parameters on a Linux second extended filesystem.
Tune2fs brings the ability to modify various parameters on a file system volume that may not be the best or require some changes to reflect the needs of the environment. One example is Ubuntu: by default Ubuntu verifies file system integrity every 33 mounts/bootups or every 120 days(whichever comes first), while well intended the defaults may not be the best on a test or development system which may be subject to frequent reboots. Tune2fs is easy to understand, I will walk you through what I consider to be some of the most common uses for tune2fs.
You can always consult the man pages for more information. Just use:
$ man tune2fs
I tend to boot Ubuntu more than 33 times a month, which is why I always increase the number of mounts.
$ sudo tune2fs -c 120 -i 3m /dev/sdb1
tune2fs 1.40.8 (13-Mar-2008)
Setting maximal mount count to 120
Setting interval between checks to 7776000 seconds
- c max_mount_count This option is responsible for the number of mounts before the integrity check is done. - i interval-between-checks This option is responsible for the mounts of days the system should wait before performing an integrity check. d = days | w = weeks | m = months, in this example the check is to be performed every 3 months -i 3M.
While dangerous some people may opt to disable checks all at once.
$ sudo tune2fs -i 0 /dev/sda1
tune2fs 1.40.8 (13-Mar-2008)
Setting interval between checks to 0 seconds
-i 0 - This option disables checks based on time of the file system. Be careful the system will no longer perform integrity check after this options is selected.
Changing the volume label name may be useful for personal labeling porpuses such as changing the name of a portable drive. Use the -l parameter to list the name of the filesystem superblock.
$ sudo tune2fs -l /dev/sda1 | grep volume
Filesystem volume name: /home/user
Capital -L parameter will change the volume-label name. In this example I am changing the name from /home/user to myhome.
$ sudo tune2fs -L myhome /dev/sda1
tune2fs 1.40.8 (13-Mar-2008)
Verify the new name change.
$ sudo tune2fs -l /dev/sda1 | grep volume
Filesystem volume name: myhome
Lots of valuable information.
$ sudo tune2fs -l /dev/sdb1
tune2fs 1.40.8 (13-Mar-2008)
Filesystem volume name: Last mounted on: Filesystem UUID: f060d692-53fd-4180-811c-f20bcf7f24d0
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype n eeds_recovery sparse_super large_file
Filesystem flags: signed_directory_hash
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 3932160
Block count: 15727627
Reserved block count: 786381
Free blocks: 15557651
Free inodes: 3932146
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 1020
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 256
Filesystem created: Sun May 9 00:43:38 2010
Last mount time: Sun May 9 01:05:38 2010
Last write time: Sun May 9 01:05:38 2010
Mount count: 2
Maximum mount count: 33
Last checked: Sun May 9 00:43:38 2010
Check interval: 15552000 (6 months)
Next check after: Fri Nov 5 00:43:38 2010
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 128
Journal inode: 8
Default directory hash: tea
Directory Hash Seed: 949c1e9b-19b3-437f-be23-05b14a671d3a
Journal backup: inode blocks
linux, tune2fs, ubuntu — May 10, 2010