Перемещение домашней папки к новой установке Ubuntu

Действительно ли возможно переместить домашнюю папку в новую установку Ubuntu для хранения всех настроек и тонких настроек сделанными пользователю к тому компьютеру? Как то, если я создаю нового пользователя на новой установке Ubuntu с тем же именем и паролем как пользователь I whant для перемещения в новую установку Ubuntu. Это будет работать, или еще лучше, действительно ли это безопасно?

4
задан 16 August 2016 в 00:27

1 ответ

Да. Я много раз делал. rsync имеет режим "-a", который сохраняет владение, времена файла, все. Может отправить файлы через сеть. Или можно скопировать в отформатированный внешний диск ext4 и восстановление с rsync. Просто помните, не копируют с обычным перетаскиванием, используют rsync и сохраняют архив всех свойств ("-a").

Предположим, что my.old.computer имеет Вашу учетную запись "myuser".

Настройте новый компьютер my.new.computer. Создайте "myuser" там. если Вы скрупулезны, получаете идентификатор пользователя и идентификатор группы от старой системы и присваиваете им при создании учетной записи пользователя. Это может уменьшить проблемы, но я думаю, что только делаю это, потому что я старомоден, и это пошло не так, как надо однажды в 2005. Знайте то, что я имею в виду о uid и ценурозе? Числа учетной записи пользователя. В старой системе, выполненной "идентификатор myuser", затем при создании нового пользователя на новом компьютере, Вы присваиваете тот же uid и ценуроз.

Создайте некоторую другую учетную запись в обеих из этих систем, мы не хотим пытаться скопировать пользовательскую папку для "myuser", когда тот пользователь зарегистрирован, так как сессия зависит от файлов, которые Вы уничтожаете. Повторитесь: не Должен входить в систему как myuser, когда Вы хотите скопировать файлы для учетной записи myuser. В любой системе.

В новой системе, как корень, перемещают пользовательский каталог по умолчанию из пути (быть безопасным, не удаляйте!), затем создайте новый каталог

sudo mv /home/myuser /home/myuser.orig
sudo mkdir /home/myuser
sudo chown myuser.myuser /home/myuser

Вам нужен тот последний шаг так, чтобы Ваша учетная запись обычного пользователя могла rsync файлы в. Мы не хотим делать это как корень

Затем скопируйте папку /home/myuser от старого до нового, с помощью rsync флаги -rav.

Может отправить файлы от старой системы до новой системы. В старой системе

cd /home
rsync -e ssh -ravn myuser  myuser@my.new.computer:/home

Где:

  • -r: рекурсивный
  • -a: режим архивирования
  • -v: подробный режим. Можно пропустить это, это пойдет быстрее. Но с меньшим количеством заверения.
  • -n: на самом деле не вносите изменения

Я поместил -n отметьте, потому что я хочу тестовый прогон; если будут ошибки, то мы узнаем. После тестирования, выполненного та же команда без -n флаг.

Это будет только работать, если Ваша учетная запись пользователя будет иметь полномочия скопировать и записать файлы в/home/myuser. Я не совсем уверен, как сделать это, не будучи корнем, но я раньше знал, и я держал пари, что кто-то здесь знает, что сделать.

Или если Вы находитесь в новой системе, может скопировать с другого

cd /home
rsync -e ssh -rav my.old.computer:/home/myuser .

Период . означает текущий рабочий каталог. Выполненный с -n сначала видеть что случилось.

Я много раз делал это. Ручная установка uid и ценуроза действительно не должна быть необходимой, так как комбинация ssh и rsync должна присвоить новые файлы правильно. Однако я понял это превратно однажды и все новые файлы, поднятые, как используется неправильным пользователем. Где Вы ожидаете видеть ls - la output как это:

rw-------   1 myuser myuser        174 Aug  4 22:43 .Xauthority

Вы видите коды пользователя, как

rw-------   1 504 50004        174 Aug  4 22:43 .Xauthority

или, хуже, имя некоторого другого пользователя. Это происходит, потому что uid и ценуроз действительно определяют принадлежность файла; человекочитаемое имя является поверхностным.

Можно обычно играть выход из этого с chown, но Вы не будете видеть если при выстраивании в линию uid и ценуроза.

Не волнуйтесь слишком много, если копия по сбоям однажды, или делает что-то, что Вы не ожидаете, потому что можно всегда работать снова. Вы не уничтожаете старый компьютер, и новый компьютер является, ну, в общем, пустым большим списком.

Я думаю, что некоторые любители tar скажут, что лучший способ состоит в том, чтобы смолить старую вещь, переместите tar.gz файл, затем разверните это. Приблизительно в 2003, который казался жизненно важным для нас, но в последнее время rsync метод хорошо работал.

Между прочим, если Вы интересуетесь приобретением знаний о rsync, man rsync одна из лучших, самых полезных страниц справочника когда-либо. Это человекочитаемо с тонной примеров, и это - одна из причин, за которые я цепляюсь rsync как спасательный плот в обслуживании системы.

5
ответ дан 1 December 2019 в 09:33

Другие вопросы по тегам:

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