Кажется, что сопоставление и дуплекс становятся смешанными... программа отправляет всю страницу 1, который принтер покорно дуплексы, затем страница 2 и т.д.
Я выключил бы сопоставление, позволить дуплексу принтера, как это, как предполагается. Если Вы хотите сопоставить..., это не имеет смысла к дуплексу.
сопоставляйте обычно интерпретируемый как 'вся страница 1's' в одном выводе, затем вся страница 2, three's и т.д..., таким образом, это почти ожидало, что поведение произведет, как Вы описали.
Можно использовать rsync
исключите переключатель (--exclude
):
$ rsync -avz --exclude '**/tmp/' source/ destination/
Указанный этот путь --exclude '**/tmp/'
проигнорирует любой путь, который включает строку /tmp/
. Можно предоставить шаблоны этому аргументы также.
$ rsync -avz --exclude '/path/to/*/tmp/' source/ destination/
Исключит на путях формы: /path/to/*/tmp/
.
Ошибка означает, что rsync
больше не может найти файлы, которые существовали при построении списка для передачи. Эти ошибки исчезнувшего файла возникают, когда файл изначально был обнаружен, а затем больше не существует. В некоторых случаях это также происходит, когда исходные файлы повреждены или содержат недопустимые символы в имени (поэтому рекомендуется fsck
).
В основном это предупреждение, а не ошибка, поэтому беспокоиться не о чем, поскольку состояние каждого файла назначения отражает состояние соответствующих исходных файлов во время выполнения.
Если это вызывает проблему из-за того, что значение выхода не равно нулю, это можно решить с помощью следующего сценария оболочки ( источник ):
#!/bin/bash
(rsync "$@"; if [ $? == 24 ]; then exit 0; else exit $?; fi) 2>&1 | grep -v 'vanished'
или следующего сценария обходного пути ( источник ):
#!/bin/sh
OUT=`/usr/bin/snapback2 2>&1`
RET=$?
if [ "$RET" != "23" -a "$RET" != "0" -a "$RET" != 24 ]; then
echo "$OUT"
exit $RET
fi
, который в основном существует с теми же кодами ошибок, что и rsync, если rsync не работает.
Более подробно это обсуждается в: Ошибка 3653 - Уменьшение необходимости в предупреждении «исчезнувшие файлы»
Причина в том, что эти файлы существовали пока rsync составляет список файлов для передачи, но перед передачей они удаляются.
Это предупреждение, а не ошибка. Тем не менее, вы должны попытаться выяснить, почему этот файл был удален, возможно, это важно.
Чтобы игнорировать это предупреждение, вы можете использовать параметр --exclude, как указано выше, или использовать параметр -ignore-missing-args
rsync, он заставляет rsync игнорировать исчезнувшие файлы:
- ignore-missing-args игнорировать отсутствующие исходные аргументы без ошибки
это может помочь.
К сожалению, в отличие от того, что описано в решении SWdream, - ignore-missing-args
не влияет на исчезнувшие файлы. Он просто проигнорирует несуществующие аргументы источника.
См. man rsync
:
- ignore-missing-args Когда rsync сначала обрабатывает явно запрошенные исходные файлы (например, аргументы командной строки или --files-from entries), обычно является ошибкой, если файл не может быть найден. Эта опция подавляет эту ошибку и не пытается передать файл. Это не влияет на последующие ошибки исчезнувшего файла, если файл изначально был обнаружен, а затем больше не существует.
"Официальный" способ игнорировать исчезнувший файл - использовать этот сценарий из официального репозитория исходных кодов rsync: https: //git.samba. org /? p = rsync.git; a = blob_plain; f = support / rsync-no-vanished; hb = HEAD
, что очень похоже на то, что сказали @kenorb и @ gilles-quenot.
Мой ответ может быть особым вариантом использования, но я считаю, что его стоит отметить, чтобы люди не потеряли данные, если они подпадают под этот случай.
Я получил это сообщение для нескольких файлов, выполняя обычное резервное копирование дисков через rsync.
Я выполнил проверку системы на диске, и оказалось, что есть проблемы с диском (размещение/повреждение файла и т. д. )и рекомендовал выполнить резервное копирование + восстановление + переформатирование.
Таким образом, перед тем, как полностью отключить или проигнорировать сообщение, было бы разумно просто выполнить проверку работоспособности диска на всякий случай.
Попробуйте смонтировать резервный диск с параметрами nosuid,nodev,nofail,x-gvfs-show
.
Не уверен, какую систему вы используете, но полагаю, что это связано с параметрами монтирования вашего диска. В Linux это происходит, если я устанавливаю параметры монтирования на User Session Default
. Это разрешается, когда я отключаю его, и rsync завершается без ошибок.
Используйте этот параметр:
--exclude-from="./exclude.ini"
чтобы поместить список в файл. В файле exclude.ini напишите что-то вроде:
Cache
cache2/*
*.lock
/temp
Где:
Помните, что если файловая система зависит -от регистра, вам, возможно, придется учитывать это.
rsync -a --exclude '/var/kunden/mail/*/*/tmp/' --exclude '/var/kunden/mail/*/*/*/tmp/' /var/kunden/ $SERVER/var_kunden/
? – rubo77 15.08.2013, 19:02/tmp/
в них, поскольку я записал это. Если Вы хотите быть более явными затем да, можно указать его, как Вы записали. – slm♦ 15.08.2013, 19:11--exclude='/tmp/'
исключает только названный каталогtmp
в корне копии. Исключить все названные подкаталогиtmp
где угодно использовать--exclude='**/tmp/'
. – Gilles 'SO- stop being evil' 16.08.2013, 01:16