Distributions
› Ubuntu
› Fedora
› CentOS
中文资源站
› 网易开源镜像站
Livid
402.83D
565.56D
V2EX  ›  Linux

如果有可能让一个 systemd 控制的进程在启动时如果发现指定的几个目录不存在,就创建然后再启动服务?

  •  
  •   Livid ·
    PRO
    · Feb 25, 2019 · 4474 views
    This topic created in 2807 days ago, the information mentioned may be changed or developed.
    15 replies  •  2019-02-25 17:01:39 +08:00
    annoy1309
    annoy1309
    Feb 25, 2019❤️1
    1
    启动另一个来完成这个事件?
    Kilerd
    Kilerd
    Feb 25, 2019 via iPhone❤️1
    2
    写另外一个服务来做这个事? 原来的服务就依赖这个新的服务?
    LokiSharp
    LokiSharp
    Feb 25, 2019❤️1
    3
    ExecStartPre 里面跑个脚本?
    xzl380
    xzl380
    Feb 25, 2019❤️1
    4
    ExecStartPre ?
    EPr2hh6LADQWqRVH
    EPr2hh6LADQWqRVH
    Feb 25, 2019❤️2
    5
    启动脚本啊。。
    systemd 启动这个脚本,脚本负责先 mkdir -p 然后再开主进程,主进程自己建个 pid 文件,systemd 去指定 pid 文件里追踪 pid
    他们就是这套逻辑。。
    LokiSharp
    LokiSharp
    Feb 25, 2019❤️1
    6
    [Service]
    ExecStartPre=[check file]
    ExecStart=Balabala
    linhua
    linhua
    Feb 25, 2019❤️1
    7
    写个 wrapper
    lzvezr
    lzvezr
    Feb 25, 2019 via iPhone❤️1
    8
    不是可以 ExecStartPre=/bin/mkdir 吗?
    权限不够就给个 root,PermissionsStartOnly=true
    Livid
    Livid
    MOD
    OP
    PRO
    Feb 25, 2019
    9
    谢谢楼上的各位。
    codehz
    codehz
    Feb 25, 2019 via Android❤️3
    11
    正确方法:RuntimeDirectory=, StateDirectory=, CacheDirectory=, LogsDirectory=, ConfigurationDirectory=选项
    flynaj
    flynaj
    Feb 25, 2019 via Android
    12
    看一下 openssh 的写法
    Keyes
    Keyes
    Feb 25, 2019
    13
    ExecStartPre 跑一个 bootstrap 脚本
    dorothyREN
    dorothyREN
    Feb 25, 2019❤️1
    14
    @Livid #9 ExecStartPre=/bin/mkdir /test -p

    直接加个-p 参数吧,有的话就忽略,没有的话会直接创建的
    julyclyde
    julyclyde
    Feb 25, 2019❤️1
    15
    @codehz 说的是对的
    现在的运维行业流行的是状态描述法,而不是动作描述法
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1331 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 51ms · UTC 21:01 · PVG 05:01 · LAX 13:01 · JFK 16:01
    ♥ Do have faith in what you're doing.