使用usermod -G是否会破坏Xserver权限?Ubuntu Xfce16.04启动故障求助
兄弟,我太懂你这种新手操作翻车后的崩溃感了——当初我刚摸Ubuntu的时候也误操作搞丢过用户组,折腾了大半天才救回来。结合你描述的情况(sudo初始正常、图形更新弹密码错误、重启进恢复模式、sudo startx问题频发),给你整理了一步步的修复方案,按顺序来应该能搞定:
第一步:确认并修复用户组配置
先在恢复模式的命令行(或者按Ctrl+Alt+F2切换到tty终端),查看当前用户所属的组:
groups
Ubuntu 16.04的普通用户默认应该在这些组里:sudo, adm, dialout, cdrom, floppy, audio, dip, video, plugdev, netdev, lpadmin, sambashare,如果有缺失,用usermod逐个添加(一定要加-aG,不然会覆盖现有组,别踩我当年的坑!):
sudo usermod -aG sudo,adm,dialout,cdrom,floppy,audio,dip,video,plugdev,netdev,lpadmin,sambashare 你的用户名
第二步:修复家目录与X权限错乱
你用sudo startx启动过X,这会把你家目录里的很多配置文件改成root权限,普通用户根本读不了,这是Xserver无法正常启动的核心原因之一。执行下面的命令把家目录的权限全改回当前用户:
sudo chown -R $USER:$USER $HOME
另外检查~/.Xauthority文件(Xserver的身份验证文件),如果它属于root,也一并修复:
sudo chown $USER:$USER ~/.Xauthority # 如果上面的命令没用,直接删了它,系统重启后会自动生成新的 rm ~/.Xauthority
第三步:重新配置显示管理器
Ubuntu Xfce 16.04默认用的是LightDM,用户组丢失可能导致它的配置出了问题。执行下面的命令重新配置:
sudo dpkg-reconfigure lightdm
按照提示选择LightDM作为默认显示管理器,然后重启系统试试。
第四步:修复图形更新器的密码错误问题
图形界面的更新器依赖Polkit来获取权限,用户组缺失可能导致Polkit的权限验证失效。重新安装Polkit相关包:
sudo apt install --reinstall policykit-1 policykit-1-gnome
然后重启Polkit服务:
sudo systemctl restart polkit
最后验证
做完上面的步骤后,重启系统,应该能正常进入Xfce桌面了。再试试图形更新器,密码提示应该正常了;也可以再用groups命令确认所有必要的组都已添加。
内容的提问来源于stack exchange,提问作者DFaze

