[转]busybox登陆后没要求输入密码的解决办法

转自:http://blog.chinaunix.net/uid-8058395-id-65785.html

1.制作好ramdisk之后 通过串口进入系统 却发现系统直接登录进去了 并没有要求用root用户名和密码进行登录,需修改/etc/inittab 文件:

[root@localhost etc]# cat inittab
#/etc/inittab
console::sysinit:-/etc/init.d/rcS
#::respawn:/bin/login
tq2440_serial0::respawn:/sbin/getty -L tq2440_serial0 115200 vt100
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -r -a

然后还得在/etc/下添加group shadow passwd这3个文件

2.busybox提示can't access tty.job control turned off 解决方法

/etc/inittab写法如下
对于X86:
 tty1::respawn:/sbin/getty 38400 tty1
 tty2::respawn:/sbin/getty 38400 tty2 

对于ARM:
首先确保在/dev/ttyS0存在,否则自己在/linuxrc或/etc/rcS或/urs/local/rc.local中加入
ln -s /dev/tts/0 /dev/ttyS0
ln -s /dev/vc/0 /dev/tty0
ln -s /dev/vc/1 /dev/tty1
ln -s /dev/vc/2 /dev/tty2
注意:确保在执行下面的语句前在/dev下建立ttyS0 

方法1:
/etc/inittab写入
console::sysinit:-/etc/rcS
ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100 

方法2:
/etc/inittab写入
console::sysinit:-/etc/rcS
ttyS0::respawn:-/bin/sh
前者需要登陆验证,会出现提示输入用户名和密码,后者不会 

方法3:
修改内核源码
在内核源码drivers/char/tty_io.c中将
noctty = 1
改为
noctty = 0
然后
/etc/inittab可以使用默认的,也可以写成:
console::sysinit:-/etc/rcS
console::respawn:/sbin/getty console 115200 ttyS0

原文地址:https://www.cnblogs.com/liangwode/p/5710393.html