rsync 恢复主文件夹后无法登录 ubuntu

rsync 恢复主文件夹后无法登录 ubuntu

在从 12.04 升级失败后,我最近将 ubuntu/lubuntu 14.04 重新安装到我妻子的 Packard Bell Dot S 上网本上。随后,我使用 rsync 从备份中恢复了主目录。我使用了

- 档案

选项应该保留权限和所有权信息。我可以登录我的帐户,但不能登录她的帐户。当我登录时,它立即返回到登录屏幕。我试图从我的帐户更改我妻子主目录中所有文件的所有权,但即使这样也无济于事。为什么会发生这种情况,我如何才能登录她的个人资料。我必须补充一点,安装成功,因为我可以在使用 rsync 进行恢复之前登录她的帐户。我在另一台计算机上按照完全相同的过程进行安装和恢复,没有任何问题。

答案1

有一个文件需要特别查看:~/.Xauthority在她的主目录中。

请注意,它是一个隐藏文件。

登录您的帐户,转到她的主目录并mv .Xauthority .old_Xauthority

注销并让她登录。

man xauth了解更多。

答案2

我在 Fedora 系统上遇到了同样的问题,但根本原因可能适用于 Ubuntu 或其他 Debian 系统,具体取决于它们的配置。

经过一番分析,我发现了一个主要可能的原因:文件上下文。如果您使用 rsync --archive 克隆主文件夹,则有几项内容不会被复制。帮助中提到了硬链接、ACL 和 XAttrs。文件上下文也不会被复制。默认情况下,所有主文件夹条目都是 user_home_t 类型。某些隐藏文件(如 .Xauthority)具有更严格的类型,如 xauth_home_t。但是,rsync 创建的副本很可能是非主文件夹,因此所有复制的文件都将被标记为 unlabeled_t 类型。这意味着,根据系统中的保护级别,即使所有者设置正确(--archive 选项就是这样),文件也可能因为文件上下文而被锁定。

您可以使用以下命令轻松验证这一点:ls /home//* -Zd 这将显示文件上下文。

修复文件上下文应该很容易。使用 root 访问权限,只需使用此命令:restorecon -vR

希望这对某人有帮助。

相关内容