Tomas M: > I downloaded aufs from CVS today and I compiled it, > then I use 'man -l ./aufs.5' and it shows the following: > > Set by default for a branch whose fs-type is either 'iso9660', 'udf', > > (and here the paragraph ends, no more text)
It was caused by a single quotation mark. Sorry. Here is a patch for it. I will update the source in CVS on next Monday. Please wait for a while. Junjiro Okajima ---------------------------------------------------------------------- diff -x CVS -x RCS -x .pdiff -rup ../../aufs.anon/aufs/util/aufs.in.5 ./util/aufs.in.5 --- ../../aufs.anon/aufs/util/aufs.in.5 2007-09-03 12:50:14.000000000 +0900 +++ ./util/aufs.in.5 2007-09-10 20:48:54.475265440 +0900 @@ -32,7 +32,7 @@ dlgt At remount-time, the options are interpreted in the given order, -e.g. left to right, except dlgt. The 'dlgt' option is +e.g. left to right, except dlgt. The `dlgt' option is disabled in interpreting. .RS .IP \(bu 4 @@ -102,7 +102,7 @@ Aufs creates or removes whiteout-base(\*[AUFS_WH_PFX]\*[AUFS_WH_BASENAME]) and/or whplink-dir(\*[AUFS_WH_PFX]\*[AUFS_WH_PLINKDIR]) if necessary. -If the branch permission is been changing 'rw' to 'ro, and a process +If the branch permission is been changing `rw' to `ro', and a process is mapping a file by mmap(2) .\" with MAP_SHARED on the branch, the process may or may not @@ -147,7 +147,7 @@ Some applications will not work correctl .B trunc_xib Truncate the external inode number bitmap file. The truncation is done automatically when you delete a branch unless you don't specify -'notrunc_xib' option. +`notrunc_xib' option. (cf. External Inode Number Bitmap and Translation Table). . .TP @@ -163,7 +163,7 @@ Currently, it is only busy file (or inod . .TP .B noverbose | quiet | q | silent -Disable 'verbose' option. +Disable `verbose' option. This is default value. . .TP @@ -191,23 +191,23 @@ The default value is \*[AUFS_DIRWH_DEF]. . .TP .B plink noplink -Specifies to use 'pseudo link' feature or not. -The default is 'plink' which means use this feature. +Specifies to use `pseudo link' feature or not. +The default is `plink' which means use this feature. (cf. Pseudo Link) . .TP .B clean_plink Removes all pseudo-links in memory. In order to make pseudo-link permanent, use -'auplink' script just before one of these operations, +`auplink' script just before one of these operations, unmounting aufs, -using 'ro' or 'noplink' mount option, +using `ro' or `noplink' mount option, deleting a branch from aufs, adding a branch into aufs, or changing your writable branch as readonly. If you installed both of /sbin/mount.aufs and /sbin/umount.aufs, and your mount(8) and umount(8) support them, and /etc/default/auplink is configured, -'auplink' script will be executed automatically and flush pseudo-links. +`auplink' script will be executed automatically and flush pseudo-links. (cf. Pseudo Link) . .TP @@ -218,8 +218,8 @@ Specifies the level of UDBA (User's Dire .TP .B diropq=whiteouted | w | always | a Specifies whether mkdir(2) and rename(2) dir case make the created directory -'opaque' or not. -In other words, to create '\*[AUFS_WH_DIROPQ]' under the created or renamed +`opaque' or not. +In other words, to create `\*[AUFS_WH_DIROPQ]' under the created or renamed directory, or not to create. When you specify diropq=w or diropq=whiteouted, aufs will not create it if the @@ -232,7 +232,7 @@ The default value is diropq=w, it means If you define CONFIG_AUFS_COMPAT at aufs compiling time, the default will be diropq=a. You need to consider this option if you are planning to add a branch later -since 'diropq' affects the same named directory on the added branch. +since `diropq' affects the same named directory on the added branch. . .TP .B warn_perm nowarn_perm @@ -241,28 +241,28 @@ the adding branch directory, when they differ from the existing branch's. This difference may or may not impose a security risk. If you are sure that there is no problem and want to stop the warning, -use 'nowarn_perm' option. -The default is 'warn_perm' (cf. DIAGNOSTICS). +use `nowarn_perm' option. +The default is `warn_perm' (cf. DIAGNOSTICS). . .TP .B coo=none | leaf | all Specifies copyup-on-open level. When you open a file which is on readonly branch, aufs opens the file after copying-up it to the writable branch following this level. -When the keyword 'all' is specified, aufs copies-up the opening object even if -it is a directory. In this case, simple 'ls' or 'find' cause the copyup and +When the keyword `all' is specified, aufs copies-up the opening object even if +it is a directory. In this case, simple `ls' or `find' cause the copyup and your writable branch will have a lot of empty directories. -When the keyword 'leaf' is specified, aufs copies-up the opening object except +When the keyword `leaf' is specified, aufs copies-up the opening object except directory. -The keyword 'none' disables copyup-on-open. -The default is 'coo=none'. +The keyword `none' disables copyup-on-open. +The default is `coo=none'. . .TP .B dlgt nodlgt If you don't want your application to access branches though aufs or to be traced strictly by task I/O accounting, you can use the kernel threads in aufs. If you enable CONFIG_AUFS_DLGT and -specify 'dlgt' mount option, then +specify `dlgt' mount option, then aufs delegates its internal access to the branches to the kernel threads. @@ -272,7 +272,7 @@ warnings from your security module. Beca internally, your security module may detect, report, or prohibit it. The behaviour is highly depending upon your security module and its configuration. -In this case, you can use 'dlgt' mount option, too. +In this case, you can use `dlgt' mount option, too. Your LSM will see the aufs kernel threads access to the branch, instead of your application. @@ -280,7 +280,7 @@ application. The delegation may damage the performance since it includes task-switch (scheduling) and waits for the thread to complete the delegated access. You should consider increasing the number of the -kernel thread specifying the aufs module parameter 'nwkq.' +kernel thread specifying the aufs module parameter `nwkq.' Currently, aufs does NOT delegate it at mount and remount time. The default is nodlgt which means aufs doesn't delegate the internal @@ -301,7 +301,7 @@ directory handling, pseudo-link, xino fi delegated access to branches. For example, Unix filesystems allow you to rmdir(2) which has no write permission bit, if its parent directory has write permission bit. In aufs, the -removing directory may or may not have whiteout or 'dir opaque' mark as its +removing directory may or may not have whiteout or `dir opaque' mark as its child. And aufs needs to unlink(2) them before rmdir(2). Therefore aufs delegates the actual unlink(2) and rmdir(2) to another kernel thread which has been created already and has a superuser privilege. @@ -315,14 +315,14 @@ It shows the maximum number of the enque at a time per a thread. Usually they are all small numbers or 0. If your workload is heavy and you feel the response is low, then check these values. If there -are no zero and any of them is larger than 2 or 3, you should set 'nwkq' +are no zero and any of them is larger than 2 or 3, you should set `nwkq' module parameter greater then the default value. But the reason of the bad response is in your branch filesystem, to increase the number of aufs thread will not help you. The last number in <sysfs>/fs/aufs/stat after comma is the maximum -number of the 'no-wait' enqueued work at a time. Aufs enqueues such -work to the system global workqueue called 'events', but doesn't wait +number of the `no-wait' enqueued work at a time. Aufs enqueues such +work to the system global workqueue called `events', but doesn't wait for its completion. Usually they does no harm the time-performance of aufs. . @@ -335,14 +335,14 @@ and you meet the limitation of mount(8), /proc/mount, you need to enable CONFIG_AUFS_SYSAUFS and set aufs module parameter brs=1. -When this parameter is set as 1, aufs doesn't show 'br:' (or dirs=) +When this parameter is set as 1, aufs doesn't show `br:' (or dirs=) mount option through /proc/mounts, and /sbin/mount.aufs doesn't put it to /etc/mtab. So you can keep yourself from the page limitation of mount(8), /etc/mtab and /proc/mounts. -Aufs shows 'br:' option through <sysfs>/fs/aufs/brs. +Aufs shows `br:' option through <sysfs>/fs/aufs/brs. The default is brs=0, which means <sysfs>/fs/aufs/brs does not exist -and 'br:' option will appear in /proc/mounts and /etc/mtab if you +and `br:' option will appear in /proc/mounts and /etc/mtab if you install /sbin/mount.aufs. If you didn't enable CONFIG_AUFS_SYSAUFS, this parameter will be ignored. @@ -353,7 +353,7 @@ Specifies MagicSysRq key for debugging a You need to enable all of CONFIG_MAGIC_SYSRQ, CONFIG_AUFS_SYSAUFS and CONFIG_AUFS_DEBUG. Currently this is for developers only. -The default is 'a'. +The default is `a'. .\" ---------------------------------------------------------------------- .SH Branch Syntax @@ -366,9 +366,9 @@ attribute := wh | nolwh .RE dir_path is a directory path. -The keyword after 'dir_path=' is a +The keyword after `dir_path=' is a permission flags for that branch. -Comma, colon and the permission flags string (including '=')in the path +Comma, colon and the permission flags string (including `=')in the path are not allowed. Any filesystem can be a branch, but aufs and unionfs. If you specify aufs or unionfs as a branch, aufs will return an error @@ -414,7 +414,7 @@ branch silently. .TP .B rw Readable and writable branch. Set as default for the first branch. -If the branch filesystem is mounted as readonly, you cannot set it 'rw'. +If the branch filesystem is mounted as readonly, you cannot set it `rw.' .\" A filesystem which doesn't support link(2) and i_op->setattr(), for .\" example FAT, will not be used as the writable branch. . @@ -426,12 +426,12 @@ both of write operation and lookup opera . .TP .B rr -Real readonly branch, special case of 'ro', for natively readonly +Real readonly branch, special case of `ro', for natively readonly branch. Assuming the branch is natively readonly, aufs can optimize -some internal operation. For example, if you specify 'udba=inotify' +some internal operation. For example, if you specify `udba=inotify' option, aufs does not set inotify for the things on rr branch. -Set by default for a branch whose fs-type is either 'iso9660', 'udf', -'cramfs', 'romfs' or 'squashfs.' +Set by default for a branch whose fs-type is either `iso9660', +`cramfs', `romfs' or `squashfs.' .SS Attribute . @@ -439,7 +439,7 @@ Set by default for a branch whose fs-typ .B wh Readonly branch and it has/might have whiteouts on it. Aufs never issue write operation to this branch, but lookup for whiteout. -Use this as '<branch_dir>=ro+wh'. +Use this as `<branch_dir>=ro+wh'. . .TP .B nolwh @@ -451,8 +451,8 @@ If you don't like a hardlink, or your wr link(2), then use this attribute. But I am afraid a filesystem which doesn't support link(2) natively will fail in other place such as copy-up. -Use this as '<branch_dir>=rw+nolwh'. -Also you may want to try 'noplink' mount option, while it is not recommended. +Use this as `<branch_dir>=rw+nolwh'. +Also you may want to try `noplink' mount option, while it is not recommended. .\" ---------------------------------------------------------------------- .SH External Inode Number Bitmap and Translation Table (xino) @@ -461,8 +461,8 @@ translation table files per an aufs and filesystem by default. The bitmap is for recycling aufs inode number and the others are a table for converting an inode number on a branch to -an aufs inode number. The default path is "first writable -branch"/\*[AUFS_XINO_FNAME]. If there is no writable branch, the +an aufs inode number. The default path is `first writable +branch'/\*[AUFS_XINO_FNAME]. If there is no writable branch, the default path will be \*[AUFS_XINO_DEFPATH]. .\" A user who executes mount(8) needs the privilege to create xino @@ -470,7 +470,7 @@ will be \*[AUFS_XINO_DEFPATH]. Those files are always opened and read/write by aufs frequently. If your writable branch is on flash memory device, it is recommended -to put xino files on other than flash memory by specifying 'xino=' +to put xino files on other than flash memory by specifying `xino=' mount option. The @@ -482,7 +482,7 @@ For example, on a 4KB page size system, then the maximum file size of the bitmap is 4KB (or 320KB). The -maximum file size of the table will be 'max inode number on the branch +maximum file size of the table will be `max inode number on the branch x size of an inode number'. For example in 32bit environment, @@ -492,7 +492,7 @@ $ df -i /branch_fs .fi and /branch_fs is an branch of the aufs. When the inode number is -assigned contiguously (without 'hole'), the maximum xino file size for +assigned contiguously (without `hole'), the maximum xino file size for /branch_fs will be 2,599,968 x 4 bytes = about 10 MB. But it might not be allocated all of disk blocks. When the inode number is assigned discontinuously, the maximum size of @@ -506,7 +506,7 @@ This is the current limitation of aufs. On 64bit environment, this limitation becomes more strict and the supported largest inode number is less than LLONG_MAX/8-1. -The xino files are always hidden, i.e. removed. So you cannot do 'ls -l +The xino files are always hidden, i.e. removed. So you cannot do `ls -l xino_file'. If you enable CONFIG_AUFS_SYSAUFS, you can check these information through <sysfs>/fs/aufs/<mnt_id>/xino. @@ -552,11 +552,11 @@ For example, if you delete a branch whic many inode numbers will be recycled and the bitmap will be truncated to smaller size. Aufs does this automatically when a branch is deleted. -You can truncate it anytime you like if you specify 'trunc_xib' mount +You can truncate it anytime you like if you specify `trunc_xib' mount option. But when the accessed inode number was not deleted, nothing will be truncated. If you don't want to truncate it (it may be slow) when you delete a -branch, specify 'notrunc_xib' after 'del' mount option. +branch, specify `notrunc_xib' after `del' mount option. If you do not want to use xino, use noxino mount option. Use this option with care, since the inode number may be changed silently and @@ -584,7 +584,7 @@ changed as totally different file. .\" ---------------------------------------------------------------------- .SH Pseudo Link (hardlink over branches) -Aufs supports 'pseudo link' which is a logical hard-link over +Aufs supports `pseudo link' which is a logical hard-link over branches (cf. ln(1) and link(2)). In other words, a copied-up file by link(2) and a copied-up file which was hard-linked on a readonly branch filesystem. @@ -601,10 +601,10 @@ branch as fileB's inode. Once you unmount aufs, the plink info for that aufs kept in memory are totally gone. It means that the pseudo-link is not permanent. -If you want to make plink permanent, try 'auplink' script just before +If you want to make plink permanent, try `auplink' script just before one of these operations, unmounting your aufs, -using 'ro' or 'noplink' mount option, +using `ro' or `noplink' mount option, deleting a branch from aufs, adding a branch into aufs, or changing your writable branch to readonly. @@ -613,26 +613,26 @@ This script will reproduces all real har them, and removes pseudo-link info in memory and temporary link on the writable branch. Since this script access your branches directly, you cannot hide them by -'mount --bind /tmp /branch' or something. +`mount --bind /tmp /branch' or something. If you are willing to rebuild your aufs with the same branches later, you should use auplink script before you umount your aufs. If you installed both of /sbin/mount.aufs and /sbin/umount.aufs, and your mount(8) and umount(8) support them, and /etc/default/auplink is configured, -'auplink' script will be executed automatically and flush pseudo-links. +`auplink' script will be executed automatically and flush pseudo-links. The /etc/default/auplink is a simple shell script which does nothing but defines -$FLUSH. If your aufs mount point is set in $FLUSH, 'auplink' flushes +$FLUSH. If your aufs mount point is set in $FLUSH, `auplink' flushes the pseudo-links on that mount point. -If $FLUSH is set to "ALL", 'auplink' will be executed for every aufs. +If $FLUSH is set to `ALL', `auplink' will be executed for every aufs. -The 'auplink' script uses 'aulchown' binary, you need to install it too. -The 'auplink' script executes 'find' and 'mount -o remount', they may take a +The `auplink' script uses `aulchown' binary, you need to install it too. +The `auplink' script executes `find' and `mount -o remount', they may take a long time and impact the later system performance. If you didn't install /sbin/mount.aufs, /sbin/umount.aufs or /sbin/auplink, -but you want to flush pseudo-links, then you need to execute 'auplink' manually. -If you installed and configured them, but do not want to execute 'auplink' at -umount time, then use '-i' option for umount(8). +but you want to flush pseudo-links, then you need to execute `auplink' manually. +If you installed and configured them, but do not want to execute `auplink' at +umount time, then use `-i' option for umount(8). .nf # auplink /your/aufs/root flush @@ -652,10 +652,10 @@ or .fi The plinks are kept both in memory and on disk. When they consumes too much -resources on your system, you can use the 'auplink' script at anytime and +resources on your system, you can use the `auplink' script at anytime and throw away the unnecessary pseudo-links in safe. -Additionally, the 'auplink' script is very useful for some security reasons. +Additionally, the `auplink' script is very useful for some security reasons. For example, when you have a directory whose permission flags are 0700, and a file who is 0644 under the 0700 directory. Usually, all files under the 0700 directory are private and no one else can see @@ -673,17 +673,17 @@ the temporary pseudo-linked file by his from one to MAX_INT or something. In this case, the 0644 file will be read unexpectedly. I am afraid that leaving the temporary pseudo-links can be a security hole. -It make sense to execute 'auplink /your/aufs/root flush' +It make sense to execute `auplink /your/aufs/root flush' periodically, when your writable branch is NFS. When your writable branch is not NFS, or all users are careful enough to set 0600 to their private files, you don't have to worry about this issue. -If you don't want this feature, use 'noplink' mount option and you don't need -to install 'auplink' script and 'aulchown' binary. +If you don't want this feature, use `noplink' mount option and you don't need +to install `auplink' script and `aulchown' binary. -.SS The behaviours of 'plink' and 'noplink' -This sample shows that the 'f_src_linked2' with 'noplink' option cannot follow +.SS The behaviours of `plink' and `noplink' +This sample shows that the `f_src_linked2' with `noplink' option cannot follow the link. .nf @@ -731,7 +731,7 @@ $ .\" If you add/del a branch, or link/unlink the pseudo-linked .\" file on a branch .\" directly, aufs cannot keep the correct link count, but the status of -.\" "pseudo-linked." +.\" `pseudo-linked.' .\" Those files may or may not keep the file data after you unlink the .\" file on the branch directly, especially the case of your branch is .\" NFS. @@ -762,7 +762,7 @@ or may not be accessible through both of Because aufs caches various information about the files on branches. And the cache still remains after UDBA. -Aufs has a mount option named 'udba' which specifies the test level at +Aufs has a mount option named `udba' which specifies the test level at access time (at d_revalidate time) whether UDBA was happened or not. . .TP @@ -776,12 +776,12 @@ branch. It can be a cause of wrong behav It is recommended to use this option only when you are sure that nobody access a file on a branch. -It might be difficult for you to achieve real 'no UDBA' world when you -cannot stop your users doing 'find / -ls' or something. +It might be difficult for you to achieve real `no UDBA' world when you +cannot stop your users doing `find / -ls' or something. If you really want to forbid all of your users to UDBA, here is a trick for it. With this trick, users cannot see the -branches directly and aufs runs with no problem, except 'auplink' script. +branches directly and aufs runs with no problem, except `auplink' script. But if you are not familiar with aufs, this trick may make yourself confused. @@ -845,7 +845,7 @@ branch filesystem, then try this mount o . .TP .B udba=inotify -Aufs sets 'inotify' to all the accessed directories on its branches +Aufs sets `inotify' to all the accessed directories on its branches and receives the event about the dir and its children. It consumes resources, cpu, memory. And I am afraid that the performance will be damaged, but it is most strict option. @@ -904,7 +904,7 @@ incorrect data about the file/dir. ---------------------------------------------------------------------- .SH Exporting aufs via NFS Aufs is supporting NFS-exporting in linux-2.6.18 and later. -Since aufs has no actual block device, you need to add NFS 'fsid' option at +Since aufs has no actual block device, you need to add NFS `fsid' option at exporting. Refer to the manual of NFS about the detail of this option. It is recommended to export your branch filesystems once before @@ -943,10 +943,10 @@ handle of a branch filesystem. .IP \(bu 4 The External Inode Number Bitmap and Translation Table (xino) is required since NFS file -handle is based upon inode number. The mount option 'xino' is enabled +handle is based upon inode number. The mount option `xino' is enabled by default. .IP \(bu 4 -The 'noplink' option is recommended, currently. +The `noplink' option is recommended, currently. .\" .IP \(bu 4 .\" If you add/del branches many times between the accesses to the same file .\" from the same NFS client, @@ -958,14 +958,14 @@ The 'noplink' option is recommended, cur .\" ---------------------------------------------------------------------- .SH Dentry and Inode Caches If you want to clear caches on your system, there are several tricks -for that. If your system ram is low, try 'find /large/dir -ls > +for that. If your system ram is low, try `find /large/dir -ls > /dev/null'. It will read many inodes and dentries and cache them. Then old caches will be discarded. But when you have large ram or you don't have such large directory, it is not effective. -If you want to discard cache within a certain filesystem, try 'mount +If you want to discard cache within a certain filesystem, try `mount -o remount /your/mntpnt'. Some filesystem may return an error of EINVAL or something, but VFS discards the unused dentry/inode caches on the specified filesystem. @@ -975,11 +975,11 @@ specified filesystem. If you compile aufs with -DCONFIG_AUFS_COMPAT, dirs= option and =nfsro branch permission flag are available. They are interpreted as br: option and =ro flags respectively. - 'debug', 'delete', 'imap' options are ignored silently. When you + `debug', `delete', `imap' options are ignored silently. When you compile aufs without -DCONFIG_AUFS_COMPAT, these three options are also ignored, but a warning message is issued. -Ignoring 'delete' option, and to keep filesystem consistency, aufs tries +Ignoring `delete' option, and to keep filesystem consistency, aufs tries writing something to only one branch in a single systemcall. It means aufs may copyup even if the copyup-src branch is specified as writable. For example, you have two writable branches and a large regular file @@ -989,10 +989,10 @@ If this behaviour is not what you want, on the lower branch directly. And there is a simple shell -script 'unionctl' under sample subdirectory, which is compatible with +script `unionctl' under sample subdirectory, which is compatible with unionctl(8) in Unionfs Version 1.x series, except --query action. -This script executes mount(8) with 'remount' option and uses +This script executes mount(8) with `remount' option and uses add/del/mod aufs mount options. If you are familiar with Unionfs Version 1.x series and want to use unionctl(8), you can try this script instead of using mount -o remount,... directly. @@ -1007,34 +1007,34 @@ interface. Aufs uses the external inode number bitmap and translation table by default. -The default branch permission for the first branch is 'rw', and the -rest is 'ro'. +The default branch permission for the first branch is `rw', and the +rest is `ro.' The whiteout is for hiding files on lower branches. Also it is applied to stop readdir going lower branches. -The latter case is called 'opaque directory.' Any +The latter case is called `opaque directory.' Any whiteout is an empty file, it means whiteout is just an mark. In the case of hiding lower files, the name of whiteout is -'\*[AUFS_WH_PFX]<filename>.' +`\*[AUFS_WH_PFX]<filename>.' And in the case of stopping readdir, the name is -"\*[AUFS_WH_PFX]\*[AUFS_WH_PFX].opq" or -"\*[AUFS_WH_PFX]__dir_opaque." The name depends upon your compile +`\*[AUFS_WH_PFX]\*[AUFS_WH_PFX].opq' or +`\*[AUFS_WH_PFX]__dir_opaque.' The name depends upon your compile configuration CONFIG_AUFS_COMPAT. .\" All of newly created or renamed directory will be opaque. -All whiteouts are hardlinked, including '<writable branch top +All whiteouts are hardlinked, including `<writable branch top dir>/\*[AUFS_WH_PFX]\*[AUFS_WH_BASENAME].' The hardlink on an ordinary (disk based) filesystem does not consume inode resource newly. But in linux tmpfs, the number of free inodes will be decremented by link(2). It is recommended to specify nr_inodes option to your tmpfs if you meet ENOSPC. Use this option -after checking by 'df -i'. +after checking by `df -i.' When you rmdir or rename-to the dir who has a number of whiteouts, aufs rename the dir to the temporary whiteouted-name like -'\*[AUFS_WH_PFX]<dir>.<random hex>.' Then remove it after actual operation. -cf. mount option 'dirwh'. +`\*[AUFS_WH_PFX]<dir>.<random hex>.' Then remove it after actual operation. +cf. mount option `dirwh.' .\" ---------------------------------------------------------------------- .SH Incompatible with an ordinary filesystem @@ -1076,7 +1076,7 @@ in your union. It means that unmounting or remounting readonly at shutdown time may take a long time, since mount(2) in VFS tries freeing all of the cache on the target filesystem. -.\" In this case, you had better try "echo 2 > /proc/sys/vm/drop_caches" +.\" In this case, you had better try `echo 2 > /proc/sys/vm/drop_caches' .\" just before unmounting in shutdown procedure. .\" It frees unused inodes and dentries quickly. .\" If your system cache is not so large, you don't need this trick. @@ -1091,7 +1091,7 @@ The sub-mount under the branch of local filesystem is ignored. For example, if you have mount another filesystem on -/branch/another/mntpnt, the files under 'mntpnt' will be ignored by aufs. +/branch/another/mntpnt, the files under `mntpnt' will be ignored by aufs. It is recommended to mount the sub-mount under the mounted aufs. For example, @@ -1113,7 +1113,7 @@ Option. The file-lock which means fcntl(2) with F_SETLK, F_SETLKW or F_GETLK, flock(2) and lockf(3), is applied to virtual aufs file only, not to the file on a branch. It means you can break the lock by accessing a branch directly. -TODO: check 'security' to hook locks, as inotify does. +TODO: check `security' to hook locks, as inotify does. The fsync(2) and fdatasync(2) systemcalls return 0 which means success, even if the given file descriptor is not opened for writing. @@ -1133,7 +1133,7 @@ procedure when you shutdown your system. # done .fi If your xino file is on a hard drive, you also need to specify -'noxino' option or 'xino=/your/tmpfs/xino' at remounting root +`noxino' option or `xino=/your/tmpfs/xino' at remounting root directory. To rename(2) directory may return EXDEV even if both of src and tgt @@ -1228,7 +1228,7 @@ When you mount or remount your union wit and without writable branch, aufs will warn you that the first branch should be writable. -.\" It is discouraged to set both of 'udba' and 'noxino' mount options. In +.\" It is discouraged to set both of `udba' and `noxino' mount options. In .\" this case the inode number under aufs will always be changed and may .\" reach the end of inode number which is a maximum of unsigned long. If .\" the inode number reaches the end, aufs will return EIO repeatedly. @@ -1236,15 +1236,15 @@ should be writable. When you set udba other than inotify and change something on your branch filesystem directly, later aufs may detect some mismatches to its cache. If it is a critical mismatch, aufs returns EIO and issues a -warning saying "try udba=inotify". +warning saying `try udba=inotify.' When an error occurs in aufs, aufs prints the kernel message with -'errno.' The priority of the message (log level) is ERR or WARNING which +`errno.' The priority of the message (log level) is ERR or WARNING which depends upon the message itself. -You can convert the 'errno' into the error message by perror(3), +You can convert the `errno' into the error message by perror(3), strerror(3) or something. -For example, the 'errno' in the message 'I/O Error, write failed (-28)' -is 28 which means ENOSPC or 'No space left on device.' +For example, the `errno' in the message `I/O Error, write failed (-28)' +is 28 which means ENOSPC or `No space left on device.' .\" .SH Current Limitation . ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/