Утилита rsync (удаленная синхронизация) копирует обычную иерархию файлов или каталогов локально или из локальной системы в другую систему в сети или из нее.

По умолчанию эта утилита использует OpenSSH для передачи файлов и тот же механизм аутентификации, что и OpenSSH; следовательно, она обеспечивает ту же безопасность, что и OpenSSH.

Утилита rsync запрашивает пароль, когда он ему нужен.

$ rsync -avz /data root@srv::files
Password:

Хотя иногда вы не хотите, чтобы rsync запрашивал пароль.

Например, если вы хотите, чтобы задание rsync было запланировано в crontab, необходимо выполнить операцию rsync без пароля.

Существует два способа использования rsync без запроса пароля:

1. используйте переменную окружения RSYNC_PASSWORD
2. –password-file option.

1. Метод с использованием переменной среды

1. В этом методе мы устанавливаем переменную окружения RSYNC_PASSWORD перед использованием команды rsync.

Например:

$ export RSYNC_PASSWORD=secret

Здесь «secret» — используемый пароль.

Теперь вы можете использовать команду rsync, и она больше не должна запрашивать пароль.

$ rsync -avz /data root@srv::files

Вы также можете экспортировать переменную RSYNC_PASSWORD в скрипт, если хотите.

Но убедитесь, что скрипт доступен для чтения только вам, а не кому-либо еще.

2. Другой способ — указать переменную окружения RSYNC_PASSWORD в самой команде rsync.

Например:

$ RSYNC_PASSWORD=secret rsync -avz /data root@srv::files

2. Метод с использованием опции —password-file

1. В этом методе мы создаем файл паролей, как показано ниже.

Убедитесь, что файл паролей не доступен для чтения всем пользователям (имеет разрешение 600).

$ echo passw0rd > user1.secret
$ chmod 600 user1.secret

2. Теперь запустите команду rsync с параметром —password-file и укажите файл пароля, который вы только что создали.

$ rsync -avz --password-file user1.secret /data root@srv::files

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

# man rsync
Please follow and like us:

Добавить комментарий