ubuntu设置开机启动图形应用程序,替换默认图形桌面

一、前言

无论你想要在ubuntu 12.04(11.10适用)开机启动图形程序,或者非图形程序,相信这篇文章能帮上大忙。

我将根据我的需求讲解我的做法,并解释为什么这么做。完了以后,各位看官根据自己的需求不加修改或稍加修改即可适用。我这边,总得来说,需求是做一个RDP瘦客户端,在一个板子上装上ubuntu 12.04,然后要这个系统启动后能立即弹出RDPclient登录框,而不是进入ubuntu的图形桌面。

二,三部分讲解我是怎么做的,四部分总结设置程序为开机启动的方法,五部分主要针对需要把图形界面程序弄成开机启动的同学,讲解startx。

第六部分为后来补充的:如何关闭ubuntu的启动时载入画面(“loading screen”)。

二、阻止默认图形桌面启动

ubuntu 12.04默认的开机会进入一个图形界面,用命令pstree可以看到图形界面所在的进程树:

1343355802_5865

首先要做的,就是阻止这个lightdm的进程开机启动。 做法:

一、查看文件/etc/init/rc-sysinit.conf,在第14行附近:确认“env DEFAULT_RUNLEVEL=2”。2是新装系统默认的,确保不被修改。

二、编辑文件 /etc/init/lightdm.conf,在第12行附近,原句“ and runlevel [!06]” 改为“ and runlevel [!026]”。

解释:linux系统都有一个运行级别(runlevel)的概念,不同的运行级别配置将导致系统的启动过程有很大差异,比如当配置 runlevel 为 1 是,是不进入图形界面的。系统启动过程中会有一个init进程来拉起许多其他进程(各种系统服务,窗口界面)。在ubuntu上(11.10,12.04是这样,其他版本或其他linux发行版不确定)init会执行两个目录下的脚本,一个是/etc/init/下的,另一个是/etc/rc?.d/下的,问号可能是0~6的其中一个数字,代表运行级别。接下来,讲解一下流程以加深理解。

在ubuntu上,init进程首先执行/etc/init/目录下的rc-sysinit.conf,这个文件指明了本次启动的默认运行级别。这是上面第一步的意义:确保默认运行级别是2。接下来目录/etc/init下的其他脚本的执行都会根据不同的运行级别做出不同的动作,比如lightdm会判断运行级别是否处于1,2,3,4,5中的一个,是则启动l

原文链接:https://blog.csdn.net/liebergott/article/details/7793408

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享