aubrsync -V (return code: 1)
aubrsync Options move | move_with_wh | copy \
mntpnt src_branch dst_branch [ options for rsync ]
generic form:
aubrsync [ -w | --wh ] [ -i | --inotify ] Options \
mntpnt cmd [ parameters for cmd ]
Options:
[ -n | --dry_run ]
[ -q | --quiet ]
The dst_branch must be mounted as writable.
During the operation, the mntpnt is set readonly.
If you are opening a file for writing on the writable branch,
you need to close the file before invoking this script.
The -w or --wh option requires CONFIG_AUFS_SHWH enabled.
The -i or --inotify option requires CONFIG_AUFS_HINOTIFY enabled.
'copy' is a shortcut for
aubrsync mntpnt \
rsync --exclude=lost+found -aHSx --devices --specials --delete-before mntpnt/ dst_branch
'move' is a shortcut for
aubrsync mntpnt \
"rsync --exclude=lost+found -aHSx --devices --specials --delete-before \
mntpnt/ dst_branch && \
find src_branch -xdev -depth \( \
\( ! -type d \
\( -name .wh..wh..opq \
-o ! -name .wh..wh.\* \) \) \
-o \( -type d \
! -name .wh..wh.\* \
! -wholename src_branch \
! -wholename src_branch/lost+found \) \
\) -print0 |\
xargs -r0 rm -fr"
Note: in most cases, you will need '-i' option, and
find(1) is invoked by aubrsync only when rsync(1)
succeded.
'move_with_wh' is a simple variation of 'move' which moves
whiteouts separately before the actual 'move'.
If you execute this script under linux-2.6.24 or earlier, the
kernel may produce a harmless warning "inotify.c:NNN
set_dentry_child_flags()". The message was already removed in
linux-2.6.25.
examples:
- Copy and reflect all the modification (modifed files, newly
created and removed ones) in the upper branch to the lower
branch. This operation is for aufs which has only 2 branches,
and mainly for a system shutdown script.
All files on the upper branch remain.
$ sudo aubrsync copy /your/aufs /your/upper_branch /your/lower_branch
- Like above (2 branches), move and reflect all modifications
from upper to lower. Almost all files on the upper branch will
be removed. You can still use this aufs after the
operation. But the inode number may be changed. If your
application which depends upon the inode number was running at
that time, it may not work correctly.
$ sudo aubrsync move /your/aufs /your/upper_branch /your/lower_branch
aubrsync --help (return code: 0)
aubrsync Options move | move_with_wh | copy \
mntpnt src_branch dst_branch [ options for rsync ]
generic form:
aubrsync [ -w | --wh ] [ -i | --inotify ] Options \
mntpnt cmd [ parameters for cmd ]
Options:
[ -n | --dry_run ]
[ -q | --quiet ]
The dst_branch must be mounted as writable.
During the operation, the mntpnt is set readonly.
If you are opening a file for writing on the writable branch,
you need to close the file before invoking this script.
The -w or --wh option requires CONFIG_AUFS_SHWH enabled.
The -i or --inotify option requires CONFIG_AUFS_HINOTIFY enabled.
'copy' is a shortcut for
aubrsync mntpnt \
rsync --exclude=lost+found -aHSx --devices --specials --delete-before mntpnt/ dst_branch
'move' is a shortcut for
aubrsync mntpnt \
"rsync --exclude=lost+found -aHSx --devices --specials --delete-before \
mntpnt/ dst_branch && \
find src_branch -xdev -depth \( \
\( ! -type d \
\( -name .wh..wh..opq \
-o ! -name .wh..wh.\* \) \) \
-o \( -type d \
! -name .wh..wh.\* \
! -wholename src_branch \
! -wholename src_branch/lost+found \) \
\) -print0 |\
xargs -r0 rm -fr"
Note: in most cases, you will need '-i' option, and
find(1) is invoked by aubrsync only when rsync(1)
succeded.
'move_with_wh' is a simple variation of 'move' which moves
whiteouts separately before the actual 'move'.
If you execute this script under linux-2.6.24 or earlier, the
kernel may produce a harmless warning "inotify.c:NNN
set_dentry_child_flags()". The message was already removed in
linux-2.6.25.
examples:
- Copy and reflect all the modification (modifed files, newly
created and removed ones) in the upper branch to the lower
branch. This operation is for aufs which has only 2 branches,
and mainly for a system shutdown script.
All files on the upper branch remain.
$ sudo aubrsync copy /your/aufs /your/upper_branch /your/lower_branch
- Like above (2 branches), move and reflect all modifications
from upper to lower. Almost all files on the upper branch will
be removed. You can still use this aufs after the
operation. But the inode number may be changed. If your
application which depends upon the inode number was running at
that time, it may not work correctly.
$ sudo aubrsync move /your/aufs /your/upper_branch /your/lower_branch