Это команда rsync, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
rsync - быстрый, универсальный, удаленный (и локальный) инструмент для копирования файлов
СИНТАКСИС
Локально: rsync [ОПЦИЯ ...] SRC ... [DEST]
Доступ через удаленную оболочку:
Вытяните: rsync [ВАРИАНТ ...] [ПОЛЬЗОВАТЕЛЬ @] ХОСТ: SRC ... [DEST]
Нажмите: rsync [OPTION ...] SRC ... [USER @] HOST: DEST
Доступ через демон rsync:
Вытяните: rsync [ОПЦИЯ ...] [ПОЛЬЗОВАТЕЛЬ @] HOST :: SRC ... [DEST]
rsync [ОПЦИЯ ...] rsync: // [ПОЛЬЗОВАТЕЛЬ @] HOST [: PORT] / SRC ... [DEST]
Нажмите: rsync [ОПЦИЯ ...] SRC ... [ПОЛЬЗОВАТЕЛЬ @] HOST :: DEST
rsync [ОПЦИЯ ...] SRC ... rsync: // [ПОЛЬЗОВАТЕЛЬ @] HOST [: PORT] / DEST
При использовании только одного аргумента SRC и без аргумента DEST будут перечислены исходные файлы вместо
копирование.
ОПИСАНИЕ
Rsync - это быстрый и необычайно универсальный инструмент для копирования файлов. Он может копировать локально,
к / от другого хоста через любую удаленную оболочку или к / от удаленного демона rsync. Он предлагает
большое количество опций, которые контролируют каждый аспект его поведения и позволяют очень гибко
спецификация набора копируемых файлов. Славится дельта-трансфером.
алгоритм, который уменьшает объем данных, отправляемых по сети, отправляя только
различия между исходными файлами и существующими файлами в месте назначения. Rsync - это
широко используется для резервного копирования и зеркалирования, а также в качестве улучшенной команды копирования для повседневного использования.
Rsync находит файлы, которые необходимо передать, используя алгоритм «быстрой проверки» (по умолчанию).
который ищет файлы, размер которых изменился или был изменен в последний раз. Любые изменения в
другие сохраненные атрибуты (в соответствии с запросом параметров) создаются в файле назначения
непосредственно, когда быстрая проверка показывает, что данные файла не нужно обновлять.
Некоторые из дополнительных возможностей rsync:
o поддержка копирования ссылок, устройств, владельцев, групп и разрешений
o опции exclude и exclude-from, аналогичные GNU tar
oa CVS exclude mode для игнорирования тех же файлов, которые игнорирует CVS.
o может использовать любую прозрачную удаленную оболочку, включая ssh или rsh
o не требует прав суперпользователя
o конвейерная передача файлов для минимизации затрат на задержку
o поддержка анонимных или аутентифицированных демонов rsync (идеально для зеркалирования)
ОБЩАЯ ИНФОРМАЦИЯ
Rsync копирует файлы либо на удаленный хост, либо с него, либо локально на текущем хосте (он
не поддерживает копирование файлов между двумя удаленными хостами).
У rsync есть два разных способа связаться с удаленной системой: с помощью удаленной оболочки.
программа в качестве транспорта (например, ssh или rsh) или прямое обращение к демону rsync через
TCP. Транспорт удаленной оболочки используется всякий раз, когда исходный или целевой путь содержит
один разделитель двоеточия (:) после спецификации хоста. Связь с демоном rsync
непосредственно происходит, когда исходный или целевой путь содержит двойное двоеточие (: :)
разделитель после спецификации хоста ИЛИ, если указан URL-адрес rsync: // (см. также
Раздел «ИСПОЛЬЗОВАНИЕ ФУНКЦИЙ RSYNC-DAEMON ЧЕРЕЗ ПОДКЛЮЧЕНИЕ УДАЛЕННОЙ ОБОЛОЧКИ» для исключения
это последнее правило).
В особом случае, если один аргумент источника указан без назначения, файлы
перечислены в формате вывода, аналогичном "ls -l".
Как и ожидалось, если ни в исходном, ни в целевом пути не указан удаленный хост, копия
происходит локально (см. также - только список опция).
Rsync называет локальную сторону «клиентом», а удаленную сторону - «сервером». Не надо
путайте "сервер" с демоном rsync - демон всегда является сервером, но сервер может быть
либо демон, либо процесс, порожденный удаленной оболочкой.
УСТАНОВКА
Инструкции по установке см. В файле README.
После установки вы можете использовать rsync на любом компьютере, к которому вы можете получить доступ через удаленную оболочку.
(а также некоторые, к которым вы можете получить доступ, используя протокол режима демона rsync). Для удаленного
передачи, современный rsync использует ssh для своих коммуникаций, но, возможно, он был настроен
использовать по умолчанию другую удаленную оболочку, например rsh или remsh.
Вы также можете указать любую удаленную оболочку, которая вам нравится, либо используя -e командной строки
вариант или установив переменную среды RSYNC_RSH.
Обратите внимание, что rsync должен быть установлен как на исходном, так и на целевом компьютерах.
ИСПОЛЬЗОВАНИЕ
Вы используете rsync так же, как и rcp. Вы должны указать источник и место назначения,
один из которых может быть удаленным.
Возможно, лучший способ объяснить синтаксис - это несколько примеров:
rsync -t * .c foo: src /
Это перенесет все файлы, соответствующие шаблону * .c, из текущего каталога в
каталог src на машине foo. Если какой-либо из файлов уже существует в удаленной системе
тогда протокол удаленного обновления rsync используется для обновления файла, отправляя только
различия в данных. Обратите внимание, что использование подстановочных знаков в командной строке (* .c)
в список файлов обрабатывается оболочкой перед запуском rsync, а не самим rsync
(точно так же, как и все другие программы в стиле posix).
rsync -avz foo: src / bar / data / tmp
Это рекурсивно перенесет все файлы из каталога src / bar на машине foo
в каталог / data / tmp / bar на локальном компьютере. Файлы передаются в
"архивный" режим, который гарантирует, что символические ссылки, устройства, атрибуты, разрешения,
права собственности и т. д. сохраняются при передаче. Кроме того, сжатие будет использоваться для
уменьшить размер передаваемых частей данных.
rsync -avz foo: src / bar / / data / tmp
Завершающая косая черта на источнике изменяет это поведение, чтобы избежать создания дополнительных
уровень каталога в месте назначения. Вы можете думать о конце / на источнике как о значении
«копировать содержимое этого каталога» вместо «копировать каталог по имени», но в
в обоих случаях атрибуты содержащего каталога передаются содержащему
каталог в пункте назначения. Другими словами, каждая из следующих команд копирует
файлы таким же образом, включая их установку атрибутов / dest / foo:
rsync -av / src / foo / dest
rsync -av / src / foo / / dest / foo
Также обратите внимание, что для ссылок на хост и модули не требуется косая черта в конце для копирования
содержимое каталога по умолчанию. Например, оба они копируют удаленный каталог
содержимое в "/ dest":
rsync -av хост: / dest
rsync -av хост :: модуль / назначение
Вы также можете использовать rsync только в локальном режиме, когда ни источник, ни пункт назначения не работают.
иметь ":" в имени. В этом случае она ведет себя как улучшенная команда копирования.
Наконец, вы можете перечислить все (перечисленные) модули, доступные от конкретного демона rsync.
опуская имя модуля:
rsync somehost.mydomain.com ::
См. Более подробную информацию в следующем разделе.
ADVANCED ИСПОЛЬЗОВАНИЕ
Синтаксис для запроса нескольких файлов с удаленного хоста задается указанием
дополнительные аргументы удаленного хоста в том же стиле, что и первый, или с опущенным именем хоста.
Например, все это работает:
rsync -av хост: файл1: файл2 хост: файл {3,4} / dest /
rsync -av host :: modname / file {1,2} host :: modname / file3 / dest /
rsync -av host :: имя мода / файл1 :: имя мода / файл {3,4}
В старых версиях rsync требовалось использовать пробелы в кавычках в SRC, например эти примеры:
rsync -av хост: 'каталог1 / файл1 каталог2 / файл2' / назначение
rsync host :: 'имя мода / каталог1 / файл1 имя мода / каталог2 / файл2' / назначение
Это разделение слов по-прежнему работает (по умолчанию) в последней версии rsync, но его не так просто
использовать как первый метод.
Если вам нужно передать имя файла, содержащее пробелы, вы можете указать
--protect-аргументы (-s) вариант, или вам нужно будет экранировать пробелы таким образом, чтобы
удаленная оболочка поймет. Например:
rsync -av host: 'файл \ имя \ с \ пробелами' / dest
СОЕДИНЕНИЕ К AN RSYNC ДЕЙМОН
Также можно использовать rsync без удаленной оболочки в качестве транспорта. В этом случае
вы будете напрямую подключаться к удаленному демону rsync, обычно через TCP-порт 873. (Это
очевидно, что демон должен работать в удаленной системе, поэтому см. ЗАПУСК
ДАЕМОН RSYNC ДЛЯ ПРИНЯТИЯ ПОДКЛЮЧЕНИЙ, чтобы получить информацию об этом, см. Ниже.
Такой способ использования rsync аналогичен использованию его с удаленной оболочкой, за исключением того, что:
o вы либо используете двойное двоеточие :: вместо одного двоеточия для разделения имени хоста
из пути, или вы используете URL-адрес rsync: //.
o первое слово «пути» на самом деле является именем модуля.
o удаленный демон может распечатать сообщение дня, когда вы подключаетесь.
o если вы не указываете имя пути на удаленном демоне, то список доступных путей
на демоне будет отображаться.
o если вы не укажете локальное место назначения, то список указанных файлов на
предоставляется удаленный демон.
o вы не должны указывать --рш (-e) вариант.
Пример, который копирует все файлы в удаленном модуле с именем «src»:
rsync -av хост :: src / dest
Некоторым модулям удаленного демона может потребоваться аутентификация. Если да, вы получите
запрос пароля при подключении. Вы можете избежать запроса пароля, установив
переменную среды RSYNC_PASSWORD на пароль, который вы хотите использовать, или используя
--password-файл вариант. Это может быть полезно при написании сценария rsync.
ВНИМАНИЕ! В некоторых системах переменные среды видны всем пользователям. В этих системах
через --password-файл Рекомендовано.
Вы можете установить соединение через веб-прокси, установив переменную среды
RSYNC_PROXY в пару имя хоста: порт, указывающую на ваш веб-прокси. Обратите внимание, что ваш Интернет
Конфигурация прокси-сервера должна поддерживать прокси-подключения к порту 873.
Вы также можете установить соединение с демоном, используя программу в качестве прокси, установив параметр
переменную среды RSYNC_CONNECT_PROG к командам, которые вы хотите запускать вместо создания
прямое подключение к розетке. Строка может содержать escape-символ "% H" для представления
имя хоста, указанное в команде rsync (поэтому используйте "%%", если вам нужен единственный "%" в вашем
нить). Например:
экспорт RSYNC_CONNECT_PROG = 'ssh proxyhost nc% H 873'
rsync -av targethost1 :: модуль / src / / dest /
rsync -av rsync :: // targethost2 / module / src / / dest /
Указанная выше команда использует ssh для запуска nc (netcat) на прокси-хосте, который перенаправляет все
данные на порт 873 (демон rsync) на целевом хосте (% H).
С ПОМОЩЬЮ RSYNC-ДЕМОН ФУНКЦИИ И ОСОБЕННОСТИ VIA A ПУЛЬТ ДИСТАНЦИОННОГО УПРАВЛЕНИЯ ПОДКЛЮЧЕНИЕ
Иногда полезно использовать различные функции демона rsync (например, именованные модули)
без фактического разрешения каких-либо новых подключений сокетов к системе (кроме того, что
уже требуется для разрешения удаленного доступа к оболочке). Rsync поддерживает подключение к хосту с помощью
удаленную оболочку, а затем порождает одноразовый "демон" сервер, который ожидает прочитать его
config в домашнем каталоге удаленного пользователя. Это может быть полезно, если вы хотите зашифровать
данные передачи в стиле демона, но поскольку демон запускается заново удаленным
пользователь, возможно, вы не сможете использовать такие функции, как chroot, или изменить uid, используемый
демон. (В качестве другого способа шифрования передачи демона рассмотрите возможность использования ssh для туннелирования
локальный порт на удаленный компьютер и настроить обычный демон rsync на этом удаленном узле для
разрешать соединения только с "localhost".)
С точки зрения пользователя, передача демона через соединение с удаленной оболочкой использует почти
тот же синтаксис командной строки, что и при обычной передаче rsync-daemon, за единственным исключением
состоит в том, что вы должны явно установить программу удаленной оболочки в командной строке с помощью
--rsh = КОМАНДА вариант. (Установка RSYNC_RSH в среде не включит это
функциональность.) Например:
rsync -av --rsh = ssh host :: module / dest
Если вам нужно указать другого пользователя удаленной оболочки, помните, что префикс user @
перед хостом указывается значение rsync-user (для модуля, который требует
пользовательская аутентификация). Это означает, что вы должны указать ssh параметр -l user.
при указании удаленной оболочки, как в этом примере, который использует сокращенную версию
--рш опции:
rsync -av -e "ssh -l ssh-user" rsync-user @ host :: module / dest
"Ssh-user" будет использоваться на уровне ssh; "rsync-user" будет использоваться для входа в
«модуль».
ЗАПУСК AN RSYNC ДЕЙМОН К ПРИНЯТЬ ПОДКЛЮЧЕНИЕ
Чтобы подключиться к демону rsync, в удаленной системе уже должен быть демон.
запущен (или необходимо настроить что-то вроде inetd для создания демона rsync для
входящие соединения на конкретный порт). Для получения полной информации о том, как запустить демон
который будет обрабатывать входящие соединения сокетов, см. rsyncd.conf(5) справочная страница - то есть
файл конфигурации для демона, и он содержит полную информацию о том, как запустить демон
(включая автономные и inetd конфигурации).
Если вы используете один из транспортов удаленной оболочки для передачи, нет необходимости
вручную запустить демон rsync.
SORTED ПЕРЕДАЧА ЗАКАЗАТЬ
Rsync всегда сортирует указанные имена файлов во внутренний список передачи. Это обрабатывает
объединение содержимого каталогов с одинаковыми именами позволяет легко
удалите повторяющиеся имена файлов, и это может запутать кого-то, когда файлы передаются в
порядок отличается от того, который был указан в командной строке.
Если вам нужно, чтобы один файл был передан раньше другого, либо разделите
файлы в разные вызовы rsync или рассмотрите возможность использования --delay-обновления (что не влияет
отсортированный порядок передачи, но делает финальную фазу обновления файла намного больше
быстро).
ПРИМЕРЫ
Вот несколько примеров того, как я использую rsync.
Для резервного копирования домашнего каталога моей жены, который состоит из больших файлов MS Word и почты.
папки, я использую задание cron, которое запускает
rsync -Cavz. arvidsjaur: резервное копирование
каждую ночь через PPP-соединение с дублирующимся каталогом на моей машине "arvidsjaur".
Чтобы синхронизировать мои исходные деревья самбы, я использую следующие цели Makefile:
получить:
rsync -avuzb --exclude '* ~' samba: samba /.
ставить:
rsync -Cavuzb. самба: самба /
синхронизация: поставить
это позволяет мне синхронизироваться с каталогом CVS на другом конце соединения. Я тогда делаю
CVS-операции на удаленном компьютере, что значительно экономит время, поскольку удаленный протокол CVS
не очень эффективно.
Я зеркалирую каталог между моими "старым" и "новым" ftp-сайтами с помощью команды:
rsync -az -e ssh --delete ~ ftp / pub / samba nimbus: "~ ftp / pub / tridge"
Он запускается из cron каждые несколько часов.
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ РЕЗЮМЕ
Вот краткое описание параметров, доступных в rsync. Пожалуйста, обратитесь к подробному
описание ниже для полного описания.
-v, --verbose увеличить детализацию
--info = FLAGS подробное информационное наполнение
--debug = ФЛАГИ детальная детализация отладки
--msgs2stderr специальная обработка вывода для отладки
-q, --quiet подавлять сообщения, не связанные с ошибками
--no-motd подавить MOTD в режиме демона (см. предупреждение)
-c, --checksum пропустить на основе контрольной суммы, а не времени модификации и размера
-a, - режим архивного архива; равно -rlptgoD (без -H, -A, -X)
--no-OPTION отключить подразумеваемый OPTION (например, --no-D)
-r, - рекурсивная рекурсия по каталогам
-R, --relative использовать относительные пути
--no-implied-dirs не отправлять подразумеваемые каталоги с --relative
-b, --backup создавать резервные копии (см. --suffix & --backup-dir)
--backup-dir = DIR создавать резервные копии в иерархии на основе DIR
--suffix = суффикс резервной копии СУФФИКС (по умолчанию ~ без --backup-dir)
-u, --update пропускать более новые файлы на приемнике
--inplace обновить файлы назначения на месте
--append добавлять данные в более короткие файлы
--append-verify --append со старыми данными в контрольной сумме файла
-d, --dirs переносить каталоги без рекурсии
-l, --links копировать символические ссылки как символические ссылки
-L, --copy-links преобразовать символическую ссылку в референтный файл / каталог
--copy-unsafe-links преобразовываются только "небезопасные" символические ссылки
--safe-links игнорировать символические ссылки, указывающие за пределы дерева
--munge-links munge символические ссылки, чтобы сделать их более безопасными
-k, --copy-dirlinks преобразовать символическую ссылку на каталог в референтный каталог
-K, --keep-dirlinks обрабатывает директорию с символической ссылкой на приемнике как директорию
-H, --hard-links сохранить жесткие ссылки
-p, --perms сохранить разрешения
-E, --executability сохранить исполняемость
--chmod = CHMOD влияет на права доступа к файлам и / или каталогам
-A, --acls сохранить ACL (подразумевает -p)
-X, --xattrs сохранить расширенные атрибуты
-o, --owner сохранить владельца (только суперпользователь)
-g, --group сохранить группу
--devices сохраняют файлы устройств (только для суперпользователей)
--specials сохранить специальные файлы
-D то же, что и --devices --specials
-t, --times сохранить время модификации
-O, --omit-dir-times исключить каталоги из --times
-J, --omit-link-times опускать символические ссылки из --times
--сверхприемник пытается выполнить действия суперпользователя
--fake-super store / восстановление привилегированных атрибутов с помощью xattrs
-S, --sparse эффективно обрабатывать разреженные файлы
--preallocate размещать файлы назначения перед записью
-n, --dry-run выполнить пробный запуск без изменений
-W, --whole-file копировать файлы целиком (без алгоритма delta-xfer)
-x, --one-file-system не пересекают границы файловой системы
-B, --block-size = SIZE установить фиксированный размер блока контрольной суммы
-e, --rsh = КОМАНДА указать удаленную оболочку для использования
--rsync-path = ПРОГРАММА указать rsync для запуска на удаленном компьютере
--existing пропустить создание новых файлов на приемнике
--ignore-existing пропустить файлы обновления, существующие на приемнике
--remove-source-files отправитель удаляет синхронизированные файлы (не в каталоге)
--del псевдоним для --delete-during
--delete удалить посторонние файлы из директорий dest
--delete-перед тем, как получатель удалит перед xfer, а не во время
--delete-while получатель удаляет во время передачи
--delete-delay найти удаления во время, удалить после
--delete-after получатель удаляет после передачи, а не во время
--delete-excluded также удалять исключенные файлы из директорий dest
--ignore-missing-args игнорировать отсутствующие исходные аргументы без ошибок
--delete-missing-args удалить отсутствующие исходные аргументы из места назначения
--ignore-errors удалить, даже если есть ошибки ввода / вывода
- принудительно удалить каталоги, даже если они не пустые
--max-delete = ЧИСЛО не удалять более ЧИСЛА файлов
--max-size = SIZE не передавать файлы размером больше SIZE
--min-size = SIZE не передавать файлы размером меньше SIZE
--partial сохранять частично переданные файлы
--partial-dir = DIR поместить частично перенесенный файл в DIR
--delay-updates помещает все обновленные файлы на место в конце
-m, --prune-empty-dirs удалить пустые цепочки каталогов из списка файлов
--numeric-ids не сопоставляет значения uid / gid по имени пользователя / группы
--usermap = STRING персонализированное сопоставление имени пользователя
--groupmap = STRING настраиваемое сопоставление имен групп
--chown = ПОЛЬЗОВАТЕЛЬ: ГРУППА простое сопоставление имени пользователя и группы
--timeout = СЕКУНДЫ установить таймаут ввода / вывода в секундах
--contimeout = СЕКУНДЫ установить тайм-аут соединения демона в секундах
-I, --ignore-times не пропускать файлы, которые соответствуют размеру и времени
--size-only пропускать файлы, совпадающие по размеру
--modify-window = ЧИСЛО сравнить время модификации с пониженной точностью
-T, --temp-dir = DIR создавать временные файлы в каталоге DIR
-y, --fuzzy найти аналогичный файл для базы, если нет файла назначения
--compare-dest = DIR также сравнивать полученные файлы относительно DIR
--copy-dest = DIR ... и включить копии неизмененных файлов
--link-dest = DIR жесткая ссылка на файлы в DIR, если она не изменена
-z, --compress сжимать данные файла во время передачи
--compress-level = ЧИСЛО явно установить уровень сжатия
--skip-compress = СПИСОК пропустить сжатие файлов с суффиксом в СПИСОК
-C, --cvs-exclude автоматически игнорировать файлы так же, как это делает CVS
-f, --filter = ПРАВИЛО добавить ПРАВИЛО фильтрации файлов
-F то же, что и --filter = 'dir-merge /.rsync-filter'
повторяется: --filter = '- .rsync-filter'
--exclude = ШАБЛОН исключить файлы, соответствующие ШАБЛОНУ
--exclude-from = ФАЙЛ читать исключить шаблоны из ФАЙЛА
--include = ШАБЛОН не исключать файлы, соответствующие ШАБЛОНУ
--include-from = ФАЙЛ читать включать шаблоны из ФАЙЛА
--files-from = ФАЙЛ читать список имен исходных файлов из ФАЙЛА
-0, --from0 все файлы * from / filter разделяются нулями
-s, --protect-args без разделения на пробел; только символы подстановки
--address = АДРЕС привязать адрес для исходящего сокета к демону
--port = ПОРТ указать номер альтернативного порта с двойным двоеточием
--sockopts = ОПЦИИ указать настраиваемые параметры TCP
--blocking-io использовать блокировку ввода-вывода для удаленной оболочки
--outbuf = N | L | B устанавливает для буферизации значение None, Line или Block
--stats дает некоторую статистику передачи файлов
-8, --8-bit-output оставить старшие битовые символы неэкранированными на выходе
-h, --человечески понятные выходные числа в удобочитаемом формате
--progress показать прогресс во время передачи
-P то же, что и --partial --progress
-i, --itemize-changes выводит сводку изменений для всех обновлений
-M, --remote-option = OPTION отправить OPTION только удаленной стороне
--out-format = ФОРМАТИРОВАТЬ обновления вывода с использованием указанного ФОРМАТА
--log-file = ФАЙЛ записывать все, что мы делаем с указанным ФАЙЛОМ
--log-file-format = Обновления журнала FMT с использованием указанного FMT
--password-file = ФАЙЛ читать пароль доступа к демону из ФАЙЛА
--list-only вывести список файлов, а не копировать их
--bwlimit = RATE ограничить пропускную способность ввода / вывода сокета
--write-batch = ФАЙЛ записать пакетное обновление в ФАЙЛ
--only-write-batch = ФАЙЛ похож на --write-batch, но без обновления dest
--read-batch = ФАЙЛ читать пакетное обновление из ФАЙЛА
--protocol = ЧИСЛО принудительно использовать более старую версию протокола
--iconv = CONVERT_SPEC запрос преобразования кодировки имен файлов
--checksum-seed = ЧИСЛО установить начальное значение контрольной суммы блока / файла (дополнительно)
-4, --ipv4 предпочитать IPv4
-6, --ipv6 предпочитать IPv6
--version печатать номер версии
(-h) --help показать эту справку (см. ниже комментарий -h)
Rsync также может быть запущен как демон, и в этом случае принимаются следующие параметры:
--daemon запускать как демон rsync
--address = АДРЕС привязать к указанному адресу
--bwlimit = RATE ограничить пропускную способность ввода / вывода сокета
--config = ФАЙЛ указать альтернативный файл rsyncd.conf
-M, --dparam = ПЕРЕОПРЕДЕЛЕНИЕ переопределить глобальный параметр конфигурации демона
--no-detach не отсоединяться от родителя
--port = ПОРТ прослушивать альтернативный номер порта
--log-file = ФАЙЛ переопределить настройку "файл журнала"
--log-file-format = FMT переопределить настройку "формата журнала"
--sockopts = ОПЦИИ указать настраиваемые параметры TCP
-v, --verbose увеличить детализацию
-4, --ipv4 предпочитать IPv4
-6, --ipv6 предпочитать IPv6
-h, --help показать эту справку (если используется после --daemon)
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
Rsync принимает как длинные (двойное тире + слово), так и короткие (одиночное тире + буква) варианты.
Полный список доступных опций описан ниже. Если вариант можно указать
более чем одним способом варианты разделяются запятыми. Некоторые варианты имеют только длинные
вариант, а не короткий. Если опция принимает параметр, параметр указывается только после
длинный вариант, хотя он также должен быть указан для короткого. При указании
параметр, вы можете использовать форму --option = param или заменить '=' пробелом.
Параметр может потребоваться каким-то образом заключить в кавычки, чтобы он выжил в оболочке.
синтаксический анализ командной строки. Имейте в виду, что в имени файла заменяется ведущая тильда (~)
вашей оболочкой, поэтому --option =~ / foo не изменит тильду в вашем домашнем каталоге
(удалите для этого знак '=').
--Помогите Распечатайте короткую справочную страницу с описанием параметров, доступных в rsync, и выйдите. Для
обратная совместимость со старыми версиями rsync, справка также будет выводиться
если вы используете -h вариант без каких-либо других аргументов.
--версия
напечатайте номер версии rsync и выйдите.
-в, --подробный
Эта опция увеличивает объем информации, предоставляемой вам во время передачи.
По умолчанию rsync работает тихо. Один -v предоставит вам информацию о том, что
файлы передаются и краткое содержание в конце. Два -v варианты будут
предоставить вам информацию о том, какие файлы пропускаются, и немного больше информации
в конце. Более двух -v параметры следует использовать только при отладке
рсинк.
В современном rsync -v опция эквивалентна настройке групп --Информация
и --отлаживать параметры. Вы можете использовать эти новые опции в дополнение к, или
вместо использования --подробный, поскольку любые точные настройки отменяют подразумеваемые
настройки -v. Оба --Информация и --отлаживать есть способ попросить о помощи, которая скажет вам
какие именно флаги устанавливаются для каждого увеличения детализации.
Однако имейте в виду, что настройка демона "max многословность" ограничивает
высокий уровень различные отдельные флаги могут быть установлены на стороне демона. Для
например, если максимальное значение равно 2, то любая информация и / или флаг отладки, установленный на более высокий
значение, чем то, что было бы установлено -вв будет понижен до -вв уровень в
ведение журнала демона.
--info = ФЛАГИ
Эта опция позволяет вам точно контролировать вывод информации, которую вы хотите.
чтобы увидеть. За именем отдельного флага может следовать номер уровня, где 0 означает
чтобы заглушить этот вывод, 1 - уровень вывода по умолчанию, и более высокие числа
увеличение вывода этого флага (для тех, которые поддерживают более высокие уровни). Использовать
--info = помощь чтобы увидеть все доступные имена флагов, что они выводят и какой флаг
имена добавляются для каждого повышения уровня подробности. Некоторые примеры:
rsync -a --info = progress2 src / dest /
rsync -avv --info = stats2, misc1, flist0 src / dest /
Обратите внимание, что --info = имяна вывод влияет --out-формат и
--itemize-изменения (-i) параметры. См. Эти варианты для получения дополнительной информации о том, что
вывод и когда.
Этот параметр был добавлен в 3.1.0, поэтому более старый rsync на стороне сервера мог отклонить
ваши попытки детального управления (если нужно отправить один или несколько флагов
сервер и сервер были слишком старыми, чтобы их понять). См. Также "max
многословие "предостережение выше при работе с демоном.
--debug = ФЛАГИ
Эта опция позволяет вам точно контролировать вывод отладки, который вы хотите
видеть. За именем отдельного флага может следовать номер уровня, где 0 означает
отключите этот вывод, 1 - уровень вывода по умолчанию, и более высокие числа
увеличение вывода этого флага (для тех, которые поддерживают более высокие уровни). Использовать
--debug = помощь чтобы увидеть все доступные имена флагов, что они выводят и какой флаг
имена добавляются для каждого повышения уровня подробности. Некоторые примеры:
rsync -avvv --debug = none src / dest /
rsync -avA --del --debug = del2, acl src / dest /
Обратите внимание, что некоторые сообщения отладки будут выводиться только тогда, когда --msgs2stderr указано,
особенно те, которые относятся к вводу-выводу и отладке буфера.
Этот параметр был добавлен в 3.1.0, поэтому более старый rsync на стороне сервера мог отклонить
ваши попытки детального управления (если нужно отправить один или несколько флагов
сервер и сервер были слишком старыми, чтобы их понять). См. Также "max
многословие "предостережение выше при работе с демоном.
--msgs2stderr
Эта опция изменяет rsync для отправки всего вывода непосредственно на stderr, а не на
отправлять сообщения на сторону клиента через протокол (который обычно выводит информацию
сообщения через стандартный вывод). В основном это предназначено для отладки, чтобы избежать
изменение данных, отправленных по протоколу, так как дополнительные данные протокола могут измениться
что тестируется. Имейте в виду, что соединение с демоном не имеет stderr
канал для отправки сообщений обратно на клиентскую сторону, поэтому, если вы что-то делаете
отладка daemon-transfer с использованием этой опции, вы должны запустить демон, используя
- без отсоединения так что вы можете видеть вывод stderr на стороне демона.
У этой опции есть побочный эффект, заключающийся в том, что вывод stderr буферизуется по строкам, так что
объединение вывода 3 программ происходит в более удобочитаемом виде.
-д, --тихий
Эта опция уменьшает объем информации, предоставляемой вам во время передачи,
в частности, подавление информационных сообщений от удаленного сервера. Этот вариант
полезно при вызове rsync из cron.
--нет-мотд
Этот параметр влияет на информацию, выводимую клиентом в начале
передача демона. Это подавляет текст сообщения дня (MOTD), но также
влияет на список модулей, которые демон отправляет в ответ на "rsync host ::"
запроса (из-за ограничений в протоколе rsync), поэтому пропустите эту опцию, если вы
хотите запросить список модулей у демона.
-Я, - игнорировать раз
Обычно rsync пропускает любые файлы, которые уже имеют одинаковый размер и одинаковые
отметка времени модификации. Этот параметр отключает "быструю проверку", вызывающую
все файлы должны быть обновлены.
--размер только
Это изменяет алгоритм "быстрой проверки" rsync для поиска файлов, которые необходимо
переданы, изменив его по умолчанию на передачу файлов с помощью
измененный размер или измененное время последнего изменения, чтобы просто искать файлы, которые
изменился в размере. Это полезно, когда вы начинаете использовать rsync после использования другого
система зеркалирования, которая может не сохранять точные отметки времени.
--modify-окно
При сравнении двух меток времени rsync обрабатывает метки времени как равные, если они
отличаются не более чем на значение окна изменения. Обычно это 0 (для точного
совпадение), но может оказаться полезным установить для него большее значение в некоторых
ситуации. В частности, при переносе в файловую систему MS Windows FAT или из нее.
файловая система (которая представляет время с разрешением 2 секунды), --modify-window = 1
полезно (время может отличаться до 1 секунды).
-с, - контрольная сумма
Это изменяет способ, которым rsync проверяет, были ли файлы изменены и нуждаются ли они в
перевод. Без этой опции rsync использует «быструю проверку», которая (по умолчанию)
проверяет, совпадают ли размер каждого файла и время последнего изменения между отправителем
и ресивер. Эта опция изменяет это, чтобы сравнить 128-битную контрольную сумму для каждого файла.
подходящего размера. Создание контрольных сумм означает, что обе стороны будут
тратить много дискового ввода-вывода на чтение всех данных в файлах при передаче (и
это предшествует любому чтению, которое будет выполнено для передачи измененных файлов), поэтому это
может значительно замедлить работу.
Отправляющая сторона генерирует свои контрольные суммы во время сканирования файловой системы.
который строит список доступных файлов. Получатель генерирует свои контрольные суммы
когда он сканирует измененные файлы, и будет проверять контрольную сумму любого файла с таким же
размер как соответствующий файл отправителя: файлы с измененным размером или
измененная контрольная сумма выбирается для передачи.
Обратите внимание, что rsync всегда проверяет, что каждый переданы файл был правильно
реконструируется на принимающей стороне путем проверки контрольной суммы всего файла, которая
генерируется при передаче файла, но эта автоматическая после передачи
проверка не имеет ничего общего с этой опцией перед передачей "Это
файл нужно обновить? »проверьте.
Для протокола 30 и выше (впервые поддерживается в 3.0.0) используется контрольная сумма MD5.
Для старых протоколов используется контрольная сумма MD4.
-a --архив
Это эквивалентно -rlptgoD. Это быстрый способ сказать, что вам нужна рекурсия и
хотите сохранить почти все (примечательным упущением является -H). Единственный
Исключение из приведенной выше эквивалентности - когда --файлы-из указано, и в этом случае
-r не подразумевается.
Обратите внимание, что -a приносит сохранять жесткие ссылки, потому что поиск многосвязных файлов
дорогие. Необходимо отдельно указать -H.
--no-ОПЦИЯ
Вы можете отключить один или несколько подразумеваемых параметров, добавив к имени параметра префикс
"нет-". Не все параметры могут иметь префикс "no-": только варианты, которые подразумеваются.
другими вариантами (например, --кивок, - без химической завивки) или иметь разные значения по умолчанию в разных
обстоятельства (например, --no-целый файл, --no-blocking-io, --no-диры). Вы можете указать
короткое или длинное имя опции после префикса «no-» (например, --ни это
так же, как - не относительный).
Например: если вы хотите использовать -a (--архив) но не хочу -o (--владелец), вместо
преобразования -a в -rlptgD, вы можете указать -a - нет (или -a --без собственника).
Порядок опций важен: если вы укажете --ни -a, -r вариант
в конечном итоге включится, в противоположность -a --ни, Обратите внимание также, что
побочные эффекты --файлы-из вариант НЕ является позиционным, так как он влияет на
состояние по умолчанию нескольких параметров и немного меняет значение -a (См
--файлы-из вариант для более подробной информации).
-р, - рекурсивный
Это указывает rsync рекурсивно копировать каталоги. Смотрите также --дирс (-d).
Начиная с rsync 3.0.0, рекурсивный алгоритм теперь представляет собой инкрементное сканирование.
который использует гораздо меньше памяти, чем раньше, и начинает передачу после сканирования
из первых нескольких справочников завершены. Только это инкрементное сканирование
влияет на наш алгоритм рекурсии и не изменяет нерекурсивную передачу. Это
также возможно только тогда, когда оба конца передачи имеют версию не ниже 3.0.0.
Некоторые параметры требуют, чтобы rsync знал полный список файлов, поэтому эти параметры отключают
режим инкрементальной рекурсии. Это включает: --удалить-до, --delete-после,
--prune-пустые-каталогии --delay-обновления. Из-за этого режим удаления по умолчанию
когда вы указываете --удалять Сейчас --delete-во время когда оба конца соединения
не ниже 3.0.0 (используйте --дел or --delete-во время запросить это улучшенное удаление
режим явно). Также --удалить-задержка вариант, который лучше, чем
через --delete-после.
Инкрементную рекурсию можно отключить с помощью --no-inc-рекурсивный вариант или его
короче - нет псевдоним.
-Р, --родственник
Используйте относительные пути. Это означает, что полные имена путей, указанные в команде
строка отправляется на сервер, а не только последние части имен файлов. Этот
особенно полезно, если вы хотите отправить несколько разных каталогов в
в то же время. Например, если вы использовали эту команду:
rsync -av /foo/bar/baz.c удаленный:/ tmp /
... это создаст файл с именем baz.c в / tmp / на удаленной машине. Если вместо этого
ты использовал
rsync -avR /foo/bar/baz.c удаленный:/ tmp /
тогда на удаленном компьютере будет создан файл с именем /tmp/foo/bar/baz.c,
сохраняя свой полный путь. Эти дополнительные элементы пути называются "подразумеваемыми".
каталоги "(т.е. каталоги" foo "и" foo / bar "в приведенном выше примере).
Начиная с rsync 3.0.0, rsync всегда отправляет эти подразумеваемые каталоги как настоящие.
каталоги в списке файлов, даже если элемент пути на самом деле является символической ссылкой на
отправляющая сторона. Это предотвращает некоторые действительно неожиданные поведения при копировании полной
путь к файлу, путь к которому, как вы не подозреваете, содержит символическую ссылку. Если хотите
дублировать символическую ссылку на стороне сервера, включать как символическую ссылку по ее пути, так и
референтный каталог по его реальному пути. Если вы имеете дело со старым rsync на
отправляющая сторона, возможно, потребуется использовать --no-подразумеваемые-каталоги опцию.
Также можно ограничить объем отправляемой информации о пути, как подразумевается.
каталоги для каждого указанного вами пути. С современным rsync на отправляющей стороне
(начиная с 2.6.7) вы можете вставить точку и косую черту в исходный путь, например
это:
rsync -avR /foo/./bar/baz.c удаленный:/ tmp /
Это создаст /tmp/bar/baz.c на удаленном компьютере. (Обратите внимание, что точка должна быть
за которым следует косая черта, поэтому "/ foo /." не будет сокращаться.) Для более старых версий rsync
версий, вам нужно будет использовать chdir, чтобы ограничить исходный путь. Например,
при нажатии файлов:
(cd / foo; rsync -avR bar / baz.c удаленный:/ tmp /)
(Обратите внимание, что скобки помещают две команды во вспомогательную оболочку, так что "cd"
команда не остается в силе для будущих команд.) Если вы загружаете файлы
из более старого rsync используйте эту идиому (но только для передачи без демона):
rsync -avR --rsync-path = "cd / foo; rsync" \
пульт: bar / baz.c / tmp /
--no-подразумеваемые-каталоги
Этот параметр влияет на поведение по умолчанию --родственник вариант. Когда он является
указано, атрибуты подразумеваемых каталогов из имен источников не
входит в передачу. Это означает, что соответствующие элементы пути на
системы назначения остаются неизменными, если они существуют, и любые отсутствующие подразумеваются
каталоги создаются с атрибутами по умолчанию. Это даже позволяет эти подразумеваемые
элементы пути должны иметь большие различия, например быть символической ссылкой на каталог на
принимающая сторона.
Например, если аргумент командной строки или запись из файлов сообщают rsync о передаче
файл "path / foo / file", каталоги "path" и "path / foo" подразумеваются, когда
--родственник используется. Если "path / foo" является символической ссылкой на "bar" в целевой системе,
принимающий rsync обычно удаляет "path / foo", воссоздает его как каталог,
и получите файл в новый каталог. С участием --no-подразумеваемые-каталоги, получение
rsync обновляет «path / foo / file», используя существующие элементы пути, что означает, что
в конечном итоге файл создается в «пути / панели». Другой способ выполнить эту ссылку
сохранение заключается в использовании --keep-dirlinks опция (которая также повлияет на символические ссылки
в каталоги в остальном переводе).
При извлечении файлов из rsync старше 3.0.0 вам может потребоваться использовать эту опцию
если отправляющая сторона имеет символическую ссылку в пути, который вы запрашиваете, и вы хотите, чтобы подразумеваемый
каталоги должны быть перенесены как обычные каталоги.
-б, --резервное копирование
С помощью этой опции существующие файлы назначения переименовываются, поскольку каждый файл
перенесено или удалено. Вы можете контролировать, куда будет помещен файл резервной копии и что (если
any) добавляется суффикс --backup-каталог и --суффикс настройки.
Обратите внимание: если вы не укажете --backup-каталог, (1) --omit-dir-times вариант будет
следует, и (2) если --удалять также действует (без --delete-исключено),
rsync добавит правило фильтра "защиты" для суффикса резервной копии в конец всех ваших
существующие исключения (например, -f "P * ~ "). Это предотвратит ранее скопированные файлы
от удаления. Обратите внимание: если вы предоставляете свои собственные правила фильтрации, вы можете
необходимо вручную вставить собственное правило исключения / защиты где-нибудь выше в
список так, чтобы он имел достаточно высокий приоритет, чтобы быть эффективным (например, если ваши правила
указать завершающее включение / исключение '*', правило автоматического добавления никогда не будет
достиг).
--backup-dir = КАТАЛОГ
В сочетании с --резервное копирование параметр, это указывает rsync хранить все резервные копии в
указанный каталог на принимающей стороне. Это можно использовать для инкрементального
резервные копии. Вы можете дополнительно указать суффикс резервной копии, используя --суффикс вариант
(в противном случае файлы, резервные копии которых находятся в указанном каталоге, сохранят свои исходные
имена файлов).
Обратите внимание, что если вы укажете относительный путь, каталог резервной копии будет относиться к
каталог назначения, поэтому вы, вероятно, захотите указать либо абсолютный путь
или путь, который начинается с "../". Если получателем является демон rsync, резервная копия
dir не может выходить за пределы иерархии путей модуля, поэтому будьте особенно осторожны, чтобы не удалить
его или скопируйте в него.
--suffix = СУФФИКС
Эта опция позволяет вам переопределить суффикс резервной копии по умолчанию, используемый с --резервное копирование
(-b) вариант. Суффикс по умолчанию - ~, если нет --резервный-каталог было указано, иначе
это пустая строка.
-у, --Обновить
Это заставляет rsync пропускать любые файлы, которые существуют в месте назначения и имеют
время изменения новее, чем исходный файл. (Если существующий файл назначения
имеет время модификации, равное времени изменения исходного файла, оно будет обновлено, если размеры
разные.)
Обратите внимание, что это не влияет на копирование каталогов, символических ссылок или других специальных
файлы. Кроме того, всегда существует разница в форматах файлов отправителя и получателя.
считается достаточно важным для обновления, независимо от того, какая дата
объекты. Другими словами, если у источника есть каталог, в котором у места назначения есть
файл, передача будет происходить независимо от отметок времени.
Этот параметр является правилом передачи, а не исключением, поэтому он не влияет на данные, которые
попадает в списки файлов и не влияет на удаление. Это просто ограничивает
файлы, которые получатель запрашивает для передачи.
--на месте
Этот параметр изменяет способ передачи файла rsync, когда его данные необходимо обновить:
вместо стандартного метода создания новой копии файла и перемещения ее в
место, когда оно будет завершено, rsync вместо этого записывает обновленные данные непосредственно в
файл назначения.
Это имеет несколько эффектов:
o Жесткие ссылки не битые. Это означает, что новые данные будут видны через
другие жесткие ссылки на целевой файл. Более того, попытки скопировать
различие исходных файлов в многосвязном конечном файле приведет к
в "перетягивании каната" с изменением данных пункта назначения туда и обратно.
o Используемые двоичные файлы не могут быть обновлены (либо ОС не позволит этому
происходит, или двоичные файлы, которые пытаются заменить свои данные, будут вести себя некорректно или
авария).
o Данные файла будут в несогласованном состоянии во время передачи и
останется таким же, если передача будет прервана или обновление не удастся.
o Файл, в который rsync не может писать, не может быть обновлен. В то время как суперпользователь может
обновлять любой файл, обычному пользователю должно быть предоставлено разрешение на запись для
открытие файла для успешной записи.
o Эффективность алгоритма дельта-передачи rsync может быть снижена, если некоторые
данные в файле назначения перезаписываются, прежде чем их можно будет скопировать в
позиция позже в файле. Это не применяется, если вы используете --резервное копирование, поскольку
rsync достаточно умен, чтобы использовать файл резервной копии в качестве основного файла для
перевод.
ВНИМАНИЕ: вы не должны использовать эту опцию для обновления файлов, к которым обращается
другие, поэтому будьте осторожны, выбирая его для копии.
Эта опция полезна для передачи больших файлов с блочными изменениями или
добавленные данные, а также в системах, привязанных к диску, а не к сети. Оно может
также помогают сохранить моментальный снимок файловой системы копирования при записи от расхождения всего
содержимое файла с незначительными изменениями.
Вариант подразумевает - частичный (поскольку прерванная передача не удаляет
файл), но конфликтует с --partial-дир и --delay-обновления. До rsync 2.6.4
--на месте был также несовместим с --compare-dest и --ссылка-назначение.
- добавить
Это заставляет rsync обновлять файл, добавляя данные в конец файла,
который предполагает, что данные, которые уже существуют на принимающей стороне, идентичны
с началом файла на отправляющей стороне. Если файл необходимо передать
и его размер на получателе такой же или больше, чем размер отправителя,
файл пропущен. Это не мешает обновлению содержимого файла.
атрибуты (например, разрешения, владение и т. д.), когда файл не нужно
переносится, и это не влияет на обновление каких-либо нестандартных файлов. Подразумевает
--на месте, но не конфликтует с - разреженный (поскольку он всегда расширяет
длина файла).
--append-проверить
Это работает так же, как - добавить вариант, но существующие данные о приеме
сторона включена в этап проверки полной контрольной суммы файла, что вызовет
файл, который будет отправлен повторно, если последний этап проверки завершится неудачно (rsync использует обычный,
не добавляющий --на месте перевод для повторной отправки).
Примечание: до rsync 3.0.0 - добавить вариант работал как --append-проверить, так что если
вы взаимодействуете со старым rsync (или при передаче используется протокол, предшествующий
до 30), указание любой из опций добавления вызовет --append-проверить перевод.
-д, --дирс
Сообщите отправляющей стороне, чтобы она включила все обнаруженные каталоги. В отличие от
- рекурсивный, содержимое каталога не копируется, если имя каталога
указано "." или заканчивается косой чертой в конце (например, «.», «dir /.», «dir /» и т. д.).
Без этой опции или - рекурсивный вариант, rsync пропустит все каталоги, которые он
встреч (и вывести сообщение об этом для каждого из них). Если вы укажете оба
--дирс и - рекурсивный, - рекурсивный имеет приоритет.
Команда --дирс вариант подразумевается --файлы-из или - только список вариант
(включая подразумеваемый - только список использование) если - рекурсивный не было указано (так что
каталоги видны в листинге). Указать --no-диры (или --кивок) если вы хотите
выключи это.
Существует также вспомогательная опция обратной совместимости, - старики (или --старый-д) тот
сообщает rsync, что нужно использовать "-r --exclude = '/ * / *'", чтобы старый rsync отображал
единый каталог без рекурсии.
-л, --ссылки
Когда встречаются символические ссылки, воссоздайте символическую ссылку в месте назначения.
-Л, --скопировать ссылки
Когда встречаются символические ссылки, элемент, на который они указывают (референт), является
скопировано, а не символическая ссылка. В более старых версиях rsync эта опция также имела
побочный эффект указания принимающей стороне следовать символическим ссылкам, таким как символические ссылки
в каталоги. В современном rsync, таком как этот, вам нужно указать
--keep-dirlinks (-K), чтобы получить это дополнительное поведение. Единственное исключение - когда
отправка файлов в rsync, который слишком стар для понимания -K - в этом случае -L
вариант по-прежнему будет иметь побочный эффект -K на том старшем получал rsync.
--copy-небезопасные-ссылки
Это заставляет rsync скопировать референт символьных ссылок, указывающих за пределы
скопированное дерево. Абсолютные символические ссылки также обрабатываются как обычные файлы, как и
любые символические ссылки в самом исходном пути, когда --родственник используется. Этот вариант не имеет
дополнительный эффект, если --скопировать ссылки также было указано.
--safe-ссылки
Это указывает rsync игнорировать любые символические ссылки, указывающие за пределами скопированного дерева.
Также игнорируются все абсолютные символические ссылки. Использование этой опции вместе с
--родственник может дать неожиданные результаты.
--munge-ссылки
Этот параметр указывает rsync (1) изменить все символические ссылки на принимающей стороне способом
что делает их непригодными для использования, но восстанавливаемыми (см. ниже), или (2) для отмены изменения символических ссылок на
отправляющая сторона, которая хранилась в измененном состоянии. Это полезно, если вы
не совсем доверяйте источнику данных, чтобы не попытаться вставить символическую ссылку на
неожиданное место.
Способ, которым rsync отключает использование символических ссылок, - это добавлять к каждой из них строку
"/ rsyncd-munged /". Это предотвращает использование ссылок до тех пор, пока это
каталог не существует. Когда эта опция включена, rsync откажется запускаться, если
этот путь является каталогом или символической ссылкой на каталог.
Эта опция влияет только на клиентскую сторону передачи, поэтому, если вам это нужно,
влияют на сервер, укажите это через --remote-опция. (Обратите внимание, что при локальной передаче
клиентская сторона является отправителем.)
Эта опция не влияет на демон, поскольку демон настраивает, хочет ли он
измененные символические ссылки через параметр "munge symlinks". См. Также "символические ссылки munge"
perl скрипт в каталоге поддержки исходного кода.
-к, --copy-dirlinks
Эта опция заставляет отправляющую сторону обрабатывать символическую ссылку на каталог, как если бы она
были настоящим каталогом. Это полезно, если вы не хотите, чтобы символические ссылки на
не-каталоги, которые будут затронуты, поскольку они будут использовать --скопировать ссылки.
Без этой опции, если отправляющая сторона заменила каталог символической ссылкой на
каталог, принимающая сторона удалит все, что мешает новому
символическая ссылка, включая иерархию каталогов (до тех пор, пока --сила or --удалять В
эффект).
Смотрите также --keep-dirlinks за аналогичный вариант для принимающей стороны.
--copy-dirlinks применяется ко всем символическим ссылкам на каталоги в источнике. Если хочешь
чтобы следовать только нескольким указанным символическим ссылкам, вы можете использовать трюк, чтобы передать их как
дополнительные исходные аргументы с завершающей косой чертой, используя --родственник проложить пути
совпадают правильно. Например:
rsync -r --relative src /./ src /./ follow-me / dest /
Это работает, потому что rsync вызывает lstat(2) на исходном arg, как указано, и
завершающая косая черта делает lstat(2) следуйте по символической ссылке, открывая каталог в
file-list, который отменяет символическую ссылку, найденную во время сканирования "src /./".
-К, --keep-dirlinks
Эта опция заставляет принимающую сторону обрабатывать символическую ссылку на каталог, как если бы
это был настоящий каталог, но только если он соответствует настоящему каталогу отправителя.
Без этой опции символическая ссылка получателя будет удалена и заменена на
реальный каталог.
Например, предположим, что вы переносите каталог «foo», содержащий файл «file»,
но «foo» - это символическая ссылка на каталог «bar» на приемнике. Без
--keep-dirlinks, получатель удаляет символическую ссылку "foo", воссоздает ее как каталог,
и получает файл в новый каталог. С участием --keep-dirlinks, получатель
сохраняет символическую ссылку, и «файл» попадает в «полосу».
Одно предупреждение: если вы используете --keep-dirlinks, вы должны доверять всем символическим ссылкам
в копии! Если ненадежный пользователь может создать свою собственную символическую ссылку
в любой каталог, пользователь может (при последующей копии) заменить символическую ссылку
с реальным каталогом и влияют на содержимое любого каталога, в котором символическая ссылка
использованная литература. Для резервных копий лучше использовать что-то вроде привязки
смонтируйте вместо символической ссылки, чтобы изменить вашу иерархию приема.
Смотрите также --copy-dirlinks за аналогичный вариант для отправляющей стороны.
-ЧАС, - жесткие ссылки
Это заставляет rsync искать файлы с жесткими ссылками в источнике и связывать вместе
соответствующие файлы в месте назначения. Без этой опции жестко связанные файлы в
исходные файлы рассматриваются как отдельные файлы.
Этот параметр НЕ обязательно гарантирует, что шаблон жестких ссылок на
пункт назначения точно совпадает с указанным в источнике. Случаи, в которых пункт назначения может
в конечном итоге с дополнительными жесткими ссылками, включая следующее:
o Если пункт назначения содержит посторонние жесткие ссылки (больше ссылок, чем то, что
присутствуют в списке исходных файлов), алгоритм копирования не сломает их
явно. Однако, если один или несколько путей имеют различия в содержании,
обычный процесс обновления файлов приведет к разрыву этих дополнительных ссылок (если только вы не
используя --на месте опция).
o Если вы укажете --ссылка-назначение каталог, содержащий жесткие ссылки, ссылки
файлов назначения против --ссылка-назначение файлы могут вызывать некоторые пути
в пункте назначения, чтобы соединиться вместе из-за --ссылка-назначение
ассоциации.
Обратите внимание, что rsync может обнаруживать только жесткие ссылки между файлами, находящимися внутри
передаточный набор. Если rsync обновляет файл, имеющий дополнительные жесткие ссылки на
файлы вне передачи, эта связь будет нарушена. Если вы хотите использовать
--на месте вариант, чтобы избежать этой поломки, будьте очень осторожны, чтобы знать, как
файлы обновляются, поэтому вы уверены, что не произойдет никаких непреднамеренных изменений
из-за устаревших жестких ссылок (и см. --на месте вариант для дополнительных предостережений).
Если активна инкрементная рекурсия (см. - рекурсивный), rsync может передать отсутствующий
файл с жесткой связью, прежде чем он обнаружит, что существует другая ссылка для этого содержимого
в другом месте иерархии. Это не влияет на точность перевода.
(т.е. какие файлы жестко связаны друг с другом), только его эффективность (т.е. копирование
данные для новой, ранней копии файла с жесткой связью, которая могла быть найдена позже
при передаче в другой член жестко связанного набора файлов). Один способ
избежать этой неэффективности - отключить инкрементную рекурсию с помощью
--no-inc-рекурсивный опцию.
-п, --пермы
Эта опция заставляет принимающий rsync устанавливать разрешения назначения как
такие же, как разрешения источника. (См. Также --chmod вариант для способа изменения
что rsync считает исходными разрешениями.)
Когда эта опция от, разрешения устанавливаются следующим образом:
o Существующие файлы (включая обновленные) сохраняют свои существующие разрешения,
хотя --исполняемость опция может изменить только разрешение на выполнение
для файла.
o Новые файлы получают свои «нормальные» биты разрешений, равные исходному файлу.
разрешения, замаскированные с разрешениями по умолчанию для получающего каталога
(либо umask получающего процесса, либо разрешения, указанные через
ACL каталога назначения по умолчанию) и их биты специальных разрешений
отключен, за исключением случая, когда новый каталог наследует бит setgid от
его родительский каталог.
Таким образом, когда --пермы и --исполняемость оба отключены, поведение rsync является
такие же, как у других утилит для копирования файлов, таких как cp(1) и деготь(1).
В итоге: чтобы предоставить конечным файлам (как старым, так и новым) права доступа к источнику,
использование --пермы. Чтобы предоставить новым файлам права назначения по умолчанию (при выходе из
существующие файлы без изменений), убедитесь, что --пермы опция выключена и используйте
--chmod = ugo = rwX (что обеспечивает включение всех немаскированных битов). Если бы ты
позаботьтесь о том, чтобы упростить ввод этого последнего поведения, вы можете определить псевдоним popt для
это, например, поместив эту строку в файл ~ / .popt (следующее определяет -Z
параметр и включает --no-g, чтобы использовать группу по умолчанию для каталога назначения):
rsync псевдоним -Z --no-p --no-g --chmod = ugo = rwX
Затем вы можете использовать эту новую опцию в такой команде:
rsync -avZ src / dest /
(Предупреждение: убедитесь, что -a не следует -Z, или он снова включит два
"--no- *" упомянутые выше параметры.)
Сохранение бита setgid места назначения во вновь созданных каталогах, когда
--пермы выключен был добавлен в rsync 2.6.7. Ошибочно старые версии rsync
сохранил три бита специальных разрешений для вновь созданных файлов, когда --пермы
был выключен, но переопределил установку бита setgid пункта назначения на вновь созданном
каталог. Соблюдение ACL по умолчанию было добавлено в исправление ACL для rsync 2.6.7, поэтому
старые (или не поддерживающие ACL) rsync используют umask, даже если присутствуют ACL по умолчанию.
(Имейте в виду, что это версия принимающего rsync, которая влияет на эти
поведения.)
-А ТАКЖЕ, --исполняемость
Эта опция заставляет rsync сохранять исполняемость (или невыполнимость)
обычные файлы, когда --пермы не включен. Обычным файлом считается
исполняемый файл, если в его разрешениях включен хотя бы один 'x'. Когда существующий
исполняемость файла назначения отличается от исполняемого файла соответствующего источника
file, rsync изменяет права доступа к конечному файлу следующим образом:
o Чтобы сделать файл неисполняемым, rsync отключает все его разрешения «x».
o Чтобы сделать файл исполняемым, rsync включает каждое разрешение 'x', имеющее
соответствующее разрешение 'r' включено.
If --пермы включен, этот параметр игнорируется.
-А, --acls
Эта опция заставляет rsync обновлять целевые списки ACL, чтобы они были такими же, как и
исходные ACL. Вариант также подразумевает --пермы.
Для этой опции исходная и конечная системы должны иметь совместимые записи ACL.
работать правильно. Увидеть - фейк-супер вариант для способа резервного копирования и восстановления ACL
которые несовместимы.
-ИКС, --xattrs
Эта опция заставляет rsync обновлять расширенные атрибуты назначения, чтобы
такие же, как и исходные.
Для систем, поддерживающих пространства имен с расширенными атрибутами, копирование выполняется
суперпользователь копирует все пространства имен, кроме system. *. Обычный пользователь копирует только
user. * пространство имен. Чтобы иметь возможность создавать резервные копии и восстанавливать непользовательские пространства имен как обычно
пользователь, см. - фейк-супер опцию.
Обратите внимание, что этот параметр не копирует специальные значения xattr rsyncs (например, используемые
- фейк-супер), если вы не повторите эту опцию (например, -XX). Этот режим "копировать все xattrs"
нельзя использовать с - фейк-супер.
--chmod
Этот параметр указывает rsync применить один или несколько режимов chmod, разделенных запятыми, к
разрешение файлов в передаче. Полученное значение рассматривается как если бы
это были разрешения, которые отправляющая сторона предоставила для файла, что означает
что эта опция может не повлиять на существующие файлы, если --пермы Не
включен.
В дополнение к обычным правилам синтаксического анализа, указанным в CHMOD(1) справочную страницу, вы можете
укажите элемент, который должен применяться только к каталогу, поставив перед ним префикс 'D',
или укажите элемент, который должен применяться только к файлу, поставив перед ним букву «F».
Например, следующее гарантирует, что все каталоги будут помечены как set-gid,
что ни один файл не доступен для записи другим пользователям, и что оба файла доступны для записи и для пользователей, и для группы,
и что оба имеют последовательную исполняемость по всем битам:
--chmod = Dg + s, ug + w, Fo-w, + X
Также допускается использование восьмеричных номеров режима:
--chmod = D2775, F664
Также допустимо указывать несколько --chmod варианты, так как каждая дополнительная опция
просто добавлен к списку изменений, которые необходимо внести.
Смотрите пост в --пермы и --исполняемость варианты того, как результирующее значение разрешения
может применяться к файлам в передаче.
-о, --владелец
Эта опция заставляет rsync устанавливать владельца файла назначения таким же, как и
исходный файл, но только если принимающий rsync запускается от имени суперпользователя
(см. также --супер и - фейк-супер параметры). Без этой опции владелец
новые и / или переданные файлы устанавливаются для вызывающего пользователя на принимающей стороне.
Сохранение права собственности будет связывать совпадающие имена по умолчанию, но может
в некоторых случаях возвращайтесь к использованию идентификационного номера (см. также --numeric-идентификаторы
вариант для полноценного обсуждения).
-грамм, --группа
Эта опция заставляет rsync установить такую же группу конечного файла, как и
исходный файл. Если принимающая программа не запущена от имени суперпользователя (или если
--нет-супер был указан), только группы, которые вызывающий пользователь на принимающей стороне
член будет сохранен. Без этой опции группа устанавливается на
группа по умолчанию вызывающего пользователя на принимающей стороне.
Сохранение групповой информации будет связывать совпадающие имена по умолчанию, но
может вернуться к использованию идентификационного номера в некоторых случаях (см. также
--numeric-идентификаторы вариант для полноценного обсуждения).
--устройства
Эта опция заставляет rsync передавать символьные файлы и файлы блочных устройств на удаленный
система для воссоздания этих устройств. Этот параметр не действует, если принимающий rsync
не запускается от имени суперпользователя (см. также --супер и - фейк-супер параметры).
- специальные
Эта опция заставляет rsync передавать специальные файлы, такие как именованные сокеты и FIFO.
-D Команда -D вариант эквивалентен --устройства - специальные.
-т, - раз
Это указывает rsync передавать время модификации вместе с файлами и обновлять
их в удаленной системе. Обратите внимание: если этот параметр не используется, оптимизация
исключение файлов, которые не были изменены, не может быть эффективным; в других
слова, недостающий -t or -a приведет к тому, что следующая передача будет вести себя так, как если бы она использовала -I,
вызывая обновление всех файлов (хотя алгоритм дельта-передачи rsync сделает
обновление довольно эффективно, если файлы на самом деле не изменились, вы сильно
лучше использовать -t).
-О, --omit-dir-times
Это указывает rsync пропускать каталоги, когда он сохраняет время модификации (см.
- раз). Если NFS разделяет каталоги на принимающей стороне, это хорошо.
идея использовать -O. Этот вариант подразумевается, если вы используете --резервное копирование без --backup-каталог.
У этой опции также есть побочный эффект, заключающийся в том, что вы избегаете раннего создания каталогов в
инкрементные рекурсивные копии. По умолчанию --инк-рекурсивный копирование обычно делает
раннее создание прохода всех подкаталогов в родительском каталоге для этого
чтобы иметь возможность сразу же установить время изменения родительского каталога (без
необходимо отложить это до тех пор, пока не завершится куча рекурсивного копирования). Этот
идиома раннего создания не требуется, если время изменения каталога не
сохраняется, поэтому пропускается. Поскольку в каталогах раннего создания нет точных
mode, mtime или владение, использование этой опции может помочь, когда кто-то хочет
избегайте этих частично законченных каталогов.
-Дж, --omit-link-раз
Это указывает rsync опускать символические ссылки, когда он сохраняет время модификации (см.
- раз).
--супер
Это указывает принимающей стороне на попытку действий суперпользователя, даже если
получение rsync не было запущено суперпользователем. Эти действия включают: сохранение
пользователей через --владелец вариант, сохраняющий все группы (а не только текущего пользователя
группы) через --группы вариант, а копирующие устройства через --устройства опцию.
Это полезно для систем, которые позволяют такие действия, не будучи суперпользователем,
а также для гарантии того, что вы получите ошибки, если принимающая сторона не
запустить как суперпользователь. Чтобы отключить действия суперпользователя, суперпользователь может использовать
--нет-супер.
- фейк-супер
Когда этот параметр включен, rsync имитирует действия суперпользователя с помощью
сохранение / восстановление привилегированных атрибутов с помощью специальных расширенных атрибутов, которые
прикреплен к каждому файлу (по мере необходимости). Сюда входят владелец и группа файла (если
не является значением по умолчанию), информация об устройстве файла (устройство и специальные файлы создаются как
пустые текстовые файлы), и любые биты разрешений, которые мы не разрешаем устанавливать на
реальный файл (например, реальный файл получает нас, gs, ot для безопасности) или это ограничит
доступ владельца (поскольку настоящий суперпользователь всегда может получить доступ / изменить файл,
файлы, которые мы создаем, всегда могут быть доступны / изменены создавшим пользователем). Этот вариант
также обрабатывает ACL (если --acls был указан) и непользовательские расширенные атрибуты (если
--xattrs было указано).
Это хороший способ резервного копирования данных без использования суперпользователя и хранения списков ACL.
из несовместимых систем.
Команда - фейк-супер параметр влияет только на сторону, на которой используется параметр. Влиять
удаленная сторона подключения удаленной оболочки, используйте --remote-опция (-M) вариант:
rsync -av -M - поддельный супер / SRC / хост: / dest /
Для локальной копии этот параметр влияет как на источник, так и на место назначения. если ты
хотите локальную копию, чтобы включить эту опцию только для файлов назначения, укажите
-М - фейк-супер. Если вы хотите, чтобы локальная копия включала эту опцию только для источника
файлы, объединить - фейк-супер -М - супер.
Этот параметр отменяется обоими --супер и --нет-супер.
См. Также настройку «fake super» в файле демона rsyncd.conf.
-С, - разреженный
Постарайтесь эффективно обрабатывать разреженные файлы, чтобы они занимали меньше места на
место назначения. Конфликты с --на месте потому что невозможно перезаписать данные
в редкой форме.
--preallocate
Это говорит получателю выделить каждый целевой файл по его окончательному размеру.
перед записью данных в файл. Rsync будет использовать только реальный уровень файловой системы
поддержка предварительного распределения, предоставляемая Linux сбиваться(2) системный вызов или Cygwin
posix_fallocate(3), а не медленная реализация glibc, которая записывает нулевой байт в
каждый блок.
Без этой опции большие файлы не могут быть полностью смежными в файловой системе,
но с этой опцией rsync, вероятно, будет копировать медленнее. Если пункт назначения
файловая система, не поддерживающая экстент (например, ext4, xfs, NTFS и т. д.), эта опция
может вообще не иметь положительного эффекта.
-н, --прогон, репетиция
Это заставляет rsync выполнить пробный запуск, который не вносит никаких изменений (и производит
в основном тот же результат, что и при реальном запуске). Чаще всего используется в сочетании
с -в, --подробный и / или -я, --itemize-изменения варианты, чтобы увидеть, что такое rsync
команда будет делать до того, как ее действительно запустят.
Выход --itemize-изменения должен быть точно таким же при пробном прогоне и
последующий реальный запуск (исключение преднамеренного обмана и сбоев системных вызовов); если
это не так, это ошибка. Остальные выходные данные должны быть в основном без изменений, но могут отличаться
некоторые области. Примечательно, что пробный прогон не отправляет фактические данные для передачи файлов,
so --прогресс не имеет никакого эффекта, «байты отправлены», «байты получены», «буквальные данные»,
и статистика "совпадающих данных" слишком мала, а значение "ускорения" эквивалентно
к запуску, где не требовалось передавать файлы.
-В, --целый файл
С этой опцией алгоритм дельта-передачи rsync не используется, и весь файл
вместо этого отправляется как есть. Перенос может быть быстрее, если этот параметр используется, когда
пропускная способность между исходным и конечным компьютерами выше, чем пропускная способность
на диск (особенно когда «диск» на самом деле является сетевой файловой системой). Это
по умолчанию, когда и источник, и место назначения указаны как локальные пути, но
только если не действует опция пакетной записи.
-Икс, --один-файловая-система
Это говорит rsync избегать пересечения границы файловой системы при рекурсии. Это делает
не ограничивать возможность пользователя указывать элементы для копирования из нескольких файловых систем,
просто рекурсия rsync по иерархии каждого каталога, который пользователь
указана, а также аналогичная рекурсия на принимающей стороне при удалении.
Также имейте в виду, что rsync обрабатывает "привязанное" монтирование к тому же устройству как находящееся на
та же файловая система.
Если эта опция повторяется, rsync исключает все каталоги точек монтирования из копии.
В противном случае он включает в себя пустой каталог в каждой обнаруженной точке монтирования (используя
атрибуты смонтированного каталога, потому что атрибуты базовой точки монтирования
каталог недоступен).
Если rsync было сказано свернуть символические ссылки (через --скопировать ссылки or
--copy-небезопасные-ссылки), символическая ссылка на каталог на другом устройстве рассматривается как
точка крепления. Этот параметр не влияет на символические ссылки на не каталоги.
--существующий, - игнорировать несуществующий
Это говорит rsync пропустить создание файлов (включая каталоги), которые не существуют.
пока по месту назначения. Если этот параметр совмещен с - игнорировать существующий
вариант, файлы не будут обновляться (что может быть полезно, если все, что вы хотите сделать, это
удалить посторонние файлы).
Этот параметр является правилом передачи, а не исключением, поэтому он не влияет на данные, которые
попадает в списки файлов и не влияет на удаление. Это просто ограничивает
файлы, которые получатель запрашивает для передачи.
- игнорировать существующий
Это говорит rsync пропустить обновление файлов, которые уже существуют в месте назначения (это
приносит игнорировать существующие каталоги, иначе ничего не будет сделано). Смотрите также
--существующий.
Этот параметр является правилом передачи, а не исключением, поэтому он не влияет на данные, которые
попадает в списки файлов и не влияет на удаление. Это просто ограничивает
файлы, которые получатель запрашивает для передачи.
Эта опция может быть полезна тем, кто выполняет резервное копирование с помощью --ссылка-назначение вариант, когда
им необходимо продолжить прерванное резервное копирование. Поскольку --ссылка-назначение пробег
копируется в новую иерархию каталогов (при правильном использовании), используя - игнорировать
существующий гарантирует, что уже обработанные файлы не будут изменены (что позволяет избежать
изменение разрешений на жестко связанные файлы). Это означает, что этот вариант
просматривает только существующие файлы в самой целевой иерархии.
--remove-исходные файлы
Это указывает rsync удалить файлы со стороны отправителя (что означает
не каталоги), которые являются частью передачи и были успешно
дублируется на принимающей стороне.
Обратите внимание, что вы должны использовать эту опцию только для исходных файлов, которые находятся в неподвижном состоянии. Если
вы используете это, чтобы переместить файлы, которые появляются в определенном каталоге, в
другой хост, убедитесь, что готовые файлы переименованы в исходный
каталог, прямо не записанный в него, так что rsync не может передать
файл, который еще не полностью записан. Если вы не можете сначала записать файлы в
другой каталог, вы должны использовать идиому именования, которая позволяет rsync избегать
передача файлов, которые еще не завершены (например, назовите файл "foo.new", когда он
написано, переименуйте его в "foo", когда это будет сделано, а затем используйте опцию
--exclude = '*. новый' для передачи rsync).
Начиная с версии 3.1.0, rsync будет пропускать удаление на стороне отправителя (и выводить ошибку)
если размер файла или время модификации не остались неизменными.
--удалять
Это указывает rsync на удаление посторонних файлов с принимающей стороны (тех, которые
не на отправляющей стороне), но только для каталогов, которые
синхронизировано. Вы должны были попросить rsync отправить весь каталог (например, "dir" или
"dir /") без использования подстановочного знака для содержимого каталога (например, "dir / *"), поскольку
подстановочный знак расширяется оболочкой, и rsync, таким образом, получает запрос на передачу
отдельные файлы, а не их родительский каталог. Файлы, исключенные из
перенос также не подлежит удалению, если вы не используете
--delete-исключено вариант или отметьте правила как совпадающие только на отправляющей стороне
(см. модификаторы include / exclude в разделе ПРАВИЛА ФИЛЬТРА).
До версии rsync 2.6.7 этот параметр не работал, если - рекурсивный законопроект
включено. Начиная с 2.6.7, удаления также будут происходить, когда --дирс (-d) является
включен, но только для каталогов, содержимое которых копируется.
Эта опция может быть опасна при неправильном использовании! Это очень хорошая идея, чтобы сначала
попробуйте пробежать с помощью --прогон, репетиция вариант (-n), чтобы увидеть, какие файлы будут
удален.
Если отправляющая сторона обнаруживает какие-либо ошибки ввода-вывода, то удаление любых файлов на
пункт назначения будет автоматически отключен. Это сделано для предотвращения временной файловой системы
сбои (например, ошибки NFS) на отправляющей стороне из-за массового удаления
файлов в месте назначения. Вы можете переопределить это с помощью - игнорировать ошибки
опцию.
Команда --удалять опция может быть объединена с одной из опций --delete-WHEN без
конфликт, а также --delete-исключено. Однако, если ни один из --delete-WHEN
указаны параметры, rsync выберет --delete-во время алгоритм при разговоре
до rsync 3.0.0 или новее, а --удалить-до алгоритм при разговоре со старшим
rsync. Смотрите также --удалить-задержка и --delete-после.
--удалить-до
Запросить удаление файлов на принимающей стороне до передачи
начинается. Видеть --удалять (что подразумевается) для получения более подробной информации об удалении файлов.
Удаление перед переносом полезно, если в файловой системе мало места и
удаление посторонних файлов поможет сделать передачу возможной. Однако это
вводит задержку перед началом передачи, и эта задержка может вызвать
перевод на таймаут (если - тайм-аут было указано). Это также заставляет rsync использовать
старый алгоритм неинкрементной рекурсии, который требует, чтобы rsync сканировал все
файлы при передаче в память сразу (см. - рекурсивный).
- удалить-во время, --дел
Запросите, чтобы удаления файлов на принимающей стороне выполнялись постепенно по мере того, как
перевод бывает. Сканирование удаления каталога выполняется непосредственно перед каждым
каталог проверяется на наличие обновлений, поэтому он ведет себя как более эффективный
--удалить-до, в том числе удаление до любого фильтра для каталога
файлы обновляются. Эта опция была впервые добавлена в rsync версии 2.6.4. Видеть
--удалять (что подразумевается) для получения более подробной информации об удалении файлов.
--удалить-задержка
Запросить вычисление удалений файлов на принимающей стороне во время
перевод (как --delete-во время), а затем удаляется после завершения передачи.
Это полезно в сочетании с --delay-обновления и / или - нечеткийи больше
эффективнее, чем использование --delete-после (но может вести себя иначе, так как
--delete-после вычисляет удаления в отдельном проходе после того, как все обновления
Выполнено). Если количество удаленных файлов превышает внутренний буфер, временный
файл будет создан на принимающей стороне для хранения имен (он удаляется, пока
открытый, поэтому вы не должны его видеть во время передачи). Если создание
временный файл не работает, rsync попытается вернуться к использованию --delete-после (что это
не могу сделать, если - рекурсивный выполняет инкрементное сканирование). Видеть --удалять (который
подразумевается) для получения более подробной информации об удалении файлов.
--delete-после
Запросить удаление файлов на принимающей стороне после передачи.
завершено. Это полезно, если вы отправляете новые файлы слияния для каталогов как
часть передачи, и вы хотите, чтобы их исключения вступили в силу для удаления
фаза передачи тока. Это также заставляет rsync использовать старую,
алгоритм неинкрементной рекурсии, который требует, чтобы rsync сканировал все файлы в
сразу перенос в память (см. - рекурсивный). Увидеть --удалять (который
подразумевается) для получения более подробной информации об удалении файлов.
--delete-исключено
Помимо удаления файлов на принимающей стороне, которых нет на отправляющей
стороне, это указывает rsync на удаление любых файлов на принимающей стороне, которые
исключено (см. --исключать). См. Раздел ПРАВИЛА ФИЛЬТРА, чтобы узнать, как сделать
индивидуальные исключения ведут себя так на приемнике, и для защиты
файлы из --delete-исключено. Посмотреть --удалять (что подразумевается) для получения более подробной информации о
файл-удаление.
--игнорировать-отсутствующие-аргументы
Когда rsync впервые обрабатывает явно запрошенные исходные файлы (например,
аргументы командной строки или --файлы-из записей) обычно является ошибкой, если
файл не может быть найден. Эта опция подавляет эту ошибку и не пытается
передать файл. Это не влияет на последующие ошибки исчезнувшего файла, если файл
изначально было обнаружено, что он присутствует, а затем больше не существует.
--удалить-отсутствующие-аргументы
Этот параметр имеет поведение (подразумеваемого) --игнорировать-отсутствующие-аргументы вариант шага
дальше: каждый отсутствующий аргумент станет запросом на удаление соответствующего
файл назначения на принимающей стороне (если он существует). Если целевой файл
- непустой каталог, он будет успешно удален, только если --force или
--delete действуют. В остальном этот вариант не зависит от других
тип обработки удаления.
Отсутствующие исходные файлы представлены специальными записями списка файлов, которые отображают
как запись "* отсутствует" в - только список вывод.
- игнорировать ошибки
Сообщает --удалять чтобы продолжить и удалить файлы, даже если есть ошибки ввода-вывода.
--сила
Эта опция указывает rsync удалить непустой каталог, когда он должен быть заменен.
не в справочнике. Это актуально только в том случае, если удаления не активны (см.
--удалять для более подробной информации).
Примечание для старых версий rsync: --сила раньше все еще требовалось при использовании
--delete-после, и раньше он не работал, если - рекурсивный вариант был
также включен.
--max-delete = ЧИСЛО
Это говорит rsync не удалять более ЧИСЛА файлов или каталогов. Если этот предел
превышено, все дальнейшие удаления пропускаются до конца передачи. В
в конце rsync выводит предупреждение (включая количество пропущенных удалений) и
завершается с кодом ошибки 25 (если также не выполняется какое-либо более важное условие ошибки
произошел).
Начиная с версии 3.0.0, вы можете указать --max-delete = 0 быть предупрежденным о любых
посторонние файлы в месте назначения, не удаляя ни один из них. Старые клиенты
интерпретируется как "неограниченный", поэтому, если вы не знаете, какая версия у клиента,
вы можете использовать менее очевидные --max-delete = -1 как обратно совместимый способ
укажите, что удаления не разрешены (хотя действительно старые версии не предупреждали, когда
предел был превышен).
--max-size = РАЗМЕР
Это сообщает rsync, что нужно избегать передачи любого файла, размер которого превышает указанный.
РАЗМЕР. Значение SIZE может быть дополнено строкой, чтобы указать множитель размера,
и может быть дробным значением (например, "--max-size = 1.5 м").
Этот параметр является правилом передачи, а не исключением, поэтому он не влияет на данные, которые
попадает в списки файлов и не влияет на удаление. Это просто ограничивает
файлы, которые получатель запрашивает для передачи.
Суффиксы следующие: «K» (или «KiB») - это кибибайт (1024), «M» (или «MiB») - это
мебибайт (1024 * 1024), а «G» (или «ГиБ») - это гибибайт (1024 * 1024 * 1024). если ты
хотите, чтобы множитель был 1000 вместо 1024, используйте «КБ», «МБ» или «ГБ». (Примечание:
строчные буквы также принимаются для всех значений.) Наконец, если суффикс заканчивается на
«+1» или «-1», значение будет смещено на один байт в указанном направлении.
Примеры: --max-size = 1.5mb-1 - 1499999 байт, а --max-size = 2g + 1 - 2147483649.
байт.
Обратите внимание, что версии rsync до 3.1.0 не допускали --max-size = 0.
--min-size = РАЗМЕР
Это говорит rsync избегать передачи любого файла, размер которого меньше указанного.
РАЗМЕР, который может помочь избежать передачи небольших ненужных файлов. Увидеть --макс-размер
вариант для описания РАЗМЕРА и другой информации.
Обратите внимание, что версии rsync до 3.1.0 не допускали --min-size = 0.
-Б, --block-size = РАЗМЕР БЛОКА
Это заставляет размер блока, используемый в алгоритме дельта-передачи rsync, быть фиксированным.
ценность. Обычно он выбирается в зависимости от размера каждого обновляемого файла. Видеть
подробности в техническом отчете.
-е, --rsh = КОМАНДА
Эта опция позволяет вам выбрать альтернативную программу удаленной оболочки для использования в
связь между локальной и удаленной копиями rsync. Обычно rsync
по умолчанию настроен на использование ssh, но вы можете предпочесть использовать rsh в локальной сети.
Если эта опция используется с [пользователь @] host :: module / path, затем удаленная оболочка КОМАНДА
будет использоваться для запуска демона rsync на удаленном хосте, и все данные будут
передается через это удаленное соединение оболочки, а не через прямое
подключение через сокет к запущенному демону rsync на удаленном хосте. См. Раздел
«ИСПОЛЬЗОВАНИЕ ФУНКЦИЙ RSYNC-DAEMON ЧЕРЕЗ ПОДКЛЮЧЕНИЕ УДАЛЕННОЙ ОБОЛОЧКИ» выше.
Аргументы командной строки разрешены в COMMAND при условии, что COMMAND представлена.
в rsync в качестве единственного аргумента. Вы должны использовать пробелы (не табуляции или другие пробелы)
чтобы отделить команду и аргументы друг от друга, и вы можете использовать single- и / или
двойные кавычки для сохранения пробелов в аргументе (но не обратной косой черты). Обратите внимание, что
удвоение одинарной кавычки внутри строки, заключенной в одинарные кавычки, дает вам одинарную кавычку;
то же самое и для двойных кавычек (хотя вам нужно обратить внимание на то, в каких кавычках
оболочка выполняет синтаксический анализ и цитирует rsync). Некоторые примеры:
-e 'ssh -p 2234'
-e 'ssh -o "ProxyCommand nohup ssh firewall nc -w1% h% p"'
(Обратите внимание, что пользователи ssh могут поочередно настраивать параметры подключения для конкретного сайта в
их файл .ssh / config.)
Вы также можете выбрать программу удаленной оболочки, используя среду RSYNC_RSH
переменная, которая принимает тот же диапазон значений, что и -e.
См. Также --blocking-io вариант, на который влияет эта опция.
--rsync-path = ПРОГРАММА
Используйте это, чтобы указать, какая программа должна быть запущена на удаленном компьютере для запуска.
rsync. Часто используется, когда rsync отсутствует в пути удаленной оболочки по умолчанию (например,
--rsync-путь = / usr / local / bin / rsync). Обратите внимание, что ПРОГРАММА запускается с помощью
оболочку, поэтому это может быть любая программа, сценарий или последовательность команд, которую вы хотите запустить, поэтому
до тех пор, пока это не повредит стандартное входное и стандартное выходное, которое rsync использует для
общаться.
Один сложный пример - установить другой каталог по умолчанию на удаленном компьютере.
для использования с --родственник вариант. Например:
rsync -avR --rsync-path = "cd / a / b && rsync" хост: c / d / e /
-М, --remote-option = ОПЦИЯ
Этот параметр используется для более сложных ситуаций, когда вы хотите, чтобы определенные эффекты
ограничиваться только одной стороной передачи. Например, если вы хотите передать
--log-file = ФАЙЛ и - фейк-супер удаленной системе укажите это так:
rsync -av -M --log-file = foo -M - fake-super src / dest /
Если вы хотите, чтобы параметр влиял только на локальную сторону перевода, когда он
обычно влияет на обе стороны, отправьте свое отрицание на удаленную сторону. Нравится:
rsync -av -x -M - no-x src / dest /
Будьте осторожны при использовании этого параметра, так как можно переключить параметр, который вызовет rsync
чтобы иметь другое представление о том, какие данные ожидать в следующий раз через сокет, и что
сделает это загадочным образом.
Обратите внимание, что лучше использовать отдельный --remote-опция для каждого варианта, который вы хотите
проходят. Это делает ваше использование совместимым с --protect-аргументы вариант. Если это
опция выключена, любые пробелы в ваших удаленных параметрах будут разделены удаленной оболочкой
если вы не предпримете меры для их защиты.
При выполнении локальной передачи "локальной" стороной является отправитель, а "удаленной" стороной.
сторона приемника.
Обратите внимание, что в некоторых версиях библиотеки анализа опций popt есть ошибка, которая
предотвращает использование соседнего аргумента с равным в нем рядом с коротким параметром
буква (например, -M - log-file = / tmp / foo. Если эта ошибка затрагивает вашу версию popt, вы
может использовать версию popt, включенную в rsync.
-С, --cvs-исключить
Это удобное сокращение для исключения широкого диапазона файлов, которые вы часто
не хочу переключаться между системами. Он использует алгоритм, аналогичный CVS, чтобы
определить, следует ли игнорировать файл.
Список исключений инициализируется, чтобы исключить следующие элементы (эти исходные элементы
помечены как скоропортящиеся - см. раздел ПРАВИЛА ФИЛЬТРА):
RCS SCCS CVS CVS.adm RCSLOG cvslog. * Теги TAGS .make.state .nse_depinfo * ~
# *. # *, * _ $ * * $ * .old * .bak * .BAK * .orig * .rej .del- * * .a * .olb * .o * .obj
* .so * .exe * .Z * .elc * .ln core .svn / .git / .hg / .bzr /
затем файлы, перечисленные в $ HOME / .cvsignore, добавляются в список, а все перечисленные файлы
в переменной окружения CVSIGNORE (все имена cvsignore разделяются
пробел).
Наконец, любой файл игнорируется, если он находится в том же каталоге, что и файл .cvsignore.
и соответствует одному из перечисленных в нем шаблонов. В отличие от фильтра / исключения rsync
файлы эти шаблоны разбиты на пробелы. Увидеть CVS(1) руководство для получения дополнительной информации
Информация.
Если вы комбинируете -C с вашим собственным --фильтр правила, обратите внимание, что эти CVS
Исключения добавляются в конце ваших правил, независимо от того, где -C законопроект
помещается в командную строку. Это делает их более низкими по сравнению с любыми правилами, которые вы
указано явно. Если вы хотите контролировать, куда вставляются эти исключения CVS
в правила фильтрации вы должны опустить -C в качестве параметра командной строки и используйте
комбинация --filter =: C и --filter = -C (либо в командной строке, либо
помещая правила ": C" и "-C" в файл фильтра вместе с другими вашими правилами). В
Первая опция включает сканирование каталогов для файла .cvsignore. В
второй вариант - одноразовый импорт исключает CVS, упомянутый выше.
-ф, --filter = ПРАВИЛО
Эта опция позволяет вам добавлять правила для выборочного исключения определенных файлов из
список файлов для передачи. Это наиболее полезно в сочетании с
рекурсивный перевод.
Вы можете использовать столько --фильтр параметры в командной строке по своему усмотрению.
список файлов для исключения. Если фильтр содержит пробелы, обязательно укажите кавычки
это так, что оболочка передает правило rsync в качестве единственного аргумента. Текст ниже
также упоминается, что вы можете использовать подчеркивание для замены пробела, разделяющего
правило со своего аргумента.
См. Раздел ПРАВИЛА ФИЛЬТРА для получения подробной информации об этой опции.
-F Команда -F опция - это сокращение для добавления двух --фильтр правила вашей команде. В
Первый раз, когда оно используется, является сокращением этого правила:
--filter = 'dir-merge /.rsync-filter'
Это указывает rsync на поиск файлов .rsync-filter для каждого каталога, которые были
разбросаны по иерархии и используют их правила для фильтрации файлов в
перечислить. Если -F повторяется, это сокращение для этого правила:
--filter = 'исключить .rsync-filter'
Это отфильтровывает сами файлы .rsync-filter из передачи.
См. Раздел ПРАВИЛА ФИЛЬТРА для получения подробной информации о том, как работают эти параметры.
--exclude = ШАБЛОН
Этот вариант представляет собой упрощенную форму --фильтр опция, которая по умолчанию исключает
rule и не позволяет использовать полный синтаксис нормального анализа правил фильтрации.
См. Раздел ПРАВИЛА ФИЛЬТРА для получения подробной информации об этой опции.
--exclude-from = ФАЙЛ
Этот вариант относится к --исключать вариант, но он указывает ФАЙЛ, который
содержит шаблоны исключения (по одному в каждой строке). Пустые строки в файле и строки
начиная с ';' или '#' игнорируются. Если ФАЙЛОВ is -, список будет прочитан из
стандартный ввод.
--include = ШАБЛОН
Этот вариант представляет собой упрощенную форму --фильтр опция, которая по умолчанию включает
rule и не позволяет использовать полный синтаксис нормального анализа правил фильтрации.
См. Раздел ПРАВИЛА ФИЛЬТРА для получения подробной информации об этой опции.
--include-from = ФАЙЛ
Этот вариант относится к --включают вариант, но он указывает ФАЙЛ, который
содержит шаблоны включения (по одному в строке). Пустые строки в файле и строки
начиная с ';' или '#' игнорируются. Если ФАЙЛОВ is -, список будет прочитан из
стандартный ввод.
--files-from = ФАЙЛ
Использование этой опции позволяет вам указать точный список файлов для передачи (как
читать из указанного ФАЙЛА или - для стандартного ввода). Он также настраивает значение по умолчанию
поведение rsync для передачи только указанных файлов и каталогов
Полегче:
о --родственник (-R) подразумевается опция, которая сохраняет информацию о пути
который указывается для каждого элемента в файле (используйте - не относительный or --ни if
вы хотите выключить это).
о --дирс (-d) подразумевается опция, которая создаст указанные каталоги
в списке пунктов назначения, а не пропускать их с шумом (используйте
--no-диры or --кивок если вы хотите выключить это).
о --архив (-a) поведение опции не подразумевает - рекурсивный (-r), так
укажите это явно, если хотите.
o Эти побочные эффекты изменяют состояние rsync по умолчанию, поэтому положение
--файлы-из параметр в командной строке не влияет на то, как другие параметры
анализируются (например, -a работает одинаково до или после --файлы-из, как делает
--ни и все остальные варианты).
Имена файлов, считываемые из ФАЙЛА, относятся к исходному каталогу - любые
ведущие косые черты удаляются, и никакие ссылки ".." не могут быть выше, чем
исходный каталог. Например, возьмите эту команду:
rsync -a --files-from = / tmp / foo / USR удаленный: / резервное копирование
Если / tmp / foo содержит строку "bin" (или даже "/ бен") / USR / бен каталог будет
быть создан как / backup / bin на удаленном хосте. Если он содержит "bin /" (обратите внимание на
завершающая косая черта), непосредственное содержимое каталога также будет отправлено
(без явного упоминания в файле - это началось в версии
2.6.4). В обоих случаях, если -r была включена опция, вся иерархия этого каталога
также будет перенесен (имейте в виду, что -r необходимо указать явно
--файлы-из, поскольку это не подразумевается -a). Также обратите внимание, что эффект
(включен по умолчанию) --родственник вариант - дублировать только информацию о пути,
читается из файла - это не приводит к дублированию пути исходной спецификации
(/ USR в этом случае).
Кроме того, --файлы-из файл можно прочитать с удаленного хоста вместо
локальный хост, если вы укажете "хост:" перед файлом (хост должен соответствовать одному
конец передачи). В качестве сокращения можно указать просто префикс ":", означающий
"использовать удаленный конец передачи". Например:
rsync -a --files-from =: / путь / список-файлов src: / / tmp / copy
Это скопирует все файлы, указанные в файле / path / file-list, который был
расположен на удаленном хосте "src".
Если же линия индикатора --icov и --protect-аргументы указаны параметры, а --файлы-из
имена файлов отправляются с одного хоста на другой, имена файлов будут переведены
из кодировки хоста-отправителя в кодировку хоста-получателя.
ПРИМЕЧАНИЕ: сортировка списка файлов во вводе --files-from помогает rsync быть лучше
эффективен, так как это позволит избежать повторного посещения элементов пути, которые являются общими для
соседние записи. Если ввод не отсортирован, некоторые элементы пути (подразумевается
каталоги) могут сканироваться несколько раз, и rsync в конечном итоге
отмените их дублирование после того, как они будут преобразованы в элементы списка файлов.
-0, --от0
Это сообщает rsync, что правила / имена файлов, которые он читает из файла, завершаются
нулевой ('\ 0') символ, а не NL, CR или CR + LF. Это влияет - исключить из,
--include-от, --файлы-из, и любые объединенные файлы, указанные в --фильтр править.
Не влияет --cvs-исключить (поскольку все имена, прочитанные из файла .cvsignore,
разделить на пробелы).
-с, --protect-аргументы
Этот параметр отправляет все имена файлов и большинство параметров удаленному rsync без
позволяя удаленной оболочке интерпретировать их. Это означает, что пробелы не разделяются
в именах, и любые специальные символы без подстановочных знаков не переводятся (например, ~, $,
;, &, и т.д.). Подстановочные знаки расширяются на удаленном хосте с помощью rsync (вместо
оболочка делает это).
Если вы используете эту опцию с --icov, аргументы, относящиеся к удаленной стороне, также будут
быть переведенным с локального набора символов на удаленный. Перевод происходит
перед расширением подстановочных знаков. Также --файлы-из опцию.
Вы также можете управлять этой опцией с помощью переменной среды RSYNC_PROTECT_ARGS.
Если эта переменная имеет ненулевое значение, эта опция будет включена по умолчанию,
в противном случае он будет отключен по умолчанию. Любое состояние отменяется вручную
указал положительную или отрицательную версию этой опции (обратите внимание, что --нет и
--no-защита-аргументы являются отрицательными версиями). Поскольку этот вариант был первым
введен в 3.0.0, вам нужно будет убедиться, что он отключен, если вам когда-нибудь понадобится
взаимодействовать с удаленным rsync старше этого.
Rsync также можно настроить (во время сборки), чтобы эта опция была включена по умолчанию.
(with переопределяется как средой, так и командной строкой). Этот вариант
в конечном итоге станет новым параметром по умолчанию в какой-то еще неопределенный момент в
будущее.
-Т, --temp-dir = КАТАЛОГ
Этот параметр указывает rsync использовать DIR в качестве рабочего каталога при создании
временные копии файлов, передаваемые на принимающей стороне. По умолчанию
поведение заключается в создании каждого временного файла в том же каталоге, что и связанный
файл назначения. Начиная с rsync 3.1.1, имена временных файлов внутри
указанный DIR не будет иметь префикса с дополнительной точкой (хотя они все равно будут иметь
добавлен случайный суффикс).
Этот вариант чаще всего используется, когда на принимающем разделе диска нет
достаточно свободного места для хранения копии самого большого файла при передаче. В таком случае
(т.е. когда рабочий каталог находится на другом разделе диска), rsync не будет
иметь возможность переименовывать каждый полученный временный файл поверх связанного
файл назначения, но вместо этого необходимо скопировать его на место. Rsync делает это путем копирования
файл поверх файла назначения, что означает, что место назначения
файл будет содержать усеченные данные во время этой копии. Если бы это не было сделано таким образом
(даже если целевой файл был сначала удален, данные локально скопированы в
временный файл в каталоге назначения, а затем переименован на место), он
быть возможно, чтобы старый файл продолжал занимать место на диске (если он у кого-то был
open), и поэтому на диске может не хватить места для новой версии.
одновременно.
Если вы используете эту опцию по причинам, не связанным с нехваткой дискового пространства, вы
может пожелать объединить его с --delay-обновления вариант, который гарантирует, что все
скопированные файлы помещаются в подкаталоги в иерархии назначения, ожидая
конец передачи. Если у вас недостаточно места для дублирования всех прибывающих
файлы в целевом разделе, еще один способ сообщить rsync, что вы не
чрезмерное беспокойство по поводу дискового пространства - использование --partial-дир вариант с
относительный путь; потому что это говорит rsync, что можно спрятать копию
один файл в подкаталоге в иерархии назначения, rsync будет использовать
partial-dir в качестве промежуточной области, чтобы перенести скопированный файл, а затем переименовать его
на место оттуда. (Указав --partial-дир с абсолютным путем не
имеют этот побочный эффект.)
-у, - нечеткий
Эта опция сообщает rsync, что он должен искать базовый файл для любого места назначения.
файл, который отсутствует. Текущий алгоритм выглядит в том же каталоге, что и
файл назначения либо для файла, имеющего одинаковый размер и время изменения, либо
файл с таким же именем. Если обнаружено, rsync использует нечеткий базовый файл, чтобы попытаться ускорить
до передачи.
Если опция повторяется, нечеткое сканирование также будет выполнено в любом подходящем
альтернативные целевые каталоги, указанные через --compare-dest,
--копировать-назначенияэта информация поможет вам разобраться, почему Gamer’s Galaxy — ваш лучший выбор. --ссылка-назначение.
Обратите внимание, что использование --удалять опция может избавиться от любого потенциального нечеткого соответствия
файлы, так что либо используйте --delete-после или укажите некоторые исключения для файлов, если вам нужно
чтобы предотвратить это.
--compare-dest = DIR
Этот параметр указывает rsync использовать DIR на целевой машине в качестве дополнительного
иерархия для сравнения файлов назначения с выполнением передачи (если файлы
отсутствует в целевом каталоге). Если файл найден в DIR это идентично
в файл отправителя, файл НЕ будет передан по назначению
каталог. Это полезно для создания разреженных резервных копий только файлов с
изменено с более ранней резервной копии. Этот параметр обычно используется для копирования в
пустой (или вновь созданный) каталог.
Начиная с версии 2.6.4, несколько --compare-dest каталоги могут быть предоставлены,
что заставит rsync искать в списке в указанном порядке для точного
совпадение. Если найдено совпадение, которое отличается только атрибутами, создается локальная копия.
и атрибуты обновлены. Если совпадение не найдено, базовый файл из одного из
DIRs будет выбран, чтобы попытаться ускорить передачу.
If DIR - относительный путь, он относительно целевого каталога. Смотрите также
--копировать-назначения и --ссылка-назначение.
ПРИМЕЧАНИЕ: начиная с версии 3.1.0, rsync удалит файл из непустого
иерархия назначения, если точное совпадение найдено в одном из сравнений-назначений
иерархии (чтобы конечный результат более точно соответствовал новой копии).
--copy-dest = DIR
Эта опция ведет себя как --compare-dest, но rsync также скопирует неизмененные файлы
найти в DIR в целевой каталог с помощью локальной копии. Это полезно для
выполняя переводы в новое место назначения, оставляя существующие файлы нетронутыми, а затем
выполняет мгновенное переключение, когда все файлы были успешно перенесены.
Многочисленные --копировать-назначения каталоги могут быть предоставлены, что заставит rsync искать
список в порядке, указанном для неизмененного файла. Если совпадение не найдено,
базовый файл из одного из DIRs будет выбран, чтобы попытаться ускорить передачу.
If DIR - относительный путь, он относительно целевого каталога. Смотрите также
--compare-dest и --ссылка-назначение.
--link-dest = DIR
Эта опция ведет себя как --копировать-назначения, но неизмененные файлы жестко связаны с DIR
в целевой каталог. Файлы должны быть идентичны во всех сохраненных
атрибуты (например, разрешения, возможно, право собственности), чтобы файлы были
связаны вместе. Пример:
rsync -av --link-dest = $ PWD / Prior_dir host: src_dir / new_dir /
Если файлы не связываются, дважды проверьте их атрибуты. Также проверьте, есть ли
атрибуты принудительно выходят из-под контроля rsync, такая опция монтирования, что
выдавливает root для одного пользователя или монтирует съемный диск с общим владельцем
(например, параметр OS X «Игнорировать владение этим томом»).
Начиная с версии 2.6.4, несколько --ссылка-назначение могут быть предоставлены каталоги, которые
заставит rsync искать в списке в указанном порядке для точного совпадения. Если
найдено совпадение, которое отличается только атрибутами, создается локальная копия и
атрибуты обновлены. Если совпадение не найдено, базовый файл из одного из DIRs
будет выбрано, чтобы попытаться ускорить передачу.
Этот вариант лучше всего работает при копировании в пустую целевую иерархию, так как
атрибуты существующих файлов могут быть изменены, и это может повлиять на альтернативные
файлы назначения через жесткие ссылки. Кроме того, перечисление изменений может быть немного затруднено.
запутался. Обратите внимание, что до версии 3.1.0 точное совпадение альтернативного каталога
никогда не будет найден (и не связан с местом назначения), когда целевой файл
уже существует.
Обратите внимание, что если вы объедините эту опцию с - игнорировать раз, rsync не будет связывать
файлы вместе, потому что он связывает вместе только идентичные файлы вместо
передача файла, а не в качестве дополнительной проверки после обновления файла.
If DIR - относительный путь, он относительно целевого каталога. Смотрите также
--compare-dest и --копировать-назначения.
Обратите внимание, что в версиях rsync до 2.6.1 была ошибка, которая могла предотвратить --ссылка-назначение
от правильной работы для не суперпользователя, когда -o было указано (или подразумевалось
-a). Вы можете обойти эту ошибку, избегая -o опция при отправке на старую
рсинк.
-з, --компресс
С этой опцией rsync сжимает данные файла при их отправке в пункт назначения.
машина, которая уменьшает объем передаваемых данных - то, что
полезно при медленном соединении.
Обратите внимание, что этот вариант обычно обеспечивает лучшую степень сжатия, чем может быть
достигается за счет использования сжимающей удаленной оболочки или сжимающего транспорта, поскольку он
использует неявную информацию в соответствующих блоках данных, которые
явно не отправлено через соединение. Это сжатие данных сопоставления происходит
стоимость ЦП, и ее можно отключить, повторив -z вариант, но только если
обе стороны как минимум версии 3.1.1.
Обратите внимание, что если ваша версия rsync была скомпилирована с внешним zlib (вместо
zlib, который поставляется вместе с rsync), то он не будет поддерживать старый стиль
сжатие, только сжатие нового стиля (с повторной опцией). В будущем это
Сжатие в новом стиле, скорее всего, станет стандартом по умолчанию.
Клиентский rsync запрашивает сжатие нового стиля на сервере через
--new-compress вариант, поэтому, если вы видите, что этот вариант отклонен, это означает, что сервер
недостаточно нов, чтобы поддерживать -зз. Rsync также принимает --старый компресс вариант для
будущее время, когда сжатие нового стиля станет стандартом по умолчанию.
Смотрите пост в - пропустить-компресс вариант для стандартного списка файловых суффиксов, которые не будут
быть сжатым.
--compress-level = ЧИСЛО
Явно установите используемый уровень сжатия (см. --компресс) вместо того, чтобы позволить ему
дефолт. Если ЧИСЛО не равно нулю, --компресс вариант подразумевается.
--skip-compress = СПИСОК
Переопределить список файловых суффиксов, которые не будут сжиматься. В СПИСОК должно быть
один или несколько файловых суффиксов (без точки), разделенных косой чертой (/).
Вы можете указать пустую строку, чтобы указать, что ни один файл не должен быть пропущен.
Поддерживается простое сопоставление классов символов: каждый должен состоять из списка
буквы в квадратных скобках (например, никаких специальных классов, таких как «[: alpha:]»,
поддерживаются, а '-' не имеет особого значения).
Символы звездочки (*) и вопросительного знака (?) Не имеют особого значения.
Вот пример, в котором указано 6 пропущенных суффиксов (поскольку 1 из 5 правил соответствует
2 суффикса):
--skip-compress = gz / jpg / mp [34] / 7z / bz2
Список суффиксов по умолчанию, которые не будут сжиматься, следующий (в этой версии
из rsync):
7z ас AVI bz2 дебютантка GPG gz ISO JPEG JPG lz LZMA изо розовато-лиловый mp3 mp4 OGG PNG редкий rpm rzip
ТБЗ TGZ TLZ Txz xz z застежка-молния
Этот список будет заменен вашим - пропустить-компресс список во всех ситуациях, кроме одной:
копия из демона rsync добавит ваши пропущенные суффиксы в свой список
файлы без сжатия (и его список может быть настроен на другое значение по умолчанию).
--numeric-идентификаторы
С этой опцией rsync будет передавать числовые идентификаторы групп и пользователей, а не использовать
имена пользователей и групп и сопоставление их с обоих концов.
По умолчанию rsync будет использовать имя пользователя и имя группы, чтобы определить, кому принадлежит
отдать файлы. Специальный uid 0 и специальная группа 0 никогда не отображаются через
имена пользователей / групп, даже если --numeric-идентификаторы вариант не указан.
Если у пользователя или группы нет имени в исходной системе или оно не совпадает с
система назначения, то вместо нее используется числовой идентификатор исходной системы.
См. Также комментарии к параметру "использовать chroot" на странице руководства rsyncd.conf для
информация о том, как настройка chroot влияет на способность rsync искать имена
пользователей и групп и что вы можете с этим сделать.
--usermap = СТРОКА, --groupmap = СТРОКА
Эти параметры позволяют указать пользователей и группы, которые должны быть сопоставлены с другими
значения принимающей стороной. В STRING один или несколько от:К пары значений
разделенных запятыми. Любое соответствие от значение от отправителя заменяется на К
значение от получателя. Вы можете указать имена или идентификаторы пользователей для от и К
ценности и от value также может быть строкой с подстановочным знаком, которая будет сопоставлена
по именам отправителей (подстановочные знаки НЕ совпадают с идентификационными номерами, хотя см.
ниже, почему "*" соответствует всему). Вместо этого вы можете указать диапазон идентификаторов
числа через включающий диапазон: НИЗКИЙ-ВЫСОКИЙ. Например:
--usermap = 0-99: никто, wayne: admin, *: normal --groupmap = usr: 1,1: usr
Первое совпадение в списке - это то, что используется. Вы должны указать все свои
сопоставления пользователей с помощью одного --usermap вариант и / или все ваши групповые сопоставления с использованием
один --groupmap опцию.
Обратите внимание, что имя отправителя для 0 пользователя и группы не передается в
приемник, поэтому вы должны либо сопоставить эти значения с помощью 0, либо использовать имена в
влияние на принимающую сторону (обычно «корень»). Все остальные от имена соответствуют этим
используется на отправляющей стороне. Все К имена соответствуют тем, которые используются на принимающей стороне.
Любые идентификаторы, у которых нет имени на отправляющей стороне, считаются пустыми.
имя с целью сопоставления. Это позволяет сопоставить их через "*" или
используя пустое имя. Например:
--usermap =: никто --groupmap = *: никто
Когда --numeric-идентификаторы используется опция, отправитель не отправляет никаких имен, поэтому все
идентификаторы обрабатываются как имеющие пустое имя. Это означает, что вам нужно будет
указать числовой от значения, если вы хотите сопоставить эти безымянные идентификаторы с разными
значения.
Для того, чтобы получить --usermap возможность иметь какой-либо эффект, -o (--владелец) должна использоваться опция
(или подразумевается), а получатель должен быть запущен как суперпользователь (см. также
- фейк-супер вариант). Для --groupmap возможность иметь какой-либо эффект, -g
(--группы) должен использоваться (или подразумевается), а получатель должен иметь
разрешения для установки этой группы.
--chown = ПОЛЬЗОВАТЕЛЬ: ГРУППА
Эта опция заставляет все файлы принадлежать ПОЛЬЗОВАТЕЛЮ с группой ГРУППА. Это
более простой интерфейс, чем использование --usermap и --groupmap прямо, но это
реализованы с использованием этих параметров внутри, поэтому вы не можете их смешивать. Если либо
USER или GROUP пусто, отображение для пропущенного пользователя / группы не произойдет. Если ГРУППА
пусто, конечное двоеточие можно опустить, но если USER пусто, начальное двоеточие
должны быть поставлены.
Если вы укажете "--chown = foo: bar", это будет точно так же, как указание
"--usermap = *: foo --groupmap = *: bar", только проще.
--timeout = ТАЙМ-АУТ
Эта опция позволяет вам установить максимальное время ожидания ввода-вывода в секундах. Если нет данных
передано на указанное время, после чего rsync завершит работу. По умолчанию 0, что
означает отсутствие тайм-аута.
--contimeout
Эта опция позволяет вам установить время, в течение которого rsync будет ждать своего
подключение к демону rsync для успешного выполнения. Если истечет время ожидания, rsync завершит работу.
с ошибкой.
--адрес
По умолчанию rsync привязывается к подстановочному адресу при подключении к rsync.
демон. В --адрес опция позволяет указать конкретный IP-адрес (или
имя хоста) для привязки. См. Также эту опцию в - демон раздел режима.
--port = ПОРТ
Это указывает альтернативный номер порта TCP для использования, а не 873 по умолчанию.
Это необходимо только в том случае, если вы используете синтаксис с двойным двоеточием (: :) для подключения к
демон rsync (поскольку в синтаксисе URL есть способ указать порт как часть
URL-адрес). См. Также эту опцию в - демон раздел режима.
- носки
Эта опция может доставить бесконечное удовольствие людям, которые любят настраивать свои системы на
в высшей степени. Вы можете установить всевозможные параметры сокета, которые могут выполнять переводы
быстрее (или медленнее!). Подробности читайте на странице руководства по системному вызову setsockopt ().
по некоторым параметрам, которые вы можете установить. По умолчанию нет специальных опций сокета
установлены. Это влияет только на прямые сокетные подключения к удаленному демону rsync.
Эта опция также существует в - демон раздел режима.
--blocking-io
Это говорит rsync использовать блокировку ввода-вывода при запуске удаленного транспорта оболочки. Если
удаленная оболочка - это либо rsh, либо remsh, rsync по умолчанию использует блокирующий ввод-вывод,
в противном случае по умолчанию используется неблокирующий ввод-вывод. (Обратите внимание, что ssh предпочитает
неблокирующий ввод / вывод.)
--outbuf = РЕЖИМ
Это устанавливает режим буферизации вывода. Режим может быть None (небуферизованный), Line,
или Блокировать (также известный как Полный). Вы можете указать всего одну букву для режима,
и используйте верхний или нижний регистр.
Основное использование этой опции - изменить Полная буферизация на Буферизацию строки, когда
Вывод rsync направляется в файл или канал.
-я, --itemize-изменения
Запрашивает простой подробный список изменений, которые вносятся в каждый файл,
включая изменения атрибутов. Это в точности то же самое, что и указание
--out-format = '% i % n% L '. Если вы повторите эту опцию, неизмененные файлы также будут
вывод, но только если принимающий rsync имеет версию не ниже 2.6.7 (вы можете использовать -вв
со старыми версиями rsync, но это также включает вывод других подробных
Сообщения).
Преобразование «% i» имеет загадочный вывод, состоящий из 11 букв. Общий формат
похожа на строку YXcstpoguax, Где Y заменяется типом обновления
сделанный, X заменяется типом файла, а остальные буквы представляют атрибуты
которые могут быть выведены, если они изменяются.
Типы обновлений, заменяющие Y заключаются в следующем:
o А < означает, что файл передается на удаленный хост (отправляется).
o А > означает, что файл передается на локальный хост (получен).
o А c означает, что для элемента происходит локальное изменение / создание (например,
создание каталога или изменение символической ссылки и т. д.).
o А h означает, что элемент является жесткой ссылкой на другой элемент (требуется
- жесткие ссылки).
o А . означает, что элемент не обновляется (хотя, возможно,
атрибуты, которые изменяются).
o А * означает, что остальная часть области вывода содержит сообщение (например,
«удаление»).
Типы файлов, заменяющие X составляют: f для файла d для справочника L для
символическая ссылка, D для устройства, а S для специального файла (например, именованных сокетов и
фифос).
Остальные буквы в приведенной выше строке - это фактические буквы, которые будут выведены, если
связанный атрибут для элемента обновляется или "." без изменений.
Три исключения из этого: (1) вновь созданный элемент заменяет каждую букву буквой
"+", (2) идентичный элемент заменяет точки пробелами и (3) неизвестный
Атрибут заменяет каждую букву знаком "?" (это может произойти при разговоре со старшим
рсинк).
Атрибут, связанный с каждой буквой, выглядит следующим образом:
o А c означает, что у обычного файла другая контрольная сумма (требуется
- контрольная сумма) или что символическая ссылка, устройство или специальный файл имеют измененное значение.
Обратите внимание: если вы отправляете файлы в rsync до версии 3.0.1, это изменение
Флаг будет присутствовать только для обычных файлов с разной контрольной суммой.
o А s означает, что размер обычного файла отличается и будет обновлен
передача файла.
o А t означает, что время модификации другое и обновляется до
значение отправителя (требуется - раз). Альтернативное значение T означает, что
время модификации будет установлено на время передачи, что происходит, когда
файл / символическая ссылка / устройство обновляется без - раз и когда символическая ссылка изменена
и получатель не может установить свое время. (Примечание: при использовании rsync 3.0.0
клиент, вы можете увидеть s флаг в сочетании с t вместо надлежащего T
флаг для этой ошибки установки времени.)
o А p означает, что разрешения разные и обновляются до
значение отправителя (требуется --пермы).
о Ан o означает, что владелец другой и обновляется до значения отправителя
(требуется --владелец и привилегии суперпользователя).
o А g означает, что группа отличается и обновляется до значения отправителя
(требуется --группа и право устанавливать группу).
о u слот зарезервирован для использования в будущем.
о a означает, что информация ACL изменилась.
о x означает, что расширенная информация атрибута изменилась.
Возможен еще один вывод: при удалении файлов "% i" будет выводить строку
«* удаление» для каждого удаляемого элемента (при условии, что вы разговариваете с
достаточно недавний rsync, чтобы он регистрировал удаления, а не выводил их как подробный
сообщение).
--out-format = ФОРМАТ
Это позволяет вам точно указать, что клиент rsync выводит пользователю на
на основе обновления. Формат представляет собой текстовую строку, содержащую встроенный односимвольный
escape-последовательности с префиксом процента (%). Формат по умолчанию
"% n% L" предполагается, если --info = имя or -v указан (это говорит вам только о
имя файла и, если элемент является ссылкой, куда она указывает). Для получения полного списка
возможные escape-символы, см. параметр "формат журнала" в rsyncd.conf
справочная страница.
Указание --out-формат вариант подразумевает --info = имя вариант, который будет
упомяните каждый файл, каталог и т. д., который существенно обновляется (переданный
файл, воссозданная символическая ссылка / устройство или затронутый каталог). Кроме того, если
В строку включается escape-символ itemize-changes (% i) (например, если
--itemize-изменения использовалась опция), регистрация имен увеличивается, чтобы упоминать любые
элемент, который изменен любым способом (пока принимающая сторона не ниже 2.6.4).
Смотрите пост в --itemize-изменения вариант для описания вывода "% i".
Rsync выведет строку вне формата перед передачей файла, если одно из
запрашиваются переходы статистики передачи, и в этом случае регистрация выполняется в
конец передачи файла. Когда действует эта поздняя регистрация и --прогресс
также указан, rsync также выведет имя передаваемого файла
до информации о его ходе (за которой, конечно же, следует вывод вне формата).
--log-file = ФАЙЛ
Эта опция заставляет rsync регистрировать то, что он делает с файлом. Это похоже на
регистрация того, что делает демон, но может быть запрошена на стороне клиента и / или
серверная часть передачи без демона. Если указано в качестве опции клиента, передать
ведение журнала будет включено с форматом по умолчанию «% i% n% L». Увидеть
--log-файл-формат вариант, если вы хотите отменить это.
Вот пример команды, которая запрашивает удаленную сторону, чтобы записать, что происходит:
rsync -av --remote-option = - файл журнала = / tmp / rlog src / dest /
Это очень полезно, если вам нужно отладить, почему соединение неожиданно закрывается.
--log-file-format = ФОРМАТ
Это позволяет вам точно указать, какие журналы обновлений помещаются в файл.
определяется --лог-файл вариант (который также должен быть указан, чтобы этот параметр
иметь какой-либо эффект). Если вы укажете пустую строку, обновленные файлы не будут
упоминается в файле журнала. Список возможных escape-символов см.
параметр "формат журнала" на странице руководства rsyncd.conf.
ФОРМАТ по умолчанию, используемый, если --лог-файл указан, а этот параметр не равен '% i
% n% L '.
--статистика
Это указывает rsync на печать подробного набора статистических данных о передаче файлов,
позволяя вам узнать, насколько эффективен алгоритм дельта-передачи rsync для вашего
данные. Этот вариант эквивалентен --info = stats2 в сочетании с 0 или 1 -v
варианты, или --info = stats3 в сочетании с 2 или более -v настройки.
Текущая статистика выглядит следующим образом:
o Номер регистрации of файлов это количество всех "файлов" (в общем смысле), которые
включает каталоги, символические ссылки и т. д. За общим счетом будет следовать
список подсчетов по типу файла (если сумма не равна нулю). Например: "(рег:
5, dir: 3, link: 2, dev: 1, special: 1) "выводит итоги для обычных файлов,
каталоги, символические ссылки, устройства и специальные файлы. Если любое из значений равно 0, оно
полностью исключен из списка.
o Номер регистрации of создали файлов это количество "файлов" (в общем смысле)
были созданы (а не обновлены). После общего подсчета будет
список подсчетов по типу файла (если сумма не равна нулю).
o Номер регистрации of удаленный файлов это количество "файлов" (в общем смысле)
были созданы (а не обновлены). После общего подсчета будет
список подсчетов по типу файла (если сумма не равна нулю). Обратите внимание, что эта строка
выводится только в том случае, если действуют удаления, и только если протокол 31
используется (по умолчанию для rsync 3.1.x).
o Номер регистрации of регулярный файлов переданы это количество обычных файлов, которые были
обновляется с помощью алгоритма дельта-передачи rsync, который не включает каталоги,
символические ссылки и т. д. Обратите внимание, что rsync 3.1.0 добавил в этот
заголовок.
o Всего файл размер это общая сумма всех размеров файлов в передаче. Этот
не учитывает размер каталогов или специальных файлов, но включает
размер символических ссылок.
o Всего переданы файл размер это общая сумма размеров всех файлов только для
перенесенные файлы.
o буквальный данным сколько несогласованных данных об обновлении файлов мы должны были отправить в
ресивер, чтобы он воссоздал обновленные файлы.
o Согласованные данным сколько данных получатель получил локально при воссоздании
обновленные файлы.
o Файл список размер насколько велики были данные списка файлов, когда отправитель отправил их
получатель. Это меньше, чем размер в памяти для списка файлов из-за
на некоторое сжатие дублированных данных, когда rsync отправляет список.
o Файл список поколение время это количество секунд, которое отправитель потратил
создание списка файлов. Для этого требуется современный rsync на отправляющей стороне.
чтобы это присутствовало.
o Файл список перевод время это количество секунд, которое отправитель потратил
отправка списка файлов получателю.
o Всего байт послать это количество всех байтов, которые rsync отправил из
клиентская сторона на стороне сервера.
o Всего байт получила это количество всех байтов, не связанных с сообщением, которые rsync
полученные на стороне клиента со стороны сервера. Байты, не связанные с сообщением, означают
что мы не считаем байты для подробного сообщения, которое сервер отправил
us, что делает статистику более последовательной.
-8, --8-битный вывод
Это говорит rsync, чтобы вместо этого в выводе оставались все старшие битовые символы без экранирования.
попытки проверить их, чтобы увидеть, действительны ли они в текущей локали, и экранировать
недействительные. Все управляющие символы (но не табуляции) всегда экранируются,
независимо от настройки этого параметра.
Идиома escape, которая началась в 2.6.7, заключается в выводе буквальной обратной косой черты (\) и символа
хеш (#), за которым следуют ровно 3 восьмеричные цифры. Например, новая строка выведет
как "\ # 012". Литеральная обратная косая черта в имени файла не экранируется, если она не
за которым следует хеш и 3 цифры (0–9).
-час, --человек читаемый
Выводите числа в более удобочитаемом формате. Есть 3 возможных уровня: (1)
выводить числа с разделителем между каждым набором из 3 цифр (запятой или
точка, в зависимости от того, представлена ли десятичная точка точкой или запятой);
(2) выводить числа в единицах 1000 (с суффиксом символа для более крупных единиц -
увидеть ниже); (3) выводить числа в единицах 1024.
По умолчанию используется уровень 1, удобочитаемый человеком. Каждый -h опция увеличивает уровень на единицу.
Вы можете понизить уровень до 0 (чтобы выводить числа как чистые цифры), указав
- не читаемый человеком (--нет-ч) вариант.
Буквы единиц измерения, добавленные на уровнях 2 и 3: K (килограммы), M (мега), G.
(гига) или Т (тера). Например, файл размером 1234567 байт будет выводиться как 1.23 МБ в
уровень-2 (при условии, что точка является вашей местной десятичной запятой).
Примечание об обратной совместимости: версии rsync до 3.1.0 не поддерживают
удобочитаемый уровень 1, и по умолчанию они равны уровню 0. Таким образом, указав один или два
-h параметры будут вести себя сравнимо в старой и новой версиях, пока
вы не указали --нет-ч вариант до одного или нескольких -h параметры. Увидеть
- только список вариант за одно отличие.
- частичный
По умолчанию rsync удаляет любой частично переданный файл, если передача
прервано. В некоторых случаях желательно оставить частично
перенесенные файлы. С помощью - частичный опция указывает rsync сохранить частичный файл
что должно значительно ускорить последующую передачу остальной части файла.
--partial-dir = DIR
Лучший способ сохранить частичные файлы, чем - частичный вариант - указать DIR
который будет использоваться для хранения частичных данных (вместо записи их в
файл назначения). При следующей передаче rsync будет использовать файл из этого каталога.
как данные, чтобы ускорить возобновление передачи, а затем удалить их после того, как
выполнила свою задачу.
Обратите внимание, что если --целый файл указан (или подразумевается), любой файл с частичным каталогом,
найденный для файла, который обновляется, будет просто удален (поскольку rsync
отправка файлов без использования алгоритма дельта-передачи rsync).
Rsync создаст DIR если он отсутствует (только последний каталог - не весь
дорожка). Это упрощает использование относительного пути (например,
"--partial-dir = .rsync-partial"), чтобы rsync создал частичный каталог в
каталог целевого файла, когда это необходимо, а затем удалите его снова, когда частичный
файл удален.
Если значение partial-dir не является абсолютным путем, rsync добавит правило исключения в
конец всех ваших существующих исключений. Это предотвратит отправку любых
файлы partial-dir, которые могут существовать на отправляющей стороне, а также предотвратят
несвоевременное удаление элементов частичного каталога на принимающей стороне. Пример:
выше --partial-дир вариант добавил бы эквивалент "-f '-п .rsync-partial / '"В
конец любых других правил фильтрации.
Если вы предоставляете свои собственные правила исключения, вам может потребоваться добавить свои собственные
исключить / скрыть / защитить правило для частичного каталога, потому что (1) автоматически добавленное правило может
быть неэффективным в конце других ваших правил, или (2) вы, возможно, захотите переопределить
Выбор исключения rsync. Например, если вы хотите очистить rsync
оставшиеся частичные каталоги, которые могут валяться, вы должны указать --delete-после
и добавьте правило фильтрации «риска», например -f 'R .rsync-partial / '. (Избегать использования
--удалить-до or --delete-во время если вам не нужен rsync для использования любого из
оставшиеся данные частичного каталога во время текущего прогона.)
ВАЖНО: --partial-дир не должны быть доступны для записи другим пользователям, или это
риск безопасности. Например, ИЗБЕГАЙТЕ "/ Tmp".
Вы также можете установить значение partial-dir в переменной среды RSYNC_PARTIAL_DIR.
Установка этого в среде не приводит к принудительному - частичный быть включенным, а скорее
это влияет на то, куда идут частичные файлы, когда - частичный указан. Например,
Вместо того, чтобы использовать --partial-dir = .rsync-tmp вместе с --прогресс, вы могли бы установить
RSYNC_PARTIAL_DIR = .rsync-tmp в вашей среде, а затем просто используйте -P вариант
включите использование каталога .rsync-tmp для частичной передачи. Единственный раз, когда
- частичный опция не ищет это значение среды (1), когда
--на месте было указано (поскольку --на месте конфликтует с --partial-дир) и (2)
когда --delay-обновления был указан (см. ниже).
Для настройки параметра «отказаться от опций» в daemon-config, --partial-дир
приносит подразумевать - частичный. Это так, что отказ от - частичный вариант может быть
используется для запрета перезаписи файлов назначения с частичной передачей,
в то же время позволяя более безопасную идиому, предоставляемую --partial-дир.
--delay-обновления
Эта опция помещает временный файл из каждого обновленного файла в каталог хранения.
до конца передачи, при этом все файлы переименовываются на место
в быстрой последовательности. Это пытается сделать обновление файлов немного более
атомный. По умолчанию файлы помещаются в каталог с именем ". ~ Tmp ~" в каждом
каталог назначения файла, но если вы указали --partial-дир вариант,
вместо этого будет использоваться этот каталог. См. Комментарии в --partial-дир .
для обсуждения того, как этот каталог ". ~ tmp ~" будет исключен из передачи, и
что вы можете сделать, если хотите, чтобы rsync очистил старые каталоги ". ~ tmp ~", которые могли лгать
вокруг. Конфликты с --на месте и - добавить.
Эта опция использует больше памяти на принимающей стороне (один бит на передаваемый файл)
а также требует достаточно свободного дискового пространства на принимающей стороне для хранения
дополнительная копия всех обновленных файлов. Также обратите внимание, что вы не должны использовать
абсолютный путь к --partial-дир если (1) нет никаких шансов, что какой-либо из файлов в
одноименный перевод (так как все обновленные файлы будут помещены в
один каталог, если путь абсолютный) и (2) нет точек монтирования в
иерархия (поскольку отложенные обновления не будут выполнены, если их нельзя переименовать в
место).
См. Также сценарий perl "atomic-rsync" в подкаталоге "support" для получения обновлений.
еще более атомарный алгоритм (он использует --ссылка-назначение и параллельная иерархия
файлы).
-м, --prune-пустые-каталоги
Эта опция сообщает принимающему rsync, что нужно избавиться от пустых каталогов из
список файлов, включая вложенные каталоги, у которых нет дочерних элементов, не являющихся каталогами. Этот
полезно для предотвращения создания кучи бесполезных каталогов, когда
отправка rsync - это рекурсивное сканирование иерархии файлов с использованием
включить / исключить / фильтровать правила.
Обратите внимание, что использование правил передачи, таких как --мин-размер вариант, не влияет
что входит в список файлов и, таким образом, не оставляет каталоги пустыми, даже если
ни один из файлов в каталоге не соответствует правилу передачи.
Поскольку список файлов фактически сокращается, этот параметр также влияет на то, что
каталоги удаляются, когда удаление активно. Однако имейте в виду, что
исключенные файлы и каталоги могут предотвратить удаление существующих элементов из-за
исключить как скрытие исходных файлов, так и защиту файлов назначения. Увидеть
вариант правила фильтрации скоропортящихся продуктов, чтобы узнать, как этого избежать.
Вы можете предотвратить удаление определенных пустых каталогов из списка файлов с помощью
с использованием глобального фильтра «защиты». Например, этот вариант гарантирует, что
каталог emptydir хранился в списке файлов:
--filter 'защитить пустой каталог /'
Вот пример, который копирует все файлы .pdf в иерархии, создавая только
необходимые целевые каталоги для хранения файлов .pdf и гарантирует, что все
лишние файлы и каталоги в месте назначения удаляются (обратите внимание на скрытие
фильтр некаталогов, используемых вместо исключения):
rsync -avm --del --include = '*. pdf' -f 'hide ,! * / 'src / dest
Если вы не хотели удалять лишние файлы назначения, более проверенный временем
варианты "--include = '* /' --exclude = '*'"отлично подойдет вместо
скрыть-фильтр (если это вам более естественно).
--прогресс
Эта опция сообщает rsync о необходимости распечатать информацию о ходе передачи.
Это дает скучающему пользователю что посмотреть. С современным rsync это то же самое
как указывается --info = flist2, имя, прогресс, но любые пользовательские настройки для тех
информационные флаги имеют приоритет (например, "--info = flist0 --progress").
Пока rsync передает обычный файл, он обновляет строку выполнения, которая выглядит
как это:
782448 63% 110.64кБ / с 0:00:04
В этом примере получатель реконструировал 782448 байтов или 63% данных отправителя.
файл, который восстанавливается со скоростью 110.64 килобайт в секунду, и
передача завершится через 4 секунды, если текущая скорость сохраняется до
конец.
Эта статистика может вводить в заблуждение, если используется алгоритм дельта-передачи rsync.
Например, если файл отправителя состоит из основного файла, за которым следуют дополнительные
данных, сообщаемая скорость, вероятно, резко упадет, когда получатель доберется до
буквальные данные, и передача, вероятно, займет гораздо больше времени, чем
получатель оценил, как он заканчивает согласованную часть файла.
Когда передача файла завершается, rsync заменяет строку выполнения на сводку.
строка, которая выглядит так:
1,238,099 100% 146.38 КБ / с 0:00:08 (xfr # 5, to-chk = 169/396)
В этом примере общая длина файла составила 1,238,099 XNUMX XNUMX байт, средняя скорость
передача для всего файла составила 146.38 килобайт в секунду за 8 секунд, которые
потребовалось завершить, это была 5-я передача обычного файла за текущий
rsync, и есть еще 169 файлов, которые получатель может проверить (чтобы убедиться, что
актуальны они или нет), оставшиеся из 396 файлов в списке файлов.
При инкрементальном рекурсивном сканировании rsync не будет знать общее количество файлов в
file-list, пока не дойдет до конца сканирования, но поскольку он начинает передавать
файлов во время сканирования отобразится строка с текстом «ir-chk» (для
инкрементная проверка рекурсии) вместо "to-chk" до тех пор, пока он не узнает
полный размер списка, после чего он переключится на использование «to-chk». Таким образом,
увидев "ir-chk", вы узнаете, что общее количество файлов в списке файлов равно
по-прежнему будет увеличиваться (и каждый раз количество файлов, оставшихся для проверки
увеличится на количество файлов, добавленных в список).
-P Команда -P вариант эквивалентен - частичный --прогресс. Его цель - сделать это
гораздо проще указать эти два варианта для длительного перевода, который может быть
прервано.
Существует также --info = прогресс2 опция, выводящая статистику по всему
передача, а не отдельные файлы. Используйте этот флаг без вывода
имя файла (например, избегайте -v или указать --info = имя0 если вы хотите увидеть, как перевод
обходится без прокрутки экрана с множеством имен. (Вам не нужно
указать --прогресс вариант для использования --info = прогресс2.)
--password-file = ФАЙЛ
Этот параметр позволяет указать пароль для доступа к демону rsync через
файл или через стандартный ввод, если ФАЙЛОВ is -. Файл должен содержать только пароль
в первой строке (все остальные строки игнорируются). Rsync завершится с ошибкой, если
ФАЙЛОВ доступен для чтения всем, или если команда rsync, выполняемая root, находит файл, не принадлежащий root.
Эта опция не предоставляет пароль для удаленного транспорта оболочки, такого как ssh; к
узнайте, как это сделать, обратитесь к документации по удаленной оболочке. При доступе к
демон rsync, использующий удаленную оболочку в качестве транспорта, эта опция входит только в
эффект после того, как удаленная оболочка завершит свою аутентификацию (т.е. если у вас также
указал пароль в файле конфигурации демона).
- только список
Эта опция приведет к тому, что исходные файлы будут перечислены, а не переданы. Этот
опция выводится, если есть единственный исходный аргумент и не указано место назначения, поэтому
его основные применения: (1) чтобы превратить команду копирования, которая включает целевой аргумент, в
команда вывода списка файлов или (2) возможность указать более одного исходного аргумента
(примечание: обязательно укажите пункт назначения). Внимание: имейте в виду, что источник
arg с подстановочным знаком расширяется оболочкой на несколько аргументов, поэтому он никогда не
безопасно пытаться перечислить такой аргумент без использования этой опции. Например:
rsync -av --list-only foo * dest /
Начиная с rsync 3.1.0, размеры, выводимые - только список подвержены влиянию
--человек читаемый вариант. По умолчанию они будут содержать разделители цифр, но выше
уровни читаемости выведут размеры с суффиксами единиц измерения. Отметим также, что
ширина столбца для вывода размера увеличена с 11 до 14 символов для всех
удобочитаемые уровни. Использовать --нет-ч если вам нужны только цифры в размерах, а
старый столбец шириной 11 символов.
Примечание о совместимости: при запросе удаленного списка файлов из rsync, который
имеет версию 2.6.3 или более раннюю, вы можете столкнуться с ошибкой, если попросите
нерекурсивный листинг. Это потому, что список файлов подразумевает --дирс вариант
без - рекурсивный, а в более старых версиях rsync такой возможности нет. Чтобы избежать этой проблемы,
либо указать --no-диры вариант (если вам не нужно расширять каталог
content) или включить рекурсию и исключить содержимое подкаталогов: -r
--exclude = '/ * / *'.
--bwlimit = СТАВКА
Этот параметр позволяет указать максимальную скорость передачи данных, отправляемых через
сокет, указанный в единицах в секунду. Значение RATE может быть дополнено суффиксом
строка для указания множителя размера и может быть дробным значением (например,
"--bwlimit = 1.5 м"). Если суффикс не указан, предполагается, что значение находится в
блоки по 1024 байта (как если бы были добавлены «K» или «KiB»). Увидеть --макс-размер
вариант для описания всех доступных суффиксов. Нулевое значение указывает
нет ограничений.
По причинам обратной совместимости ограничение скорости будет округлено до ближайшего
Единица KiB, поэтому скорость меньше 1024 байтов в секунду невозможна.
Rsync записывает данные через сокет блоками, и этот параметр ограничивает размер
блоков, которые пишет rsync, и пытается поддерживать среднюю скорость передачи на уровне
запрошенный лимит. Может наблюдаться некоторая "прерывистость", когда rsync записывает блок
данных, а затем засыпает, чтобы привести среднюю скорость в соответствие.
Из-за внутренней буферизации данных --прогресс вариант может быть неточным
размышление о том, как быстро данные отправляются. Это потому, что некоторые файлы могут показывать
как быстро отправляемые, когда данные быстро буферизируются, в то время как другие могут отображаться
очень медленно, когда происходит очистка выходного буфера. Это можно исправить в
будущая версия.
--write-batch = ФАЙЛ
Запишите файл, который позже может быть применен к другому аналогичному месту назначения с помощью
- выпадение партии. См. Подробности в разделе «ПАКЕТНЫЙ РЕЖИМ», а также
--only-write-batch опцию.
--only-write-batch = ФАЙЛ
Работает как --write-batch, за исключением того, что в целевой системе не производится никаких обновлений
при создании партии. Это позволяет перенести изменения в пункт назначения.
систему с помощью других средств, а затем примените изменения через - выпадение партии.
Обратите внимание, что вы можете свободно записывать пакет прямо на какой-нибудь переносной носитель: если
этот носитель заполняется до конца до конца передачи, вы можете просто применить
эту частичную передачу к месту назначения и повторите весь процесс, чтобы получить
остальные изменения (если вы не возражаете против частично обновленного пункта назначения
системе во время цикла мультиобновлений).
Также обратите внимание, что вы экономите пропускную способность только при отправке изменений в удаленную систему.
потому что это позволяет перенаправить пакетные данные от отправителя в пакет
файл без необходимости протекать по проводу к получателю (при вытягивании отправитель
является удаленным и поэтому не может записать пакет).
--read-batch = ФАЙЛ
Примените все изменения, хранящиеся в FILE, файле, ранее созданном
--write-batch. Если ФАЙЛОВ is -, пакетные данные будут считаны со стандартного ввода. Видеть
подробности в разделе «ПАКЕТНЫЙ РЕЖИМ».
--protocol = ЧИСЛО
Принудительно использовать более старую версию протокола. Это полезно для создания партии
файл, совместимый со старой версией rsync. Например, если rsync
2.6.4 используется с --write-batch вариант, но rsync 2.6.3 - это то, что будет
используется для запуска - выпадение партии вариант, вы должны использовать "--protocol = 28" при создании
командный файл для принудительного использования более старой версии протокола в командном файле
(при условии, что вы не можете обновить rsync в системе чтения).
--iconv = CONVERT_SPEC
Rsync может преобразовывать имена файлов между наборами символов, используя эту опцию. Используя
CONVERT_SPEC из "." сообщает rsync, что нужно искать набор символов по умолчанию через локаль
параметр. Кроме того, вы можете полностью указать, какое преобразование делать, указав
локальная и удаленная кодировки, разделенные запятой в порядке --iconv = ЛОКАЛЬНЫЙ, УДАЛЕННЫЙ,
или --iconv = utf8, iso88591. Этот порядок гарантирует, что вариант останется прежним.
толкаете ли вы файлы или вытягиваете их. Наконец, вы можете указать либо
--no-значок или CONVERT_SPEC со знаком «-», чтобы отключить любое преобразование. По умолчанию
настройка этой опции зависит от сайта и также может быть изменена через
Переменная среды RSYNC_ICONV.
Чтобы получить список имен кодировок, которые поддерживает ваша локальная библиотека iconv, вы можете запустить
"iconv --list".
Если вы укажете --protect-аргументы вариант (-s), rsync переведет имена файлов
вы указываете в командной строке, что отправляются на удаленный хост. Смотрите также
--файлы-из опцию.
Обратите внимание, что rsync не выполняет преобразование имен в файлах фильтров (включая
включить / исключить файлы). Вы должны убедиться, что указываете соответствие
правила, которые могут совпадать с обеих сторон передачи. Например, вы можете указать
дополнительные правила включения / исключения, если есть различия в именах файлов с двух сторон,
необходимо учитывать.
Когда вы проходите --icov параметр для демона rsync, который позволяет это, демон использует
кодировка, указанная в параметре конфигурации "charset", независимо от
удаленная кодировка, которую вы действительно передаете. Таким образом, вы можете указать только
локальная кодировка для передачи демона (например, --iconv = utf8).
-4, --ipv4 or -6, --ipv6
Сообщает rsync о предпочтении IPv4 / IPv6 при создании сокетов. Это влияет только на сокеты
что rsync имеет прямой контроль, например, исходящий сокет, когда напрямую
связь с демоном rsync. См. Также эти параметры в - демон раздел режима.
Если rsync выполнялся без поддержки IPv6, --ipv6 вариант не будет
эффект. В --версия вывод сообщит вам, так ли это.
--checksum-seed = ЧИСЛО
Установите начальную контрольную сумму равной целому числу ЧИСЛО. Эта 4-байтовая начальная контрольная сумма включена в
вычисление контрольной суммы каждого блока и файла MD4 (более современные контрольные суммы файлов MD5
не используйте семя). По умолчанию начальная контрольная сумма генерируется сервером и
по умолчанию используется текущее время (). Эта опция используется для установки определенной контрольной суммы.
seed, что полезно для приложений, которым нужны повторяемые контрольные суммы блоков, или в
случай, когда пользователь хочет получить более случайное начальное значение контрольной суммы. Установка для ЧИСЛА значения 0 причин
rsync, чтобы использовать время () по умолчанию для начального значения контрольной суммы.
ДЕЙМОН ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
При запуске демона rsync разрешены следующие параметры:
- демон
Это сообщает rsync, что он должен работать как демон. Запускаемый вами демон может
можно получить доступ с помощью клиента rsync, используя host :: module or rsync: // хост / модуль /
синтаксис.
Если стандартный ввод - это сокет, тогда rsync будет считать, что он запускается через
inetd, иначе он отсоединится от текущего терминала и станет фоном
демон. Демон будет читать файл конфигурации (rsyncd.conf) при каждом подключении, выполненном
клиент и соответственно отвечать на запросы. Увидеть rsyncd.conf(5) справочная страница для
более подробно.
--адрес
По умолчанию rsync привязывается к подстановочному адресу при запуске в качестве демона с
- демон вариант. --адрес опция позволяет указать конкретный IP-адрес
(или имя хоста) для привязки. Это делает возможным виртуальный хостинг в сочетании с
--config вариант. См. Также глобальную опцию «адрес» в файле rsyncd.conf.
справочная страница.
--bwlimit = СТАВКА
Эта опция позволяет вам указать максимальную скорость передачи данных, которые демон
отправляет через сокет. Клиент по-прежнему может указать меньшую --bwlimit значение, но
большее значение не допускается. См. Клиентскую версию этой опции (выше) для
некоторые дополнительные детали.
--config = ФАЙЛ
Это указывает на файл конфигурации, альтернативный файлу по умолчанию. Это только актуально
когда - демон указан. По умолчанию /etc/rsyncd.conf если демон не
запускается через программу удаленной оболочки, и удаленный пользователь не является суперпользователем; в
в этом случае по умолчанию используется rsyncd.conf в текущем каталоге (обычно $ HOME).
-М, --dparam = ПЕРЕОПРЕДЕЛЕНИЕ
Эту опцию можно использовать для установки параметра daemon-config при запуске rsync в
режим демона. Это эквивалентно добавлению параметра в конец глобального
настройки до определения первого модуля. Имена параметров могут быть
указывается без пробелов, если желаете. Например:
rsync --daemon -M pidfile = / путь / rsync.pid
- без отсоединения
При запуске в качестве демона этот параметр указывает rsync не отключаться и
стать фоновым процессом. Эта опция требуется при запуске в качестве службы на
Cygwin, а также может быть полезен, когда rsync контролируется такой программой, как
DAEMON Tools или AIX Система Ресурс Контроллер. - без отсоединения также рекомендуется
когда rsync запущен под отладчиком. Этот параметр не действует, если rsync запускается из
inetd или sshd.
--port = ПОРТ
Это указывает альтернативный номер TCP-порта для прослушивания демона, а не
значение по умолчанию 873. См. также глобальную опцию «порт» на странице руководства rsyncd.conf.
--log-file = ФАЙЛ
Эта опция указывает демону rsync использовать заданное имя файла журнала вместо использования
параметр "файл журнала" в файле конфигурации.
--log-file-format = ФОРМАТ
Эта опция указывает демону rsync использовать данную строку FORMAT вместо использования
параметр "формат журнала" в файле конфигурации. Он также включает "ведение журнала передачи"
если строка не пуста, в этом случае ведение журнала передачи отключено.
- носки
Это отменяет гнездо кредита параметр в файле rsyncd.conf и имеет то же
синтаксис.
-в, --подробный
Эта опция увеличивает объем информации, которую демон регистрирует во время своего запуска.
фаза. После подключения клиента уровень детализации демона будет контролироваться.
по параметрам, которые использовал клиент, и настройке "максимальной детализации" в модуле
раздел config.
-4, --ipv4 or -6, --ipv6
Сообщает rsync о предпочтении IPv4 / IPv6 при создании входящих сокетов, которые rsync
демон будет использовать для прослушивания соединений. Один из этих вариантов может потребоваться в
старые версии Linux, чтобы обойти ошибку IPv6 в ядре (если вы видите
ошибка "адрес уже используется", когда порт больше не используется, попробуйте указать
--ipv6 or --ipv4 при запуске демона).
Если rsync выполнялся без поддержки IPv6, --ipv6 вариант не будет
эффект. В --версия вывод сообщит вам, так ли это.
-час, --Помогите
Если указано после - демон, распечатайте короткую справочную страницу с описанием опций
доступен для запуска демона rsync.
ФИЛЬТР ПРАВИЛА
Правила фильтрации позволяют гибко выбирать, какие файлы передавать (включать) и
какие файлы пропустить (исключить). В правилах либо прямо указываются шаблоны включения / исключения.
или они указывают способ получения дополнительных шаблонов включения / исключения (например, чтобы прочитать их из
файл).
По мере создания списка файлов / каталогов для передачи rsync проверяет каждое имя на соответствие
передается по очереди из списка шаблонов включения / исключения, и первое совпадение
по шаблону выполняется действие: если это шаблон исключения, то этот файл пропускается; если это
включить шаблон, тогда это имя файла не будет пропущено; если соответствующий шаблон не найден, то
имя файла не пропускается.
Rsync создает упорядоченный список правил фильтрации, как указано в командной строке. Фильтр
правила имеют следующий синтаксис:
ПРАВИЛО [PATTERN_OR_FILENAME]
ПРАВИЛО, МОДИФИКАТОРЫ [PATTERN_OR_FILENAME]
У вас есть выбор: использовать короткие или длинные имена ПРАВИЛА, как описано ниже. если ты
используйте правило с коротким именем, ",", отделяющее ПРАВИЛО от МОДИФИКАТОРОВ, необязательно. В
ШАБЛОН или ИМЯ ФАЙЛА, следующие (если они есть), должны стоять либо после одиночного пробела, либо после
подчеркивание (_). Вот доступные префиксы правил:
исключать, - указывает шаблон исключения.
включают, + указывает шаблон включения.
слияние . указывает файл слияния, который нужно прочитать для получения дополнительных правил.
слияние, : указывает файл слияния для каждого каталога.
скрывать, H задает шаблон для сокрытия файлов при передаче.
показать, S файлы, соответствующие шаблону, не скрываются.
защищать, P задает шаблон для защиты файлов от удаления.
риск, R файлы, соответствующие шаблону, не защищены.
Чисто, ! очищает текущий список включения / исключения (не принимает аргументов)
Когда правила считываются из файла, пустые строки игнорируются, как и строки комментариев,
начинать с "#".
Обратите внимание, что --включают/--исключать параметры командной строки не позволяют использовать весь диапазон правил
синтаксический анализ, как описано выше - они позволяют только спецификацию include / exclude
шаблоны плюс "!" токен, чтобы очистить список (и нормальный синтаксический анализ комментариев, когда правила
читать из файла). Если шаблон не начинается с «-» (тире, пробел) или «+» (плюс,
пробел), то правило будет интерпретироваться как «+» (для опции включения) или «-» (для
опция исключения) были добавлены к строке. А --фильтр вариант, с другой стороны,
всегда должно содержать короткое или длинное имя правила в начале правила.
Отметим также, что --фильтр, --включаюти --исключать для каждого варианта используется одно правило / шаблон.
Чтобы добавить несколько, вы можете повторить параметры в командной строке, используя файл слияния
синтаксис --фильтр или --include-от/- исключить из настройки.
ВКЛЮЧИТЬ / ИСКЛЮЧИТЬ ШАБЛОН ПРАВИЛА
Вы можете включать и исключать файлы, задав шаблоны с помощью фильтра «+», «-» и т. Д.
правила (как описано в разделе ПРАВИЛА ФИЛЬТРА выше). Правила включения / исключения каждое
укажите шаблон, который соответствует именам файлов, которые будут
переведен. Эти шаблоны могут иметь несколько форм:
o если узор начинается с /, то он привязан к определенному месту в
иерархия файлов, в противном случае она сопоставляется с концом имени пути. Этот
аналогичен начальному символу ^ в регулярных выражениях. Таким образом, "/ foo" будет соответствовать имени
of «foo» либо в «корне передачи» (для глобального правила), либо в
каталог файла слияния (для правила для каждого каталога). Неквалифицированный "foo"
сопоставить имя "foo" в любом месте дерева, потому что алгоритм применяется
рекурсивно сверху вниз; он ведет себя так, как будто каждый компонент пути получает поворот на
является концом имени файла. Даже незакрепленный "sub / foo" будет соответствовать любому
точка в иерархии, где «foo» был найден в каталоге с именем «sub». Видеть
раздел ПРИСОЕДИНЯЯЯСЯ ВКЛЮЧАТЬ / ИСКЛЮЧАТЬ ШАБЛОНЫ для полного обсуждения того, как
укажите шаблон, который соответствует корню передачи.
o если шаблон заканчивается на /, тогда он будет соответствовать только каталогу, а не обычному
файл, символическая ссылка или устройство.
o rsync выбирает между простым сопоставлением строк и сопоставлением с подстановочными знаками, проверяя
если шаблон содержит один из этих трех подстановочных знаков: '*', '?' и '['.
oa '*' соответствует любому компоненту пути, но заканчивается косой чертой.
o используйте '**' для соответствия чему угодно, включая косую черту.
оа '?' соответствует любому символу, кроме косой черты (/).
oa '[' вводит класс символов, например [az] или [[: alpha:]].
o в шаблоне подстановки обратная косая черта может использоваться для экранирования подстановочного символа, но
он соответствует буквально, когда нет подстановочных знаков. Это означает, что есть
дополнительный уровень удаления обратной косой черты, когда шаблон содержит подстановочные знаки
по сравнению с узором, у которого его нет. например, если вы добавите подстановочный знак к "foo \ bar"
(что соответствует обратной косой черте) вам нужно будет использовать "foo \\ bar *", чтобы избежать "\ b"
становится просто "Ъ".
o если шаблон содержит / (не считая завершающего /) или "**", то это
сопоставляется с полным путем, включая все ведущие каталоги. Если
шаблон не содержит / или "**", тогда он сопоставляется только с последним
компонент имени файла. (Помните, что алгоритм применяется рекурсивно, поэтому
"полное имя файла" может фактически быть любой частью пути от начального каталога
вниз.)
o конечный "dir_name / ***" будет соответствовать обоим каталогам (как если бы "dir_name /" было
указан) и все в каталоге (как если бы "dir_name / **" было
указано). Это поведение было добавлено в версии 2.6.7.
Обратите внимание, что при использовании - рекурсивный (-r) вариант (что подразумевается -a), каждые
подкомпонент каждого пути посещается сверху вниз, поэтому шаблоны включения / исключения получают
применяется рекурсивно к полному имени каждого подкомпонента (например, чтобы включить "/ foo / bar / baz"
субкомпоненты "/ foo" и "/ foo / bar" не должны быть исключены). Фактически исключаемые шаблоны
сокращает этап обхода каталога, когда rsync находит файлы для отправки. Если
шаблон исключает конкретный родительский каталог, он может отображать более глубокий шаблон включения
неэффективно, потому что rsync не прошел через этот исключенный раздел иерархии.
Это особенно важно при использовании правила завершающего символа "*". Например, это не будет
Работа:
+ / некоторый / путь / этот-файл-не-будет-найден
+ / файл включен
🇧🇷
Это не удается, потому что родительский каталог some исключен правилом '*', поэтому rsync никогда
посещает любой из файлов в каталогах some или some / path. Одно из решений - спросить
для включения всех каталогов в иерархии с помощью одного правила: "+ * /" (укажите
где-нибудь перед правилом "- *") и, возможно, используйте --prune-пустые-каталоги вариант. Другой
Решение состоит в том, чтобы добавить определенные правила включения для всех родительских каталогов, которые необходимо посетить.
Например, этот набор правил работает нормально:
+ / некоторые /
+ / некоторые / путь /
+ / некоторый / путь / этот-файл-найден
+ / файл-также-включен
🇧🇷
Вот несколько примеров соответствия исключить / включить:
o "- * .o" исключает все имена, соответствующие * .o
o "- / foo" исключает файл (или каталог) с именем foo из корневого каталога переноса.
каталог
o "- foo /" исключает любой каталог с именем foo
o "- / foo / * / bar" исключает любой файл с именем bar, который находится на два уровня ниже
каталог с именем foo в корневом каталоге передачи
o «- / foo / ** / bar» исключает любой файл с именем bar на два или более уровней ниже
каталог с именем foo в корневом каталоге передачи
o Комбинация «+ * /», «+ * .c» и «- *» будет включать все каталоги и C
исходные файлы, но ничего больше (см. также --prune-пустые-каталоги опция)
o Комбинация "+ foo /", "+ foo / bar.c" и "- *" будет включать только foo
каталог и foo / bar.c (каталог foo должен быть явно включен, иначе он
исключить знаком "*")
Следующие модификаторы допускаются после "+" или "-":
o А / указывает, что правило включения / исключения должно быть сопоставлено с абсолютным
путь к текущему элементу. Например, "-/ / И т.д. / пароль"исключит
passwd каждый раз, когда передача отправляла файлы из "/ и т.д."каталог, и
"- / subdir / foo" всегда исключает "foo", если он находится в каталоге с именем "subdir", даже
если "foo" находится в корне текущей передачи.
o А ! указывает, что включение / исключение должно вступить в силу, если шаблон не удается
совпадение. Например, «-! * /» Исключает все не каталоги.
o А C используется, чтобы указать, что все глобальные правила исключения CVS должны быть вставлены как
исключает вместо "-C". Аргументы не должны следовать.
о Ан s используется, чтобы указать, что правило применяется к отправляющей стороне. Когда правило
влияет на отправляющую сторону, предотвращает передачу файлов. По умолчанию
чтобы правило затрагивало обе стороны, если только --delete-исключено было указано, в котором
правила case по умолчанию становятся только на стороне отправителя. См. Также скрыть (H) и показать (S)
rules, которые представляют собой альтернативный способ указать, включает / исключает отправляющую сторону.
о Ан r используется, чтобы указать, что правило применяется к принимающей стороне. Когда правило
влияет на принимающую сторону, предотвращает удаление файлов. Увидеть s
модификатор для получения дополнительной информации. См. Также правила защиты (P) и риска (R), которые
альтернативный способ указать включает / исключает на стороне получателя.
o А p указывает, что правило является недолговечным, что означает, что оно игнорируется в каталогах.
которые удаляются. Например, -C правила опции по умолчанию, исключающие
такие вещи, как «CVS» и «* .o», помечены как скоропортящиеся и не препятствуют
каталог, который был удален в источнике, из удаленного в месте назначения.
MERGE-ФАЙЛ ФИЛЬТР ПРАВИЛА
Вы можете объединить целые файлы в правила фильтрации, указав либо слияние (.), Либо
dir-merge (:) правило фильтра (как описано в разделе ПРАВИЛА ФИЛЬТРА выше).
Есть два типа объединенных файлов: однократные ('.') И для каждого каталога (':'). А
файл слияния одного экземпляра читается один раз, и его правила включаются в
список фильтров вместо "." правило. Для файлов слияния по каталогам rsync просканирует
каждый каталог, который он проходит для указанного файла, объединяя его содержимое, когда файл
существует в текущем списке унаследованных правил. Эти файлы правил для каталогов должны быть
создается на отправляющей стороне, потому что именно отправляющая сторона сканируется для
доступные файлы для передачи. Эти файлы правил также может потребоваться передать в
принимающая сторона, если вы хотите, чтобы они влияли на то, какие файлы не удаляются (см. КАТАЛОГ
ПРАВИЛА И УДАЛИТЬ ниже).
Некоторые примеры:
слить /etc/rsync/default.rules
. /etc/rsync/default.rules
dir-merge .per-dir-фильтр
dir-merge, n- .non-наследуемый-per-dir-excludes
: n- .non-наследуемый-per-dir-excludes
Следующие модификаторы принимаются после правила слияния или слияния каталога:
o А - указывает, что файл должен состоять только из исключаемых шаблонов, без других
парсинг правил, за исключением комментариев в файле.
o А + указывает, что файл должен состоять только из включаемых шаблонов, без других
парсинг правил, за исключением комментариев в файле.
o А C это способ указать, что файл должен читаться CVS-совместимым способом.
Это включает 'n', 'w' и '-', но также позволяет токену очистки списка (!) Быть
указано. Если имя файла не указано, предполагается ".cvsignore".
o А e исключит имя файла слияния из передачи; например, "dir-merge, e .rules"
похож на "dir-merge .rules" и "- .rules".
о Ан n указывает, что правила не наследуются подкаталогами.
o А w указывает, что правила разбиваются на слова по пробелу вместо обычного
разделение строк. Это также отключает комментарии. Примечание: пространство, разделяющее
префикс из правила обрабатывается особым образом, поэтому "- foo + bar" анализируется как два правила
(при условии, что анализ префикса также не был отключен).
o Вы также можете указать любой из модификаторов для правил «+» или «-» (см. выше) по порядку
чтобы правила, считываемые из файла по умолчанию, имели этот модификатор
набор (кроме ! модификатор, который не пригодился бы). Например,
"merge, - / .excl" будет обрабатывать содержимое .excl как исключает абсолютный путь, а
"dir-merge, s .filt" и ": sC" будут применять все свои правила для каждого каталога.
только на отправляющей стороне. Если в правиле слияния указаны стороны, на которые необходимо повлиять (через s
or r модификатор или оба), то правила в файле не должны указывать стороны (через
модификатор или префикс правила, например скрывать).
Правила для каждого каталога наследуются во всех подкаталогах каталога, в котором
файл слияния был найден, если не использовался модификатор n. Правила каждого подкаталога
с префиксом к унаследованным правилам для каждого каталога от его родителей, что дает новейшие
правила имеют более высокий приоритет, чем унаследованные правила. Полный набор правил слияния каталогов
сгруппированы вместе в том месте, где был указан файл слияния, поэтому можно
переопределить правила слияния каталогов с помощью правила, которое было указано ранее в списке глобальных
правила. Когда правило очистки списка ("!") Читается из файла для каталога, оно только
очищает унаследованные правила для текущего файла слияния.
Другой способ предотвратить наследование отдельного правила из файла слияния каталогов - это
закрепите его ведущей косой чертой. Закрепленные правила в файле слияния для отдельных каталогов являются относительными
в каталог файла слияния, поэтому шаблон "/ foo" будет соответствовать только файлу "foo" в
каталог, в котором был найден файл фильтра слияния каталогов.
Вот пример файла фильтра, который вы должны указать через --filter = ". файл":
объединить /home/user/.global-filter
- * .gz
слияние каталогов .rules
+ *. [ch]
- * .o
Это объединит содержимое файла /home/user/.global-filter в начале
list, а также превращает имя файла ".rules" в файл фильтра для каждого каталога. Все правила
прочитанные до начала сканирования каталогов, следуйте глобальным правилам привязки (т. е.
ведущая косая черта соответствует корню передачи).
Если файл слияния для каждого каталога указан с путем, который является родительским каталогом
первый каталог передачи, rsync просканирует все родительские каталоги от этой начальной точки до
каталог передачи для указанного файла каталога. Например, вот
общий фильтр (см. -F):
--filter = ': /.rsync-filter'
Это правило предписывает rsync сканировать файл .rsync-filter во всех каталогах из корня.
вниз по родительскому каталогу передачи до начала обычного
просмотр каталогов файла в каталогах, которые отправляются как часть передачи.
(Примечание: для демона rsync корень всегда совпадает с "путем" модуля.)
Некоторые примеры этого предварительного сканирования файлов для каждого каталога:
rsync -avF / SRC / путь / / назначение / каталог
rsync -av --filter = ': ../../.rsync-filter' / SRC / путь / / dest / каталог
rsync -av --filter = ': .rsync-filter' / SRC / путь / / назначение / каталог
Первые две приведенные выше команды будут искать ".rsync-filter" в "/" и "/ src" перед
обычное сканирование начинает поиск файла в "/ src / path" и его подкаталогах. Последний
команда избегает сканирования родительского каталога и ищет только файлы ".rsync-filter" в каждом
каталог, который является частью перевода.
Если вы хотите включить содержимое ".cvsignore" в свои шаблоны, вы должны использовать
правило ": C", которое создает слияние каталога файла .cvsignore, но анализируется в
CVS-совместимый способ. Вы можете использовать это, чтобы повлиять на то, где --cvs-исключить (-C) опции
включение файла .cvsignore для каждого каталога помещается в ваши правила путем помещения
": C" в любом месте правил фильтрации. Без этого rsync добавил бы dir-merge
правило для файла .cvsignore в конце всех ваших правил (давая ему более низкий
приоритет, чем ваши правила командной строки). Например:
кошка <
+ foo.о
:C
- *.Старый
СРВ
rsync -avC --include = foo.o -f: C --exclude = '*. старый' a / b
Обе приведенные выше команды rsync идентичны. Каждый будет объединять все каталоги
.cvsignore правила в середине списка, а не в конце. Это позволяет их
специфичные для каталога правила, заменяющие правила, следующие за: C, вместо того, чтобы подчиняться
по всем твоим правилам. Чтобы повлиять на другие правила исключения CVS (т. Е. Список по умолчанию
исключения, содержимое $ HOME / .cvsignore и значение $ CVSIGNORE) вы должны опустить
-C параметр командной строки и вместо этого вставьте правило «-C» в правила фильтрации; например
"--filter = -C".
ОЧИСТКА СПИСКА ФИЛЬТР ПРАВИЛО
Вы можете очистить текущий список включения / исключения с помощью символа "!" правило фильтра (как введено
в разделе ПРАВИЛА ФИЛЬТРА выше). «Текущий» список - это либо глобальный список правил.
(если правило встречается при анализе параметров фильтра) или набор для каждого каталога
правила (которые наследуются в их собственном подсписке, поэтому подкаталог может использовать это для очистки
из родительских правил).
ЯКОРЬ ВКЛЮЧИТЬ / ИСКЛЮЧИТЬ СХЕМЫ
Как упоминалось ранее, глобальные шаблоны включения / исключения привязаны к "корню"
передачи "(в отличие от шаблонов для отдельных каталогов, которые привязаны к файлу слияния
каталог). Если вы думаете о передаче как о поддереве имен, которые отправляются из
от отправителя к получателю, корень передачи - это место, где дерево начинает дублироваться в
целевой каталог. Этот корень определяет, где шаблоны, начинающиеся с символа /.
Поскольку соответствие относится к корню передачи, изменение конечной косой черты на
исходный путь или изменение использования --родственник опция влияет на путь, который вам нужно использовать
в вашем сопоставлении (помимо изменения того, какая часть дерева файлов дублируется на
хост назначения). Следующие примеры демонстрируют это.
Допустим, мы хотим сопоставить два исходных файла, один с абсолютным путем
«/ home / me / foo / bar» и один с путем «/ home / you / bar / baz». Вот как различные
варианты команд различаются для передачи с двумя источниками:
Пример cmd: rsync -a / home / me / home / you / dest
+/- шаблон: / me / foo / bar
+/- шаблон: / вы / бар / баз
Целевой файл: / dest / me / foo / bar
Целевой файл: / dest / you / bar / baz
Пример cmd: rsync -a / home / me / / home / you / / dest
+/- шаблон: / foo / bar (обратите внимание на отсутствие «меня»)
+/- шаблон: / bar / baz (обратите внимание на отсутствие «вас»)
Целевой файл: / dest / foo / bar
Целевой файл: / dest / bar / baz
Пример cmd: rsync -a --relative / home / me / / home / you / dest
+/- шаблон: / home / me / foo / bar (обратите внимание на полный путь)
+/- шаблон: / home / you / bar / baz (то же самое)
Целевой файл: / dest / home / me / foo / bar
Целевой файл: / dest / home / you / bar / baz
Пример cmd: cd / Главная; rsync -a --relative me / foo you / / dest
+/- шаблон: / me / foo / bar (начинается с указанного пути)
+/- шаблон: / you / bar / baz (то же самое)
Целевой файл: / dest / me / foo / bar
Целевой файл: / dest / you / bar / baz
Самый простой способ узнать, какое имя следует отфильтровать, - просто посмотреть на вывод, когда
через --подробный и поставьте перед именем / (используйте --прогон, репетиция вариант, если вы не
пока готов копировать любые файлы).
В КАТАЛОГЕ ПРАВИЛА И УДАЛИТЬ
Без опции удаления правила для каждого каталога актуальны только на стороне отправителя, поэтому вы
Вы можете исключить сами файлы слияния, не влияя на передачу. К
Сделайте это легко, модификатор 'e' добавляет это исключение за вас, как показано на этих двух
эквивалентные команды:
rsync -av --filter = ': .excl' --exclude = .excl host: src / dir / dest
rsync -av --filter = ': e .excl' хост: src / dir / dest
Однако, если вы хотите удалить на принимающей стороне И хотите, чтобы некоторые файлы были
исключены из удаления, вы должны быть уверены, что принимающая сторона знает, что
файлы для исключения. Самый простой способ - включить файлы слияния для каждого каталога в
передача и использование --delete-после, потому что это гарантирует, что принимающая сторона получит все
те же правила исключения, что и отправляющая сторона, прежде чем она попытается что-либо удалить:
rsync -avF --delete-after host: src / dir / dest
Однако, если файлы слияния не являются частью передачи, вам необходимо указать
некоторые глобальные правила исключения (т.е. указанные в командной строке), или вам нужно будет поддерживать
ваши собственные файлы слияния каталогов на принимающей стороне. Пример первого - это
(предположим, что удаленные файлы .rules исключают себя):
rsync -av --filter = ': .rules' --filter = '. /my/extra.rules '
- удалить хост: src / dir / dest
В приведенном выше примере файл extra.rules может влиять на обе стороны передачи, но (на
отправляющая сторона) правила подчиняются правилам, взятым из файлов .rules
потому что они были указаны после правила слияния для каждого каталога.
В одном последнем примере удаленная сторона исключает файлы .rsync-filter из
передачи, но мы хотим использовать наши собственные файлы .rsync-filter для управления тем, что удаляется при
принимающая сторона. Для этого мы должны специально исключить файлы слияния для каждого каталога.
(чтобы они не удалялись), а затем поместите правила в локальные файлы, чтобы контролировать, что
остальное не должно удаляться. Как одна из этих команд:
rsync -av --filter = ': e /.rsync-filter' --delete \
хост: src / dir / dest
rsync -avFF - удалить хост: src / dir / dest
ПАРТИЯ РЕЖИМ
Пакетный режим можно использовать для применения одного и того же набора обновлений ко многим идентичным системам. Предполагать
у одного есть дерево, которое реплицируется на нескольких хостах. Теперь предположим, что некоторые изменения
были внесены в это исходное дерево, и эти изменения необходимо распространить на другие хосты.
Чтобы сделать это в пакетном режиме, rsync запускается с параметром write-batch для применения
изменения, внесенные в исходное дерево в одно из целевых деревьев. Пакетная запись
опция заставляет rsync-клиент хранить в "пакетном файле" всю информацию, необходимую для
повторите эту операцию с другими идентичными деревьями назначения.
Однократное создание командного файла избавляет от необходимости определять статус файла, контрольную сумму и данные.
генерация блока более одного раза при обновлении нескольких целевых деревьев. Многоадресная рассылка
транспортные протоколы могут использоваться для передачи файлов пакетного обновления параллельно многим
хосты сразу, вместо того, чтобы отправлять одни и те же данные каждому хосту по отдельности.
Чтобы применить записанные изменения к другому целевому дереву, запустите rsync с пакетом чтения
вариант, указав имя того же командного файла и целевое дерево. Rsync
обновляет целевое дерево, используя информацию, хранящуюся в пакетном файле.
Для вашего удобства файл сценария также создается при использовании параметра write-batch:
он будет называться так же, как пакетный файл с добавлением ".sh". Этот файл сценария
содержит командную строку, подходящую для обновления целевого дерева с использованием связанного
командный файл. Он может быть выполнен с использованием оболочки Bourne (или Bourne-подобной), при необходимости передавая
в альтернативном пути к дереву назначения, который затем используется вместо исходного
путь назначения. Это полезно, когда путь к дереву назначения на текущем хосте
отличается от того, который использовался для создания командного файла.
Примеры:
$ rsync --write-batch = foo -a host: / source / dir / / adest / dir /
$ scp foo * удаленный:
$ ssh удаленный ./foo.sh / bdest / dir /
$ rsync --write-batch = foo -a / source / dir / / adest / dir /
$ ssh удаленный rsync --read-batch = - -a / bdest / dir /
В этих примерах rsync используется для обновления / adest / dir / из / source / dir /, а
информация для повторения этой операции хранится в "foo" и "foo.sh". Хост "удаленный"
затем обновляется пакетными данными, поступающими в каталог / bdest / dir. В
различия между двумя примерами демонстрируют некоторую гибкость, которую вы имеете в том, как вы
иметь дело с партиями:
o Первый пример показывает, что исходная копия не обязательно должна быть локальной - вы можете
передавать или извлекать данные на / с удаленного хоста, используя синтаксис удаленной оболочки или
синтаксис демона rsync по желанию.
o В первом примере для получения правильных параметров rsync используется созданный файл "foo.sh".
при запуске команды read-batch на удаленном хосте.
o Во втором примере пакетные данные считываются через стандартный ввод, так что пакетный файл
не нужно сначала копировать на удаленный компьютер. Этот пример избегает
foo.sh, потому что он должен использовать измененный - выпадение партии вариант, но ты
можете отредактировать файл сценария, если хотите его использовать (просто убедитесь, что нет
другой вариант пытается использовать стандартный ввод, например "--exclude-from = -"
опция).
Предостережения:
Параметр read-batch ожидает, что дерево назначения, которое он обновляет, будет идентично
целевое дерево, которое использовалось для создания набора файлов пакетного обновления. Когда разница
между целевыми деревьями встречается обновление может быть отменено с предупреждением
(если кажется, что файл уже обновлен) или может быть предпринята попытка обновления файла и
затем, если файл не удается проверить, обновление сбрасывается с ошибкой. Это означает, что это
должно быть безопасно повторно запустить операцию пакетного чтения, если команда была прервана. если ты
хотите, чтобы всегда выполнялись попытки пакетного обновления независимо от размера файла и
дата, используйте -I вариант (при чтении партии). Если возникает ошибка, пункт назначения
дерево, вероятно, будет в частично обновленном состоянии. В этом случае rsync можно использовать в
обычный (не пакетный) режим работы для исправления целевого дерева.
Версия rsync, используемая во всех местах назначения, должна быть как минимум такой же новой, как та, которая использовалась для
сгенерируйте командный файл. Rsync умрет с ошибкой, если версия протокола в
Пакетный файл слишком новый для того, чтобы rsync мог его обработать. Также --протокол
вариант, позволяющий создать командный файл при создании rsync, который может
понимать. (Обратите внимание, что формат командных файлов изменился в версии 2.6.3, поэтому смешанные версии
старше этого с более новыми версиями работать не будет.)
При чтении командного файла rsync заставит значение определенных параметров соответствовать данным.
в пакетном файле, если вы не установили для них то же самое, что и для команды пакетной записи. Другой
параметры можно (и нужно) изменить. Например --write-batch изменения в - выпадение партии,
--файлы-из отбрасывается, и --фильтр/--включают/--исключать варианты не нужны
если только один из --удалять параметры указаны.
Код, создающий файл BATCH.sh, преобразует любые параметры фильтра / включения / исключения в
единый список, который добавляется в виде документа «здесь» к файлу сценария оболочки. Продвинутый
пользователь может использовать это для изменения списка исключений, если изменение того, что удаляется --удалять
желательно. Обычный пользователь может проигнорировать эту деталь и просто использовать сценарий оболочки как простой
способ запустить соответствующий - выпадение партии команда для пакетных данных.
Первоначальный пакетный режим в rsync был основан на «rsync +», но в последней версии используется новый
реализации.
СИМВОЛИКА ССЫЛКИ
Когда rsync встречает символическую ссылку в источнике, возможны три основных поведения.
каталог.
По умолчанию символические ссылки вообще не передаются. Сообщение "нерегулярный пропуск"
файл создается для любых существующих символических ссылок.
If --ссылки указан, то символические ссылки воссоздаются с той же целью на
назначения. Обратите внимание, что --архив подразумевает --ссылки.
If --скопировать ссылки указан, то символические ссылки "сворачиваются" путем копирования их референта,
а не символическую ссылку.
Rsync также может различать «безопасные» и «небезопасные» символические ссылки. Пример, где это
может использоваться зеркало веб-сайта, которое хочет убедиться, что модуль rsync
скопировано не содержит символических ссылок на / И т.д. / пароль в публичном разделе сайта.
. --copy-небезопасные-ссылки приведет к тому, что любые ссылки будут скопированы как файл, на который они указывают
назначение. С использованием --safe-ссылки приведет к тому, что небезопасные ссылки будут полностью опущены.
(Обратите внимание, что вы должны указать --ссылки для --safe-ссылки иметь какой-либо эффект.)
Символические ссылки считаются небезопасными, если они являются абсолютными символическими ссылками (начинаются с /), пустой,
или если они содержат достаточно компонентов ".." для выхода из копируемого каталога.
Вот краткое изложение того, как интерпретируются параметры символической ссылки. Список в порядке
приоритет, поэтому, если ваша комбинация параметров не упоминается, используйте первую строку, которая
полный набор ваших опций:
--скопировать ссылки
Превратите все символические ссылки в обычные файлы (не оставляя символических ссылок ни для каких других опций).
оказывать воздействие).
--ссылки --copy-небезопасные-ссылки
Превратите все небезопасные символические ссылки в файлы и продублируйте все безопасные символические ссылки.
--copy-небезопасные-ссылки
Превратите все небезопасные символические ссылки в файлы, шумно пропустите все безопасные символические ссылки.
--ссылки --safe-ссылки
Дублируйте безопасные символические ссылки и пропускайте небезопасные.
--ссылки
Дублируйте все символические ссылки.
ДИАГНОСТИКИ
rsync иногда выдает сообщения об ошибках, которые могут показаться немного загадочными. Тот, который
Кажется, наибольшую путаницу вызывает "несоответствие версии протокола - чиста ли ваша оболочка?".
Это сообщение обычно вызвано вашими сценариями запуска или удаленной оболочкой, производящей
нежелательный мусор в потоке, который rsync использует для транспортировки. Способ диагностики
эта проблема заключается в том, чтобы запустить удаленную оболочку следующим образом:
удаленный хост ssh / bin / истина > out.dat
затем посмотрите out.dat. Если все работает правильно, out.dat должен быть нулевым.
длина файла. Если вы получаете указанную выше ошибку от rsync, вы, вероятно, найдете
что out.dat содержит текст или данные. Посмотрите на содержание и попытайтесь понять, что именно
производя это. Наиболее частая причина - неправильно настроенные сценарии запуска оболочки (например,
как .cshrc или .profile), которые содержат операторы вывода для неинтерактивных входов в систему.
Если у вас возникли проблемы с отладкой шаблонов фильтров, попробуйте указать -вв опцию.
На этом уровне детализации rsync покажет, почему включен каждый отдельный файл или
не входит.
ВЫХОД ЦЕННОСТИ:
0 Успех
1 Синтаксис или ошибка использования
2 Несовместимость протокола
3 Ошибки при выборе файлов ввода / вывода, директорий
4 Запрошенное действие не поддерживается: была предпринята попытка манипулировать 64-битными файлами на
платформа, которая не может их поддерживать; или была указана опция, поддерживаемая
клиент, а не сервер.
5 Ошибка запуска клиент-серверного протокола
6 Демон не может добавить в лог-файл
10 Ошибка ввода-вывода сокета
11 Ошибка в файловом вводе-выводе
12 Ошибка в потоке данных протокола rsync
13 Ошибки при диагностике программы
14 Ошибка в коде IPC
20 Получен SIGUSR1 или SIGINT
21 Некоторая ошибка, возвращаемая функцией waitpid ()
22 Ошибка выделения буферов основной памяти
23 Частичная передача из-за ошибки
24 Частичная передача из-за исчезновения исходных файлов
25 Предел --max-delete остановил удаление
30 Тайм-аут при отправке / получении данных
35 Тайм-аут ожидания подключения демона
ОКРУЖАЮЩАЯ СРЕДА ПЕРЕМЕННЫЕ
CVSIGNORE
Переменная среды CVSIGNORE дополняет любые шаблоны игнорирования в .cvsignore
файлы. Увидеть --cvs-исключить вариант для более подробной информации.
RSYNC_ICONV
Укажите значение по умолчанию --icov настройка с помощью этой переменной среды. (Первая поддержка
в 3.0.0.)
RSYNC_PROTECT_ARGS
Укажите ненулевое числовое значение, если вы хотите, чтобы --protect-аргументы возможность быть
включен по умолчанию, или нулевое значение, чтобы убедиться, что он отключен по умолчанию.
(Впервые поддерживается в 3.1.0.)
RSYNC_RSH
Переменная среды RSYNC_RSH позволяет вам переопределить оболочку по умолчанию, используемую как
транспорт для rsync. Параметры командной строки разрешены после команды
имя, как и в -e опцию.
RSYNC_PROXY
Переменная среды RSYNC_PROXY позволяет перенаправить ваш клиент rsync на
использовать веб-прокси при подключении к демону rsync. Вы должны установить RSYNC_PROXY в
имя хоста: пара портов.
RSYNC_ПАРОЛЬ
Установка RSYNC_PASSWORD на требуемый пароль позволяет вам запускать аутентифицированный
Подключение rsync к демону rsync без вмешательства пользователя. Обратите внимание, что это
не предоставлять пароль для удаленного транспорта оболочки, такого как ssh; научиться делать
при этом обратитесь к документации по удаленной оболочке.
USER or LOGNAME
Переменные среды USER или LOGNAME используются для определения значения по умолчанию.
имя пользователя, отправленное демону rsync. Если ни один из них не установлен, по умолчанию используется имя пользователя.
"никто".
ГЛАВНАЯ Переменная среды HOME используется для поиска пользовательского файла .cvsignore по умолчанию.
Используйте rsync онлайн с помощью сервисов onworks.net