Welcome to the Reiser4 Wiki, the Wiki for users and developers of the ReiserFS and Reiser4 filesystems.

For now, most of the documentation is just a snapshot of the old Namesys site (archive.org, 2007-09-29).

There was also a Reiser4 Wiki (archive.org, 2007-07-06) once on pub.namesys.com.

Mount

From Reiser4 FS Wiki
(Difference between revisions)
Jump to: navigation, search
m (tea?)
m (formatting fixes)
 
Line 3: Line 3:
 
=== acl ===
 
=== acl ===
  
Enable POSIX Access Control Lists. See the acl(5) manual page.
+
Enable POSIX Access Control Lists. See the [http://acl.bestbits.at/man/man.shtml acl(5) manual page].
 +
 
  
 
Example:
 
Example:
Line 13: Line 14:
  
 
Instructs 3.6 ReiserFS code to mount 3.5 filesystem, using 3.6 format for newly created objects. After this you cannot use it through 3.5 ReiserFS tools anymore. This option causes conversion of old format super block to the new format. If not specified - old partition will be dealt with in a manner of 3.5.
 
Instructs 3.6 ReiserFS code to mount 3.5 filesystem, using 3.6 format for newly created objects. After this you cannot use it through 3.5 ReiserFS tools anymore. This option causes conversion of old format super block to the new format. If not specified - old partition will be dealt with in a manner of 3.5.
 +
  
 
Example:
 
Example:
Line 22: Line 24:
  
 
Disable journalling. This will get you slight performance improvement in some situations at the cost of losing fast recovery from crashes. Actually even with this option turned on, ReiserFS still performs all journalling paraphernalia, save for actual writes into journalling area. Implementation of real nolog is work in progress.
 
Disable journalling. This will get you slight performance improvement in some situations at the cost of losing fast recovery from crashes. Actually even with this option turned on, ReiserFS still performs all journalling paraphernalia, save for actual writes into journalling area. Implementation of real nolog is work in progress.
 +
  
 
Example:
 
Example:
Line 30: Line 33:
 
=== notail ===
 
=== notail ===
  
By default, ReiserFS stores small files and `file tails' directly into the tree. This confuses some utilities like LILO. This option is used to disable packing of files into the tree.
+
By default, ReiserFS stores small files and 'file tails' directly into the tree. This confuses some utilities like LILO. This option is used to disable packing of files into the tree.
 +
 
  
 
Example:
 
Example:
Line 40: Line 44:
  
 
Replay transactions in journal, but don't actually mount filesystem. Used by fsck, mostly.
 
Replay transactions in journal, but don't actually mount filesystem. Used by fsck, mostly.
 +
  
 
Example:
 
Example:
Line 49: Line 54:
  
 
Specifies an external device to be used as the journal device.
 
Specifies an external device to be used as the journal device.
 +
  
 
Example:
 
Example:
Line 56: Line 62:
 
=== user_xattr ===
 
=== user_xattr ===
  
Enable Extended User Attributes. See the attr(5) manual page.
+
Enable Extended User Attributes. See the [http://acl.bestbits.at/man/man.shtml attr(5) manual page].
 +
 
  
 
Example:
 
Example:
Line 65: Line 72:
 
=== resize ===
 
=== resize ===
  
Remount option allowing to expand ReiserFS partition on-line. Make ReiserFS think that device has NUMBER blocks. Useful with LVM devices. There is a special resizer utility called [[resize_reiserfs]].
+
Remount option allowing to expand ReiserFS partition on-line. Make ReiserFS think that device has NUMBER blocks. Useful with [http://sources.redhat.com/lvm2/ LVM] devices. There is a special resizer utility called [[resize_reiserfs]].
 +
 
  
 
Example:
 
Example:
Line 76: Line 84:
 
Tunes block allocator. This option is used for testing experimental features, makes benchmarking new features with and without more convenient, should never be used by users in any code shipped to users (ideally).
 
Tunes block allocator. This option is used for testing experimental features, makes benchmarking new features with and without more convenient, should never be used by users in any code shipped to users (ideally).
  
* hashed_relocation
+
* hashed_relocation - This may give you performance improvements in some situations.
  
Tunes block allocator. This may give you performance improvements in some situations.
+
* no_unhashed_relocation - This may give you performance improvements in some situations.
  
* no_unhashed_relocation
+
* noborder - Disables the 'border allocator algorithm' invented by [mailto:yura@yura.polnet.botik.ru Yury Yu. Rupasov]. This may give you performance improvements in some situations.
Tunes block allocator. This may give you performance improvements in some situations.
+
  
* noborder
+
* border - Enables the 'border allocator algorithm' invented by [mailto:yura@yura.polnet.botik.ru Yury Yu. Rupasov]. This may give you performance improvements in some situations.  
Disable `border allocator algorithm' invented by Yury Yu. Rupasov <yura@yura.polnet.botik.ru>. This may give you performance improvements in some situations.
+
  
* border
 
Enable `border allocator algorithm' invented by Yury Yu. Rupasov <yura@yura.polnet.botik.ru>. This may give you performance improvements in some situations.
 
  
 
Example:
 
Example:
Line 94: Line 98:
  
  
 +
== Linux 2.6 specific mount options ==
  
== Linux 2.4 specific mount options ==
+
=== data ===
  
=== hash ===
+
Specifies the journalling mode for file data. Metadata is always journaled.
  
Choose hash function ReiserFS will use to find files within directories. Long time ago ReiserFS had only one hash, so hash code was not marked in filesystem superblock. Then additional hashes became available so we had to put hash code into super block. Also, old hash was made notdefault. At that time there were already a number of filesystems with not set hash code in super block. So, mount option was created to make it possible to write proper hash value into super block. Relative merits of hash functions were subjected to discussions of great length on the ReiserFS mailing list. (Try this query.) Roughly speaking: 99% of the time, this option is not required. If the normal autodection code can't determine which hash to use (because both hases had the same value for a file) use this option to force a specific hash.
+
* journal - All data is committed into the journal prior to being written into the main file system.
  
'''It won't allow you to override the existing hash on the filesystem, so if you have a <tt>tea</tt> hash disk, and mount with <tt>-o hash=rupasov</tt>, the mount will fail.'''
+
* ordered -This is the default mode. All data is forced directly out to the main file system prior to its metadata being committed to the journal.
  
 +
* writeback - Data ordering is not preserved - data may be written into the main file system after its metadata has been committed to the journal. This is rumoured to be the highest-throughput option. It guarantees internal file system integrity, however it can allow old data to appear in files after a crash and journal recovery.
  
* rupasov
 
  
This hash is invented by Yury Yu. Rupasov <yura@yura.polnet.botik.ru>. It is fast and preserves locality, mapping lexicographically close file names to the close hash values. '''Never use it, as it has a high probability of hash collisions.'''
+
Example:
  
 +
  mount -t reiserfs -o data=writeback /dev/sdb1 /mnt/scsi-disk-b
  
* [http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.45.281 tea]
 
  
This hash is a [http://en.wikipedia.org/wiki/One-way_compression_function#Davies-Meyer Davies-Meyer] function implemented by Jeremy Fitzhardinge <jeremy@goop.org>. It is hash permuting bits in the name thoroughly. It gets high randomness and, therefore, low probability of hash collision, but this costs performance. Use this if you got <tt>-EHASHCOLLISION</tt> with <tt>r5</tt> hash.
+
== Linux 2.4 specific mount options ==
  
 +
=== hash ===
  
* r5
+
Choose hash function ReiserFS will use to find files within directories. Long time ago ReiserFS had only one hash, so hash code was not marked in filesystem superblock. Then additional hashes became available so we had to put hash code into super block. Also, old hash was made notdefault. At that time there were already a number of filesystems with not set hash code in super block. So, mount option was created to make it possible to write proper hash value into super block. Relative merits of hash functions were subjected to discussions of great length on the ReiserFS mailing list. (Try this query.) Roughly speaking: 99% of the time, this option is not required. If the normal autodection code can't determine which hash to use (because both hases had the same value for a file) use this option to force a specific hash.
  
This hash is a modified version of <tt>rupasov</tt> hash. It is used by default and it is better to stick here until you have to support huge directories and unusual file-name patterns.
+
'''It won't allow you to override the existing hash on the filesystem, so if you have a <tt>tea</tt> hash disk, and mount with <tt>-o hash=rupasov</tt>, the mount will fail.'''
  
  
* detect
+
* rupasov - This hash is invented by [mailto:yura@yura.polnet.botik.ru Yury Yu. Rupasov]. It is fast and preserves locality, mapping lexicographically close file names to the close hash values. '''Never use it, as it has a high probability of hash collisions.'''
This is the instructs mount to detect hash function in use by instance of filesystem being mounted and write this information into superblock. This is only useful on the first mount of old filesystem.
+
  
Example:
 
  
  mount -t reiserfs -o hash=r5 /dev/sdb1 /mnt/scsi-disk-b
+
* [http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.45.281 tea] - This hash is a [http://en.wikipedia.org/wiki/One-way_compression_function#Davies-Meyer Davies-Meyer] function implemented by [mailto:jeremy@goop.org Jeremy Fitzhardinge]. It is hash permuting bits in the name thoroughly. It gets high randomness and, therefore, low probability of hash collision, but this costs performance. Use this if you got <tt>-EHASHCOLLISION</tt> with <tt>r5</tt> hash.
  
== Linux 2.6 specific mount options ==
 
  
=== data ===
+
* r5 - This hash is a modified version of <tt>rupasov</tt> hash. It is used by default and it is better to stick here until you have to support huge directories and unusual file-name patterns.
  
Specifies the journalling mode for file data. Metadata is always journaled.
 
  
* journal
+
* detect - This is the instructs mount to detect hash function in use by instance of filesystem being mounted and write this information into superblock. This is only useful on the first mount of old filesystem.
All data is committed into the journal prior to being written into the main file system.
+
  
* ordered
 
This is the default mode. All data is forced directly out to the main file system prior to its metadata being committed to the journal.
 
 
* writeback
 
Data ordering is not preserved - data may be written into the main file system after its metadata has been committed to the journal. This is rumoured to be the highest-throughput option. It guarantees internal file system integrity, however it can allow old data to appear in files after a crash and journal recovery.
 
  
 
Example:
 
Example:
  
   mount -t reiserfs -o data=writeback /dev/sdb1 /mnt/scsi-disk-b
+
   mount -t reiserfs -o hash=r5 /dev/sdb1 /mnt/scsi-disk-b
   
+
  
  
 
[[category:ReiserFS]]
 
[[category:ReiserFS]]

Latest revision as of 05:13, 10 February 2010

Contents

[edit] ReiserFS mount options

[edit] acl

Enable POSIX Access Control Lists. See the acl(5) manual page.


Example:

  mount -t reiserfs -o acl /dev/sdb1 /mnt/scsi-disk-b


[edit] conv

Instructs 3.6 ReiserFS code to mount 3.5 filesystem, using 3.6 format for newly created objects. After this you cannot use it through 3.5 ReiserFS tools anymore. This option causes conversion of old format super block to the new format. If not specified - old partition will be dealt with in a manner of 3.5.


Example:

  mount -t reiserfs -o conv /dev/sdb1 /mnt/scsi-disk-b


[edit] nolog

Disable journalling. This will get you slight performance improvement in some situations at the cost of losing fast recovery from crashes. Actually even with this option turned on, ReiserFS still performs all journalling paraphernalia, save for actual writes into journalling area. Implementation of real nolog is work in progress.


Example:

  mount -t reiserfs -o nolog /dev/sdb1 /mnt/scsi-disk-b


[edit] notail

By default, ReiserFS stores small files and 'file tails' directly into the tree. This confuses some utilities like LILO. This option is used to disable packing of files into the tree.


Example:

  mount -t reiserfs -o notail /dev/sdb1 /mnt/scsi-disk-b


[edit] replayonly

Replay transactions in journal, but don't actually mount filesystem. Used by fsck, mostly.


Example:

  mount -t reiserfs -o replayonly /dev/sdb1 /mnt/scsi-disk-b


[edit] jdev

Specifies an external device to be used as the journal device.


Example:

   mount -t reiserfs -o jdev=/dev/sdb2 /dev/sdb1 /mnt/scsi-disk-b

[edit] user_xattr

Enable Extended User Attributes. See the attr(5) manual page.


Example:

  mount -t reiserfs -o user_xattr  /dev/sdb1 /mnt/scsi-disk-b


[edit] resize

Remount option allowing to expand ReiserFS partition on-line. Make ReiserFS think that device has NUMBER blocks. Useful with LVM devices. There is a special resizer utility called resize_reiserfs.


Example:

  mount -t reiserfs -o resize=680000 /dev/sdb1 /mnt/scsi-disk-b

[edit] block-allocator

Tunes block allocator. This option is used for testing experimental features, makes benchmarking new features with and without more convenient, should never be used by users in any code shipped to users (ideally).

  • hashed_relocation - This may give you performance improvements in some situations.
  • no_unhashed_relocation - This may give you performance improvements in some situations.
  • noborder - Disables the 'border allocator algorithm' invented by Yury Yu. Rupasov. This may give you performance improvements in some situations.
  • border - Enables the 'border allocator algorithm' invented by Yury Yu. Rupasov. This may give you performance improvements in some situations.


Example:

  mount -t reiserfs -o block-allocator=border /dev/sdb1 /mnt/scsi-disk-b


[edit] Linux 2.6 specific mount options

[edit] data

Specifies the journalling mode for file data. Metadata is always journaled.

  • journal - All data is committed into the journal prior to being written into the main file system.
  • ordered -This is the default mode. All data is forced directly out to the main file system prior to its metadata being committed to the journal.
  • writeback - Data ordering is not preserved - data may be written into the main file system after its metadata has been committed to the journal. This is rumoured to be the highest-throughput option. It guarantees internal file system integrity, however it can allow old data to appear in files after a crash and journal recovery.


Example:

  mount -t reiserfs -o data=writeback /dev/sdb1 /mnt/scsi-disk-b


[edit] Linux 2.4 specific mount options

[edit] hash

Choose hash function ReiserFS will use to find files within directories. Long time ago ReiserFS had only one hash, so hash code was not marked in filesystem superblock. Then additional hashes became available so we had to put hash code into super block. Also, old hash was made notdefault. At that time there were already a number of filesystems with not set hash code in super block. So, mount option was created to make it possible to write proper hash value into super block. Relative merits of hash functions were subjected to discussions of great length on the ReiserFS mailing list. (Try this query.) Roughly speaking: 99% of the time, this option is not required. If the normal autodection code can't determine which hash to use (because both hases had the same value for a file) use this option to force a specific hash.

It won't allow you to override the existing hash on the filesystem, so if you have a tea hash disk, and mount with -o hash=rupasov, the mount will fail.


  • rupasov - This hash is invented by Yury Yu. Rupasov. It is fast and preserves locality, mapping lexicographically close file names to the close hash values. Never use it, as it has a high probability of hash collisions.


  • tea - This hash is a Davies-Meyer function implemented by Jeremy Fitzhardinge. It is hash permuting bits in the name thoroughly. It gets high randomness and, therefore, low probability of hash collision, but this costs performance. Use this if you got -EHASHCOLLISION with r5 hash.


  • r5 - This hash is a modified version of rupasov hash. It is used by default and it is better to stick here until you have to support huge directories and unusual file-name patterns.


  • detect - This is the instructs mount to detect hash function in use by instance of filesystem being mounted and write this information into superblock. This is only useful on the first mount of old filesystem.


Example:

  mount -t reiserfs -o hash=r5 /dev/sdb1 /mnt/scsi-disk-b
Personal tools