Как поднять среду Rsync на WSL, чтобы отразить изменения с ПК на VPS?

попробуйте dvd ogmrip, вы можете выбрать главы, которые вы хотите

2
задан 12 May 2017 в 21:05

3 ответа

Сначала убедитесь, что вы можете подключиться через SSH от удаленной машины к локальной. Для этого вы должны скопировать свой секретный ключ в каталог /root/.ssh, и он имеет достаточно ограничений - sudo chmod 400 /root/.ssh/id_rsa. Также вы можете создать файл /root/.ssh/config следующим образом:

$ sudo cat /root/.ssh/config

Host my-localhost-name
    HostName 77.71.11.10
    IdentityFile ~/.ssh/id_rsa
    User my-user-name
    Port 22122

Теперь вы можете использовать rsync с удаленной машины следующим образом:

sudo rsync -avzp -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress my-localhost-name:/var/www/<my-folder>/ /var/www/<my-folder>/

В случае, если вы 't есть файл /root/.ssh/config, команда должна быть:

sudo rsync -avzp -e "ssh -i /root/.ssh/id_rsa -p 22122 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress my-user-name@77.71.11.10:/var/www/<my-folder>/ /var/www/<my-folder>/

Где:

-a, --archive - это быстрый способ сказать, что вы хотите рекурсии и хотите сохраняют почти все (с -H - заметное упущение). Единственное исключение из вышеупомянутой эквивалентности - это когда указано -files-from, и в этом случае -r не подразумевается. -v, --verbose увеличивает объем информации, которую вы даете во время передачи. По умолчанию rsync работает молча. -z, --compress - сжимать данные файла во время передачи. -p, --perms приводит к тому, что принимающий rsync устанавливает разрешения назначения одинаковыми с разрешениями источника. (См. Также опцию -chmod для способа изменить то, что rsync считает исходными разрешениями.) [F18], --rsh=COMMAND позволяет вам выбрать альтернативную программу удаленной оболочки, которая будет использоваться для связи между локальной и удаленной копиями rsync ... Также вы можете добавить дополнительные опции к команде ssh. Опции, используемые в приведенном выше примере -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null, полезны, чтобы держать Rsync тихим и не запрашивать при каждом подключении к новому серверу. --progress показывают прогресс во время передачи. Конечная косая черта в источнике изменяет это поведение, чтобы избежать создания дополнительного уровня каталога в пункте назначения. Вы можете думать о конце / источника, что означает «скопировать содержимое этого каталога», а не «копировать каталог по имени», но в обоих случаях атрибуты содержащего каталога переносятся в содержащийся каталог назначение. Другими словами, каждая из следующих команд копирует файлы таким же образом, включая их настройку атрибутов /dest/foo:
rsync -av /src/foo /dest
rsync -av /src/foo/ /dest/foo

Источники:

-a, --archive - это быстрый способ сказать, что вы хотите рекурсии и хотите сохранить почти все (с -H - заметное упущение). Единственное исключение из вышеупомянутой эквивалентности - это когда указано -files-from, и в этом случае -r не подразумевается. Документация Ubuntu: SSH / OpenSSH / Keys -v, --verbose увеличивает объем информации, которую вы предоставили во время передачи. По умолчанию rsync работает тихо.
3
ответ дан 22 May 2018 в 22:40

Сначала убедитесь, что вы можете подключиться через SSH от удаленной машины к локальной. Для этого вы должны скопировать свой секретный ключ в каталог /root/.ssh, и он имеет достаточно ограничений - sudo chmod 400 /root/.ssh/id_rsa. Также вы можете создать файл /root/.ssh/config следующим образом:

$ sudo cat /root/.ssh/config Host my-localhost-name HostName 77.71.11.10 IdentityFile ~/.ssh/id_rsa User my-user-name Port 22122

Теперь вы можете использовать rsync с удаленной машины следующим образом:

sudo rsync -avzp -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress my-localhost-name:/var/www/<my-folder>/ /var/www/<my-folder>/

В случае, если вы 't есть файл /root/.ssh/config, команда должна быть:

sudo rsync -avzp -e "ssh -i /root/.ssh/id_rsa -p 22122 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress my-user-name@77.71.11.10:/var/www/<my-folder>/ /var/www/<my-folder>/

Где:

-a, --archive - это быстрый способ сказать, что вы хотите рекурсии и хотите сохраняют почти все (с -H - заметное упущение). Единственное исключение из вышеупомянутой эквивалентности - это когда указано -files-from, и в этом случае -r не подразумевается. -v, --verbose увеличивает объем информации, которую вы даете во время передачи. По умолчанию rsync работает молча. -z, --compress - сжимать данные файла во время передачи. -p, --perms приводит к тому, что принимающий rsync устанавливает разрешения назначения одинаковыми с разрешениями источника. (См. Также опцию -chmod для способа изменить то, что rsync считает исходными разрешениями.) [F18], --rsh=COMMAND позволяет вам выбрать альтернативную программу удаленной оболочки, которая будет использоваться для связи между локальной и удаленной копиями rsync ... Также вы можете добавить дополнительные опции к команде ssh. Опции, используемые в приведенном выше примере -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null, полезны, чтобы держать Rsync тихим и не запрашивать при каждом подключении к новому серверу. --progress показывают прогресс во время передачи. Конечная косая черта в источнике изменяет это поведение, чтобы избежать создания дополнительного уровня каталога в пункте назначения. Вы можете думать о конце / источника, что означает «скопировать содержимое этого каталога», а не «копировать каталог по имени», но в обоих случаях атрибуты содержащего каталога переносятся в содержащийся каталог назначение. Другими словами, каждая из следующих команд копирует файлы таким же образом, включая их настройку атрибутов /dest/foo: rsync -av /src/foo /dest rsync -av /src/foo/ /dest/foo

Источники:

-a, --archive - это быстрый способ сказать, что вы хотите рекурсии и хотите сохранить почти все (с -H - заметное упущение). Единственное исключение из вышеупомянутой эквивалентности - это когда указано -files-from, и в этом случае -r не подразумевается. Документация Ubuntu: SSH / OpenSSH / Keys -v, --verbose увеличивает объем информации, которую вы предоставили во время передачи. По умолчанию rsync работает тихо.
3
ответ дан 18 July 2018 в 13:24

Сначала убедитесь, что вы можете подключиться через SSH от удаленной машины к локальной. Для этого вы должны скопировать свой секретный ключ в каталог /root/.ssh, и он имеет достаточно ограничений - sudo chmod 400 /root/.ssh/id_rsa. Также вы можете создать файл /root/.ssh/config следующим образом:

$ sudo cat /root/.ssh/config Host my-localhost-name HostName 77.71.11.10 IdentityFile ~/.ssh/id_rsa User my-user-name Port 22122

Теперь вы можете использовать rsync с удаленной машины следующим образом:

sudo rsync -avzp -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress my-localhost-name:/var/www/<my-folder>/ /var/www/<my-folder>/

В случае, если вы 't есть файл /root/.ssh/config, команда должна быть:

sudo rsync -avzp -e "ssh -i /root/.ssh/id_rsa -p 22122 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress my-user-name@77.71.11.10:/var/www/<my-folder>/ /var/www/<my-folder>/

Где:

-a, --archive - это быстрый способ сказать, что вы хотите рекурсии и хотите сохраняют почти все (с -H - заметное упущение). Единственное исключение из вышеупомянутой эквивалентности - это когда указано -files-from, и в этом случае -r не подразумевается. -v, --verbose увеличивает объем информации, которую вы даете во время передачи. По умолчанию rsync работает молча. -z, --compress - сжимать данные файла во время передачи. -p, --perms приводит к тому, что принимающий rsync устанавливает разрешения назначения одинаковыми с разрешениями источника. (См. Также опцию -chmod для способа изменить то, что rsync считает исходными разрешениями.) [F18], --rsh=COMMAND позволяет вам выбрать альтернативную программу удаленной оболочки, которая будет использоваться для связи между локальной и удаленной копиями rsync ... Также вы можете добавить дополнительные опции к команде ssh. Опции, используемые в приведенном выше примере -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null, полезны, чтобы держать Rsync тихим и не запрашивать при каждом подключении к новому серверу. --progress показывают прогресс во время передачи. Конечная косая черта в источнике изменяет это поведение, чтобы избежать создания дополнительного уровня каталога в пункте назначения. Вы можете думать о конце / источника, что означает «скопировать содержимое этого каталога», а не «копировать каталог по имени», но в обоих случаях атрибуты содержащего каталога переносятся в содержащийся каталог назначение. Другими словами, каждая из следующих команд копирует файлы таким же образом, включая их настройку атрибутов /dest/foo: rsync -av /src/foo /dest rsync -av /src/foo/ /dest/foo

Источники:

-a, --archive - это быстрый способ сказать, что вы хотите рекурсии и хотите сохранить почти все (с -H - заметное упущение). Единственное исключение из вышеупомянутой эквивалентности - это когда указано -files-from, и в этом случае -r не подразумевается. Документация Ubuntu: SSH / OpenSSH / Keys -v, --verbose увеличивает объем информации, которую вы предоставили во время передачи. По умолчанию rsync работает тихо.
3
ответ дан 24 July 2018 в 20:10

Другие вопросы по тегам:

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