Как переместить жесткие ссылки на другой диск

Я предлагаю использовать GNU grep:

echo abcdef | grep -Po '.(?=.{1}$)'

Вывод:

e

echo abcdef | grep -Po '.(?=.{3}$)'

Вывод:

c
1
18.04.2019, 17:16
2 ответа

То, что вы описываете, на самом деле ТРИ (3 )указателя на данные на диске:

  • Азбука
  • А
  • Б

Если вы mv Aпереходите на новую файловую систему, по существу создается копия данных в новой файловой системе.

Если вы mv Bпереходите на новую файловую систему, создается еще одна копия данных с именем Bв новой файловой системе. Но ABC по-прежнему остается в исходной файловой системе.

Что делать?если вы хотите реплицировать исходный файл и ссылки в новой файловой системе (, замените source/ и новый -файл -system/ на ваши правильные пути):

  1. cp source/ABC new-file-system/ABC
  2. ln new-file-system/ABC A
  3. ln new-file-system/ABC B
  4. rm source/ABC source/A source/B

При этом будут скопированы/созданы данные в новой файловой системе, созданы жесткие -ссылки A и B в новой файловой системе, а затем удалены старые данные и жесткие -ссылки.

Перед выполнением команды обязательно проверьте синтаксис, чтобы не потерять данные.

-1
28.01.2020, 00:14

rsyncможет скопировать для вас жесткие ссылки. Проверьте -Hопцию :

.
-H, --hard-links            preserve hard links
1
28.01.2020, 00:14

Теги

Похожие вопросы