无法克隆用户配置文件?

无法克隆用户配置文件?

我有一个用户配置文件,所有设置都全部按我想要的方式设置。我想将整个配置的配置文件复制到新用户帐户。

这是我正在做的事情(用户已添加到系统中):

  1. 注销,切换到终端,service gdm stop
  2. mkdir /home/newuser
  3. cp -a /home/olduser/* /home/newuser/
  4. chown newuser:newuser /home/newuser -R
  5. service gdm start

然后我以新用户身份登录。当我登录时,桌面看起来像是一个全新的用户配置文件,而不是我复制的自定义配置文件。

我想一切在新配置文件中。主题、停靠栏的位置和配置、桌面图标、Firefox 收藏夹等。

知道为什么这不起作用吗?我正在使用 Ubuntu 10.04

答案1

您还需要做更多。

sudo mv /home/new_user /home/new_user.bak
sudo cp -R /home/old_user /home/new_user
sudo chown -R new_user:new_user /home/new_user

登录新用户帐户。如果一切正常,删除备份

sudo rm -rf /home/new_user.bak

答案2

好的,我明白了。显然 cp /* 会跳过点文件。

您必须使用以下命令明确复制点文件:

cp -a /home/olduser/.* /home/newuser/

要复制所有内容,请执行以下操作:

cp -a /home/olduser/* /home/newuser/
cp -a /home/olduser/.* /home/newuser/

答案3

我想将我当前的个人资料克隆给新用户。我的主目录很大,几乎有 100 GB。bodhi.zazen 的回答对我来说很管用,但我花了半天的时间才弄对。以下是他的答案的扩展注释版本(我在 Ubuntu 14.04 上):

创建新用户

我刚刚使用了桌面用户界面:系统设置>用户帐户>解锁>+新用户

备份新用户主目录

现在进入命令行:

sudo mv /home/new_user /home/new_user.bak

将配置文件复制到新用户主目录

如果您的配置文件很大,我建议使用 rsync 并排除一些目录。以下是我运行的示例:

time sudo rsync -av --progress \
  --exclude='VirtualBox VMs' \
  --exclude='.cache/deja-dup' \
  --exclude='.local/share/Trash' \
  --exclude='nltk_data' \
  --exclude='Downloads' \
  /home/klenwell/ /home/new_user

几点说明:

  • --exclude目录是源目录的子目录/home/klenwell/
  • 注意 上的结束斜线/home/klenwell/。错过它,您最终会得到/home/new_user/klenwell

我建议在离开之前进行几次快速测试。使用--dry-run甚至运行一两次,缩短时间以再次检查一切是否按预期进行。使用排除项,我将主目录减半,但复制仍需要一个小时。

使新用户成为主目录的所有者

time sudo chown -R new_user:new_user /home/new_user

就我的情况来说,花了 5 分钟才完成。

使用新用户登录

如果您尝试以新用户身份登录而 Ubuntu 只是将您踢回到登录提示,那么您可能忘记了前面的步骤。

如果您成功登录,现在您可以清除旧的备份:

sudo rm -rf /home/new_user.bak

参考

相关内容