Answers:
startx
运行xinit
将启动X服务器和客户端会话。客户端会话(~/.xinitrc
如果存在)(否则)/etc/X11/xinit/xinitrc
(位置在发行版之间可能有所不同)。该脚本的功能在发行版之间有所不同。在Debian(包括Raspbian等衍生产品)上,/etc/X11/xinit/xinitrc
运行/etc/X11/Xsession
,然后在中运行脚本/etc/X11/Xsession.d
。Debian的脚本,寻找在其他文件中的用户会话(~/.xsession
,~/.xsessionrc
,~/.Xsession
),如果没有用户设置适用,运行x-session-manager
(落回x-window-manager
,如果没有安装[会话管理器],回落至x-terminal-emulator
在偶然的情况下,没有窗口管理器已安装)。
如果要控制执行的内容,可以创建一个用户文件~/.xsession
或~/.xinitrc
。~/.xsession
如果您登录到显示管理器(即,如果您在GUI窗口中键入密码),也会使用该文件。该文件~/.xinitrc
特定于xinit
和startx
。使用~/.xsession
through /etc/X11/Xsession
会设置诸如输入法,资源,密码代理等内容。如果使用.xinitrc
,则必须手动完成所有这些操作。再一次,我在这里描述Debian,其他Unix变体可能会以不同的方式进行设置。使用~/.xinitrc
指定当您运行什么被执行startx
或者xinit
是普遍的。
无论您使用~/.xinitrc
还是~/.xsession
,此文件(通常是一个shell脚本,但是如果您真的想使用其他东西都不一定需要)必须准备任何需要准备的内容(例如键盘设置,资源,未启动的applet)通过窗口管理器等),然后最后运行管理会话的程序。脚本结束后,会话终止。通常,您将exec
在脚本末尾使用,以会话管理器或窗口管理器替换脚本。
您的系统可能具有/usr/bin/startlxde
系统范围的默认会话管理器。在Debian和衍生产品上,您可以使用以下命令检查可用的会话管理器:
update-alternatives --list x-session-manager
或获得更详细的说明,以表明当前使用的是哪个
update-alternatives --display x-session-manager
如果LXDE不是系统范围的默认值,并且您希望将其设置为帐户的默认值,则可以使用以下~/.xsession
文件:
#!/bin/sh
exec startlxde
在某些Unix变体上,该命令只能用于图形登录,不能用于图形登录startx
,因此您还需要创建一个相同的~/.xinitrc
。(或者不完全相同:在中~/.xsession
,您可能想要做其他事情,因为这是在图形会话中执行的第一个文件;例如,您可能放在. ~/.profile
顶部以设置一些环境变量。)
如果要一次性尝试其他环境,则可以指定其他程序在其startx
自身的命令行上运行。该startx
程序有一个怪癖:您需要使用该程序的完整路径。
startx /usr/bin/startkde
该startx
命令还允许您指定要传递给服务器的参数。例如,如果要同时运行多个GUI会话,则可以每次传递不同的显示号。--
在的命令行后传递服务器参数startx
。
startx /usr/bin/startkde -- :1
否:startx
是可配置的。根据手册页:
为了确定要运行的客户端,
startx
首先.xinitrc
在用户的主目录中查找一个名为的文件。如果没有找到,它使用文件xinitrc
的xinit
库目录。
startx
不是启动X的唯一方法(从中可以看到startlxde
)。该startx
手册页再次帮助:
startx脚本是xinit(1)的前端,它为运行X Window System的单个会话提供了更好的用户界面。它通常不带参数运行。
在另一方面,如果你想选择一个GUI(LXDE,KDE等),然后xdm
和外观相似,例如kdm
,gdm
或LightDM
用于选择不同的桌面类型。在Debian上,我通常使用kdm
,因为它允许使用不同的桌面类型。打包程序gdm
不允许大多数台式机类型,因此不适合我的需求。
xdm
使用一组不同的脚本来启动,例如,您的~/.xsession
脚本以及系统脚本。相似者可能会忽略这一点,并使用自己的脚本。但这是一个起点。
.xinitrc
是一个脚本,可对其进行配置。如果进行编码,它可以直接运行LXDE。
startlxde
不是xinit的前端,它是LXDE会话管理器的启动器。它不能替代startx
,可以在中执行~/.xinitrc
。
startx
开始默认的Xfce4会话。从我妻子的用户登录tty1或tty2。她的startx
命令设置为运行Cinnamon(在中指定~/.xsession
)。对于第二台X服务器,我不必指定$DISPLAY
您答案最后一部分中提到的。尽管那确实可行。它自动使它成为第二个$DISPLAY
等。但是设置很棒。没有登录和注销图形会话的权限,只是用于切换用户配置文件的键盘快捷键。感谢您的帮助!