将 /home/username 目录传输到新计算机

将 /home/username 目录传输到新计算机

当您升级 Linux 计算机时,只需将/home/username目录移至新计算机并覆盖新创建的目录即可吗?还是最好手动复制重要文件?我在旧计算机上使用 KDE 4,在新计算机上使用 KDE 5。

如果我只想复制主目录,我该怎么做?我会启动 LiveCD 并执行此操作吗?还是有更好的方法?

答案1

我只会复制重要文件,特别是当你进行相当重大的更新时。

/home/<username>包含应用程序的隐藏配置文件。如果您将这些现有配置文件复制到新计算机(新计算机可能装有较新版本的应用程序,并且可能装有一大堆不同的应用程序),则可能会遇到问题。

基本上,我所做的就是将文档、图片、视频等复制到 USB 硬盘/硬盘上,然后从那里复制到新电脑。在新电脑上,我会浏览我使用的应用程序并按照我喜欢的方式配置它们。整个过程需要一段时间,但我很享受 :-p

答案2

除非新 Linux 设置与旧 Linux 设置有神奇的不同,否则直接复制是最好的。我的方法是这样的。首先,在旧机器上创建.tar.gz现有用户主目录的存档,如下所示;首先cd到父/home/目录:

cd /home/

接下来,.tar像这样创建档案;注意附加_old到文件名的内容:

tar -cf username_old.tar username

现在像这样对其进行 GZip 压缩:

sudo gzip username_old.tar

这样你就会有一个名为的档案username_old.tar.gz

现在,如果这是两台不同的机器,请确保在新机器上创建新用户。然后在旧机器上使用复制工具,例如scp(安全复制)将其复制到新机器:

scp /home/username_old.tar.gz username@new_machine:.

您可能必须输入您的姓名和密码,但这会将其从旧机器复制到新机器。

现在登录到您的新机器,该文件username_old.tar.gz应该位于您的用户主目录中。将其移动到父目录中,/home/如下所示:

sudo mv ~/username_old.tar.gz /home/

完成这些后,恢复数据就是您的选择,但我建议您执行以下操作。在新机器上执行与旧机器上相同的操作,~/username在新机器上创建现有目录的备份:

cd /home/
tar -cf username_new.tar username
sudo gzip username_new.tar

这样就会创建一个~/username/名为 的目录的备份副本username_new.tar.gz;安全第一。

username_old.tar.gz好的,最后一步是像这样取消归档:

cd /home/
sudo tar -xf username_old.tar.gz

这最后一步将解压的内容username_old.tar.gz放入~/username/新机器上的目录中。它不会直接完全覆盖,但基本上会覆盖那里存在的项目,如果不存在则添加新项目;这就像内容合并。

另一种方法是,您只需将username_old.tar.gz您的主目录留在新机器上,将其解压到该目录中,然后在需要时选择要从中复制的项目。

这实际上完全取决于您的用户目录的内容深度以及您个人希望如何处理此类内容。但通常,创建.tar.gz旧内容的存档并将其复制到新机器是最好的方法。

答案3

考虑保留重要配置文件的副本,并在安装完成后从 USB 复制它们。以下是一些常见的嫌疑:

在主目录下:

  • .bashrc
  • .vimrc
  • .ssh/*
  • .bash_*
  • .*history

其他的:

  • /etc/profile

相关内容