无法登录 Debian GUI

无法登录 Debian GUI

我最近在笔记本上安装了带有 KDE 的 Debian 9.0 稳定版,笔记本上已经安装了 Ubuntu 和 Windows 10。我的目的是为 debian 的根目录创建一个新分区并使用相同的分区/主页/丹尼尔我在 Ubuntu 中使用的分区。虽然我忘记使用相同的用户名,后来在 Debian 中使用我的 Ubuntu 用户名(daniel)创建了一个新用户(使用 KDE 的 GUI 应用程序)。第一个用户可以登录而不会冻结到 GUI,尽管我的新用户只能通过 tty 登录。

我已经尝试过以下解决方案:

  • 改变/主页/丹尼尔目录权限(我没有,但添加它们还不够)。

    sudo chmod 755 /home/daniel

  • 将我的用户包含到第一个用户所属的相同组中桑巴共享,须藤脂质管理(它原本不属于任何人)。

    sudo usermod -a -G lipadmin,sambashare,sudo,... daniel

  • 更改我的用户文件夹的用户和组,递归运行它使我必须在我的 ubuntu 安装中更改它,因为用户和组更改为“101“当我启动它时。

    chown -R daniel:daniel /home/daniel

当我启动 ubuntu 并且文件的用户更改为 101 时,我也无法进入 GUI。但我通过chown -R daniel:daniel /home/daniel在 ubuntu 的 tty 上运行修复了这个问题。

答案1

对于 Linux 操作系统(对其核心通过系统调用由每个程序完成)不是用户名字但用户 ID 或uid-s。它是一个很小的正数(不是名字),例如 1234。阅读凭证(7)

您需要确保用户在 Debian 和 Ubuntu 上都daniel拥有相同的uid。该daniel名称并不是很重要(您可能想要但不必使用不同的名称)。 Debian 和 Ubuntu 可能使用不同的 uid-s/gid-s 来进行daniel.另请阅读编号(1)并使用id -a.并使用统计数据(1)命令在您的主目录中,以便stat /home/daniel了解它有什么 uid 和 gid...

我假设您可以在两个操作系统上获得超级用户权限,例如通过运行sudo.否则,您需要在救援模式下从外部媒体启动,或者使用init=/bin/bash.

用户名与其 uid-s 之间的映射通常在 中完成/etc/passwd,因此请仔细阅读密码(5) (今天/etc/passwd不再包含任何密码信息,但由于历史原因该文件路径没有更改。另请参阅影子(5))。顺便说一句,该映射可以 - 小心 - 以其他方式完成(但通常不是),并且它是如何完成的配置/etc/nsswitch.conf (我假设你没有改变,请参阅nsswitch.conf(5)了解更多)

同样,组名称与其 gid-s 之间的映射是在 中完成的/etc/group,因此请仔细阅读组(5)

所以,首先运行命令daniel(不是 GUI 程序,在你的情况下它们会让你感到困惑)了解Debian 和 Ubuntu 上的uid/gid 的用途。您可能想要运行该grep daniel /etc/passwd命令(请参阅正则表达式(1))。同样,运行相关命令来查找您的 gid(在两个系统上)。

然后决定一个常见的uid 和 gid 的两个都系统(Debian 和 Ubuntu)。它应该是未使用的,并且您需要它在 Debian 和 Ubuntu 上相同(小正数)。我建议选择 4000 以上但 65000 以下的数字作为您的通用 uid(对于您的通用 gid 也是如此)。

当心

通过编辑 -as root- 更改 uid 和 gid小心使用编辑器(如vim、 或emacs、 或nano等)在两个系统上共享/etc/passwd和文件/etc/group相同的Debian 和 Ubuntu 上的 uid/gid 适合您的用户。使用同步(1)在该版本之后(它可能没有用,但您要确保您的版本已写入磁盘)。

(如果你搞砸了这一步,你可能会遇到一些无法使用的系统)

然后(作为 root)递归地更改(一次)主目录的所有权,使用庄(1)命令。您可能想要运行类似的东西chown -R daniel:daniel /home/daniel(第一个daniel是用户名,第二个是组名,第三个是目录条目)。之后考虑使用修改(1)更改权限(可能为chmod -R a-rx /home/daniel),因为您不应该拥有世界可写的主目录或自己的目录(这是一个巨大的脆弱性)。

注意:对于管理任务,更喜欢使用命令不是图形用户界面

答案2

您目前与两人共享房屋丹尼尔Ubuntu 和 Debian 的用户!发生的情况是该用户在 Ubuntu 上的 uid 为 1000,但在 Debian 上为 1001。该文件夹是由 Ubuntu 创建的,因此它属于 1000。因此丹尼尔在 Debian 上绝对不能向他的主页写入任何内容,这会阻止图形登录。

共享房屋理论上是可能的,但会导致混乱,我不建议这样做。你的目标是什么?我猜你想共享你的数据(文档、图片……),而不是应用程序配置。所以你会找到解决方案这里

相关内容