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。使用~/.xsessionthrough /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等。但是设置很棒。没有登录和注销图形会话的权限,只是用于切换用户配置文件的键盘快捷键。感谢您的帮助!