У меня есть две одинаково названные директории с похожими подкаталогами, и я хотел бы объединить содержимое одной в другую. Я пытаюсь использовать rsync для этого и обнаруживаю, что символические ссылки, похоже, были созданы в каталоге назначения, но затем исчезают при следующем доступе к каталогу (я хотел бы сохранить символические ссылки).
Пример (каталог назначения в настоящее время пуст):
Исходный каталог:
/tmp/dir_3
Целевой каталог:
/dir_1/dir_3
Я использую команду rsync:
rsync -av /tmp/dir_3 /dir_1
Вывод команды rsync, по-видимому, указывает на то, что символические ссылки выполняются, и если я перехожу в целевой каталог и сразу же выполняю команду tree
он показывает символические ссылки и правильное количество каталогов и файлов (то есть соответствует тому, что находится в целевом каталоге). Однако, во второй раз, когда я запускаю команду tree
символические ссылки исчезли, и я могу подтвердить это с помощью ls
.
Рассматриваемые символические ссылки немного хитры, но целиком связаны между подкаталогами в каталоге Source. Упрощенный пример:
/tmp/dir_3/data/33/22/bob
это ссылка на
../../../name/id
а также
/tmp/dir_3/name/id/bob
это ссылка на
../../data/33/22
Я также попытался добавить опцию -l
к команде rsync, но это, похоже, не имеет значения (и я бы не ожидал, что -a
будет копировать ссылки).
Есть идеи, что я делаю неправильно?