Утилита rsync позволяет передавать и синхронизировать файлы между ПК и внешним жестким диском. Вы также можете использовать ее для передачи файлов по локальной сети на все устройства, но для этого принимающая сторона должна ввести правильный пароль. Однако есть трюк, который можно использовать, чтобы получить rsynced без использования паролей. Читайте далее, чтобы узнать, как обойти пароль с помощью команд SSH или SCP.
Содержание
Как выполнить RSYNC без пароля
Вы можете настроить rsync через ssh и затем использовать его без пароля. Эта функция отлично подходит для планирования заданий cron для автоматического резервного копирования при использовании rsync. Вот как можно обойти пароль.
Сначала нужно протестировать rsync через ssh, используя существующий пароль.
Сделайте стандартный rsync, как вы это делаете всегда, чтобы убедиться, что вас попросят ввести пароль на удаленном сервере. Скопируйте несколько файлов, чтобы убедиться, что удаленный сервер работает.
Используйте этот пример для синхронизации локального folder/home/pies
с удаленным folder/backup/pies
. Используйте команду 192.168.188.15 server.
После выполнения этой команды вам будет предложено ввести пароль вашей учетной записи на удаленном сервере: rsync -avz -e ssh /home/pies/ [email protected]:/backup/pies/
Следующим шагом будет настройка ssh, чтобы пропустить часть, где он запрашивает ваш пароль. Используйте команду ssh-keygen на локальном сервере для создания закрытого и открытого ключей. Используйте следующую команду:
$ ssh-keygen
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
ПРИМЕЧАНИЕ: После того, как вам будет предложено ввести ключевую фразу, просто оставьте раздел пустым и нажмите Enter.
Копируйте открытый ключ на удаленный хост с помощью команды ssh-copy-id
. Введите следующую команду: ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.188.15
Вам будет предложено ввести пароль на удаленном хосте, и вам нужно будет скопировать открытый ключ в нужное место.
Теперь, когда все настроено, вы готовы к rsync без пароля. Используйте эту команду: ssh 192.168.188.15
для rsync без ввода пароля. Вот rsync, который вы должны использовать: rsync -avz -e ssh /home/pies/ [email protected]:/backup/pies/
. Вы также можете автоматизировать это резервное копирование rsync и запланировать его с помощью cron.
Другие практические команды Rsync в Linux
Rsync или Remote Sync может помочь вам сделать многое быстро, и это включает копирование и синхронизацию файлов удаленно. Вот несколько полезных команд, которые вы можете использовать для ускорения работы при удаленной работе.
Копирование и синхронизация файлов на компьютере
Команда ниже синхронизирует один файл на вашем локальном компьютере из одного места в другое. Для ее выполнения скопируйте файл с именем backup.tar to /tmp/backups/ folder
.
[root@tecmint]# rsync -zvh backup.tar /tmp/backups/
created directory /tmp/backups
backup.tar
sent 14.71M bytesreceived 31 bytes3.27M bytes/sec
total size is 16.18Mspeedup is 1.10
Приведенный выше пример предназначен для ситуаций, когда папка/директория назначения еще не существует в rsync и вы хотите создать ее автоматически.
Copy and Sync Directories on a Computer
Следующая команда синхронизирует или переносит все файлы из одной директории в другую на том же компьютере. Вот пример: /root/rpmpkts
имеет некоторые файлы пакета rpm, и вы хотите скопировать их на /tmp/backups/ folder
. Используйте следующую команду:
[root@tecmint]# rsync -avzh /root/rpmpkgs /tmp/backups/
sending incremental file list
rpmpkgs/
rpmpkgs/httpd-2.2.3-82.el5.centos.i386.rpm
rpmpkgs/mod_ssl-2.2.3-82.el5.centos.i386.rpm
rpmpkgs/nagios-3.5.0.tar.gz
rpmpkgs/nagios-plugins-1.4.16.tar.gz
sent 4.99M bytesreceived 92 bytes3.33M bytes/sec
total size is 4.99Mspeedup is 1.00
Copy and Sync Files and Directories to/from a Server
Copying a directory from the local server to a remote server is done by using the following command:
[root@tecmint]$ rsync -avz rpmpkgs/ [email protected]:/home/
[email protected]'s password:
sending incremental file list
./
httpd-2.2.3-82.el5.centos.i386.rpm
mod_ssl-2.2.3-82.el5.centos.i386.rpm
nagios-3.5.0.tar.gz
nagios-plugins-1.4.16.tar.gz
sent 4993369 bytesreceived 91 bytes399476.80 bytes/sec
total size is 4991313speedup is 1.00
It will transfer the files from «rpmpkgs» folder to the remote server you want.
Когда вы хотите скопировать файлы с удаленного сервера на локальную машину, используйте следующую команду:
[root@tecmint]# rsync -avzh [email protected]:/home/tarunika/rpmpkgs /tmp/myrpms
[email protected]'s password:
receiving incremental file list
created directory /tmp/myrpms
rpmpkgs/
rpmpkgs/httpd-2.2.3-82.el5.centos.i386.rpm
rpmpkgs/mod_ssl-2.2.3-82.el5.centos.i386.rpm
rpmpkgs/nagios-3.5.0.tar.gz
rpmpkgs/nagios-plugins-1.4.16.tar.gz
sent 91 bytesreceived 4.99M bytes322.16K bytes/sec
total size is 4.99Mspeedup is 1.00
Вы можете использовать ее для синхронизации удаленного файла или каталога и копирования его на локальную машину.
Обойдите пароль и Rsync в любом случае
Если вы часто используете Linux и удаленный сервер, полезно знать эти команды, потому что они помогут вам сделать все гораздо быстрее. Теперь вы можете копировать и синхронизировать файлы с помощью этих основных команд.
YouTube видео: Как использовать Rsync без пароля
Вопросы и ответы по теме: “Как использовать Rsync без пароля”
Как запустить rsync?
ЗАПУСК RSYNC СЕРВЕРАrsync-сервер конфигурируется с помощью специального файла, которым по умолчанию выбирается /etc/rsyncd. conf, кроме тех случаев, когда rsync запускается поверх удаленной оболочки и не от root. В этом случае выбирается rsyncd. conf из текущего каталога на удаленной машине (обычно $HOME).Сохраненная копия
Как работает rsync?
Rsync использует алгоритм сжатия данных Deflate c помощью модифицированной библиотеки zlib, поэтому пропускная способность каналов связи используется экономичнее в сравнении с утилитой SCP. Вместе с файлами или каталогами, Rsync реплицирует также и разрешения на них.Сохраненная копия
На каком порту работает rsync?
TCP-порт 873rsyncd — демон, реализующий протокол rsync. По умолчанию использует TCP-порт 873.
Какой возможностью обладает инструмент rsync?
Использование хитроумного алгоритма, позволяет rsync передавать только изменения в файлах, причем для выявления изменений ему не надо сравнивать два файла. Кроме того, rsync производит сжатие на лету, позволяя тем самым передавать файлы с максимальной эффективностью.
Как проверить установлен ли rsync?
Проверка: Проверьте установлен ли rsync: выполните команду в ssh: whereis rsync если ответом будет /usr/local/bin/rsync или /usr/bin/rsync то rsync у вас есть, вам его устанавливать не нужно.
Как синхронизировать время на линукс?
Наиболее распространенный метод синхронизации системного времени по сети на десктопах или серверах Linux - выполнение команды ntpdate, которая может установить системное время с сервера времени NTP. В этом случае а компьютере, на котором введена команда ntpdate, должен быть установлен демон ntpd.