Утиліта rsync дозволяє передавати та синхронізувати файли між ПК та зовнішнім жорстким диском. Ви також можете використовувати його для надсилання файлів через локальну мережу на всі пристрої, але для цього сторона, яка отримує, повинна ввести правильний пароль. Однак є хитрість, яку ви можете використати, щоб покращити свої пристрої без використання паролів. Читайте далі, щоб дізнатися, як обійти пароль за допомогою команд SSH або SCP.
Також дивіться нашу статтю Як визначити швидкість вашого жорсткого диска або SSD
Як RSYNC без використання пароля
Ви можете налаштувати свою rsync через ssh, а потім можете використовувати її без пароля. Ця функція чудово підходить для планування завдань cron для автоматичного резервного копіювання при використанні rsync. Ось як можна обходити пароль.
По-перше, вам слід перевірити rsync над ssh під час використання наявного пароля.
Зробіть стандартний rsync, як ви робите весь час, щоб переконатися, що вас вимагають ввести свій пароль на віддаленому сервері. Скопіюйте деякі файли лише для того, щоб переконатися, що віддалений сервер працює.
Використовуйте цей приклад для синхронізації локальної folder/home/pies
із віддаленою folder/backup/pies
. Використовуйте серверну команду 192.168.188.15.
Після виконання цієї команди вам буде запропоновано ввести пароль свого облікового запису на віддаленому сервері: rsync -avz -e ssh /home/pies/ :/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/ :/backup/pies/
. Ви також можете автоматизувати цю резервну копію rsync та запланувати її за допомогою cron.
Інші практичні команди Rsync в Linux
Rsync або віддалена синхронізація можуть допомогти вам швидко зробити все, що включає копіювання та синхронізацію файлів віддалено. Ось кілька корисних команд, якими ви можете скористатися, щоб прискорити роботу при віддаленій роботі.
Копіювання та синхронізація файлів на комп’ютері
Команда нижче синхронізує один файл на вашому локальному комп’ютері з одного місця в інше. Скопіюйте файл під назвою backup.tar to /tmp/backups/ folder
щоб він працював.
]# 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 і ви хочете створити її автоматично.
Копіювання та синхронізація каталогів на комп’ютері
Наступна команда синхронізує або передасть усі файли з одного каталогу в інший на одному комп’ютері. Ось приклад: /root/rpmpkts
має кілька пакетів файлів rpm, і ви хочете скопіювати його в /tmp/backups/ folder
. Використовуйте таку команду:
]# 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
Скопіюйте та синхронізуйте файли та каталоги на / з сервера
Копіювання каталогу з локального сервера на віддалений сервер виконується за допомогою наступної команди:
]$ rsync -avz rpmpkgs/ :/home/
'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
Він передасть файли з папки "rpmpkgs" на потрібний віддалений сервер.
Коли ви хочете скопіювати файли з віддаленого сервера на локальну машину, використовуйте цю команду:
]# rsync -avzh :/home/tarunika/rpmpkgs /tmp/myrpms
'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 та віддалений сервер, корисно знати ці команди, оскільки вони можуть допомогти вам зробити роботу набагато швидше. Тепер ви можете скопіювати та синхронізувати файли за допомогою цих основних команд.