我猜我的旧用户帐户根本无法使用,因为有些文件已经损坏。
其余2个帐户运行正常。
因此我创建了一个新的管理员帐户,我想知道如何将我的所有设置、密码和文件从旧管理员帐户复制到新帐户。
我无法使用旧的管理员帐户,因为它被严重冻结了,所以如果我可以从新的管理员帐户进行迁移,将会有很大帮助。
谢谢!
答案1
您基本上是在问:“如何将设置和文件从我的用户帐户复制到新用户帐户,跳过某些设置?”
迁移至新用户帐户
要将文件从用户移动old
到new
,您需要复制文件并相应地更改所有权:
sudo cp -r -d --preserve=mode,timestamps -T ~old ~new
sudo chown -R new: ~new
这应该复制文件而不修改路径。
现在以 身份登录到 shell new
。要么使用 切换到 VTYCtrl并以 身份登录,Alt要么使用 从终端登录。如果您选择了第一种方法,则可以使用 切换回来。从此时起,假定您以 身份登录。F1new
su new
CtrlAltF7new
如果存在指向其旧目录的符号链接,则找到这些链接:
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 个主要命令,所以一旦你弄清楚如何保留权限等,这个过程就非常简单。