i.MX6Ul arm linux 开机自动root登陆系统及自动运行程序

时间:2021-12-18 10:31:19

1,实现开机自动root登陆系统可以在/etc/inittab文件中添加  ::askfirst:-/bin/sh    

    这种方式会提示"Please press Enter to activate this console",等待用户输入回车才能进入系统。

2,

     如果想去掉每次开机完后的“Please press Enter to activate this console”这句,也就是实现开机自动登录,只需将::askfirst:-/bin/sh改为::respawn:-/bin/sh即可,如果发现没有inittab那么就自己建一个,其他的板子可以根据自己的情况修改脚本,都差不了多少。


开发板原版系统inittab文件为

# see busybox-1.00rc2/examples/inittab for more examples
::sysinit:/etc/rc.d/rcS
::respawn:/etc/rc.d/rc_mxc.S
::ctrlaltdel:/sbin/reboot
::shutdown:/etc/rc.d/rcS stop
::restart:/sbin/init


修改之后则为:


# see busybox-1.00rc2/examples/inittab for more examples
::sysinit:/etc/rc.d/rcS
::respawn:-/bin/sh
::ctrlaltdel:/sbin/reboot
::shutdown:/etc/rc.d/rcS stop
::restart:/sbin/init


在被替换的一句中::respawn:/etc/rc.d/rc_mxc.S 中实际是根据rc_mxc.S文件进行指令命令。在本系统中rc_mxc.S文件内容为

#!/bin/bash
#
if grep -sq ttymxc0 /proc/cmdline; then
/sbin/getty -L ttymxc0 115200 vt100
elif grep -sq ttymxc1 /proc/cmdline; then
/sbin/getty -L ttymxc1 115200 vt100
elif grep -sq ttymxc2 /proc/cmdline; then
/sbin/getty -L ttymxc2 115200 vt100
elif grep -sq ttymxc3 /proc/cmdline; then
/sbin/getty -L ttymxc3 115200 vt100
else
sleep 100000
fi

可以发现与网上别的方法里面的修改 /sbin/getty -n -L xxx 115200 xxx 之类的 实际修改的是同一部分的内容。


 3,为了实现开机自动运行程序可以把 可执行文件的路径放在 /etc/profile中,例如在 /root/文件夹下有可执行文件 demo 则只需要在 profile 最后添加一句 /root/demo 即可 ,若要后台运行 则为 /root/demo &