是否有方法动态分配系统d服务单元文件中的环境变量?
我们有一台有4个GPU的机器,我们希望每个GPU可以旋转多个特定服务的实例。例如:
因此,1:1、2:1等实际上是服务单元文件中的%i。
为了使服务绑定到特定的GPU,服务可执行文件检查某个环境变量,例如:
USE_GPU=4是否有一种方法可以在服务单元文件中获取%i并通过某些(shell)函数运行它来派生GPU号,然后可以相应地设置USE_GPU环境变量?
最重要的是,我不希望编写多个/etc/systemd/system/gpu_service@x:y.service/local.conf文件的麻烦,只是为了可以旋转更多的实例。
发布于 2016-11-17 13:35:18
没有建在路上。您需要在服务开始之前完成这些工作。一种方法是将其放入环境文件中。
[Service]
# Note you need to escape percentage sign
ExecStartPre=/bin/sh -c "my_awesome_parser %%i > /run/gpu_service_%i"
EnvironmentFile=/run/gpu_service_%i
ExecStart=...https://unix.stackexchange.com/questions/323914
复制相似问题