Ubuntu 17.10/Gnome 3:如何在登录界面隐藏指定用户
解决登录界面隐藏特定用户/设置默认登录的方法
看来你遇到了登录界面用户管理的问题,我来给你详细讲讲两种需求的实现方法,顺便解决你之前配置文件被自动删除的问题~
一、隐藏特定用户(修复配置文件被自动删除的问题)
你之前尝试用AccountsService但文件被删,大概率是权限设置不对导致系统重启后自动重置了配置。按下面的步骤操作就能解决:
创建并编辑目标用户的配置文件
打开终端,执行命令(把EWF换成你要隐藏的用户名):sudo nano /var/lib/AccountsService/users/EWF在文件里写入以下内容:
[User] Language= XSession=gnome # 这里根据你的桌面环境调整,比如kde、xfce等 SystemAccount=true # 关键配置,标记为系统账户就不会在登录界面显示设置正确的文件权限
配置文件必须属于root用户且权限正确,否则AccountsService会不识别或自动覆盖:sudo chown root:root /var/lib/AccountsService/users/EWF sudo chmod 644 /var/lib/AccountsService/users/EWF重启AccountsService服务(无需重启系统)
sudo systemctl restart accounts-daemon.service这时候再打开登录界面,目标用户就不会出现了,而且配置文件也不会被自动删除。
如果你用的是LightDM(比如Ubuntu默认的登录管理器),也可以直接修改LightDM的配置来隐藏用户:
- 编辑配置文件:
sudo nano /etc/lightdm/lightdm.conf - 在
[Seat:*]段添加:hidden-users=EWF,其他要隐藏的用户名 # 多个用户用逗号分隔 - 保存后重启LightDM服务(注意会退出当前会话,先保存工作):
sudo systemctl restart lightdm.service
二、设置默认自动登录用户
如果你想直接让自己的账号默认登录,有两种方法可选:
方法1:通过AccountsService设置(通用方法)
编辑你自己的用户配置文件(把
myuser换成你的用户名):sudo nano /var/lib/AccountsService/users/myuser写入或修改以下内容:
[User] Language= XSession=gnome # 对应你的桌面环境 AutomaticLoginEnable=true AutomaticLogin=myuser设置权限并重启服务:
sudo chown root:root /var/lib/AccountsService/users/myuser sudo chmod 644 /var/lib/AccountsService/users/myuser sudo systemctl restart accounts-daemon.service
方法2:通过LightDM配置设置(适用于LightDM)
- 编辑LightDM配置文件:
sudo nano /etc/lightdm/lightdm.conf - 在
[Seat:*]段添加:autologin-user=myuser autologin-user-timeout=0 # 0表示立即自动登录 - 重启LightDM服务:
sudo systemctl restart lightdm.service
内容的提问来源于stack exchange,提问作者Zoltán




