> CentOS > CentOS入门 >

CentOS 7系统添加启动项

CentOS 7系统已经把CentOS 6的 runlevel 系统服务管理替换成了systemd。在 /etc/rc[0-6S].d 下添加启动项已经不能在系统启动的时候自动执行,需要通过新的 systemd.unit 配置添加启动项。

systemd 特点

1. 可以指定unit间的依赖关系

2. 可以控制unit间的执行顺序或允许它们并发执行

简单的例子

该例子的功能是通过systemd配置一个启动项

1. 在 /usr/lib/systemd/system 目录下创建一个文件 myservice.service ,内容如下:

1
2
3
4
5
6
7
8
9
10
[Unit]
Description=Systemd Unit Demo
 
[Service]
ExecStart=/your/path/startup.sh
ExecStop=/your/path/shutdown.sh
RemainAfterExit=yes
 
[Install]
WantedBy=default.target

ExecStart项指定的是该myservice unit在启动的时候执行的命令,可以用来执行某个操作或启动某个服务。ExecStop项指定的是该myservice unit在关闭的时候执行的命令,可以用来执行某些清理操作或关闭服务。

2. 执行命令 "systemctl enable myservice" 启用该启动项

3. 执行命令 "systemctl start myservice" 激活该启动项

到此为止,myservice已经启动,并且在下次系统启动后还会自动执行。

systemd.unit有多种类型,分别对应不同的行为。上面的例子只是展现了service类型的unit的最基础的用法,详细的systemd功能及配置可以参考systemd的manpage文档。


 

(责任编辑:IT)