Какой самый простой способ однонаправленной инкрементальной синхронизации папки, присутствующей в системе Linux.
+1 за использование командной строки. +2 за неиспользование rsync (похоже, у меня проблемы в моей системе.)
Какие именно у вас проблемы с rsync?
innaM 15 лет назад
3
Поскольку `rsync`, скорее всего, самый простой ответ, объясните, какие у вас проблемы с этим. (Проблемы могут перетекать в любое другое решение.)
Telemachus 15 лет назад
5
Примечание: Для двунаправленной синхронизации, вы можете использовать в унисон, а также ющий .
+1, но это был только частичный ответ для меня. Если вам нужно использовать `rsync` поверх ssh, используйте` rsync -uav --delete -e ssh remoteuser @ remotehost: / remote / dir / this / dir / `
zelanix 10 лет назад
0
7
Robert Munteanu
csync - это синхронизатор файлов, специально разработанный для вас, обычного пользователя.
csync - это библиотека, которая по умолчанию поставляется с клиентом командной строки. Это сервер-менее и позволяет синхронизацию либо через sftpили samba.
Команда `csync` предоставляется пакетом ubuntu` csync-owncloud`. (`sudo apt-get install csync-owncloud`` libcsync-plugin-sftp libcsync-plugin-smb`, если вы хотите их тоже)
ThorSummoner 9 лет назад
0
Таким образом, выполняется одноразовая синхронизация по требованию. Я не нашел никакой информации о том, как использовать это для мониторинга и постоянной синхронизации каталога.
ThorSummoner 9 лет назад
0
2
nik
Вот как я могу сделать однонаправленную синхронизацию с голыми инструментами.
В начале, tar весь набор файлов и скопируйте их в пункт назначения. Также установите маркер в базовом каталоге.
touch /Source/base/directory/last-sync-time.txt
Теперь мы хотим продолжать синхронизацию от источника к месту назначения.
В следующий временной интервал для синхронизации вперед (от источника к месту назначения),
# The backup script cd /Source/base/directory tar cfj -N ./last-sync-time.txt backup.tar.bz2 . scp backup.tar.bz2 user@backup-server:/Backup/Directory/ touch /Source/base/directory/last-sync-time.txt rm -f backup.tar.bz2
-N ./filenameГоворит деготь архивировать только файлы, измененные или созданные после filenameмодифицировали / создан.
Использование локальной ссылки на время подтверждает, что вы не ошиблись; если по какой-то причине резервная копия не была взята, следующая будет накапливаться
Вы можете настроить этот скрипт как запись cronjob на компьютере-источнике.
Также при условии, что вы можете получить доступ к backup-serverвсякий раз, когда этот скрипт выпущен.
Чтобы быть более безопасным, вы можете добавить проверки, подтверждающие, что резервная копия была сохранена, и затем выполнить touchкоманду
Вы также можете добавить команды для расширения резервных копий, накладывая их поверх предыдущих в точке назначения; Или сохраняйте пошаговые tar.bz2архивы.
0
umetnic
I Use this short script for monitoring and continually synchronizing a directory with remote sftp folder;
#!/bin/sh dir1=/home/user/folder while inotifywait -qqre modify "$dir1"; do csync /home/user/folder sftp://remoteuser:remotepass@remoteaddress:remoteport/remotefolderpath done