systemd 用户分配应用启动环境

systemd 用户分配应用启动环境
MeteorCat这里源于多用户登录的时候,想要各自用户达成运行 systemd 以下效果:
1 | # 常见的 systemd 启动服务 |
对于 Linux 这种多用户分配的时候, 需要自己与根据自己根目录生成不同开发配置等就需要这种效果.
常见的系统服务脚本都是放置于 /lib/systemd/system, 但是如果区分个人用户则是放置于 /lib/systemd/user 之中,
所以这里脚本已经放置于此:
1 | # 编写用户级别的启动服务 |
这里需要先科普下 systemd 模板声明变量, 建议先了解好内置模板变量再进行编写.
1 | # owner-worker.service 自动创建根目录下工作目录 |
这时候已经编写完成, 需要更新服务并启动临时工作区:
1 | # 启动用户级别服务和系统级差不多 |
注意: 这里虽然已经满足了, 但是在 ssh 用户全部断开的时候, 用户级别的服务直接会自动开始 stop , 并且没办法达到开机自启的情况,
这里需要让其支持允许自启配置:
1 | # 保证用户不登录的情况服务也在运转 |
另外注意 ssh 登录时候可能会丢失某些环境变量, 而 systemd 可能依赖某些环境变量, 所以最好在
/etc/ssh/sshd_config当中设置启用
UsePAM来保证环境变量的有效存在




