Programmaticaly更改lightdm自动登录会话类型

我有lightdm设置自动登录会话类型的问题(使用我的配置工具)。 Lightdm登录到之前选择的会话。 我看到自动登录会话在版本1.2.1中是UNIMPLEMENTED。 也许我可以以某种方式欺骗lightdm? 但似乎程序在停止时写入实际状态并将我的更改覆盖到/home/user/.dmrc和/var/cache/lightdm/user.dmrc。

目前我有两个会话:默认和自助服务亭。 在/etc/lightdm/lightdm.conf我有一行:user-session = desktop

但在我登录kiosk会话后,它始终启动。 更改.dmrc和/var/cache/lightdm/dmrc/user.dmrc不起作用。

我想我会尝试nodm显示管理器,因为我真正想要实现的是在gui配置工具中由管理员选择运行GUI会话。 另一个较低级别的工具是rungetty – 但我不知道这个程序(我发现了一些教程)。

解决!

Finnaly,经过2天尝试nodm,lxdm,rungetty等等。我发现(不是那样) lightdm简单解决方案:

 dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.Accounts /org/freedesktop/Accounts/User1000 org.freedesktop.Accounts.User.SetXSession string:kiosk 

这会将id为1000用户的默认xsession设置为kiosk

将来可能会在配置文件中执行相同的autologin-session选项(现在标记为UNIMPLEMENTED )。

在lightDM中,试试这个。

打开(gksu gedit)文件/etc/lightdm/lightdm.conf更改值(在#Seat配置中):

 #default-user=bob #default-user-timeout=5 #pam-service=lightdm 

至:

 default-user=username default-user-timeout=0 pam-service=lightdm-autologin 

你可以这样做:编辑/etc/gdm/custom.conf文件。

 [daemon] TimedLoginEnable=false AutomaticLoginEnable=true TimedLogin=(your username) AutomaticLogin=(your username) TimedLoginDelay=0 DefaultSession=gnome 

最后重新启动它,这将自动登录您的用户名。

如果您不想编辑文件,可以使用lightdm-set-defaults更改脚本或会从命令行更改会话。 使用-s选项。

 /usr/lib/lightdm/lightdm-set-defaults Usage: lightdm-set-defaults [OPTION...] - set lightdm default values Help Options: -h, --help Show help options Application Options: -d, --debug Enable debugging -k, --keep-old Only update if no default already set -r, --remove Remove default value if it's the current one -s, --session Set default session -g, --greeter Set default greeter -a, --autologin Set autologin user -i, --hide-users Set greeter-hide-users to true or false -m, --show-manual-login Set show-manual-login to true or false -l, --allow-guest Set allow-guest to true or false