![用户未显示在用户应用程序中](https://linux22.com/image/921177/%E7%94%A8%E6%88%B7%E6%9C%AA%E6%98%BE%E7%A4%BA%E5%9C%A8%E7%94%A8%E6%88%B7%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E4%B8%AD.png)
我有 2 个帐户,当我运行用户应用程序时,只有 1 个显示出来。这种情况已经持续了一段时间了,第二个名为 jenkins 的帐户是一个系统帐户。到目前为止,它对我来说运行良好(仅限本地登录)。所以我将它编辑为非系统帐户,但它仍然没有显示出来。我的帐户和 jenkins 帐户都是“sudoers”。所以我假设它们属于管理员组。
我想问题是,一个帐户必须属于哪个组才能显示在 GUI 应用程序中,更重要的是,哪个组允许远程登录。我知道这是一个愚蠢的问题,但提出这个问题是出于沮丧,我尝试了这个论坛上的多个建议,然后重新启动,但仍然卡在我的 jenkins 帐户不“可见”并且不允许远程连接。请告诉我我的问题很愚蠢,但也要告诉我它为什么愚蠢,以便我从中吸取教训;因为我几年前也在 ubuntu 14 左右上遇到过这个问题,但现在我已经安装了 18。
/edit “未显示”,意思是当我使用查找器并点击“用户”,然后打开“添加用户”,然后使用我的密码解锁时。它只显示我的初始用户帐户“Conrad Braam”。
通过“将其设置为非系统”,基本上我看到了关于编辑 /var/lib/AccountsService/users/jenkins 的注释,并将该行更改为,
SystemAccount=true
但SystemAccount=false
现在我注意到,该更改已恢复/未保存?嗯。再次重新启动。
我运行
id -u jenkins
并得到了一个响应
123
,这让我觉得出乎意料或随意。所以我确实需要将其设置为大于 1000 的值,但用户文件的某些内容仍处于锁定状态,我可能只需要帮助删除或更改现有的 jenkins 用户文件?
答案1
UID 的数值而不是特定的组成员身份决定了用户帐户是否显示在“用户和组”对话框中。我相信阈值是 UID >= 1000,但我尚未详尽验证这一点。
要更改用户的 UID,您可以使用usermod
ex。
sudo usermod -u 1005 jenkins
您需要选择合适的独特的根据您系统上的当前用户帐户,UID > 1000。请注意,您可能需要手动更改chown
某些文件以使其所有权反映新的 UID,如中所述man usermod
:
The user's mailbox, and any files which the user owns and which are located in the user's home directory will have the file user ID changed automatically. The ownership of files outside of the user's home directory must be fixed manually.
您可能还希望更改 GID,以与Debian‘用户私人组’范例。