使用lightdm启动dwm或桌面

2023-10-27

简介

LightDM 是一个跨桌面环境的显示管理器。它的特点有:

  • 跨桌面 - 支持不同的桌面环境.
  • 支持多种显示技术(X, Wayland, …)
  • 轻量级 - 低内存使用,高性能.
  • 支持定制会话.
  • 支持远程登录(XDMCP, VNC, XDMCP, 可插拔).
  • 完善的测试组件.
  • 低代码复杂度.

安装

sudo pacman -S lightdm lightdm-gtk-greeter lightdm lightdm-gtk-greeter-settings

Greeter

可能需要安装一个 greeter。 greeter 是提示用户输入密码的 GUI 界面。如果配置了自动登录,可以不使用 greeter。参考的 greeter 是 lightdm-gtk-greeter,默认的配置会使用它。

官方软件仓库包含如下 greeter:

  • lightdm-kde-greeter: KDE4 greeter.
  • lightdm-deepin-greeter (deepin-session-ui): Deepin 桌面提供.

其他的 greeter 可以从 AUR 安装:

  • lightdm-webkit2-greeter: 一个用 Webkit2 做主题引擎的 greeter. 替代 lightdm-webkit-greeterAUR。
  • lightdm-unity-greeterAUR: Ubuntu Unity 使用的 greeter.
  • lightdm-pantheon-greeter: 一个来自 ElementaryOS Project 的 greeter.

你可以通过更改配置文件的 [Seat:*] 部分设置 greeter:

/etc/lightdm/lightdm.conf

[Seat:*]
...
greeter-session=lightdm-yourgreeter-greeter

通过下面命令可以获取 greeter-session 的可用选项,/usr/share/xgreeters 目录下的每个 .desktop 目录都代表一个可用 greeter。下面例子中包含 lightdm-gtk-greeter 和 lightdm-kde-greeter:

$ ls -1 /usr/share/xgreeters/
lightdm-gtk-greeter.desktop
lightdm-kde-greeter.desktop

会话配置

会话,即在greeter中输入账号密码后将进入的程序。一般为WM或桌面。
多数显示管理器会读取 /usr/share/xsessions/ 目录已获取可用的会话列表,此目录中包含各个 DM/WM 的标准 桌面文件。

要新建会话,可以在 /usr/share/xsessions/ 中新建 .desktop 后缀的文件,文件示例:

[Desktop Entry]
Name=Openbox
Comment=Log in using the Openbox window manager (without a session manager)
Exec=/usr/bin/openbox-session
TryExec=/usr/bin/openbox-session
Icon=openbox.png
Type=Application

参考

https://wiki.archlinux.org/index.php/Display_manager_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)
https://wiki.archlinux.org/index.php/LightDM_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用lightdm启动dwm或桌面 的相关文章

  • 为 Qt 应用程序创建 Linux 安装

    我刚刚用 Qt Creator 制作了一个很棒的程序 我对自己很满意 如何将其从台式机移至笔记本电脑 那么 最好的方法是安装程序 对吗 对于 Ubuntu 这是一个 Debian 软件包 对吗 我怎么做 有人这样做过吗 他们可以分享 QT
  • 如何不断刷新屏幕并实时更新[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想在linux上写一个C程序 不断刷新屏幕并实时更新 例如类似于top终端中的命令 谁能指出我正确的方向 为了保持它跨终端类型的可移
  • 如何以编程方式从Linux中的进程名称获取进程ID

    在我的项目中 我们使用 ACE 自适应通信环境 中间件来编写可在 Windows 和 Linux 上运行的独立于操作系统的代码 要求是从进程名称中获取进程 ID 由于 ACE 不支持这一点 因此我们必须使用特定于平台的宏来分离 Window
  • 从 TypeScript 运行任何 Linux 终端命令?

    有没有办法直接从 TypeScript 类中执行 Linux 终端命令 这个想法是做类似的事情 let myTerminal new LinuxTerminal let terminalResult myTerminal run sudo
  • 无需 cron 在后台发送邮件

    我想知道是否有一种方法可以运行 PHP 循环 以便在后台向订阅者发送几百封电子邮件 我的目标是格式化新闻通讯 单击发送 然后关闭浏览器或更改页面 当然 发送电子邮件的实际过程将在后台运行 不会因浏览器关闭而中断 我知道这可以通过 cron
  • 如何在特定 systemd 服务重新启动时触发自定义脚本运行

    我想知道如何安排自定义脚本在重新启动服务时运行 我的用例是 每当重新启动 Tomcat 服务时 我都必须运行多个命令 我想知道是否有一种方法可以编写脚本并安排它在重新启动 Tomcat 服务时运行 我已将 tomcat 脚本设置为 syst
  • Linux shell 脚本中的 while 循环超时

    这工作正常 无限循环 while TRUE do printf done 我在尝试着timeout this while loop与timeout命令 所有这些都不起作用 timeout 5 while TRUE do printf don
  • .NET Core 中的跨平台文件名处理

    如何处理文件名System IO以跨平台方式运行类以使其在 Windows 和 Linux 上运行 例如 我编写的代码在 Windows 上完美运行 但它不会在 Ubuntu Linux 上创建文件 var tempFilename Dat
  • 并行运行 make 时出错

    考虑以下制作 all a b a echo a exit 1 b echo b start sleep 1 echo b end 当运行它时make j2我收到以下输出 echo a echo b start a exit 1 b star
  • 在 Linux 中禁用历史记录 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 要在 Linux 环境中禁用历史记录 我执行了以下命令 export HISTFILESIZE 0 export HISTSIZE 0 u
  • QFileDialog::getSaveFileName 和默认的 selectedFilter

    我有 getSaveFileName 和一些过滤器 我希望当用户打开 保存 对话框时选择其中之一 Qt 文档说明如下 可以通过将 selectedFilter 设置为所需的值来选择默认过滤器 我尝试以下变体 QString selFilte
  • Godaddy 托管上的 CakePHP 控制台

    我一直在努力让我的 CakePHP 网站在 Godaddy 网格托管 帐户上运行 我的蛋糕应用程序设置是从帐户的子目录托管的 并且可以通过子域访问 我必须调整我的 htaccess 文件才能使其正常工作 现在我需要让 CakePHP 控制台
  • ansible 重新启动 2.1.1.0 失败

    我一直在尝试创建一个非常简单的 Ansible 剧本 它将重新启动服务器并等待它回来 我过去在 Ansible 1 9 上有一个可以运行的 但我最近升级到 2 1 1 0 并且失败了 我正在重新启动的主机名为 idm IP 为 192 16
  • 使用 find - 删除除任何一个之外的所有文件/目录(在 Linux 中)

    如果我们想删除我们使用的所有文件和目录 rm rf 但是 如果我希望一次性删除除一个特定文件之外的所有文件和目录怎么办 有什么命令可以做到这一点吗 rm rf 可以轻松地一次性删除 甚至可以删除我最喜欢的文件 目录 提前致谢 find ht
  • 从 PL/SQL 调用 shell 脚本,但 shell 以 grid 用户而非 oracle 身份执行

    我正在尝试使用 Runtime getRuntime exec 从 Oracle 数据库内部执行 shell 脚本 在 Red Hat 5 5 上运行的 Oracle 11 2 0 4 EE CREATE OR REPLACE proced
  • awk 子串单个字符

    这是columns txt aaa bbb 3 ccc ddd 2 eee fff 1 3 3 g 3 hhh i jjj 3 kkk ll 3 mm nn oo 3 我可以找到第二列以 b 开头的行 awk if substr 2 1 1
  • Bash 解析和 shell 扩展

    我对 bash 解析输入和执行扩展的方式感到困惑 对于输入来说 hello world 作为 bash 中的参数传递给显示其输入内容的脚本 我不太确定 Bash 如何解析它 Example var hello world displaywh
  • 跟踪 Linux 程序中活跃使用的内存

    我想跟踪各种程序在特定状态下接触了多少内存 例如 假设我有一个图形程序 最小化时 它可能会使用更少的内存 因为它不会重新绘制窗口 这需要读取图像和字体并执行大量库函数 这些对象仍然可以在内存中访问 但实际上并没有被使用 类似的工具top它们
  • 如何检测并找出程序是否陷入死锁?

    这是一道面试题 如何检测并确定程序是否陷入死锁 是否有一些工具可用于在 Linux Unix 系统上执行此操作 我的想法 如果程序没有任何进展并且其状态为运行 则为死锁 但是 其他原因也可能导致此问题 开源工具有valgrind halgr
  • 应用程序无缘无故地被杀死。怀疑 BSS 高。如何调试呢?

    我已经在CentOs6 6中成功运行我的应用程序 最近 硬件 主板和内存 更新了 我的应用程序现在毫无理由地被杀死 root localhost PktBlaster PktBlaster Killed 文件和 ldd 输出 root lo

随机推荐

  • 【Ubuntu22使用过程问题记录】

    Ubuntu22 04 使用过程问题解决方案 1 系统基本设置 1 1 输入法 增加中文输入 1 Settings gt Region Language gt Manage Installed Languages gt 选中chinese
  • jmeter压测报错Non HTTP response code: java.net.ConnectException/Non HTTP response message: Connection ti

    最近在做性能测试过程中遇到了高并发时 后台监控各项指标都很正常 但是测试结果中很多Non HTTP response code java net SocketException Non HTTP response message Permi
  • 签名服务器调用接口

    package teste import java io UnsupportedEncodingException import java net URLEncoder import cn com infosec netsign agent
  • html前端技术开发,CSS标准文档流,建议收藏

    开始 我大学读的是大专 在学校学的是机电一体化 临近毕业的时候选择了学习web前端技术 因为做机电实在又累工资又低 而我更喜欢坐办公室的工作 有空调吹 我很现实 就是想多赚一点钱 到现在做了两年前端的小程序员 月薪是13K 经历过两次跳槽
  • GitLab WorkFlow

    在团队开发中 为了更好的协作 通常会采用一些工作流来最大程度提升效率 生产一个软件工序是比较复杂的 如果通过一个好的逻辑顺序去应用到一个软件开发的生命周期过程是非常重要的 GitLab WorkFlow 从构思到上线的十步 想法 每一个新建
  • 初学react(七):if 判断

    思路 先定义一个state里的一个状态 因为如果状态改变都会重新执行render 所以在render写上判断动态的赋值 也可以使用三目运算 import React from react import App css import Pers
  • jeesite框架介绍

    1 jeesite框架介绍 http wenku baidu com view 7e543c24e45c3b3567ec8baf html 2 jeesite开发环境搭建及部署 http wenku baidu com link url L
  • python3 题解(34 棋盘放麦子)

    棋盘放麦子 问题 国际象棋的棋盘有共有64格 传说国王为奖励它的发明人 答应了他的一个 小 要求 在棋盘的第1格放1粒小麦 第2格放2粒 第3格放4粒 第4格放8粒 每一格是前一格数目的2倍 这一共是多少小麦呢 是个天文数字 请你利用计算机
  • 【Linux篇】父子进程间的数据共享

    include
  • unity期末:从AR的角度观察与实现粒子系统效果

    一 前言 本次项目为本学期unity游戏编程的最后一次制作内容 同时也是期末大作业的考查内容 本次大作业的要求如下 内容 请参考以下技术主题 但不限于这些主题 运用手机拍若干全景图 贴到天空盒或球型天空 做一个简单校园漫游功能 粒子系统效果
  • C++STL库神器:nth_element() 详解

    nth element nth element 函数头文件 algorithm h 功能介绍 arr n 默认求第m大的元素 std nth element arr arr m arr n 定义cmp可求第m小的元素 bool cmp in
  • 单台服务器docker如何搭建rabbitmq集群

    文章目录 一 创建多个RabbitMQ容器 二 将RabbitMQ节点加入到集群中 三 测试 四 在多台服务器上部署RabbitMQ集群 五 通过nginx实现负载均衡 六 如何给RabbitMQ容器添加用户 七 碰到的问题 1 本文是在同
  • Altium AD20过孔盖油,通过设计规则实现过孔盖油,简便实用不会造成遗漏出错

    如果是将PCB源文件发给加工厂 只需说明过孔盖油 板厂就会帮你完成对应的操作 但为了避免源文件泄露 会选择Gerber文件 这时候过孔盖油就要自己来做了 如果没有对规则进行设置 那么切换到Solder层 默认的视图应该是这样的 过孔的周围多
  • Nginx 概述 如何正规安装 静态网页配置 反向代理配置 负载均衡配置

    目录 1 基本概念 1 1 Nginx初步认识 1 2 正向 反向代理 1 3 域名和IP 2 Nginx安装和配置 2 1 安装Nginx 2 2 配置 3 Nginx的使用 3 1 部署静态网页 3 2 反向代理和负载均衡 1 反向代理
  • Python基础知识

    目录 前言 一 Python虚拟环境 1 Python虚拟环境的意义 2 Python构造虚拟环境的方法 3 Python虚拟环境问题处理 二 Python其他知识点 1 pip忽略缓存安装 2 镜像源 3 python查找项目依赖 4 p
  • 谷歌翻译API-python接口-Googletrans

    Googletrans是一个免费且无限制的python库 可实现Google Translate API Google Translate交互式API可以用来调用诸如自动侦测语言种类和翻译之类的用途 英文网址 https py google
  • 用python画星空的代码简单,python星空浪漫表白源码

    大家好 给大家分享一下用python画星空的代码简单 很多人还不知道这一点 下面详细解释一下 现在让我们来看看 用python画星空源代码是什么 用python画星空源代码是from turtle import from random im
  • 计算机主机采用的电子器件发展顺序,计算机采用的主机电子器件的发展顺序是什么?...

    计算机采用的主机电子器件的发展顺序是 电子管 晶体管 中小规模集成电路 大规模和超大规模集成电路 按照计算机采用的电子器件不同将计算机划分为电子管 晶体管 中小规模集成电路 大规模和超大规模集成电路四代 计算机采用的主机电子器件的发展顺序是
  • 海神祭司被机器人拉出来_那一抹勾魂的蓝色,卡西欧海神Oceanus 系列介绍

    本内容来源于 什么值得买APP 观点仅代表作者本人 作者 木木滚滚 先前写的卡西欧G shock系列介绍的文章下面 有挺多老哥说想要看卡西欧海神的介绍文章 于是说写就写 也开启一个新的专栏系列文章 希望能坚持写下去 一 卡西欧手表的分类 我
  • 使用lightdm启动dwm或桌面

    简介 LightDM 是一个跨桌面环境的显示管理器 它的特点有 跨桌面 支持不同的桌面环境 支持多种显示技术 X Wayland 轻量级 低内存使用 高性能 支持定制会话 支持远程登录 XDMCP VNC XDMCP 可插拔 完善的测试组件