如何将旧用户帐户复制到新用户帐户?

如何将旧用户帐户复制到新用户帐户?

我猜我的旧用户帐户根本无法使用,因为有些文件已经损坏。

其余2个帐户运行正常。

因此我创建了一个新的管理员帐户,我想知道如何将我的所有设置、密码和文件从旧管理员帐户复制到新帐户。

我无法使用旧的管理员帐户,因为它被严重冻结了,所以如果我可以从新的管理员帐户进行迁移,将会有很大帮助。

谢谢!

答案1

您基本上是在问:“如何将设置和文件从我的用户帐户复制到新用户帐户,跳过某些设置?”

迁移至新用户帐户

要将文件从用户移动oldnew,您需要复制文件并相应地更改所有权:

sudo cp -r -d --preserve=mode,timestamps -T ~old ~new
sudo chown -R new: ~new

这应该复制文件而不修改路径。

现在以 身份登录到 shell new。要么使用 切换到 VTYCtrl并以 身份登录,Alt要么使用 从终端登录。如果您选择了第一种方法,则可以使用 切换回来。从此时起,假定您以 身份登录。F1newsu newCtrlAltF7new

如果存在指向其旧目录的符号链接,则找到这些链接:

find ~ -lname '*/old/*' -ls

符号链接的文件名已打印,但未执行任何操作。要创建~new/path/to/symlink指向 的新符号链接~old/point/to/target并覆盖旧符号链接,请运行:

ln -sf ~old/point/to/target ~new/path/to/symlink

可能存在引用旧配置文件的文件,您可以使用以下命令找到这些文件grep

grep -HrnI 'old' ~

如果得到很多结果,请考虑更具体一些,即替换old/home/old。将列出符合搜索条件的行的文件,但不采取任何操作。

调试旧帐户

如果您复制所有设置和文件,最好删除有问题的文件。为了获得最佳效果,最好从 GUI 会话中注销主题用户并登录虚拟控制台(使用Ctrl+ Alt+切换到它F1)。

如果你突然被注销,请检查~/.xsession-errors。你可以运行以下命令进行检查:

less ~/.xsession-errors

使用箭头键、Page Up/Down、Home 或 End 进行导航,按下Q退出。

有时.gconfd/saved_state文件会损坏。您可以使用以下方法删除此文件:

rm .gconfd/saved_state

Ctrl完成此操作后,按+ Alt+切换回 GUI 登录F7。登录后,如果问题消失,则说明操作完成。否则,请注销并使用Ctrl+ Alt+切换回虚拟控制台F1

另一个可以清空的目录是~/.cache

rm -r ~/.cache/*

不要丢失所有文件和设置,而是临时移动一些文件夹。可以使用以下方法完成:

mv folder{,-orig}

如果文件夹没有导致问题,请删除新创建的文件夹并恢复旧文件夹:

rm -r folder
mv folder{-orig,}

一些可能会导致问题的文件夹(有些可能不存在,在这种情况下跳到下一个文件夹):

.gnome
.gnome2
.kde
.config
.local

与每次修改一样,切换回 GUI 登录并进行测试。

答案2

假设您已经创建了您的newuser并且主文件夹存在newuser

(1/2)将所有文件复制到新用户:

sudo rsync -ah --progress /home/olduser/. /home/newuser

笔记:

  • rsync是一个类似但总体上比更好的功能cp。它有更多选项等
  • -a命令保留原始文件的权限(我们将在步骤 2 中对所有权进行排序)
  • -h命令将输出信息转换为人类可读的格式(即文件大小等)
  • --progress为每个文件添加进度条
  • 位置末尾/.olduser使其包含隐藏文件(这将确保您的bash_aliases文件bashrc等被复制,而不仅仅是普通文件。此选项将迁移您的设置。)

(2/2)更改复制文件的所有者

现在我们改变所有文件的所有权:

sudo chown -R --from=olduser:oldusergroup newuser:newusergroup /home/newuser

笔记:

  • chown是改变文件所有权的函数
  • -R使其递归。(如果您只更改一个文件,则不需要这样做,但我们正在更改所有文件和目录以及新用户文件夹中的所有内容,因此需要递归)
  • --from=olduser:oldusergroup这确保我们不会更改任何由 root 拥有的文件(尤其是与隐藏文件相关的文件)。更改这些文件可能会造成很多混乱。此--from选项表示chown我们只想更改当前由 拥有的文件和文件夹olduser

这对我有用,虽然我在这里解释了很多,但实际上它只有 2 个主要命令,所以一旦你弄清楚如何保留权限等,这个过程就非常简单。

相关内容