В моей установке была папка / home внутри /. Я хотел добавить отдельный раздел / home, поэтому я создал небольшой резервный раздел на другом диске, добавил его в / etc / fstab и использовал rsync
с -aXS
для перемещения мою старую / домашнюю папку в этот новый раздел. Затем я сделал новую установку с разделом / home. Теперь я хотел бы переместить свои файлы из старой папки / home в новый каталог / home. Как лучше всего это сделать?
Что я пробовал: sudo rsync -aXS / home_backup /. / новый_домашний_раздел /.
согласно в этом руководстве
Это скопировало саму старую папку / home в раздел / home (т.е. она создала / home / home), чего я не хотел. Я решил, что могу запустить ту же команду, но во вложенных папках в папке резервного копирования, а не в самой папке. Это лучший способ сделать это?
Я видел этот аналогичный вопрос , но, насколько я понимаю, cp
не сохраняет такую информацию, как разрешения и ссылки. Я также видел этот вопрос , но я не знаю, как работать с архивами (и я не уверен, что ситуация с OP такая же). Любая помощь будет оценена, так как я ни в коем случае не эксперт!
П.С.Какая команда лучше всего удаляет все файлы из раздела fresh / home перед копированием в него файлов резервных копий?
Изменить: Похоже, я смог решить эту проблему, но до сих пор не знаю, что произошло (добавлен комментарий ниже).
rsync
- подходящий инструмент для создания идентичной копии структуры каталогов. Чтобы сохранить разрешения с помощью rsync
, используйте параметр a
. Более полное сохранение исходных свойств достигается с помощью параметров -H
, -A
и -X
(см. man rsync
, чтобы узнать, что они делают). Они не включены в параметр -a
по соображениям производительности. При необходимости их можно добавить. Например, если вы много работаете с жесткими ссылками, вам может потребоваться добавить параметр -H
, чтобы элементы с жесткими ссылками в источнике также сохранялись в виде одного файла в месте назначения.