精华内容
下载资源
问答
  • 注册系统服务
    千次阅读
    2022-03-05 14:40:57

    Linux 系统注册系统服务流程

    • 在/etc/systemd/system定义test.service文件(以定义启动nginx服务为例子)
    [Unit]
    Description=nginx service
    Documentation=this is a test system service
    
    [Service]
    Type=notify
    # 启动服务时的等待的秒数,TimeoutStartSec 的值指定为 0,从而关闭超时检测。
    TimeoutStartSec=0
    # 工作目录
    WorkingDirectory=/root/nginx
    # 服务运行用户
    User=root
    # 服务运行用户组
    Group=root
    Restart=on-failure
    RestartSec=42s
    ExecStart=/root/nginx/start.sh
    ExecStop=/root/nginx/stop.sh
    
    [Install]
    WantedBy=multi-user.target
    
     Type:定义启动类型
      - simple 默认值,ExecStart字段启动的进程为主进程。主进程启动,服务启动,主进程结束,服务结束。
      - forking: ExecStart字段将以fork()方式启动,此时父进程将会退出,子进程将成为主进程。
    
    • 定义service服务启动、停止、重启所需要的脚本
      启动脚本start.sh:
    #!/bin/bash
    nginx -c /etc/nginx/nginx.conf
    

    停止脚本stop.sh:

    #!/bin/bash
    nginx -s stop
    
    • 执行systemctl或者service命令进行启动、停止
    # 注册服务开机自启
    systemctl enable test.service
    # 刷新系统服务
    systemctl daemon-reload
    # 启动服务
    systemctl start test.service
    # 停止服务
    systemctl stop test.service
    
    更多相关内容
  • CentOS7 如何注册系统服务

    万次阅读 2021-11-04 11:55:51
    以 mysql 为例,演示 centos7 如何注册系统服务 1. 创建 service 文件 cat > /usr/lib/systemd/system/mysql.service <<EOF [Unit] Description=MySQL Community Server After=network.target [Service] ...


    以 mysql 为例,演示 centos7 如何注册系统服务

    1. 创建 service 文件

    cat > /usr/lib/systemd/system/mysql.service <<EOF
    [Unit]
    Description=MySQL Community Server
    After=network.target
    [Service]
    User=root
    Group=root
    Type=simple
    ExecStart=/opt/n9e/mysql-5.7.31-linux-glibc2.12-x86_64/bin/mysqld --defaults-file=/opt/n9e/mysql-5.7.31-linux-glibc2.12-x86_64/conf/my.cnf --user=root
    WorkingDirectory=/opt/n9e/mysql-5.7.31-linux-glibc2.12-x86_64/
    Restart=on-failure
    [Install]
    WantedBy=multi-user.target
    EOF
    

    字段解释

    [Unit]
    Description=MySQL Community Server		#描述
    After=network.target					#描述服务类别,表示本服务需要在 network 服务启动后在启动
    [Service]
    User=root								#设置服务运行的用户
    Group=root								#设置服务运行的用户组
    Type=simple								#表示后台运行模式
    #服务启动命令,命令需要绝对路径
    ExecStart=/opt/n9e/mysql-5.7.31-linux-glibc2.12-x86_64/bin/mysqld --defaults-file=/opt/n9e/mysql-5.7.31-linux-glibc2.12-x86_64/conf/my.cnf --user=root
    #工作目录
    WorkingDirectory=/opt/n9e/mysql-5.7.31-linux-glibc2.12-x86_64/
    Restart=on-failure						#定义服务进程退出后,systemd 的重启方式
    [Install]
    WantedBy=multi-user.target				#多用户模式
    

    2. 重载 service 文件

    systemctl daemon-reload
    

    3. 启动与查看

    systemctl start mysqld && systemctl enable mysqld
    systemctl status mysqld
    
    展开全文
  • Nginx 在windows下注册系统服务

    万次阅读 2016-06-21 15:15:26
    然而nginx作为linux的一款软件,在windows下面注册服务还是比较麻烦的,参考了网上的资料,现目前无外乎有两种方式。 第一种是使用Windows Service Wrapper(强烈推荐,原因在本文最下面) 1.工具下载地址:...

            在windows服务器上运行了nginx,那么肯定会面临一个问题,那就是重启了怎么办,网站访问不了,每次手动启动很麻烦。然而nginx作为linux的一款软件,在windows下面注册成服务还是比较麻烦的,参考了网上的资料,现目前无外乎有两种方式。

    第一种是使用Windows Service Wrapper(强烈推荐,原因在本文最下面)

    1.工具下载地址:http://pan.baidu.com/s/1kVPecCJ


    2.解压后将最新的1.9版本重命名为“myapp.exe”  并将其放到nginx目录下


    3.新建一个文本文档内容如下:(里面的路径根据自己的情况修改)

    <service>  
     <id>nginx</id>  
     <name>nginx</name>  
     <description>nginx</description>  
     <executable>D:\web_project\nginx-1.9.5\nginx.exe</executable>  
     <logpath>D:\web_project\nginx-1.9.5\logs</logpath>  
     <logmode>roll</logmode>  
     <depend></depend>  
     <startargument>-p D:\web_project\nginx-1.9.5</startargument>  
     <stopargument>-p D:\web_project\nginx-1.9.5 -s stop</stopargument>  
    </service>  
    保存为myapp.xml文件,同样放到您想目录下。


    4.运行cmd执行如下命令:(路径根据自己的情况修改)

    D:\web_project\nginx-1.9.5\myapp.exe install


    5.进入系统服务就能看见 nginx了。(完成)  


    第二种是  instsrv / servany 方式。


    1.工具下载地:http://eastedu.bl-changjiang.com/UploadFiles/2006-5/511179043.rar


    2.解压后把srvany.exe复制到nginx目录下


    3.运行cmd切换路径到nginx目录下,并执行下面的命令:

    instsrv Nginx c:\nginx\srvany.exe


    4.在nginx目录下编辑一个nginx.reg的文件

    Windows Registry Editor Version 5.00 

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NGINX\Parameters] 

    "Application"="C:\\nginx\\nginx.exe" 

    "AppParameters"="" 

    "AppDirectory"="C:\\nginx\\"


    5.让服务与程序关联起来, 命令行执行 

    regedit /s nginx.reg


    6.编辑启动nginx脚本start-nginx.bat(关闭脚本不用变), 让程序以服务方式运行 

    @ECHO 

    OFF net stop nginx 

    net start nginx 

    EXIT




    推荐第一种的原因:如果采用第二种方式,启动服务后,nginx会创建两个进程,当停止服务时,还有一个进程没有关闭。这就是很多人遇到的关闭服务后,任然可以访问网站。此时必须使用 taskkill /F /IM nginx.exe > nul命令来清理掉所有进程,才能彻底关掉。而第一种不会出现这样的问题。

    展开全文
  • 注册Linux系统服务systemctl管理

    千次阅读 2021-05-26 20:58:53
    systemctl和service来管理系统服务,将程序注册系统服务后,可能通过systemctl和service命令,来启动,关闭,重启,查看状态等管理程序 常用的systemctl的程序管理 命令格式:systemctl 动作 服务名 序号 ...

    systemctl和service来管理系统服务,将程序注册为系统服务后,可能通过systemctl和service命令,来启动,关闭,重启,查看状态等管理程序

    常用的systemctl的程序管理

    命令格式:systemctl 动作  服务名

    序号

    命令行

     

    1

    systemctl status xxx

    查看服务状态

    2

    systemctl start xxx

    启动服务

    3

    systemctl stop xxx

    停止服务

    4

    systemctl restart xxx

    重启服务

    5

    systemctl enable xxx

    启用服务开机自启动

    6

    systemctl disable xxx

    禁止服务开机自启动

    7

    systemctl list-units --type=service

    查看所有已启动的服务

    8

    systemctl daemon-reload

    修改xxx.service文件后,需要执行 重新加载文件;

    基本步骤:

    1.编写service文件

    service 结尾,一般分为3部分:【unit】、【service】、【install】

     

    主要描述

    关键字段

    unit

    此区块信息用于描述当前服务的简单描述:

    Description:服务描述信息;

    Documentation:文档相关信息;

    After:定义sshd服务应该在哪些服务之后启动;

    Before:定义sshd服务应该在哪些服务之前启动;

    Requires:表示强依赖关系,如果sshd服务启动失败

    或异常退出,则Requires配置的服务也必须退出;

    Wants:表示若依赖关系,如果sshd服务启动失败或

    异常退出,不影响Wants配置的服务;

    service

    此区块定义如何启动当前服务

    type 字段定义启动类型等

    simple:默认值,ExecStart字段启动的进程为主进程,如果启动脚本中 以 nohup & 形式启动进程时,此时启动脚本后会自动 kill 当前服务;

    forking:ExecStart字段将以fork()方式启动,此时父进程将会退出,子进程将成为主进程;

    启动,停止,重启命令

    EnvironmentFile:环境参数配置文件,文件内部配置参数形式为key=value键值对,可以在service文件中以$key的形式引用配置项;

    ExecStart:启动服务时执行的命令;

    ExecReload:重启服务时执行的命令;

    ExecStop:停止服务时执行的命令;

    ExecStartPre:启动服务之前执行的命令;

    ExecStartPost:启动服务之后执行的命令;

    ExecStopPost:停止服务之后执行的命令;

    停止模式

    KillMode 表示停止服务时的方式

    control-group:默认值,当前控制组里面的所有子进程,都会被杀掉

    process:只杀主进程

    mixed:主进程将收到 SIGTERM 信号,子进程收到 SIGKILL 信号

    none:没有进程会被杀掉,只是执行服务的 stop 命令

     

    PrivateTmp

    该字段用于设置服务是否使用私有的 tmp目录;

    Install

    定义如何安装配置文件;

     

    WantedBy:表示服务所在的服务组;

    WantedBy=multi-user.target 表示 sshd服务属于 multi-user.target 用户组;

    multi-user.target 组里的所有服务都将开机启动;

     

    实战简单编写入门:

    [Unit]
    Description=lsw come on
    
    [Service]
    Type=simple
    User=root
    Group=root
    ExecStart=/root/system_demo.sh start
    ExecStop=/root/system_demo.sh stop
    PrivateTmp=true
    
    [Install]
    WantedBy=multi-user.target

    2.编写程序脚本或文件

    system_demo.sh:
    #!/bin/bash
    # description: service start and stop scripts
    source /etc/rc.d/init.d/functions
    
    log_success_msg(){
    
       action "SUCCESS! $@" /bin/true
    }
    
    #失败提示函数
    log_failure_msg(){
        action  "ERROR! $@" /bin/false
    }
    
    case $1 in
    start)
    
           log_success_msg "runing "
           /root/lsw/demo
           ;;
    esac
    
    exit 0

    控制文件:

    #include<stdio.h>
    int main()
    { 
    
       while(1)
       {
          printf("helloworld");
          sleep(10);
       }
       return 0;
    }

    3.系统服务注册

    将文件复制到/usr/lib/systemd/system/目录下,然后将可执行文件放于 /root/lsw/demo

    cp  system_demo.service  /usr/lib/systemd/system/
    systemctl daemon-reload 
    systemctl    start  system_demo 
    systemctl    status    system_demo  

    效果如下:

    参考:

    https://www.cnblogs.com/fusheng11711/p/12893296.html

    https://zhuanlan.zhihu.com/p/345709228

     

    展开全文
  • syncthing注册系统服务开机自启动

    千次阅读 2020-03-26 10:34:56
    syncthing注册系统服务以便开机自启动
  • Linux注册系统服务

    千次阅读 2012-12-23 17:08:36
    注册一个系统服务,开机自启动. 1 脚本编写 #vim test.sh #!/bin/bash #description: hello.sh #chkconfig: 2345 20 81 EXEC_PATH=/usr/local/ EXEC=hello.sh DAEMON=/usr/local/hello.sh PID_FILE=/var/...
  • 能够使用service命令进行操作的,就是已经注册成为linux的系统服务了。window中也可以注册成为系统服务的办法。 service命令用的次数真不少,就是比较多的关联点,用了很多次了,还是有些地方没打通,云里雾里的。...
  • 将任何应用程序注册成后台服务程序,即:系统启动后该程序可以自动启动,并且在前台不要出现运行窗口。 解决办法:需要使用Windows提供的两个工具...即注册一个系统服务,来启动要运行的应用程序。 基本用法: i
  • Android 系统服务的两种注册方式

    千次阅读 2017-09-28 19:38:58
    前言查看 SystemServer.java 的 run() 方法,可以看到两种系统服务注册方式,分别是: ServiceManager.addService mSystemServiceManager.startService 但是,同样是系统服务,为什么他们的注册方式不同呢?下面...
  • 在微服务架构或分布式环境下,服务注册与发现技术不可或缺​,这也是程序员进阶之路必须要掌握的核心技术之一,本文通过图解的方式带领大家轻轻松松掌握。 一、引入服务注册与发现组件的原因 先来看一个问题,...
  • ,如果有信息显示,则表明有程序占用了“8080”这个端口//windows系统注册tomcat为系统服务1.在DOS命令行模式下,cd到tomcat的bin目录下。2.找到tomcat的bin目录下的service.bat的批处理文件。3.执行命令service....
  • Windows注册一个服务有两种方式,一种通过修改注册表,另一种直接用命令行,我推荐用第二种,简单快捷。
  • 写了一个程序,想让它能通过...然后就写了一个注册服务的程序。实验结果 能注册,能开机启动,进程里有任务,但是我要启动的程序窗口不能load,而且进程里的用户名是SYSTEM. 求大神告知原因,在XP里是正常的
  • 免装版tomcat注册成windows系统服务方法

    万次阅读 多人点赞 2015-04-21 12:09:24
    ①:在文件的开头加入以下设置,分别是java的安装路径、Tomcat的安装路径及服务的名称 SET JAVA_HOME=D:\TomcatServers\Tomcat1\java\jdk1.6.0 SET CATALINA_HOME=D:\TomcatServers\Tomcat1 SET PR_DISPLAY...
  • Tomcat 注册系统服务

    千次阅读 2014-08-26 09:42:55
    结果是找不到 JRE_HOME 找不到 jvm.dll,但服务还是注册成功了,只是无法启动。 由此可见 Tomcat 即使是注册服务还是依赖于 JRE 的。 rem Try to use the server jvm set "JVM=%JRE_HOME%\bin\...
  • 2.执行命令:service.bat install 服务名(可任意取名,也可以不取) 提示The service 'XXXXX' has been installed.表示安装成功。 3.windows键+R,输入services.msc 可以看到刚刚安装的服务;还可以对该服务进行...
  • Python制作Windows系统服务

    万次阅读 2017-03-23 09:27:39
    Python制作Windows系统服务最近有个Python程序需要安装并作为Windows系统服务来运行,过程中碰到一些坑,整理了一下。Python服务类首先Python程序需要调用一些Windows系统API才能作为系统服务,具体内容如下:#!/usr...
  • 将Tomcat注册系统服务教程(WIN10)

    千次阅读 2018-11-12 19:36:14
    本文将介绍如何将Tomcatt注册系统服务的步骤; Tomcat的基本配置以及多个Tomcat安装配置,请参考我的另两篇博客: Win10安装Jdk、Maven、Tomcat与配置详解 Win10同时安装两个Tomcat配置教程 开始之前 请检查...
  • windows安装redis,并注册系统服务

    万次阅读 2018-07-26 14:03:50
    五、将redis注册系统服务 刚开始学习redis,先从搭建环境开始吧,这里只是记录一下,以免自己忘记了。 一、下载Redis 由于Redis 没有官方的Windows版本,只有linux版本的,官方下载地址: ...
  • 搭建frp及服务注册(服务端与客户端)

    千次阅读 多人点赞 2021-01-04 18:14:05
    本博客为,学习记录 一.机器 1.客户端-树莓派 2.服务端-阿里云 二....客户端 1.解压包,把如下文件放到/etc/frp 目录下 ...2.把systemd文件夹下的frpc.service,放到/etc/systemd/system下 ...设置开机启动即可 systemctl ...
  • sc create CaptureScreen binpath= F:\zwmei-project\decklink-learning\OutputBitmap\Debug\OutputBitmap.exe type= own start= auto displayname= Screen_Capture其中 CaptureScreen为服务名,可以在系统服务中...
  • Tomcat注册系统服务并修改内存

    万次阅读 2015-06-30 21:17:28
    Tomcat注册系统服务下载解压Tomcat【以tomcat6为例】 下载地址:http://tomcat.apache.org/download-60.cgi 将下载的zip包解压: 配置startup.bat文件在startup.bat文件最上面添加两行: SET JAVA_HOME=C:\Java\...
  • 1 运行窗口打开(第一种) 右击开始菜单-->运行->输入services.msc-->...服务和应用程序-->服务 3 任务管理器打开 (第三种) 右击最下方任务栏-->任务管理器-->服务 ...
  • windows把zookeeper注册服务

    千次阅读 2018-05-03 10:15:49
    http://archive.apache.org/dist/commons/daemon/binaries/windows/ 7、把prunsrv.exe、prunmgr.exe复制到zookeeper的bin路径下 8、新建一个install.bat文件,用于注册服务 prunsrv.exe "//IS//%ZOOKEEPER_SERVICE%...
  • 原标题:全国志愿服务信息系统操作指南二(志愿者注册)1注册登录在电脑上打开中国志愿服务网站。网址:点击网页顶部“志愿者注册”图标,打开志愿者注册页面。 选择“云南”省份后进入注册页面。2录入用户信息 说明:...
  • 系统环境:$ cat /etc/issueUbuntu 14.04.2 LTS \n \l1. 下载安装1.1 下载官方下载地址:http://redis.io/download下载最新稳定版 redis-3.2.0.tar.gz,大小仅 1.49 MB。1.2 安装将下载的安装包放在用户目录下,如 /...
  • 在博客[IntelliJ IDEA 16 本地LicenseServer激活(破解)](http://blog.csdn.net/rickyit/article/details/51790069)中有提到直接把license EXE程序注册服务,感觉还是把EXE注册服务舒服,这里记录一下实际的...
  • Tomcat注册系统服务并随机启动

    千次阅读 2018-08-24 09:20:37
    背景和问题:用了基于Java的单点登录Cas开源程序包,用上了Tomcat服务。但我们用上的是免安装版的tomcat...解决方案:为了解决上述问题,需要将Tomcat注册系统服务并随机启动。  前言:设置服务自动启动tomca...
  • 因为公司要求用Nginx,还是安装在Windows系统下面的(之前都是在Linux系统下布置的),...然后查阅官方文档才知道当前windows版本的Nginx只是作为一个标准程序运行,而不是一个系统服务,如果不注册系统服务,服务...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 749,053
精华内容 299,621
关键字:

注册系统服务