• Linux 实现开机跳过输入用户名和密码


    1、跳过密码验证

      很简单,只需把 /etc/passwd 中的 root:x:0:0:root:/root:/bin/bash,改为 root::0:0:root:/root:/bin/bash,就可以了,就是去掉了里面的 x,这样 root 用户就不用密码了,其他用户也一样。

      

    2、跳过输入用户名

      (1) 修改/etc/inittab

        在inittab中,有如下配置

          1:2345:respawn:/sbin/agetty tty1 9600

          2:2345:respawn:/sbin/agetty tty2 9600

          3:2345:respawn:/sbin/agetty tty3 9600

          4:2345:respawn:/sbin/agetty tty4 9600

          5:2345:respawn:/sbin/agetty tty5 9600

          6:2345:respawn:/sbin/agetty tty6 9600

        里面表示系统可以有六个控制台,可以用ALT+(F1~F6)来切换。而 /sbin/agetty 就是一个登陆验证程序,执行它,会提示用户输入用户名和密码,然后启动一个指定的shell(在passwd文件中指定的)。

        所以,我们只需将其修改为不执行 agettty,而是执行自己编写的一个脚本,就可以跳过用户名和密码的输入,这里我自己编写的执行脚本的 mylog.sh。修改如下:

          1:2345:respawn:/usr/bin/mylog.sh tty1 9600 

        其中 /usr/bin 是保持脚本的路径,mylog.sh 是脚本名称。这里要注意,里面可能一些是Debug输出口或者其他用户的控制台,你要找到对应你要免输入登录的用户的控制台才行

             修改参考图如下,下图系统里的文件截图参考图跟我上面的多控制台配置数量有差别,不过原理一样,贴图只是为了方便参考。

              

                  这里我在 /usr/bin/ 下放了一个测试脚本 mylog.sh ,这样系统启动时就会执行那个脚本,脚本内容:

    #!/bin/bash
    
    /bin/login -f root  #执行root用户登录操作
    
    #这个脚本你还可以放一些其他操作在这里也行,不过需要注意的是,这里的操作输出信息你开机自动登录后是不会显示出来的
    #你可以利用这里结合开机自启动程序做很多的操作,开机自启动参考我另外博客:https://www.cnblogs.com/xingboy/p/15909279.html
  • 相关阅读:
    硬盘的结构和介绍,硬盘MBR详细介绍(超详细彩图)
    websocket协议学习
    Qt4可以使用trUtf8函数,其内容可以是中文,也可以是F硬编码
    QString转换为LPTSTR(使用了reinterpret_cast,真是叹为观止,但是也开阔了思路),三篇文章合起来的各种转换方法
    系统高可用
    Visual Studio
    管道是如何建立起来的?
    CLR和.Net对象
    任务调度
    路由与控制器
  • 原文地址:https://www.cnblogs.com/xingboy/p/16054972.html
Copyright © 2020-2023  润新知