在 ubuntu 系统上如何添加自己的脚本,让脚本开机自启 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gzwawj
V2EX    问与答

在 ubuntu 系统上如何添加自己的脚本,让脚本开机自启

  •  
  •   gzwawj 2017-06-22 10:06:51 +08:00 7538 次点击
    这是一个创建于 3094 天前的主题,其中的信息可能已经有所发展或是发生改变。
    21 条回复    2017-06-23 06:55:21 +08:00
    l9rw
        1
    l9rw  
       2017-06-22 10:12:14 +08:00   4
    Baymaxbowen
        2
    Baymaxbowen  
       2017-06-22 10:37:26 +08:00
    @l9rw 求网址
    sfyumi
        3
    sfyumi  
       2017-06-22 11:04:31 +08:00
    @l9rw 这个网址很好啊, 哈哈哈. 已收藏
    0asis
        4
    0asis  
       2017-06-22 11:06:35 +08:00 via iPhone
    有个叫 init.d 的文件夹,具体百度
    ETiV
        5
    ETiV  
       2017-06-22 11:07:53 +08:00 via iPhone
    crontab 加一行

    @reboot CMD
    gzwawj
        6
    gzwawj  
    OP
       2017-06-22 11:31:56 +08:00
    @0asis 怎么让“ ffmpeg -i rtsp://admin:******@192.168.16.233/h264/ch1/main/av_stream -vcodec copy -acodec aac -ar 44100 -strict -2 -ac 1 -f flv -s 1280x720 -q 10 -f flv rtmp://192.168.16.112:1935/live/hall_2 >/dev/null 2>&1 &
    ”这条命令加到开机自动运行
    0asis
        7
    0asis  
       2017-06-22 11:33:58 +08:00 via iPhone
    @gzwawj 应该是写一个 shell 然后把 shell 文件加到 init.d
    knightdf
        8
    knightdf  
       2017-06-22 11:37:42 +08:00
    加到 /etc/rc.local
    gzwawj
        9
    gzwawj  
    OP
       2017-06-22 11:38:30 +08:00
    @0asis 其他的命令都可以使用这种方法,但是 ffmpeg 这个应用使用这种方法不管用
    thecon
        10
    thecon  
       2017-06-22 11:41:59 +08:00
    早期版本很简单 , 把脚本放 /etc/rc.local 里就行了

    16.04 以后就比较麻烦了, 得自己添加个 systemctl 服务
    gzwawj
        11
    gzwawj  
    OP
       2017-06-22 11:46:38 +08:00
    @thecon 有没有参考的文章或者网站
    thecon
        12
    thecon  
       2017-06-22 11:50:49 +08:00   3
    @gzwawj

    vi /etc/systemd/system/尼想要的服务名.service
    加入如下内容:
    [Unit]
    Description=尼的脚本路径 Compatibility
    COnditionPathExists=尼的脚本路径

    [Service]
    Type=forking
    ExecStart=尼的脚本路径 start
    TimeoutSec=0
    StandardOutput=tty
    RemainAfterExit=yes
    SysVStartPriority=99

    [Install]
    WantedBy=multi-user.target

    脚本要有可执行属性, 路径要绝对路径
    然后取保脚本正确执行后最后的代码是:
    exit 0

    激活服务:
    sudo systemctl enable 尼想要的服务名
    启动服务器和检查状态:
    sudo systemctl start 尼想要的服务名.service
    sudo systemctl status 尼想要的服务名.service
    gzwawj
        13
    gzwawj  
    OP
       2017-06-22 12:00:39 +08:00
    @thecon 那开机是不是自动启动啊
    thecon
        14
    thecon  
       2017-06-22 14:35:46 +08:00
    @gzwawj

    sudo systemctl enable 尼想要的服务名

    这步完了就是开机自动启动了
    lxml
        15
    lxml  
       2017-06-22 16:43:06 +08:00
    @thecon #14 感谢,我搜教程老出来说添加 rc.local,我心说找了半天我 17.04 文件夹都是 rc0.local,果然又又又又被改版坑了。
    ahu
        16
    ahu  
       2017-06-22 21:59:09 +08:00
    一楼这个简直了,,,,
    ahu
        17
    ahu  
       2017-06-22 22:02:41 +08:00
    zjp
        18
    zjp  
       2017-06-22 23:16:20 +08:00 via Android
    阮一峰的博客有 systemd 的介绍。顺带吐个槽:doge: 就在刚刚,systemctl enable xxx 一直不成功,排查半小时发现脚本打漏仨字母…
    mingyun
        19
    mingyun  
       2017-06-22 23:35:10 +08:00
    @ahu 这个有意思了
    b1eberg0n
        20
    b1eberg0n  
       2017-06-23 00:52:41 +08:00 via iPhone
    supervisor
    loading
        21
    loading  
       2017-06-23 06:55:21 +08:00 via Android
    ubuntu wiki 挂了?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1318 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 17:05 PVG 01:05 LAX 09:05 JFK 12:05
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86