使用自动登录时,如何更改默认会话?


73

启用lightdm自动登录后,将启动Unity 3D会话,而不是2D(或我要自动登录的任何其他Shell)。

有没有一种方法可以自动启动我想要的外壳程序(自动登录)?

无论如何,如果禁用了自动登录,则将启动上一次使用的会话,这很好。我只想选择自动登录的默认设置。

Answers:


74

会话列表在目录中描述/usr/share/xsessions

一些更常见的会话名称如下:

  • 对于unity-2d,会话文件称为ubuntu-2d.desktop
  • 对于gnome-classic,会话文件称为gnome-classic.desktop
  • 对于gnome-classic(无影响)又名gnome-fallback,会话文件称为gnome-fallback.desktop
  • 对于unity-3d,会话文件称为ubuntu.desktop
  • 对于Lubuntu,会话文件称为Lubuntu.desktop
  • 对于LXDE,会话文件称为LXDE.desktop

因此,如果将light-dm配置文件更改为“ ubuntu-2d”,则该会话将默认为Unity-2D

sudo nano /etc/lightdm/lightdm.conf

换线

user-session=ubuntu

user-session=ubuntu-2d

注意-如果您没有lightdm.conf文件,则对于自动登录,请对该文件使用以下值:

[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu-2d
autologin-user=myusername
autologin-user-timeout=0

另一种可能性是运行:

sudo /usr/lib/lightdm/lightdm-set-defaults -s <session-name>

例如:

sudo /usr/lib/lightdm/lightdm-set-defaults -s ubuntu-2d

lightdm.conf如果该文件尚不存在,它还将创建该文件。


如果该行在user-session=ubuntu文件中不存在/etc/lightdm/lightdm.conf,则只需将其作为最后一行键入:user-session=ubuntu-2d
Sepero 2015年

值得注意的是,当前发行版(肯定是16.04)将配置文件移动到/usr/share/lightdm/。我必须编辑lightdm.conf.d/50-ubuntu.conf
Gargravarr

24

奇怪的是,LightDM(Ubuntu 11.10的显示管理器,它提供图形化登录屏幕)没有记住您在重新启动后所做的选择。

您可以手动编辑相关的配置文件,该文件.dmrc位于您的主文件夹中。在Nautilus(文件浏览器)中,您必须按Ctrl+ H(或“ 视图” >“ 显示隐藏的文件”)才能查看它以及其他以.字符开头的文件。如果您有此文件(可能已做过),则其内容将类似于:

[Desktop]
Session=ubuntu

对于GNOME Classic,您可以将其更改为:

[Desktop]
Session=gnome-classic

或者对于GNOME Classic(无效果),您可以将其更改为:

[Desktop]
Session=gnome-fallback

如果您碰巧要使用Unity 2D(会话类型Ubuntu 2D),则可以将其更改为:

[Desktop]
Session=ubuntu-2d

如果根本没有该文件,则可以使用适当的内容创建它。

如果您想将GNOME ClassicGNOME Classic(无效果)设置为所有用户的默认会话类型-或者您不想这样做,但是上述特定于用户的方法不起作用-那么您可以编辑/etc/lightdm/lightdm.conf,将说的行user-session=ubuntu改为改为说user-session=gnome-classicuser-session=gnome-fallback(或user-session=ubuntu-2d)。考虑进行此操作时,请注意以下几点:

  1. 最好编辑用户主文件夹中的每个用户的配置文件,除非您有理由更喜欢更改全局配置(例如不起作用)。

  2. 由于这是一个全局配置文件,并且比您打算编辑的简单配置选项包含的内容多得多,因此建议您在编辑之前先备份它,以防万一您出错。您可以通过运行命令在终端中执行此操作sudo cp /etc/lightdm/lightdm.conf /etc/lightdm/lightdm.conf.old

  3. 该文件由root拥有,因此是上面的sudo命令。您还必须以根用户身份对其进行编辑。要以root用户身份在gedit中打开它,可以运行gksu gedit /etc/lightdm/lightdm.conf(在Terminal窗口中,或者在图形Run Application文本框中,按Alt+ 可以获取F2),也可以sudo -H gedit /etc/lightdm/lightdm.conf在Terminal窗口中运行。

您所遇到的行为似乎是一个错误,因此在通过查看手动编辑是否~/.dmrc有效收集了更多信息之后,您可能希望将其报告为一个。首先,请仔细阅读此内容,然后搜索以查看是否已报告类似的错误,然后通过调用ubuntu-bug正在运行的lightdm进程的PID来启动报告过程,或者差不多可以运行ubuntu-bug lightdm...在您我已经阅读了该指南

顺便说一句,除了Unity(会话类型Ubuntu),Unity 2D(会话类型Ubuntu 2D)和GNOME 3 Fallback(GNOME ClassicGNOME Classic(无效果))之外,您甚至还可以考虑使用Xfce4作为更轻量的选项。 (安装软件包xubuntu-desktop并选择会话类型Xubuntu)和LXDE(安装软件包lubuntu-desktop并选择会话类型Lubuntu)。

  • 比最初提出此问题时存在的版本更高的Ubuntu中Unity 2D和GNOME 3 Fallback不可用。(在最新版本中,Unity也不可用。)但是Xfce4 / XubuntuLXDE / Lubuntu仍然可用。
  • 如今,使用GNOME 3 Fallback的用户可能更喜欢该软件包提供的MATE桌面环境ubuntu-mate-desktop(请参阅Ubuntu MATE)。
  • Lubuntu仍然更轻巧(即,它往往消耗最少的资源,并且可以在更多旧硬件上正常工作)。但是它不像Xubuntu或Ubuntu MATE那样完整。

还有带有GNOME Shell的GNOME 3,而不是Unity(安装软件包gnome-shell并选择GNOME)和KDE 4 Plasma(安装软件包kubuntu-desktop并选择Kubuntu),但是它们不太可能比上述选项占用更少的资源。


15

要更改每个用户的默认设置,请检查

/var/lib/AccountsService/users

似乎此集.dmrc在用户家中。

干杯


12

在Lightdm中更改默认会话

sudo /usr/lib/lightdm/lightdm-set-defaults --session gnome-shell

1
谢谢,我实际上想要gnome shell,但是我发现了它sudo /usr/lib/lightdm/lightdm-set-defaults --session gnome-shell
wim 2011年

没问题。我无法对其进行测试,但是我提供的文档建议将gnome用于“ gnome-shell”。通过gnome进行会话是否给出错误?然后,我应该编辑答案
Ciaran Liedeman 2011年

没有,但是它走进老侏儒2
维姆

2

我编辑/etc/lightdm/lightdm.conf了以下内容:

[SeatDefaults]
greeter-session=unity-greeter
user-session=gnome-shell
autologin-user=paul

并且它会自动启动到gnome-shell。


1

我发现上述设置被lightdm存储的用户上次会话覆盖。您可能必须在处删除或编辑用户文件/var/cache/lightdm/dmrc才能启用全局默认设置。或者单独编辑user.dmrc包含以下内容的文件:

[Desktop]
Session=ubuntu

.dmrc文件究竟是什么?如何创建?
安迪

0

这可能在Ubuntu中不起作用,但在Fedora中对我有用。花了几天的时间才弄清楚,我想分享一下:

转到,/usr/share/xsessions然后/usr/share/wayland-sessions为每个以.desktop结尾的文件添加不同数字的前缀和破折号。
最低的数字将是默认值。例如,我希望将xfce设置为默认值,因此该文件名为1-xfce.desktop

希望这可以帮助。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.