zoukankan      html  css  js  c++  java
  • Ubuntu 18.04 程序设置开机自启动

    引子

    虽然现在docker、k8s大行其道,我们的世界似乎已经被容器主宰,但是有一些程序还是不适合放到docker里面跑,比如node-exporter、自己写的某些程序,但是这些程序又是必须的,
    如果每次重启机器都需要自己去启动一次那真的是太累了,所以这些程序需要自启动。

    操作步骤

    1. 检查系统目录/lib/systemd/system/rc-local.service,如果没有自己新建,文件内容为(如果文件存在本身是没有[Install]项的,需要自己添加进去)
    #### 文件中本身就有的
    [Unit]
    Description=/etc/rc.local Compatibility
    Documentation=man:systemd-rc-local-generator(8)
    ConditionFileIsExecutable=/etc/rc.local
    After=network.target
    
    [Service]
    Type=forking
    ExecStart=/etc/rc.local start
    TimeoutSec=0
    RemainAfterExit=yes
    GuessMainPID=no
    
    ####  需要自己添加
    [Install]
    WantedBy=multi-user.target
    Alias=rc-local.service
    
    1. 创建/etc/rc.local脚本文件,并写入要运行的程序
    #! /bin/bash
    #### 这里在/usr/local里面创建文件夹是想看是否有执行的权限
    #### 事实证明是有的
    mkdir /usr/local/temp
    echo "test auto bootstrap" > /usr/local/temp/1.log
    
    #### exit 0 是14.04里面建议要写的,18.04不知道需不需要先写上了
    exit 0
    
    1. 给rc.local执行的权限
    sudo chmod +x /etc/rc.local
    
    1. 启用服务
    sudo systemctl enable rc-local
    
    1. 启动服务
    sudo systemctl start rc-local.service
    sudo systemctl status rc-local.service
    
    1. 查看效果
      可以看到/usr/local/temp文件夹被创建了,1.log文件也被创建了。
    2. 验证重启
    sudo rm -rf /usr/local/temp
    sudo reboot
    

    依然有效即为成功....

  • 相关阅读:
    Kubernetes 部署 Kubernetes-Dashboard v2.0.0
    Kubernetes 部署 Metrics Server 获取集群指标数据
    内网终端安全建设(转)
    内网安全运营的逻辑体系架构(转)
    thinkphp5配置文件
    MySQL索引失效的几种情况
    workman使用
    长连接技术(Long Polling)
    php好文章的记录
    php类与对象得使用场景
  • 原文地址:https://www.cnblogs.com/wh-blog/p/13282812.html
Copyright © 2011-2022 走看看