• 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
  • 相关阅读:
    【SQL Server学习笔记】Service Broker创建异步的、数据驱动的消息应用程序
    记录几句不错的话
    DBA最缺的不是技术
    小数点引起的数据类型转换问题
    hdu 3062 2SAT最基础题
    POJ 1679 判断最小生成树是否唯一
    POJ 1459 构图+最大流(Edmond_karp模版)
    POJ 3522 最大边与最小边差值最小的生成树
    POJ 1659 根据度序列构图
    POJ 1273 求最大流(Edmond_karp模板题)
  • 原文地址:https://www.cnblogs.com/xingboy/p/16054972.html
Copyright © 2020-2023  润新知