如何使用环境变量设置MemoryLimit 我已经尝试使用像这样的变量MY_LIMIT设置MemoryLimit字段, 服务配置:
[Unit]
Description=Blabla
[Service]
Environment="MY_LIMIT=1024"
MemoryLimit=$MY_LIMIT
ExecStart=script.sh
但这似乎不起作用 正如我们所见
sudo systemctl show myservice
显示MemoryLimit是使用此值分配的
MemoryLimit=18446744073709551615
答案 0 :(得分:2)
systemd有一个Environment指令,用于为已执行的进程设置环境变量。 [源] [1]
因此,在MY_LIMIT
中设置时,MemoryLimit
不会被解释。
不推荐使用MemoryLimit
,而是使用MemoryMax=
。 [源] [2]
所以你应该设置的是:MemoryMax=1024M