Как автоматически заархивировать каталог?

Я хочу сделать одностороннюю синхронизацию.

У меня есть Folder A на моем компьютере, который постоянно обновляется с контентом.
Другой Folder B используется для резервного копирования, который находится на внешнем жестком диске.

Теперь я ожидаю, что все, что присутствует в папке A, должно идти в папку B. Однако то, что присутствует в B, а НЕ в A "", НЕ будет скопировано в A "".

Короче говоря, папка резервной копии может копировать все из исходной папки, однако ничто не должно копироваться из папки резервной копии в исходную.

48
задан 14 October 2016 в 18:58

9 ответов

Звучит как идеальная задача для rsync

sudo rsync -az /path_to/A /path_to/B

-a режим архива (подразумевает рекурсивное копирование символических ссылок как символических ссылок, сохранение владельца, время модификации, группу, владельца, специальные файлы и файлы устройств)

-z сжимает данные

Если вы хотите удалить файлы, удаленные в A, из файлов в B, используйте параметр - удалить

Для получения дополнительной информации см .:

https://help.ubuntu.com/community / rsync

Вы можете запустить rsync из cron

sudo crontab -e

Добавить почасовую задачу

@hourly rsync /path_to/A /path_to/B

https://help.ubuntu.com/community/CronHowto

65
ответ дан 14 October 2016 в 18:58

Я бы посоветовал использовать для этой цели rsync. Rsync чрезвычайно быстрый, стабильный и универсальный. Хорошее введение можно найти на http://help.ubuntu.com/community/rsync

Если хотите, есть дополнительный графический интерфейс: grsync

 sudo rsync -azv --exclude 'dir1' /home/path/folderA/ /home/path/folderB

Приведенная выше команда будет копировать из папки A в папку B, за исключением dir1. Флаги:

-a preserves time stamps
-z is to enable compression
-v verbose

Доступно еще много параметров.

15
ответ дан 14 October 2016 в 18:58

Я всегда считал Unison очень полезным. У него есть текстовый или GUI-интерфейс, и довольно много различных опций, чтобы настроить его на то, что вы хотите (с небольшой возней). Первая синхронизация занимает довольно много времени, но после этого она великолепна. Вы можете заставить его синхронизировать в одну сторону, как хотите, но он получит это автоматически. Она также может удалять из резервной копии или нет по вашему выбору.

Вы также можете найти проблемы с разрешениями, которые поддерживаются в формате файла ubuntu, но, возможно, не на внешнем жестком диске (в зависимости от того, будет ли внешний жесткий диск использоваться в машине windows, это может быть хорошо), так что вы захотите синхронизировать без разрешений, которые потенциально возможны.

Как бы то ни было, хорошо то, что в учебнике достаточно просто настроить его один раз, а затем это будет GUI-интерфейс, когда вы захотите это сделать.

Вот некоторая информация об этом: http://www.ubuntugeek.com/unison-file-synchronization-tool.html

А вот учебник: http://www.cis.upenn.edu/~bcpierce/unison/download/releases/stable/unison-manual.html#tutorial

8
ответ дан 14 October 2016 в 18:58

Я согласен с другими ответами, вы можете использовать rsync в Терминале или интерфейсах Grsync , luckyBackup , Conduit или знаменитый Unison .

Еще одно замечательное приложение - Krusader (двухпанельный файловый менеджер для KDE), в меню «Инструменты» вы можете найти " Syncronize Directories », очень полезен.

В последнем случае вы можете установить Wine и установить другой отличный двухпанельный файловый менеджер, например Total Commander .

В любом случае у вас их много опций, и все они присутствуют в Центре программного обеспечения Ubuntu.

2
ответ дан 14 October 2016 в 18:58

Я бы рекомендую Conduit для простой синхронизации. Доступен программный комплекс. Он делает именно то, что вы ищете

1
ответ дан 14 October 2016 в 18:58
rsync -avPr --ignore-existing /home/username/Research/ /path/to/other/folder/on/hdd/

Это позволит синхронизировать и скопировать только те данные, которых нет в /другой/папке/on/hdd/

4
ответ дан 14 October 2016 в 18:58

Существует довольно удобный инструмент оболочки под названием rsnapshot - http://www.rsnapshot.org/ - утилита моментального снимка файловой системы для создания резервных копий локальных и удаленных систем. который использует rsync и жесткие ссылки, что позволяет мгновенно хранить несколько полных резервных копий файловой системы. Просто выполните sudo apt-get install rsnapshot и проверьте info rsnapshot

0
ответ дан 14 October 2016 в 18:58

Вы можете синхронизировать файлы внутри двух директорий следующим образом:

rsync -rv /path/to/directory1/ /path/to/directory2

Выполнение rsync -rv / path / to / directory1 / path / to / directory2 создаст directory1 внутри каталог2 , например / путь / к / каталог2 / каталог1 / [файлы]

Вы можете выполнить пробный запуск, используя переключатель -n , например этот rsync - rnv / path / to / directory1 / / path / to / directory2

Ссылка: https://www.digitalocean.com/community/tutorials/how-to-use-rsync-to-sync-local- и-удаленные-каталоги-on-a-vps

0
ответ дан 14 October 2016 в 18:58

Если вам нужен графический интерфейс в системе с широкими возможностями настройки, дайте FreeFileSync попытка. См., Например: http://linuxnorth.wordpress.com/2011/11/29/file-and-folder-synchronization/ В частности,вам нужна опция «Обновить» для синхронизации, которая будет «Копировать новые или обновленные файлы в правую папку», то есть копировать из левой папки в правую папку в двухоконном отображении.

0
ответ дан 14 October 2016 в 18:58

Другие вопросы по тегам:

Похожие вопросы: