Добрый день.
На одном сервере делается бэкап средствами rsync(параметры -avhrctop). Мне необходимо что бы при удалении каких то файлов в исходной папке, они удалялись и в конечной. Полная сихронизация типа. Почитал ман но не смог найти того что мне надо.
Подскажите пожалуйста как это сделать.
Вопрос по rsync
Модераторы: SLEDopit, Модераторы разделов
-
LupoAlberto
- Сообщения: 55
- ОС: ArchLinux
Re: Вопрос по rsync
Не оно?
--delete
This tells rsync to delete extraneous files from the receiving side (ones that aren’t on the sending side), but only for
the directories that are being synchronized. You must have asked rsync to send the whole directory (e.g. "dir" or
"dir/") without using a wildcard for the directory’s contents (e.g. "dir/*") since the wildcard is expanded by the shell
and rsync thus gets a request to transfer individual files, not the files’ parent directory. Files that are excluded
from the transfer are also excluded from being deleted unless you use the --delete-excluded option or mark the rules as
only matching on the sending side (see the include/exclude modifiers in the FILTER RULES section).
Prior to rsync 2.6.7, this option would have no effect unless --recursive was enabled. Beginning with 2.6.7, deletions
will also occur when --dirs (-d) is enabled, but only for directories whose contents are being copied.
This option can be dangerous if used incorrectly! It is a very good idea to first try a run using the --dry-run option
(-n) to see what files are going to be deleted.
If the sending side detects any I/O errors, then the deletion of any files at the destination will be automatically dis‐
abled. This is to prevent temporary filesystem failures (such as NFS errors) on the sending side from causing a massive
deletion of files on the destination. You can override this with the --ignore-errors option.
The --delete option may be combined with one of the --delete-WHEN options without conflict, as well as --delete-excluded.
However, if none of the --delete-WHEN options are specified, rsync will choose the --delete-during algorithm when talking
to rsync 3.0.0 or newer, and the --delete-before algorithm when talking to an older rsync. See also --delete-delay and
--delete-after.
--delete-before
Request that the file-deletions on the receiving side be done before the transfer starts. See --delete (which is
implied) for more details on file-deletion.
Deleting before the transfer is helpful if the filesystem is tight for space and removing extraneous files would help to
make the transfer possible. However, it does introduce a delay before the start of the transfer, and this delay might
cause the transfer to timeout (if --timeout was specified). It also forces rsync to use the old, non-incremental recur‐
sion algorithm that requires rsync to scan all the files in the transfer into memory at once (see --recursive).
--delete-during, --del
Request that the file-deletions on the receiving side be done incrementally as the transfer happens. The per-directory
delete scan is done right before each directory is checked for updates, so it behaves like a more efficient
--delete-before, including doing the deletions prior to any per-directory filter files being updated. This option was
first added in rsync version 2.6.4. See --delete (which is implied) for more details on file-deletion
--delete-delay
Request that the file-deletions on the receiving side be computed during the transfer (like --delete-during), and then
removed after the transfer completes. This is useful when combined with --delay-updates and/or --fuzzy, and is more
efficient than using --delete-after (but can behave differently, since --delete-after computes the deletions in a sepa‐
rate pass after all updates are done). If the number of removed files overflows an internal buffer, a temporary file
will be created on the receiving side to hold the names (it is removed while open, so you shouldn’t see it during the
transfer). If the creation of the temporary file fails, rsync will try to fall back to using --delete-after (which it
cannot do if --recursive is doing an incremental scan). See --delete (which is implied) for more details on file-dele‐
tion.
--delete-after
Request that the file-deletions on the receiving side be done after the transfer has completed. This is useful if you
are sending new per-directory merge files as a part of the transfer and you want their exclusions to take effect for the
delete phase of the current transfer. It also forces rsync to use the old, non-incremental recursion algorithm that
requires rsync to scan all the files in the transfer into memory at once (see --recursive). See --delete (which is
implied) for more details on file-deletion.
--delete-excluded
In addition to deleting the files on the receiving side that are not on the sending side, this tells rsync to also delete
any files on the receiving side that are excluded (see --exclude). See the FILTER RULES section for a way to make indi‐
vidual exclusions behave this way on the receiver, and for a way to protect files from --delete-excluded. See --delete
(which is implied) for more details on file-deletion.
(man rsync) писал(а):...
--delete delete extraneous files from dest dirs
--delete-before receiver deletes before transfer (default)
--delete-during receiver deletes during xfer, not before
--delete-delay find deletions during, delete after
--delete-after receiver deletes after transfer, not before
--delete-excluded also delete excluded files from dest dirs
...
Spoiler
--delete
This tells rsync to delete extraneous files from the receiving side (ones that aren’t on the sending side), but only for
the directories that are being synchronized. You must have asked rsync to send the whole directory (e.g. "dir" or
"dir/") without using a wildcard for the directory’s contents (e.g. "dir/*") since the wildcard is expanded by the shell
and rsync thus gets a request to transfer individual files, not the files’ parent directory. Files that are excluded
from the transfer are also excluded from being deleted unless you use the --delete-excluded option or mark the rules as
only matching on the sending side (see the include/exclude modifiers in the FILTER RULES section).
Prior to rsync 2.6.7, this option would have no effect unless --recursive was enabled. Beginning with 2.6.7, deletions
will also occur when --dirs (-d) is enabled, but only for directories whose contents are being copied.
This option can be dangerous if used incorrectly! It is a very good idea to first try a run using the --dry-run option
(-n) to see what files are going to be deleted.
If the sending side detects any I/O errors, then the deletion of any files at the destination will be automatically dis‐
abled. This is to prevent temporary filesystem failures (such as NFS errors) on the sending side from causing a massive
deletion of files on the destination. You can override this with the --ignore-errors option.
The --delete option may be combined with one of the --delete-WHEN options without conflict, as well as --delete-excluded.
However, if none of the --delete-WHEN options are specified, rsync will choose the --delete-during algorithm when talking
to rsync 3.0.0 or newer, and the --delete-before algorithm when talking to an older rsync. See also --delete-delay and
--delete-after.
--delete-before
Request that the file-deletions on the receiving side be done before the transfer starts. See --delete (which is
implied) for more details on file-deletion.
Deleting before the transfer is helpful if the filesystem is tight for space and removing extraneous files would help to
make the transfer possible. However, it does introduce a delay before the start of the transfer, and this delay might
cause the transfer to timeout (if --timeout was specified). It also forces rsync to use the old, non-incremental recur‐
sion algorithm that requires rsync to scan all the files in the transfer into memory at once (see --recursive).
--delete-during, --del
Request that the file-deletions on the receiving side be done incrementally as the transfer happens. The per-directory
delete scan is done right before each directory is checked for updates, so it behaves like a more efficient
--delete-before, including doing the deletions prior to any per-directory filter files being updated. This option was
first added in rsync version 2.6.4. See --delete (which is implied) for more details on file-deletion
--delete-delay
Request that the file-deletions on the receiving side be computed during the transfer (like --delete-during), and then
removed after the transfer completes. This is useful when combined with --delay-updates and/or --fuzzy, and is more
efficient than using --delete-after (but can behave differently, since --delete-after computes the deletions in a sepa‐
rate pass after all updates are done). If the number of removed files overflows an internal buffer, a temporary file
will be created on the receiving side to hold the names (it is removed while open, so you shouldn’t see it during the
transfer). If the creation of the temporary file fails, rsync will try to fall back to using --delete-after (which it
cannot do if --recursive is doing an incremental scan). See --delete (which is implied) for more details on file-dele‐
tion.
--delete-after
Request that the file-deletions on the receiving side be done after the transfer has completed. This is useful if you
are sending new per-directory merge files as a part of the transfer and you want their exclusions to take effect for the
delete phase of the current transfer. It also forces rsync to use the old, non-incremental recursion algorithm that
requires rsync to scan all the files in the transfer into memory at once (see --recursive). See --delete (which is
implied) for more details on file-deletion.
--delete-excluded
In addition to deleting the files on the receiving side that are not on the sending side, this tells rsync to also delete
any files on the receiving side that are excluded (see --exclude). See the FILTER RULES section for a way to make indi‐
vidual exclusions behave this way on the receiver, and for a way to protect files from --delete-excluded. See --delete
(which is implied) for more details on file-deletion.
Если вы считаете, что вас незаслуженно обидели, вернитесь и заслужите!
-
Garret
- Сообщения: 91
- ОС: Debian / Ubuntu
Re: Вопрос по rsync
Действительно, прошляпил как то. Спасибо.