美文网首页linux tools
Ubunut下几种设置脚本开机启动的方法

Ubunut下几种设置脚本开机启动的方法

作者: 疾飞 | 来源:发表于2019-05-28 23:55 被阅读3次

    一、运用设置服务的方法进行(Ubuntu server 18.0.4)

    1.建立启动文件
    $ sudo touch /etc/systemd/system/startup.service

    2.写入启动文件内容

    [Unit]
    Description=/etc/startup Compatibility
    ConditionPathExists=/etc/startup
    
    [Service]
    Type=forking
    ExecStart=/etc/startup start
    TimeoutSec=0
    StandardOutput=tty
    RemainAfterExit=yes
    SysVStartPriority=88
    
    [Install]
    WantedBy=multi-user.target
    

    3.创建指定的启动脚本并赋权测试

    # cat << eof > /etc/startup
    #!/bin/bash
    echo `date +%Y-%M-%S` >> /tmp/out
    eof
    

    $ chmod +x /etc/startup

    4.设置启动默认自定义启动服务并测试
    $ systemctl enable startup.service
    # systemctl start startup.service
    5.终极的的重启检查
    $ cat /tmp/out

    # cat /tmp/out
    2019-26-00
    2019-26-00
    

    二、使用update-rc.d添加启动
    1.首先编写好你的脚本文件,并赋权
    # cat alex_startup
    # chmod +x alex_startup

    # cat alex
    #!/bin/bash
    #alex' test start bash
    
    echo "## /etc/init.d/alex-update-rc.d" >> /tmp/out
    /bin/date +%D-%H-%M-%S >> /tmp/out
    

    2.把脚本放入 /etc/init.d/中,否者update-rc.d无法引入
    # ln -s /home.alex/alex /etc/init.d/alex_startup
    3.添加启动链接
    # update-rc.d alex_startup defaults

    PS:
    ①直接输入update-rc.d

    # update-rc.d
    update-rc.d: error: not enough arguments
    usage: update-rc.d [-f] <basename> remove
           update-rc.d [-f] <basename> defaults
           update-rc.d [-f] <basename> defaults-disabled
           update-rc.d <basename> disable|enable [S|2|3|4|5]
                    -f: force
    
    The disable|enable API is not stable and might change in the future.
    

    ②安装sysv-rc-conf软件查看开机启动项目,但是发现如果删去该脚本,也不能在该查询中移除,这个目前没有发现解决方法
    # apt-get install sysv-rc-conf #如果显示不能安装该命令,在源中添加 trusty字段即可
    如:deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse

    # sysv-rc-conf

    三.普通脚本建立方式就是在指定的启动目录/etc/rc?/local中创建规定的链接名即可

    # cat /etc/init.d/startup
    #!/bin/bash
    echo start test >> /tmp/out
    
    # chmod +x startup
    

    ln -s /etc/init.d/start /etc/rc5.d/S08start

    PS:
    自定义的脚本必须要在/etc/init.d目录中有,软连接名S表示开机启动,K表示不启动,08表示启动优先级别



    References:
    ubuntu-18.04 设置开机启动脚本
    Linux中设置服务自启动的三种方式

    PS:
    在Linux中利用Service命令添加系统服务及开机自启动

    相关文章

      网友评论

        本文标题:Ubunut下几种设置脚本开机启动的方法

        本文链接:https://www.haomeiwen.com/subject/ybtjzqtx.html