reiserfstune man page

reiserfstune — The tunning tool for the ReiserFS filesystem.


reiserfstune [ -f ] [ -h | --help ] [ -j | --journal-device FILE ] [ --no-journal-available ] [ --journal-new-device FILE ] [ --make-journal-standard ] [ -s | --journal-new-size N ] [ -o | --journal-new-offset N ] [ -t | --max-transaction-size N ] [ -b | --add-badblocks file ] [ -B | --badblocks file ] [ -u | --uuid UUID ] [ -l | --label LABEL ] [ -c | --check-interval interval-in-days ] [ -C | --time-last-checked timestamp ] [ -m | --max-mnt-count count ] [ -M | --mnt-count count ] device


reiserfstune is used for tuning the ReiserFS. It can change two journal  parameters (the journal size and the maximum transaction size), and it can move  the journal's location to a new specified block device. (The old ReiserFS's  journal may be kept unused, or discarded at the user's option.) Besides that reiserfstune can store the bad block list to the ReiserFS and set UUID and LABEL. Note: At the time of writing the relocated journal was implemented for a special  release of ReiserFS, and was not expected to be put into the mainstream kernel until approximately Linux 2.5.  This means that if you have the stock kernel you  must apply a special patch. Without this patch the kernel will refuse to mount  the newly modified file system.  We will charge $25 to explain this to you if  you ask us why it doesn't work.

Perhaps the most interesting application of this code is to put the journal on a solid state disk.


is the special file corresponding to the newly specified block device (e.g /dev/hdXX for IDE disk partition or /dev/sdXX for the SCSI disk partition).


-h | --help

Print usage information and exit.

-j | --journal-device FILE

FILE is the file name of the block device the file system has the current journal (the one prior to running reiserfstune) on. This option is required when the journal is already on a separate device from the main data device (although it can be avoided with --no-journal-available). If you don't specify journal device by this option, reiserfstune suppose that journal is on main device.


allows reiserfstune to continue when the current journal's block device is no longer available.  This might happen if a disk goes bad and you remove it (and run fsck).

--journal-new-device FILE

FILE is the file name of the block device which will contain the new journal for the file system. If you don't specify this, reiserfstune supposes that journal device remains the same.

-s | --journal-new-size N

N is the size parameter for the new journal. When journal is to be on a separate device - its size defaults to number of blocks that device has. When journal is to be on the same device as the filesytem - its size defaults to amount of blocks allocated for journal by mkreiserfs when it created the filesystem. Minimum is 513 for both cases.

-o | --journal-new-offset N

N is an offset in blocks where journal will starts from when journal is to be on a separate device. Default is 0. Has no effect when journal is to be on the same device as the filesystem.  Most users have no need to use this feature.  It can be used when you want the journals from multiple filesystems to reside on the same device, and you don't want to or cannot partition that device.

-t | --maximal-transaction-size N

N is the maximum transaction size parameter for the new journal. The default, and max possible, value is 1024 blocks. It should be less than half the size of the journal. If specifed incorrectly, it will be adjusted.

-b | --add-badblocks file

File is the file name of the file that contains the list of blocks to be marked  as bad on the fs. The list is added to the fs list of bad blocks.

-B | --badblocks file

File is the file name of the file that contains the list of blocks to be marked  as bad on the fs. The bad block list on the fs is cleared before the list specified  in the File is added to the fs.

-f | --force

Normally reiserfstune will refuse to change a journal of a file system that was created before this journal relocation code. This is because if you change the journal, you cannot go back (without special option --make-journal-standard) to an old kernel that lacks this feature and be able to use your filesytem.  This option forces it to do that. Specified more than once it allows to avoid asking for confirmation.


As it was mentioned above, if your file system has non-standard journal,  it can not be mounted on the kernel without journal relocation code. The thing can be changed, the only condition is that there is reserved area on main device of the standard journal size 8193 blocks  (it will be so for instance if you convert standard journal to non-standard). Just  specify this option when you relocate journal back, or without relocation if you already have it on main device.

-u | --uuid UUID

Set  the  universally  unique  identifier ( UUID ) of the filesystem to UUID (see also uuidgen(8)). The  format  of  the  UUID  is  a series  of  hex  digits  separated  by  hypthens,  like  this: "c1b9d5a2-f162-11cf-9ece-0020afc76f16".

-l | --label LABEL

Set  the  volume  label  of  the filesystem. LABEL can be at most 16 characters long; if it is longer than 16 characters, reiserfstune will truncate it.

-c | --check-interval interval-in-days

Adjust the maximal time between two filesystem checks.  A value of "disable" will disable the time-dependent checking. A value of "default" will restore the compile-time default.

It is strongly recommended that either -m (mount-count dependent) or -c (time-dependent) checking be enabled to force periodic full fsck.reiserfs(8) checking of the filesystem. Failure to do so may lead to filesystem corruption (due to bad disks, cables, memory, or kernel bugs) going unnoticed, ultimately resulting in data loss or corruption.

-C | --time-last-checked timestamp

Set the time the filesystem was last checked using fsck.reiserfs. This can be useful in scripts which use a Logical Volume Manager to make a consistent snapshot of a filesystem, and then check the filesystem during off hours to make sure it hasn't been corrupted due to hardware problems, etc. If the filesystem was clean, then this option can be used to set the last checked time on the original filesystem. The format of time-last-checked is the international date format, with an optional time specifier, i.e. YYYYMMDD[HH[MM[SS]]]. The keyword now is also accepted, in which case the last checked time will be set to the current time.

-m | --max-mnt-count max-mount-count

Adjust the number of mounts after which the filesystem  will  be checked by fsck.reiserfs(8). If max-mount-count is "disable", the number of times the filesystem is mounted will be disregarded by fsck.reiserfs(8) and the kernel. A value of "default" will restore the compile-time default.

Staggering  the  mount-counts  at which filesystems are forcibly checked will avoid all filesystems being  checked  at  one  time when using journaled filesystems.

You  should  strongly  consider  the  consequences  of disabling mount-count-dependent  checking  entirely.   Bad  disk   drives, cables,  memory,  and kernel bugs could all corrupt a filesystem without marking the filesystem dirty or in error.   If  you  are using  journaling on your filesystem, your filesystem will never be marked dirty, so it will not normally be checked.  A filesys‐ tem error detected by the kernel will still force an fsck on the next reboot, but it may already be too late to prevent data loss at that point.

This option requires a kernel which supports incrementing the count on each mount. This feature has not been incorporated into kernel versions older than 2.6.25.

See also the -c option for time-dependent checking.

-M | --mnt-count count

Set the number of times the filesystem has been mounted.  If set to a greater value than the max-mount-counts  parameter  set  by the -m option, fsck.reiserfs(8) will check the filesystem at the next reboot.

Possible Scenarios of Using Reiserfstune

1. You have ReiserFS on /dev/hda1, and you wish to have it working with its journal on the device /dev/journal

    boot kernel patched with special "relocatable journal support" patch
    reiserfstune /dev/hda1 --journal-new-device /dev/journal -f
    mount /dev/hda1 and use.
    You would like to change max transaction size to 512 blocks
    reiserfstune -t 512 /dev/hda1
    You would like to use your file system on another kernel that doesn't 
    contain relocatable journal support.
    umount /dev/hda1
    reiserfstune /dev/hda1 -j /dev/journal --journal-new-device /dev/hda1 --make-journal-standard
    mount /dev/hda1 and use.

2. You would like to have ReiserFS on /dev/hda1 and to be able to
switch between different journals including journal located on the
device containing the filesystem.
    boot kernel patched with special "relocatable journal support" patch
    mkreiserfs /dev/hda1
    you got solid state disk (perhaps /dev/sda, they typically look like scsi disks)
    reiserfstune --journal-new-device /dev/sda1 -f /dev/hda1
    Your scsi device dies, it is three in the morning, you have an extra IDE device
    lying around
    reiserfsck --no-journal-available /dev/hda1
    reiserfsck --rebuild-tree --no-journal-available /dev/hda1
    reiserfstune --no-journal-available --journal-new-device /dev/hda1 /dev/hda1
    using /dev/hda1 under patched kernel


This version of reiserfstune has been written by Vladimir Demidov <> and Edward Shishkin <>.


Please report bugs to the ReiserFS developers <>, providing as much information as possible--your hardware, kernel, patches, settings, all printed messages; check the syslog file for any related information.

See Also

reiserfsck(8), debugreiserfs(8), mkreiserfs(8)

Referenced By

fsadm(8), mkreiserfs(8), mount(8), reiserfsck(8).

January 2009 Reiserfsprogs-3.6.25