嵌入式linux root免密码,给嵌入式linux串口添加密码的一些总结

修改/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
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值