Я прочитал ответы на похожие вопросы, но пока не вижу ответов на то, что мне интересно. Я прочитал большую часть справочной страницы по rsync и хочу убедиться, что понимаю, что делаю, прежде чем выполнять слишком много дополнительной работы для себя.
У меня есть диск с компьютера, который умер. На нем работал Debian Oldstable. Теперь у меня есть машина, на которой работает Debian Stable (Stretch), и я бы хотел перебраться /home
не ломая ничего. У меня есть старый диск в доке, а новый /home
пуст, за исключением файлов конфигурации, созданных при установке Debian, и одной папки на моем рабочем столе, где я поместил несколько файлов, которые мне пришлось создавать до сих пор.
Я думаю, что rsync - лучший ответ, но я вижу потенциал и в cp.
Будет ли работать эта последовательность команд и действий?
<mount disk OLD via the doc>
su
rsync -a -v -z -H -A -X --update -P --logfile=/tmp/rsynclog.txt /media/OLD/home/ /home
exit
<unmount disk OLD>
Я бы попробовал это сначала с -n
чтобы увидеть, что он думает об этом процессе. Я также мог бы начать с копирования /media/OLD/home/user1/
/home/user1
чтобы я мог меньше переделывать, если что-то странное случится.
Я знаю, что могу комбинировать короткие варианты; Я разделил их здесь для удобства просмотра и обсуждения.
-a
должны сохранить время, владельца и группы по имени, верно? Я не знаю, что он будет делать, если найдет группу на OLD, которая еще не была создана на NEW; Я надеюсь, что это создает группу на NEW.
Я не уверен, если -z
помогает или причиняет боль. У меня есть USB3-соединение со старого диска, поэтому я, вероятно, должен просто пропустить его.
Я делаю AHX
всякий случай. Я не могу вспомнить, создал ли я когда-нибудь жесткую ссылку на OLD, я не думаю, но не могу гарантировать, что ACLS не существует, и я еще не понимаю расширенных атрибутов. Правда ли, что это не повредит, если они не относятся к моему каталогу?
У меня есть несколько файлов конфигурации, которые создал Debian Stretch. Правда ли, что --update
предотвратит перезапись тех, у кого нет других побочных эффектов? Затем я могу сделать различие позже, чтобы увидеть, нужно ли мне думать о внесении изменений. (Есть ли способ подготовиться к этому различию?)
И я думаю , но я редко 100% уверен , что я указал файлы таким образом, что я должен закончить с /home
на NEW, имитирующие /home
на OLD за исключением , возможно , в течение нескольких изменений конфигурационных файлов из - за новые версии пакетов Debian.
Видите ли вы что-то, что я пропустил, или что у меня возникнут проблемы?
@xenoid: я ценю это предложение. Вот почему я использовал опцию --update, чтобы она (предположительно) не перезаписывала какие-либо точечные файлы, которые Stretch только что написал на моей машине. Я полагаю, что это очень похоже на выполнение dist-upgrade для Linux, постоянное получение новых файлов конфигурации и исправление проблем, если таковые имеются, позже.
Для справки, вот команда, которую я использовал для каждого пользователя, определенного в моей системе:
su
rsync -avHAX --update -P --log-file=/tmp/rsynclog.txt /media/OLDpartition/username/ /home/username
exit
Пока, похоже, сработало. Я бы принял ответ, так как я думаю, что все мы в основном говорили одно и то же, за исключением того, что на самом деле нет ответов - больше подтверждений частей направления, которым я руководил.