欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > linux >内容正文

linux

linux只允许从ttyS0设备登录,linux自动以root登录,并自动启动用户程序的设置方...

发布时间:2023/12/19 linux 35 豆豆
生活随笔 收集整理的这篇文章主要介绍了 linux只允许从ttyS0设备登录,linux自动以root登录,并自动启动用户程序的设置方... 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

第一步:删除root用户

vi /etc/passwd

该文件的第一行:root:X:0:0:root:/root:/bin/bash,只需要把第二个字段X删除就可以。变为: root::0:0:root:/root:/bin/bash

vi /etc/shadow

该文件的第一行:root:!^*@(*&:0:99999:7::1,只需要把第二个字段删除就可以。变为: root::14125:0:99999:7::1 至此,就把root用户的密码删除了。

第二步:在系统启动时自动以root用户登录

1:2345:raspawn:/sbin/getty 38400 tty1 (用/sbin/mingetty来启动终端,tty1表启动的终端号)

修改tinylogin里getty.c里的源码char *logname = "root";替换掉tinylogin执行文件

这样,系统启动时就会以root用户自动登录,而不需要手动输入用户名。

第三步:系统刚启动时,用户主目录为/root ,要把系统启动是要自动启动的程序放在此目录下。

第四步:在配置文件中添加自动启动的程序(main是要自动启动的程序)

vi /root/.profile 在此文件的末尾添加 /root/main即可

针对IMX6的系统是如下解决的,并且不影响CTRL+C:

在/home/root创建login.sh文件

#!/bin/sh

/bin/login -f root

在etc/init.d/rc_mxc.S文件按照如下修改

if grep -sq ttymxc0 /proc/cmdline; then

/sbin/getty -n -l /home/root/login.sh 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

参考:https://blog.csdn.net/asmxpl/article/details/21701473

使用关键字 sysvinit, 加上前面的错误信息, 发现人家都是使用 getty.于是修改inittab respawn 一行如下:

T0:2345:respawn:/sbin/getty-L ttyS2 115200 vt100

此时登录时需要帐号,密码, 但是ctrl-c 可以正常工作。

开始研究 getty 自动登录, 从:

http://forum.ubuntu.org.cn/viewtopic.php?f=86&t=88847&start=0

得到答案:

修改inittab respawn 一行

T0:2345:respawn: /sbin/getty -n -l /bin/autologin 115200 ttyS2 vt100

并创建可执行文件:/bin/autologin

#!/bin/sh

/bin/login -f root

总结

以上是生活随笔为你收集整理的linux只允许从ttyS0设备登录,linux自动以root登录,并自动启动用户程序的设置方...的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。