Выполните rsync, следуя сим-ссылкам

67

У меня есть каталог, который содержит символические ссылки на другие каталоги, расположенные на разных носителях в моей системе:

/opt/lun1/2011
/opt/lun1/2010
/opt/lun2/2009
/opt/lun2/2008
/opt/lun3/2007

Но символические ссылки отображаются как:

/files/2011
/files/2010
/files/2009
/files/2008
/files/2007

Как я могу выполнить rsyncследующее по символическим ссылкам?

например:

rsync -XXX /files/ user@server:/files/

заманивать
источник

Ответы:

98

-LФлаг Rsync будет синхронизировать содержимое файлов или каталогов , связанных, а не символической ссылки.

Безумный Шляпник
источник
1
Когда я делаю это, все символические ссылки получателя удаляются, и мой отправитель начинает повторную отправку файлов.
ensnare
Разве это не то, что вы хотите? Я думал, что вы хотите иметь реальные файлы на принимающей стороне, а не только символические ссылки. Вы имеете в виду, что вы хотите, чтобы символические ссылки копировались как символические ссылки, но автоматически переписывались, чтобы указывать на «правильное» место в принимающей системе? Если так, то это не то, что обычно подразумевается под «rsync, который следует за символическими ссылками».
MadHatter,
4
Привет - это каталоги. Я получил это для работы с флагом -K.
ensnare
4
Я уверен, что это делает меня более глупым ..
Джон Хант
4
Чтобы уточнить, -LKхотите ли вы следовать как символическим ссылкам, так и каталогам
Mahn
17

Просто столкнулся с этой проблемой. И если вы хотите, чтобы rsync рассматривал символьные каталоги как каталоги, вам нужна Kопция

rsync -K /files/ user@server:/files/

Jmeyering
источник
Вы также можете добавить опцию --copy-unsafe-links
Грегори Магаршак
2

Вам нужны оба, -L и -Kесли у вас есть символические ссылки с обеих сторон, например, вы уже сделали 1-ю rsync и хотите обновить резервную копию с помощью rsync.

    -L, --copy-links            transform symlink into referent file/dir
    -K, --keep-dirlinks         treat symlinked dir on receiver as dir

В таких случаях, если вы используете только -L, символические ссылки на стороне получателя будут удалены, и будет создан новый реальный каталог.

HongboZhu
источник