开发板启动内核后,一般是直接按回车键就能直接进入文件系统,以前一直搞不懂为什么
不需要用户密码
验证,今天上网查看了一下,原来是因为配置文件的问题。
原来一直以为用户密码验证是由运用程序做的,后来,上网查了一下,原来是由文件系
统完成的,
在编译 busybox 的时候把相关的选项选上,就可以支持用户密码登录了,见下图。
编译好 busybox 之后,在可执行文件中,可以找一个文件名为 login 的软链接,就
是负责用户验证登录的。
第一步:
可以直接拷贝主机的 passwd 和 shadow 两个文件到开发板的/etc 目录下.
第二步:
以在/etc 创建一个 inittab 文件,
添加
::respawn:-/bin/login 和
::respawn:/sbin/getty -L tty 115200 vt100(这里的串口选择看下面)
到::sysinit:/etc/init.d/rcS 的后面。
第三步:
在/etc/init.d/rcS 文件中加入
/bin/login 加到最后面(最后一行)
passwd root 修改开发板 root 密码
重启开发板,登录就需要密码验证了
要添加串口登录密码就需要修改 /etc/inittab 文件的配置 但是不同的开发板情况不一样,
有的是没有这个文件的,BusyBox 会检查/etc/inittab 文件是否存在, 如果此文件不存在,
BusyBox 会使用缺省的 inittab 的配置。它主要会为系统重引导,系统挂起以及 init 重启
动设置缺省的动作。此外, 它还会为头四个虚拟控制台(/dev/tty1 到/dev/tty4)设置启动
shell 的动作。如果并未建立这些设备文件, BusyBox 将会报错。 如果存在/etc/inittab
文件, BusyBox 会予以剖析, 并将其中的命令记录在内部的数据结构中, 以便适时执行。
BusyBox 能
够识别的 inittab 文件格式, 在 BusyBox 套件附带的文档中有很好的说明。
inittab 里面的内容有一定的格式,具体格式网上很多,这里就不再细说了。
一、
如果是有这个文件 vi /etc/inittab 打开
修改/etc/inittab 文件
把
::askrst:-/bin/sh
tty2::askrst:-/bin/sh
等全部注掉
评论0