在阅读List all human users 后,我注意到我的 Ubuntu 系统中有一个名为“nobody”的用户帐户。
我还注意到我可以使用以下命令和我的密码从终端登录此帐户:
sudo su nobody
Run Code Online (Sandbox Code Playgroud)

我一点都不介意,但我想知道这个用户的目的是什么?它是在全新安装的 Ubuntu 上默认创建的还是通过安装特定软件包创建的?
尝试将帐户切换到我新创建的帐户时出现黑屏,然后在输入正确的密码后返回主登录屏幕。
登录我以前存在的帐户后,我得到:
"System Program Problem Detected"
Details:
Executable path /usr/bin/Xorg
Package: xserver-xorg-core 2:1.11.4-0ubuntu10.1
Details: Crash
... (tons more, but no way to copy paste or save)
Run Code Online (Sandbox Code Playgroud)
当我尝试 su
su -l penner
Run Code Online (Sandbox Code Playgroud)
我得到:
No directory, logging in with HOME=/
Run Code Online (Sandbox Code Playgroud)
我手动创建了主目录,这个错误消失了,但登录仍然没有运气。似乎用户创建出了问题?我该如何纠正?
有时,在重新启动后登录或在用户之间切换时,输入密码并确认后,我会卡在紫色屏幕上。有时我可以用ctrl+ alt+F3后跟ctrl+ alt+来逃避它,F2有时这些组合甚至不起作用。
我知道这是 Ubuntu 中的一个错误,但我想知道用户是否有办法同时解决这个错误。
更新。安装NVIDIA显卡的专有驱动程序后,它没有再发生!希望这可以帮助!:)
我和妻子共用家里的电脑,我们经常在两个帐户之间切换。
我正在考虑在我的下一台计算机上使用 Ubuntu,并且我正在评估不同的桌面环境(例如 Gnome、Unity 或 Xfce)。
在大多数桌面环境中,快速的用户切换对我来说是一个大问题。在 Unity 中这是最好的——你总是有一个包含所有用户的菜单,你可以通过单击进行切换(假设没有密码):
在 Gnome 和 Xfce 上它很糟糕。我需要点击“切换用户”,选择另一个用户,然后点击“登录”——所有这些都涉及屏幕不同位置上的小按钮。
有没有办法快速切换用户 - 最好是单击和/或热键?无论桌面环境如何,都有什么可以工作的吗?
我发现了一个类似的问题:切换用户帐户的键盘快捷键- 但它只适用于显示管理器。我想跳过它并切换到其他用户的会话。
在 11.10 中,我使用 'gdmflexiserver -xnest' 在不注销的情况下切换用户,但是我认为 gdm 现在已被完全删除。
我正在尝试绑定键盘快捷键以执行相当于“我的菜单>切换用户帐户...”的操作。
如何在 12.04 中调用用户开关?
我全新安装了 11.04 64 位,有 2 个管理员帐户和 4 个普通帐户。4个普通账户(孩子的账户)没有密码,他们只需点击他们的名字就可以登录。
当任何用户(管理员或普通用户)尝试通过单击屏幕右上角并选择另一个用户来切换到另一个帐户时,屏幕会变黑并且整个系统锁定。即使CTRL+ ALT+F1通过F7什么都不做。这在该系统上 100% 的时间是可重现的。
当控制台锁定时,我可以通过 ssh 进入盒子,通过运行 top,我看到 Xorg 消耗了大约 100% 的 CPU。在系统处于“锁定”状态时查看 bash 中“ps axfu”的输出,这是 lightdm 和 X 进程树:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1153 0.0 0.1 183508 4292 ? Ssl Dec26 0:00 lightdm
root 2187 0.4 4.6 265976 164168 tty7 Ss+ 00:43 0:21 \_ /usr/bin/X :0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
stephane 2612 0.0 0.3 …Run Code Online (Sandbox Code Playgroud) 我在我的计算机上创建了三个用户(管理员 + 标准用户),每当我在用户之间切换时,我的屏幕都会关闭。
我有 Ubuntu 16.10,我使用右上角的帐户菜单切换用户。
我有两个无需密码即可登录的标准用户。当我在它们之间切换时:
当我切换到管理用户时,情况更复杂:

dm-tool switch-to-user username。这与单击菜单相同。dpkg-reconfigure lightdm.如果我以用户身份登录或在锁定屏幕上登录,则无法将帐户切换到其他用户。当我单击右上角的符号并单击要切换到的另一个用户的名称时,没有任何反应。
如果我已登录也可以,因为我可以退出,但这不是锁定屏幕上的选项。切换到另一个用户的唯一方法是重新启动计算机,这很烦人。我在 Ubuntu 18.04 上使用 Unity 和 lightdm。
还有其他人有这个问题吗?或者有一个想法如何解决它?谢谢!
在一个系统上,有一对在某种程度上等效的用户帐户。
更具体地说,对于给定的对:
dm-tool switch-to-user但实际上用户必须在每个开关上重新进行身份验证,这会降低生产力。需要允许在两个图形 X 会话之间快速切换(例如,单击面板上的按钮)而无需重新验证。
我知道在保持其他操作安全的同时放松一对用户之间的安全性比通常的锁定和开关方法更复杂。幸运的是,在我们的案例中,由于机器位于受控场所,因此即使丢失了一些本地安全性也没关系。例如,如果一个需求的解决方案导致一些通常会自动锁定会话(如暂停+恢复)的场景不再锁定,对于这对用户,甚至系统上的每个用户,它可能是可以接受的。
不过,如果用户可以手动锁定会话,那就太好了。
此外,必须保留远程安全性(例如,对这些帐户的 SSH 访问不得受到此问题解决方案的影响)。
基本上,使用dm-tool switch-to-user *username*并安排用户的会话不被锁定。
在 Ubuntu 12.04 中,我们禁用了 light-locker 以防止会话锁定,并在每个运行此命令的用户桌面上设置一个图标:
dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.DisplayManager $XDG_SEAT_PATH org.freedesktop.DisplayManager.Seat.SwitchToUser string:$CALLEDUSERNAME string:somesessionname
Run Code Online (Sandbox Code Playgroud)
这有效:会话切换到提到的用户$CALLEDUSERNAME。
这在 16.04 上并不令人满意:它切换到$CALLEDUSERNAME预选的迎宾员,但仍需要身份验证。所以,基本上结果是一样的dm-tool switch-to-user *username*。我还没有完全检查,但可能它只是与dm-tool原因完全相同的代码路径。 …
在Unity中如何切换用户?(即,在 GUI 中,而不是 sudo.)
我真的很想使用不同的 WM 启动另一个 X 会话,而不放弃当前的。
我进行了广泛的搜索,很多人都提到了这个问题,但在过去的几个月里,似乎只有少数不同的用户遇到过这个问题。但是我升级到 20.10 的 3 个 Kubuntu 系统现在都拥有它,所以我很惊讶这不是一个已经有解决方案的严重错误。
描述:
Out系统是家庭共享的,所以真的很烦人。如果锁定屏幕打开,则必须强制重新启动系统以供其他用户使用,这会涉及所有磁盘损坏风险。
这是三个系统之一的结果。我在里面没有看到任何冒烟的枪:
$ journalctl --since "2020-12-25" -u sddm | sed -e "s/.* systemname //"
-- Logs begin at Tue 2019-12-10 19:42:43 CET, end at Sun 2021-01-10 12:09:49 CET. --
systemd[1]: Starting Simple Desktop Display Manager...
systemd[1]: Started Simple Desktop Display Manager.
sddm[2035]: Initializing...
sddm[2035]: Starting...
sddm[2035]: Logind interface found
sddm[2035]: Adding new display on vt 1 ...
sddm[2035]: Loading …Run Code Online (Sandbox Code Playgroud) 我已将 Ubuntu 16.04 升级到 Ubuntu 18.04。我暂时不打算进一步升级到 Ubuntu 20.xx。除了从桌面环境内切换用户之外,一切看起来都很顺利。我的桌面环境过去和现在都是 Unity。
这台计算机中有两个用户。预期的行为是,在桌面环境中,我可以切换到任何其他配置文件,而无需退出当前配置文件,就像在多用户系统中一样。事实上,我总是必须从一个配置文件中注销才能登录另一个配置文件。
无论哪个配置文件在先,下面的内容总是会发生。
升级后的情况是:
所以我留在原地。我需要完全注销才能访问其他配置文件。
我按照建议重新安装桌面环境
sudo apt remove lightdm
sudo apt install lightdm
sudo reboot
Run Code Online (Sandbox Code Playgroud)
这仅部分解决了问题。
其他动作如
sudo apt install ubuntu-unity-desktop
Run Code Online (Sandbox Code Playgroud)
或者
sudo dpkg-reconfigure lightdm
Run Code Online (Sandbox Code Playgroud)
没有效果或者是多余的。确实,无论桌面环境是Unity还是Ubuntu,都会出现同样的问题。
我可以从终端登录这两个配置文件。进入配置文件 A 的桌面环境后,我移动到 tty 终端并登录配置文件 B。
第一次登录时,在提示之前系统消息是
Could not find key with description: [SIGNATURE]
Could not find process_request_key_err in user …Run Code Online (Sandbox Code Playgroud)