Программы
Как использовать Rsync – утилиту для синхронизации файлов

Как использовать Rsync – утилиту для синхронизации файлов

Как копировать файлы и делать бекапы с утилитой rsync. Стабильная и давно вылизанная до блеска утилита синхронизации файлов.

Rsync – это Unix утилита для синхронизации файлов и директорий. Если есть два места, где лежат файлы – rsync оптимально выполнит их синхронизацию – при необходимости используется кодирование с сжатие данных.

В отличии от многих других средств синхронизации файлов, rsync работает в одном tcp-потоке на каждое направление, а не создаёт новое при каждом файле (что замедляет выполнение). Rsync может рекурсивно зеркалировать директории, используя сжатие для ещё более быстрой передачи данных.

Базовый пример использования:

rsync -avz ./src ./dest

– синхронизировать файлы из директории ./src в директорию ./dest архивируя со сжатием и подробным выводом о синхронизируемых файлах.

Опции передачи файлов rsync

-z, --compress  # Использовать сжатие при передаче
-n, --dry-run  # Без реального копирования – полезно для проверки

Опции вывода rsync

-q, --quiet  # Без вывода "лишней" информации
-v, --verbose   # Подробный режим вывода. Показывать каждый файл
-h, --human-readable  # Человеко-читаемый режим
    --progress  # Выводить информацию о процессе передачи файлов

Пропускаем ненужные файлы в rsync

-u, --update     # пропустить обновлённые файлы
-c, --checksum   # пропускать файлы с неизменившимся содержимым

Опции бекапов в rsync

-b, --backup           # бекапить с суффиком
    --suffix=SUFFIX    # по умолчанию ~ без --backup-dir
    --backup-dir=DIR

Опции выбора файлов

--exclude=PATTERN  # Исключить файлы по шаблону
--include=PATTERN  # Подключить файлы по шаблону
--exclude-from=FILE
--include-from=FILE
--files-from=FILE    # прочитать имена файлов из FILE

Опции архивации в Rsync

-a, --archive    # Архивировать (-rlptgoD)
-r, --recursive  # Рекурсивно
-l, --links      # Копировать символьне ссылки как ссылки
-p, --perms      # Предустановленные права доступа
-t, --times      # Предустановленное время
-g, --group      # Группа владельцев
-o, --owner      # Владелец
-D               # --devices --specials
--delete         # Удалять дополнительные файлы

Rsync – хорошо отлаженная и мощная утилита для синхронизации файлов. Она очень полезна, когда дело доходит до автоматической синхронизации. Да даже когда нужно скопировать кучу файлов – и то rsync прекрасное средство!

Ни раз видел, как вместо навороченных backup систем бородатые админы просто добавляли команду rsync в cron. И представьте, работало это ни разу не хуже! Так что если нужно позаботиться о репликации библиотеки статических файлов – вы знаете, чем воспользоваться!

Также может быть вам интересно:

Как в Linux посмотреть конфигурацию / параметры компьютера

В Linux множество средств анализа и получения информации о системе, однако не все программы широко известны. Особенно - новичкам!

Читать »

Как добавить Crontab задачу

Cron – полезный инструмент администрирования и запланированного выполнения программ; В заметке формат Cron-файла, команды для просмотра и добавления

Читать »
Фото Как на Bash посчитать число строк в проекте (директории)

Как на Bash посчитать число строк в проекте (директории)

Ниже будет представлен однострочник, решающий данную задачу на Bash + пошаговое описание его работы.

Фото И снова sudo, и снова "решето"

И снова sudo, и снова "решето"

В утилите sudo была исправлена очередная уязвимость.

Фото Google прекращает поддержку сторонних приложений в API Chrome-like

Google прекращает поддержку сторонних приложений в API Chrome-like

Гугл отключает всех пользователей Chrome-зависимых API. Зачем? К чему это приведёт?

Фото Как удалить локальную или удалённую ветку в Git

Как удалить локальную или удалённую ветку в Git

Git - распределённая система контроля версий, где ветки(branch) используются крайне активно. На каждую задачу - отдельная ветка - вот хороший тон!

Фото Команда grep – полезные ключи и примеры использования

Команда grep – полезные ключи и примеры использования

У команды "grep" довольно много различных особенностей. особенно, если учесть, что с английского это "решето" – а что может войти в решето , не факт что выйдет!

Фото Как создать неизменяемый файл в Linux / MacOS / FreeBSD

Как создать неизменяемый файл в Linux / MacOS / FreeBSD

Само собой, root может всё (если введёт пару команд), однако, это вполне легальный способ запретить изменение файла.

Фото Как удалить все Docker образы и контейнеры

Как удалить все Docker образы и контейнеры

Не всегда нужно удалять всё, но объяснение данного "рецепта" объяснит как в целом удалять образы и контейнеры.

Фото Социальная сеть – фильм о создании Facebook

Социальная сеть – фильм о создании Facebook

Фильм о создании и создателях самой большой социальной сети в мире. Марк Цукерберг – гений программирования или же обмана?