【求助】我裁剪了LFS,现在想去掉登陆部分,让我的程序一开机就跑起来,怎么做?
时间:2007-11-29
来源:互联网
各位好:如题,
我裁剪了LFS大概40M,放在CF卡里,可以启动起来
1,现在想去掉登陆部分,(开机后不用登陆)
2,让我的程序一开机就跑起来,(我的程序成为一个自动运行的服务)
怎么做?谢谢各位
我裁剪了LFS大概40M,放在CF卡里,可以启动起来
1,现在想去掉登陆部分,(开机后不用登陆)
2,让我的程序一开机就跑起来,(我的程序成为一个自动运行的服务)
怎么做?谢谢各位
作者: 信天游 发布时间: 2007-11-29
研究一下系统的启动脚本吧
作者: csfrank 发布时间: 2007-11-29
1.我想可能需要改动一些软件包的源码,比如shadow包里的一些源码,还有sysvinit,util-linux等等的源码。或找一些其他可替代的包。只是改动启动脚本我认为不可行。
作者: hohoxu_hao115 发布时间: 2007-11-29
昨天我看了一下源码,只是改动util-linux里的agetty.c和shadow里的login.c就基本可以做到了,不过可能导致其他问题。
登录过程大概是这样的kernel->init->agetty->login
首先,根据/etc/inittab,init启动agetty(似乎是通过读写/dev/initctl这个管道设备,没仔细看),然后agetty获取登录用户名,以此为参数调用/bin/login,login获取密码,进行验证。如果登录失败,则login程序循环,获取用户名和密码,进行登录,直到达到最大次数。
因此,去掉用户输入过程(可以通过文件获取要登录用户名,或写死在程序里),取消密码验证,就可以直接登录了。
登录过程大概是这样的kernel->init->agetty->login
首先,根据/etc/inittab,init启动agetty(似乎是通过读写/dev/initctl这个管道设备,没仔细看),然后agetty获取登录用户名,以此为参数调用/bin/login,login获取密码,进行验证。如果登录失败,则login程序循环,获取用户名和密码,进行登录,直到达到最大次数。
因此,去掉用户输入过程(可以通过文件获取要登录用户名,或写死在程序里),取消密码验证,就可以直接登录了。
作者: hohoxu_hao115 发布时间: 2007-11-30
下面这种方法简单实用:
Linux的一个非常重要的特点就是多用户和其安全性能的特点.笔者在工作的时候发现,工控领域的控制器由于需要控制现场,因此发生故障,机器自动重启时,要求其能自动执行相应的应用程序执行工作,这时候登陆程序变成绊脚石,需要去掉.
笔者在网上查找相关资料的时候发现,大多是要更改原代码,或者配置文件,更改相当麻烦.笔者通过阅读mingetty源程序,发现该程序的参数已经支持了自动登陆的功能.
下面我将详细解说mingetty程序的参数意义:Software:mingetty-1.07
参数 意义
-a 自动登陆,后面参数为用户名
-d 延时,后面参数为延时时间
-l 所使用的登陆程序,后面参数为所使用的登陆程序名
-n 优先级,设定优先级
-r 根文件系统
-w 更改当前工作目录
修改/etc/inittab文件,在相应行行尾,增加:
1:2345:respawn:/sbin/mingetty tty1 -a root
2:2345:respawn:/sbin/mingetty tty2 -a root
3:2345:respawn:/sbin/mingetty tty3 -a root
4:2345:respawn:/sbin/mingetty tty4-a root
5:2345:respawn:/sbin/mingetty tty5 -a root
6:2345:respawn:/sbin/mingetty tty6 -a root
重新启动机器测试
来源:Linux公社 作者:Linuxidc
Linux的一个非常重要的特点就是多用户和其安全性能的特点.笔者在工作的时候发现,工控领域的控制器由于需要控制现场,因此发生故障,机器自动重启时,要求其能自动执行相应的应用程序执行工作,这时候登陆程序变成绊脚石,需要去掉.
笔者在网上查找相关资料的时候发现,大多是要更改原代码,或者配置文件,更改相当麻烦.笔者通过阅读mingetty源程序,发现该程序的参数已经支持了自动登陆的功能.
下面我将详细解说mingetty程序的参数意义:Software:mingetty-1.07
参数 意义
-a 自动登陆,后面参数为用户名
-d 延时,后面参数为延时时间
-l 所使用的登陆程序,后面参数为所使用的登陆程序名
-n 优先级,设定优先级
-r 根文件系统
-w 更改当前工作目录
修改/etc/inittab文件,在相应行行尾,增加:
1:2345:respawn:/sbin/mingetty tty1 -a root
2:2345:respawn:/sbin/mingetty tty2 -a root
3:2345:respawn:/sbin/mingetty tty3 -a root
4:2345:respawn:/sbin/mingetty tty4-a root
5:2345:respawn:/sbin/mingetty tty5 -a root
6:2345:respawn:/sbin/mingetty tty6 -a root
重新启动机器测试
来源:Linux公社 作者:Linuxidc
作者: 信天游 发布时间: 2007-11-30
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28