systemd启动多实例

最近用了centos7,启动管理器用的是systemd,感觉很好玩。

1、开机自动启动

新建一个service文件放到/usr/lib/systemd/system/

比如:

[Unit]
Description=描述
Before=在某个服务之前启动,可以没有
After=在某个服务之后启动,可以没有

[Service]
Type=simple
ExecStart=命令

[Install]
WantedBy=multi-user.target

保存为xxx.service

可以用systemctl enable xxx.service (.service可以省略,systemd会自动查找以.service结尾的文件)

2、多实例

形如xxx@.service的service文件可以用了启动多实例

比如启动多个memcache,用yum安装完memcache后,

会生成/etc/sysconfig/memcached文件,可以复制一份,命名为memcached1,memcached2等,修改里面的端口,不要冲突。

memcached@.service 配置如下:

[Unit]
Description=Memcached 
Before=httpd.service
After=network.target

[Service]
Type=simple
EnvironmentFile=-/etc/sysconfig/memcached%i
ExecStart=/usr/bin/memcached -u $USER -p $PORT -m $CACHESIZE -c $MAXCONN $OPTIONS

[Install]
WantedBy=multi-user.target

可以用systemctl start memcached@1 来传递参数,在service文件里用%i来接受参数

原文地址:https://www.cnblogs.com/xdao/p/systemctl_muti.html