Назад | Перейти на главную страницу

Как в Linux копировать файлы из одной файловой системы в другую (обе gpfs) и сохранять жесткие ссылки?

У меня есть каталог с огромными файлами и несколько каталогов, в которых есть жесткие ссылки на эти огромные файлы. Как скопировать файлы из одной файловой системы в другую и сохранить жесткие ссылки?

rsync может сохранять жесткие связи с -H вариант.

tar сохраняет ссылки (как символьные, так и жесткие). Чтобы копировать между файловыми системами, вы должны использовать это следующим образом:

tar -cf - -C srcdir . | tar -xpf - -C destdir

Увидеть tar справочную страницу для получения более подробной информации (именно отсюда этот пример фактически взят).

$ cp -r --preserve=links src dst

man cp:

   --preserve[=ATTR_LIST]
          preserve  the specified attributes (default: mode,ownership,timestamps), 
          if possible additional attributes: context, links, xattr, all