LightDM详细介绍
本文的对当前我们的业务应用开发最值得关注的是隐藏用户列表、设置手动登录、通过LightDM的机制让用户自动登录。
什么是LightDM
LightDM是运行在Debian系列操作系统上的桌面显示管理器,它的全名是Light Display Manager,表面含义是轻量级桌面显示管理器。它是FreeDesktop工程的一部分。FreeDesktop是一个致力于Linux和其他类Unix上的X窗口系统的桌面环境之间的互操作性和基础技术共享的项目,由Red Hat公司的Havoc Pennington于2000年3月创立。官方网站是:https://www.freedesktop.org。最初的名称叫XDesktopGroup(X桌面工作组),其缩写"XDG"在现在的桌面开发的工作中仍然经常被用到。Ubuntu 16.04 LTS版本使用LightDM作为默认的窗口管理器。
配置
配置文件
LightDM配置由下列位置的文件提供:
/usr/share/lightdm/lightdm.conf.d/*.conf
/etc/lightdm/lightdm.conf.d/*.conf
/etc/lightdm/lightdm.conf
最新版本的LightDM把过时的配置节SeatDefaults
替换为Seat:*
。
系统提供的配置保存在/usr/share/lightdm/lightdm.conf.d/*.conf
,普通用户不可编辑。系统管理员可以使用配置文件/etc/lightdm/lightdm.conf.d/*.conf
和/etc/lightdm/lightdm.conf
覆盖系统配置。举例来说,如果你想覆盖系统配置的默认会话配置(/usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
提供),那么你可以新建一个文件/etc/lightdm/lightdm.conf.d/50-myconfig.conf
,写入如下代码:
[Seat:*]
user-session=mysession
有一个示例配置文件展示了LightDM可能识别的所有的配置,它压缩保存在:/usr/share/doc/lightdm/lightdm.conf.gz
。
这里还有一个额外的配置文件:/etc/lightdm/users.conf
。但是如果AccountsService
在你的系统上运行,那么这个配置文件将被忽略。如果你不确定配置文件是否已被忽略,可以运行:ps -aef | grep -i AccountsService
。
常见配置
隐藏用户列表
默认配置下,Ubuntu系统的Unity Greeter(或者一些其它系统的Greeter)展示所有可能的用户帐号列表。如果你想禁用这个功能(可能你有太多的用户或者基于安全考虑),使用以下配置。
[Seat:*]
greeter-hide-users=true
你也许需要显式启用手动登录以配合这个特性。
允许手动登录
默认配置下,Ubuntu系统的Unity Greeter(或者一些其它系统的Greeter)不允许用户手动输入用户名登录到系统。你可以用以下配置启用它:
[Seat:*]
greeter-show-manual-login=true
禁止临时帐户登录
临时帐户名是Guest。默认情况下LightDM允许你用Guest以临时用户的身份登录到会话中,从而进入系统,禁用方法是:
[Seat:*]
allow-guest=false
设置自动登录
要设置系统自动启动并登入的用户,设置autologin-user
。如果设置了autologin-user-timeout
,那么greeter将在自动登录发生之前显示这么多秒。在此期间如果存在用户操作超时将会取消。配置如下:
[Seat:*]
autologin-user=username
autologin-user-timeout=delay
如果你想设置自动登录到临时帐户会话可设置:
autologin-guest=true
改变默认的会话
默认的会话是由session packages(这是一个LightDM专有名词,没想到合适的翻译)提供的配置/usr/share/lightdm/lightdm.conf.d/
设置的。如果你需要覆盖这些,你可以设置:
[Seat:*]
user-session=name
配置中的name
指的是位于/usr/share/xsessions/*.desktop
的以.dekstop
扩展名结尾的文件的名称。
修改greeter
默认的greeter是由greeter packages(这是一个LightDM专有名词,没想到合适的翻译)提供的位于/usr/share/lightdm/lightdm.conf.d/
的配置设置的。如果你需要覆盖这些,你可以设置:
[Seat:*]
greeter-session=name
配置中的name
指的是位于/usr/share/xgreeters/*.desktop
的以.dekstop
扩展名结尾的文件的名称。
背景图片
LightDM不配置Greeter外观。合适的greeter做这个配置。Unity Greeter 默认展示当前选中的用户的背景图片。设置默认的背景图片,停止编辑/usr/share/glib-2.0/schemas/10_unity_greeter_background.gschema
开关,使用配置:
[com.canonical.unity-greeter]
draw-user-backgrounds=false
background='/foo/wallpaper.png'
并且运行sudo glib-compile-schemas /usr/share/glib-2.0/schemas/
以应用这些设置。
对于LightDM GTK+ greeter,编辑/etc/lightdm/lightdm-gtk-greeter.conf
,修改background=/usr/share/lubuntu/wallpapers/lubuntu-default-wallpaper.png
。background
的值改为自己想要的图片。
添加系统钩子
Hook一般译作钩子。
如查你需要在X服务器和用户的会话在启动、停止时进行一些特殊的行为,你可以参考以下配置设置一些命令:
[Seat:*]
display-setup-script=command
display-stopped-script=command
greeter-setup-script=command
session-setup-script=command
session-cleanup-script=command
session-wrapper=command
greeter-wrapper=command
其中greeter-wrapper
和display-stopped-script
配置不被Ubuntu 12.04 LTS版本支持。
display-setup-script
display-setup-script
在X服务器启动后、用户会话/greeter程序运行之前运行。如果需要在X服务器中配置任何特殊内容,请设置此选项。它作为root运行。如果该命令返回错误代码,则X服务器将停止。
display-stopped-script
display-stopped-script
在X服务器退出后以root身份运行。
greeter-setup-script
greeter-setup-script
是在greeter开始前运行的。它作为root运行。如果该命令返回一个错误代码,引导程序将无法启动(这将导致LightDM停止)。
session-setup-script
session-setup-script
在用户会话开始之前运行。如果这个命令返回一个错误,会话将不会启动(用户返回到一个greeter界面)。
session-cleanup-script
session-cleanup-script
在greeter或者用户会话停止时运行,以root身份运行。
session-wrapper
session-wrapper
是为会话运行的命令。此命令作为用户运行,需要执行参数中传递的命令以完成会话的运行。如果需要为用户会话进行特殊设置,请使用此选项。注意,默认值是lightdm-session
”`,因此如果需要覆盖该设置,应该链接到该设置。
greeter-wrapper
greeter-wrapper
是一个运行greeter的命令行。它相当于greeter的session-wrapper
。
求助!我看不到我的桌面
在graphics stack
(图形堆栈)中很多事情都可能出错。如果你看不到任何图形或者损坏的图片,下列尝试也许可以帮助你:
- 你可以按
ctrl+alt+f1
得到文本终端 - 检查LightDM的日志,位于
/var/log/lightdm
- 停止LightDM,运行
sudo systemctl stop lightdm
- 尝试再次启动LightDM:
sudo systemctl start lightdm
- 如果你有另外一个显示管理器,你可以去启动它,比如运行:
sudo systemctl start gdm
- 你可以设置默认的显示管理器,运行
sudo dpkg-reconfigure lightdm
- 检查系统的最新更新日期,特别是视频驱动。
- 文件记录这个BUG。如果您不确定原因在哪里(
lightdm
/unity-greeter
/unity
/X
/kernel
),那么针对lightdm的文件和错误将被筛选和重新分配(译者注:意思是多试几次,缩小问题范围)。
报告问题
存档一个BUG可以从终端运行下面的命令行:
ubuntu-bug lightdm
所有合适、合法的信息、日志都会添加到错误报告中。
LightDM详细介绍相关推荐
- HTML页面加载和解析流程详细介绍
浏览器加载和渲染html的顺序.如何加快HTML页面加载速度.HTML页面加载和解析流程等等,在本文将为大家详细介绍下,感兴趣的朋友不要错过 浏览器加载和渲染html的顺序 1. IE下载的顺序是从上 ...
- mysql为什么要压测_mysql集群压测的详细介绍
本篇文章给大家带来的内容是关于mysql集群压测的详细介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. mysql压测 mysql自带就有一个叫mysqlslap的压力测试工具,通 ...
- php比较运算符案列,PHP实例:PHP比较运算符的详细介绍
<PHP实例:PHP比较运算符的详细介绍>要点: 本文介绍了PHP实例:PHP比较运算符的详细介绍,希望对您有用.如果有疑问,可以联系我们. 比拟运算符种类 PHP实战如同它们名称所暗示的 ...
- Tempdb数据库详细介绍
Tempdb数据库详细介绍 一.Tempdb简介 tempdb是SQLServer的系统数据库一直都是SQLServer的重要组成部分,用来存储临时对象.可以简单理解tempdb是SQLServer的 ...
- linux路由介绍,Linux的路由表详细介绍
Linux的路由表详细介绍 一 在Linux下执行route命令[root@localhost backup]# route -nKernel IP routing tableDestination ...
- pythonexcel介绍_Python 中pandas.read_excel详细介绍
Python 中pandas.read_excel详细介绍 #coding:utf-8 import pandas as pd import numpy as np filefullpath = r& ...
- 渡神纪帧数测试软件,渡神纪芬尼斯崛起配置要求高吗 渡神纪配置要求详细介绍_游侠网...
渡神纪芬尼斯崛起配置要求高吗?本作将在12月3日登陆主机和PC,很多玩家比较关心游戏的配置,这里给大家带来了渡神纪配置要求详细介绍,快来了解下吧. 渡神纪配置要求详细介绍 最低要求(720p/30 f ...
- C++11 unordered_map详细介绍
整理的算法模板合集: ACM模板 目录: 1.介绍 1.1 特性 2. 模版 2.1 迭代器 3. 功能函数 3.1 构造函数 3.2 容量操作 3.2.1 size 3.2.2 empty 3.3 ...
- autosar中com模块_详细介绍AUTOSAR各个模块作用PART1(OS,SYS)
这片文章中我们详细讲解下每个模块的功能,上图是vector的autosar方案,每个模块的详细介绍后续会有单独文章进行讲解,请关注.以下是各个模块的简介 1.VHSM hardware Securit ...
最新文章
- Keil调试局部变量显示not in scope的问题解决
- [YTU]_2637(编程题:类---矩形类)
- 【题目分析】1059 Prime Factors (25 分)
- 【bzoj1597- [Usaco2008 Mar]土地购买】斜率优化
- 深度学习鼻祖杰夫·辛顿及巨头们的人才抢夺战
- ArcGIS 10.6 Data Interoperability Tools的安装与使用(附安装包下载)
- 记使用talend从oracle抽取数据时,数字变为0的问题
- linux计算目录下wc,Linux wc命令详解
- pymongo操作方法
- [leetcode-83-Remove Duplicates from Sorted List]
- 程序设计实习MOOC / 程序设计与算法(二)第二周测验(2018春季)
- 数字电子技术基础阎石老师第五版课后习题解答-很抱歉,其实才写了两道题,大家不要误点进来耽误时间了。但是开始写了又不想删掉,希望日后能补起来吧。
- IPv4到IPv6的改造转换方案(上):IPv6和IPv4优势对比
- 1.3.1 计算机的主要性能指标 (机器字长、数据通路带宽、主存容量、运算速度、吞吐量、响应时间、主频和时钟周期、CPI、CPU执行时间、MIPS、MFLOPS、GFLOPS、TFLOPS)
- 服务器IP被封的原因
- Langlands纲领介绍
- 黑暗城堡 LibreOJ - 10064(SPFA)
- 蓝牙篇之蓝牙核心规范学习笔记(V5.3)汇总
- 学习笔记(01):C++编程FFMpeg(QT5+OpenCV)实战--实时美颜直播推流-直播服务器介绍crtmpserver编译运行(ubuntu)...
- Ordering类-greatestOf