5

Я пытаюсь перенести сервер Centos в новое окно с помощью rsync, и я запускаю эту команду на конечном сервере:

 rsync -auHxv –numeric-ids –exclude=/etc/fstab
 –exclude=/etc/sysconfig/network-scripts/* –exclude=/proc/*
 –exclude=/tmp/* –exclude=/sys/* –exclude=/dev/* –exclude=/mnt/*
 –exclude=/boot/* –exclude=/root/* root@1.2.3.4:/* /

И тогда я получаю эту ошибку:

Unexpected remote arg: root@1.2.3.4:/*
rsync error: syntax or usage error (code 1) at main.c(1201) [sender=3.0.6]

2 ответа2

5

Я только что получил похожую ошибку, и следующие вещи могут решить вашу проблему:

  • Убедитесь, что --exclude имеет два дефиса перед ним
  • Размещайте кавычки вокруг исключенных путей, например --exclude '/boot/*'

Ошибка вводит в заблуждение, потому что на самом деле речь идет не о параметре назначения, а о параметрах, предшествующих ему, имеющих неправильный синтаксис.

1

Вот совет: поместите слово echo перед командой. Затем вы увидите, как выглядит расширенная командная строка для программы.

В этом случае вы увидите, что параметры с * расширены и содержат несколько путей - не то, что вы хотели или думали, что набрали - что, по крайней мере, указывает вам правильное направление, чтобы решить проблему.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .