短篇故事
如何为使用 Shell 创建的用户将 Unity 设置为桌面环境?
很长的故事
在运行配置为 LAMP 的 Ubuntu 12.04 的虚拟机上,我需要为用户使用 Unity 桌面环境www-数据。
我需要这个来简化使用 PhpStorm 开发时的文件权限管理,因此当我保存文件时,它已经将 www-data:www-data 作为 group:owner。(也许有比 work as 更好的解决方案www-数据在 Unity 中,如果是,请告诉我)
我找不到任何自动将现有用户添加到 Unity 的方法,也许我搜索了错误的术语,所以我尝试了一种肮脏的手动方法,这些是我执行的步骤,其中一些是可选的,但在我的情况下很有用:
1)更改了主目录www-数据从 '/var/www' 到 '/home/www-data':
sudo usermod -d /home/www-data www-data
2)改变外壳www-数据从 sh 到 bash:
sudo chsh -s /bin/bash www-data
3)设置密码www-数据
sudo passwd www-data
4)因为我已经为另一个用户配置好了桌面环境'伊恩',我复制了现有用户'伊恩' 主目录到 www-data 主目录,保留权限然后更改组和所有者:
sudo cp -a /home/ian/. /home/www-data/
sudo chown -R www-data:www-data /home/www-data
5)添加www-数据对于 sudoers:
sudo usermod -aG sudo www-data
6)添加www-数据同一组伊恩
sudo usermod -a -G cdrom,dip,plugdev,sambashare,lpadmin www-data
7)配置欢迎程序以显示手动登录:
sudo echo 'greeter-show-manual-login=true' >> /etc/lightdm/lightdm.conf
8)重新启动虚拟机
sudo reboot
实际上我可以用www-数据我和用户有相同的桌面环境伊恩但我看不到www-数据在欢迎界面的可用用户列表中,以及“用户帐户”列表中。仅伊恩被展示。
我也尝试设置最小 uid=0在/etc/lightdm/users.conf没有运气。我遗漏了什么,有什么想法吗?
谢谢!
答案1
也许有比在 Unity 中以 www 数据工作更好的解决方案,如果有,请告诉我
我不确定你想做什么,但如果你需要在以另一个用户身份登录图形会话时使用 www-data 用户运行图形应用程序:
sudo apt-get install sux
sudo sux www-data
从此终端会话启动您的图形应用程序。
2.b www-data 用户的默认 shell 必须设置为允许登录的 shell(但您已将其更改为允许登录的 shell)。但是,由于您使用的是,因此您无需设置或解锁 www-data 的密码sudo sux www-data
,如果 www-data 有密码,您只需 即可sux www-data
。