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

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

3 ответа

Решение

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

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

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

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

$ 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
Другие вопросы по тегам