синхронизировать файлы с удаленного сервера с помощью rsync

Вам нужно сделать одно из двух:

  1. Добавить строку «shebang» в ваш сценарий. В первой строке должно быть написано: #! Usr / bin / env php В этом случае убедитесь, что ваш сценарий PHP отмечен как исполняемый файл .

  2. Попросите cron вызвать интерпретатор PHP с вашим скриптом в качестве аргумента. В этом случае запись crontab будет выглядеть так: * * * * * / usr / bin / php /path/to/script.php

. Вам необходимо принять все обычные меры предосторожности относительно cron задания: у них не так много в переменной окружения PATH . У них нет вашего .profile (или чего-то еще), поэтому переменных окружения, которые обычно есть в вашей оболочке, нет. Процесс, запущенный crond , вероятно, имеет текущий рабочий каталог / .

0
02.04.2019, 16:37
2 ответа
rsync -ai user2@server2:/var/www/html/hello/ local/directory/hello

Это позволит подключиться с использованием SSH к server2как пользователь user2. Этот пользователь должен иметь доступ ко всем файлам и каталогам, которые будут скопированы. Содержимое каталога /var/www/html/hello/будет реплицировано в local/directory/helloна локальном компьютере.

Обратите внимание на завершающий /путь к исходному каталогу. Без этого вы бы поместили файлы и каталоги в каталог с именем helloв папке назначения.

Если вы добавите --delete, вы дополнительно удалите локальные файлы в целевом каталоге, недоступные на исходной стороне.

Опция -iвключает детализацию передаваемых вещей. Некоторым нравится использовать -vвместо -i. Опция -a— это опция, которая максимально сохраняет разрешения и другие метаданные -, а также включает рекурсивную репликацию файлов в подкаталогах.

0
28.01.2020, 03:52

rsync ведет себя как простая программа копирования. Таким образом, удаленная синхронизация похожа на (без дополнительных опций, таких как обращение или разрешения...)

rsync remoteuser@remoteserver:/var/www/html/hello/* /to/local/folder/

Это скопирует удаленные файлы -, а не папки, в вашу локальную папку.

Используйте параметры-avz для архивирования своего рода резервной копии (включите разрешения и т. д.):

rsync -avz remoteSource localDestination

Дополнительные параметры см. на странице руководства...

Редактировать 1:

Пожалуйста, обратите внимание на первый комментарий от kusalananda об использовании хвоста *в исходной папке.

0
28.01.2020, 03:52

Теги

Похожие вопросы