编译安装的服务,用systemctl 进行管理
随着互联网的发展,很多应用程序需要建立一个服务来保持程序经常运行,对于一些常驻的后台程序,我们需要把它作为一个系统服务,随系统自启动,并能够通过systemctl管理。
编译安装的服务就是指我们自行下载源代码,然后对其进行手动编译,并将其安装在我们的服务器上。下面我将介绍如何安装编译安装的服务,并用systemctl进行管理。
步:下载源代码
首先,我们需要到官网下载自己需要的服务的源代码。这里需要注意的是,不同服务的源代码下载地址是不同的,需根据所需服务的官网获取地址。
第二步:编译源代码
下载好源代码之后,我们需要开始编译。对于一些较为简单的服务,我们可以直接使用make命令进行编译,如果需要进行复杂的配置和安装,可以使用以下命令:
./configure
make
make install
这里的configure命令是用来配置编译环境的,make是用来进行编译的,make install是将编译后的程序安装到系统中。
第三步:创建systemd文件
我们需要在/etc/systemd/system目录中创建一个服务文件,这里以nginx为例,具体的文件名可以是任何字符串,但是建议和服务的名称相同,比如nginx.service。
在nginx.service文件中输入以下内容:
[Unit]
Description=nginx - high performance web server
After=syslog.target network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/local/nginx/nginx/sbin/nginx -t -c /usr/local/nginx/nginx/conf/nginx.conf
ExecStart=/usr/local/nginx/nginx/sbin/nginx -c /usr/local/nginx/nginx/conf/nginx.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
这里的内容中,Description为该服务介绍,type选项可以设置三种类型,分别是simple、forking、notify,这里nginx选择的是forking类型,PIDFile为pid文件的路径,以便systemd能够跟踪系统中nginx的进程。
第四步:启动和管理服务
在完成上述配置后,我们就可以使用systemctl进行NGINX服务的启动和管理了。具体的命令包括:
启动服务:systemctl start nginx
停止服务:systemctl stop nginx
重启服务:systemctl restart nginx
查看服务状态:systemctl status nginx
启动服务开机自启:systemctl enable nginx
禁止服务开机自启:systemctl disable nginx
总结
以上就是关于使用systemctl进行编译安装服务的方法,对于一些后台程序的安装和管理,我们一定要注意,只有正确的安装和管理,服务才能够经常运行,并保证系统的稳定性和安全性。
