Linux开发板启动需要登录密码设置方法

开发板启动内核后,一般是直接按回车键就能直接进入文件系统,以前一直搞不懂为什么不需要用户密码
验证,今天上网查看了一下,原来是因为配置文件的问题。
原来一直以为用户密码验证是由运用程序做的,后来,上网查了一下,原来是由文件系统完成的,
在编译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文件

    ::askfirst:-/bin/sh
    tty2::askfirst:-/bin/sh
    等全部注掉
    增加一行
    ::respawn:/sbin/getty -L ttyS0 115200 vt100
    这个ttyS0是串口设备的设备文件但是不同的系统,设备文件名由于串口驱动的不同而不同,那么如何确认自己的串口设备是哪一个呢
    方法是 :
    cd /dev //打开显示设备文件的文件夹 dev
    ls ttyS* //显示所有前四个字母是ttyS的设备文件
    我的系统里出现的是 ttySAC0 、ttySAC1、ttySAC2、ttySAC3、ttySAC4
    用来确定是哪个串口设备的方法是 echo qqqqqqq > /dev/ttySAC0我把上面5个设备全试了一遍发现只有ttySAC0可以打印出 qqqqqqq 说明ttySAC0就是我要找的串口设备文件。
    然后 我将::respawn:/sbin/getty -L ttyS0 115200 vt100中的ttyS0替换为 ttySAC0
    然后保存退出
    然后在命令行下敲入passwd
    这时系统会提示你给root设置一个密码,设定密码并确认密码后
    reboot重新启动
    重启后就会需要用户名跟密码。
    xxxxxx login: //root
    passwd:// 输入之前设定的密码
    但是每次退出时必须用exit命令退出终端,如果直接拔掉串口线,下次插上则可以直接进入系统,不需要输入密码。
    有的文章说终端设置中流控要选择XON/XOFF,不然没有办法输入用户名密码。但我尝试了流控选择 “无” 输入用户名和密码也是可以进入的。
    有必要提一下的是 sbin下的getty是Linux下的一个开启和设置终端的命令,进行终端的开启、终端初始化、设置终端。
  • 二、
    如果/etc下没有 inittab 这个文件,BusyBox会使用缺省的inittab的配置
    也就是说默认的启动脚本将会被启动,如果想要设置一个串口登录密码,需要在/etc下创建一个inittab文件,文件的内容是
    ::sysinit:/etc/init.d/rcS //sysinit后面的路径是系统启动所需要的启动脚本,系统的不同路径也不一样,可以根据自己的需要进行添加
    ::respawn:/sbin/getty -L ttyS0 115200 vt100 // ttyS0根据( 一、)中的方法填写
    然后设置密码,重启 就OK了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

栋哥爱做饭

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值