请教lfs中自动登录的问题(结贴)
时间:2008-11-20
来源:互联网
试过很多方式,修改过util-linux-2.12r/login-utils/下的源文件,并编译
在agetty.c的源代码中的第366行和367行
366 while ((logname = get_logname(&options, &chardata, &termio)) == 0)
367 next_speed(&termio, &options);
此处调用了get_logname得到用户输入的用户名,get_logname在1014行调用了do_prompt函数,输出了登录的提示符,类似于“login:”。这里,我们把366和367行注释,直接赋值logname为root:
366 //while ((logname = get_logname(&options, &chardata, &termio)) == 0)
367 // next_speed(&termio, &options);
368 logname = “root”;
修改源login命令的源代码
login程序在getty的同一个进程空间中运行,接受getty传来的用户名参数作为登录的用户名。
在login.c的源代码中的第407行:
407 passwd_req = 1;
通过对源代码的分析,此处为密码是否需要验证的一个开关。我们修改此处,把密码需要验证的开关直接关闭:
407 //passwd_req = 1;
408 passwd_req = 0;
结果为用户名可以不输入,但是登陆提示输入密码。
请大虾们讨论如何解决这个问题?
作者: figured69 发布时间: 2008-11-20
方法同上
利用lfs中编译util-linux-2.12r的命令编译出agetty
然后make clean
./configure
cd login-utils
make login
编译出login放入/bin/
重启,自动进入bash。
作者: figured69 发布时间: 2008-11-21
作者: hongfeng 发布时间: 2008-11-21
作者: figured69
问题解决,结贴。
方法同上 利用lfs中编译util-linux-2.12r的命令编译出agetty 然后make clean ./configure cd login-utils make login 编译出login放入/bin/ 重启,自动进入bash。 |
LFS中使用的是shadow包中的login,所以在login-utils包中修改login源码,就需要进入login-utils目录编译生成login
在新版本中configure是加上--enable-login-utils就可以了
作者: lofeng410 发布时间: 2008-11-27
现在只好用livecd来上网
提示错误:
INIT:ID "6" respawning too fast:disabled for 5 minutes
INIT:no more processes left in this runlevel
作者: lofeng410 发布时间: 2008-11-27
作者: ti8er 发布时间: 2008-11-27
只是把默认的runlevel改为3,其他的没有动。
我实在centos5.2中替换的,还好有备份,已经恢复过来了~~
作者: lofeng410 发布时间: 2008-11-27
kernel /boot/kernel root=/dev/hd rw init=/bin/bash --rcfile /etc/profile
bash.JPG (66.4 KB, 18 次查看) |
作者: ServerOnly 发布时间: 2008-11-28
作者: ti8er 发布时间: 2008-11-28
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28