ee /etc/csh.cshrc set prompt = "%{^[[40;32;1m%}`whoami`@%m:%{^[[40;33;1m%}%~ %#%{^[[40;0;0m% } " ====== Rsync ====== 192.168.0.1 = master 192.168.0.2 = slave1 192.168.0.3 = slave2 ====== 192.168.0.1 = master ====== Завдання – синхронізація файлів віртуальних хостів. Використовуватимемо rsync у зв'язці з ssh. pkg install rsync Для цього на першому сервері (з якого зливатимемо бекапи) правимо вайл конфіга sshd ee /etc/ssh/sshd_config і в кінець додамо: Match Host 192.168.1.*,172.0.0.1/27 PermitRootLogin yes # without-password PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys HostbasedAuthentication не PermitEmptyPasswords no цим кодом, дозволяємо вхід під рутом тільки для описаних хостів у перевірці (можна вказати як хост так і мережу, розділяти комою без пробілів) перед перезапуском сервісу sshd, обов'язково перевіряємо конфіг на помилки командою "**sshd -t**", і якщо висновок порожній, значить помилок немає і можна перезапустити сервіс sshd: service sshd restart перевіряємо доступ по ssh з дозволених та інших хостів, і якщо пускає тільки з дозволених, значить все ок. mkdir /root/.ssh chmod 0700 /root/.ssh touch /root/.ssh/authorized_keys chmod 0644 /root/.ssh/authorized_keys ====== 192.168.0.3 = slave1 ====== pkg install rsync mkdir /root/.ssh chmod 0700 /root/.ssh ssh-keygen -t rsa -b 4096 -P "" -f /root/.ssh/root-key cat /root/.ssh/root-key.pub вміст файлу /root/.ssh/root-key.pub потрібно записати у файл /root/.ssh/authorized_keys на сервері якого буде коннектиться (192.168.0.1 = master) Далі на другому сервері створюємо, наприклад, /root/scripts/ файл, назвемо його sync.sh: /usr/local/bin/rsync -e 'ssh -l root -i /root/.ssh/root-key' --progress -lzuogthvr --compress-level=9 --delete-after root@192.168.0.1: /opt/vhosts/sitename.ru/ /opt/vhosts/sitename.ru/ >> /root/logs/sync.sitename sitename.ru - ім'я віртуального хоста Дозволимо запуск: chmod +x /root/scripts/sync.sh Пропишемо в /etc/crontab: 0 */1 * * * root /root/scripts/sync.sh >/dev/null 2>&1 У моєму прикладі синхронізація виконується щогодини. [[https://wiki.enchtex.info/tools/console/rsync?do=source]]