当前位置: 首页 > news >正文

Windows下将nginx等可执行文件添加为服务

Windows下将nginx等可执行文件添加为服务

  • 为什么将可执行文件添加为服务?
  • 将可执行文件添加为服务的步骤
    • 步骤 1:下载和安装 Nginx
    • 步骤 2:添加为服务
      • 方法一:使用 Windows 自带的 sc 命令
      • 方法二:使用 NSSM(Non-Sucking Service Manager)
      • 方法三 :使用 WinSW
    • 步骤 3:启动和管理服务
    • 其他:删除服务

在这里插入图片描述

为什么将可执行文件添加为服务?

将可执行文件添加为服务有以下几个优势:

  1. 自动启动: 可以在系统启动时自动启动这些服务,无需手动干预。
  2. 稳定性: 以服务方式运行的应用程序通常会更稳定,因为它们在独立的进程中运行,不受用户登录状态的影响。
  3. 后台运行: 服务以后台方式运行,不会占用用户界面的空间,适合服务器环境。
  4. 远程管理: 可以通过服务管理工具轻松管理和监控这些服务。

将可执行文件添加为服务的步骤

这里我们使用Nginx作为一个例子,其他的可执行文件都是同理。

步骤 1:下载和安装 Nginx

前往 Nginx 官方网站下载 Windows 版本的 Nginx 可执行文件。
解压下载的文件到一个目录,例如 C:\nginx\。

步骤 2:添加为服务

方法一:使用 Windows 自带的 sc 命令

  1. 打开命令提示符(以管理员权限运行)。

  2. 使用以下命令将 Nginx 添加为服务:

    sc create Nginx binPath= "C:\nginx\nginx.exe -g \"daemon off;\"" DisplayName= "Nginx" start= auto
    

在此示例中,Nginx 是服务的名称,C:\nginx\nginx.exe -g “daemon off;” 是 Nginx 可执行文件的完整路径和启动参数,Nginx 是服务的显示名称,start= auto 表示在系统启动时自动启动服务。

  1. 以下是 sc 命令的详细参数配置说明:
    sc create [ServiceName] binPath= "[ExecutablePath] [Options]" DisplayName= "[DisplayName]" start= [StartType]
    
    • ServiceName: 指定服务的名称,这是您在后续管理服务时需要使用的标识符。
    • binPath: 指定可执行文件的完整路径,包括执行文件本身和可能的命令行参数。
    • Options: 如果您的可执行文件需要附加命令行参数以正确运行,可以在这里指定。
    • DisplayName: 指定服务的显示名称,这是在服务管理器中显示的名称。
    • StartType: 指定服务的启动类型,有以下选项:
      • auto: 在系统启动时自动启动服务。
      • demand: 仅在手动请求时启动服务(默认值)。
      • disabled: 禁用服务,不会自动启动。

方法二:使用 NSSM(Non-Sucking Service Manager)

  1. 下载 NSSM: 前往 NSSM 官方网站(https://nssm.cc/)下载最新版本的 NSSM 工具。

  2. 安装 NSSM: 将下载的 NSSM 压缩包解压到一个文件夹中。

  3. 添加服务:

    • 打开命令提示符(以管理员权限运行)。
    • 导航到 NSSM 所在的目录。
    • 运行以下命令来添加可执行文件为服务,例如将 Nginx 添加为服务:
      nssm install Nginx
      
    • 在弹出的窗口中配置服务信息:
      • Path: 可执行文件的完整路径(例如:C:\nginx\nginx.exe)。
      • Startup directory: 可执行文件所在的目录。
      • Arguments: 需要传递给可执行文件的参数,例如 -g “daemon off;”。
      • Service name: 服务的名称(例如:Nginx)。
    • 点击 “Install Service” 按钮。
  4. 启动和管理服务:

    • 打开服务管理器(services.msc)。
    • 在列表中找到刚刚添加的服务,右键单击进行操作。

方法三 :使用 WinSW

  1. 下载 WinSW: 前往 WinSW 的 GitHub 仓库(https://github.com/winsw/winsw)下载最新版本的 WinSW。

  2. 配置 WinSW XML 文件:

    • 解压下载的 WinSW 压缩包,找到 winsw.xml 文件。
    • 用文本编辑器打开 winsw.xml 文件。
    • 修改 元素为服务的 ID, 元素为服务的名称, 元素为服务的描述。
    • 在 元素中指定可执行文件的路径。
    • 如果需要,可以配置更多选项,例如 、 等。
  3. 安装服务:

    • 打开命令提示符(以管理员权限运行)。
    • 导航到 WinSW 所在目录。
    • 运行以下命令以安装服务:
      winsw install
      
  4. 启动和管理服务:

    • 使用以下命令启动、停止或重启服务:

      winsw start
      winsw stop
      winsw restart
      
    • 或者在服务管理器中找到刚刚添加的服务,右键单击进行操作。

步骤 3:启动和管理服务

  1. 打开服务管理器(按下 Win + R 键,输入 services.msc,然后按 Enter)。
  2. 在服务列表中,找到刚刚创建的 Nginx 服务。
  3. 右键单击服务,选择启动、停止、重启等操作。

其他:删除服务

  1. 删除 NSSM 添加的服务:
    导航到 NSSM 所在的目录;运行以下命令以删除服务,其中 “ServiceName” 是您要删除的服务名称:
nssm remove ServiceName
  1. 删除 WinSW 添加的服务:
    导航到 WinSW 所在的目录;运行以下命令以删除服务:
winsw uninstall
  1. 删除使用 sc 命令添加的服务:
    运行以下命令以删除服务,其中 “ServiceName” 是您要删除的服务名称:
sc delete ServiceName

相关文章:

Windows下将nginx等可执行文件添加为服务

Windows下将nginx等可执行文件添加为服务 为什么将可执行文件添加为服务?将可执行文件添加为服务的步骤步骤 1:下载和安装 Nginx步骤 2:添加为服务方法一:使用 Windows 自带的 sc 命令方法二:使用 NSSM(Non…...

视觉SLAM14讲笔记-第4讲-李群与李代数

李代数的引出: 在优化问题中去解一个旋转矩阵,可能会有一些阻碍,因为它对加法导数不是很友好(旋转矩阵加上一个微小偏移量可能就不是一个旋转矩阵),因为旋转矩阵本身还有一些约束条件,那样再求…...

浅析Redis(1)

一.Redis的含义 Redis可以用来作数据库,缓存,流引擎,消息队列。redis只有在分布式系统中才能充分的发挥作用,如果是单机程序,直接通过变量来存储数据是更优的选择。那我们知道进程之间是有隔离性的,那么re…...

【每日一题】2337. 移动片段得到字符串

【每日一题】2337. 移动片段得到字符串 2337. 移动片段得到字符串题目描述解题思路 2337. 移动片段得到字符串 题目描述 给你两个字符串 start 和 target ,长度均为 n 。每个字符串 仅 由字符 ‘L’、‘R’ 和 ‘_’ 组成,其中: 字符 ‘L’…...

MySQL 数据库常用命令大全(详细)

文章目录 1. MySQL命令2. MySQL基础命令3. MySQL命令简介4. MySQL常用命令4.1 MySQL准备篇4.1.1 启动和停止MySQL服务4.1.2 修改MySQL账户密码4.1.3 MySQL的登陆和退出4.1.4 查看MySQL版本 4.2 DDL篇(数据定义)4.2.1 查询数据库4.2.2 创建数据库4.2.3 使…...

中国移动加大布局长三角,打造算力产业新高地

8月27日,以“数实融合算启未来”为主题的2023长三角算力发展大会在苏州举办,大会启动了长三角算力调度枢纽,携手各界推动算力产业高质量发展。 会上,移动云作为第一批算力资源提供方,与苏州市公共算力服务平台签订算力…...

话费、加油卡、视频会员等充值接口如何对接?

现在很多商家企业等发现与用户保持粘性是越来越难了,大多数的用户活跃度都很差,到底该怎么做才能改善这种情况呢? 那么我们需要做的就是投其所好,在与用户保持粘性的app或者积分商城中投入大家感兴趣的物品或者虚拟产品&#xff…...

服务器重启MongoDB无法启动

文章目录 服务器重启MongoDB无法启动背景规划实施 总结 服务器重启MongoDB无法启动 背景 数据库服务器的CPU接近告警值了,需要添加CPU资源,于是乎就在恰当的时间对服务器进行关机,待添加完资源后开机,这样就完成了CPU资源的添加…...

深度刨析数据在内存中的存储

✨博客主页:小钱编程成长记 🎈博客专栏:进阶C语言 深度刨析数据在内存中的存储 1.数据类型介绍1.1 类型的基本归类 2.整形在内存中的存储2.1 原码、反码、补码2.2 大小端介绍 3.浮点型在内存中的存储3.1 一个例子3.2 浮点数的存储规则3.3指数…...

理解FPGA中的亚稳态

一、前言 大家应该经常能听说到亚稳态这个词,亚稳态主要是指触发器的输出在一段时间内不能达到一个确定的状态,过了这段时间触发器的输出随机选择输出0/1,这是我们在设计时需要避免的。本文主要讲述了FPGA中的亚稳态问题,可以帮助…...

Leetcode86. 分隔链表

给你一个链表的头节点 head 和一个特定值 x ,请你对链表进行分隔,使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。 你应当 保留 两个分区中每个节点的初始相对位置。 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台…...

如何处理 Flink 作业中的数据倾斜问题?

分析&回答 什么是数据倾斜? 由于数据分布不均匀,造成数据大量的集中到一点,造成数据热点。 举例:一个 Flink 作业包含 200 个 Task 节点,其中有 199 个节点可以在很短的时间内完成计算。但是有一个节点执行时间…...

cobbler自动化安装CentOS、windows和ubuntu

环境介绍 同时玩cobbler3.3和cobbler2.8.5 cobbler3.3 系统CentOS8.3 VMware虚拟机 桥接到物理网络 IP: 192.168.1.33 cobbler2.8.5 系统CentOS7.9 VMWare虚拟机 桥接到物理网络 IP:192.168.1.33 安装cobbler3.3 yum源修改 cat /etc/yum.repo.d/Cento…...

springcloud3 GateWay章节-Nacos+gateway动态路由负载均衡4

一 工程结构 1.1 工程 1.2 搭建gatewayapi工程 1.pom文件 <dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.13</version><scope>test</scope></dependency><!--gateway--&g…...

RESTful API 面试必问

RESTful API是一种基于 HTTP 协议的 API 设计风格&#xff0c;它提供了一组规范和约束&#xff0c;使得客户端&#xff08;如 Web 应用程序、移动应用等&#xff09;和服务端之间的通信更加清晰、简洁和易于理解。 RESTful API 的设计原则 使用 HTTP 协议&#xff1a;RESTful …...

软件机器人助力行政审批局优化网约车业务流程,推动审批业务数字化转型

随着社会的进步和发展&#xff0c;行政审批业务逐渐趋向于智能化和自动化。近日&#xff0c;某市行政审批局在市场准入窗口引入博为小帮软件机器人大幅度提升了网约车办理业务的效率&#xff0c;创新了原有的业务模式。 软件机器人以其自动化、智能化的特性&#xff0c;优化了网…...

飞天使-python的字符串转义字符元组字典等

文章目录 基础语法数据类型python的字符串运算符输入和输出 数据结构列表与元组字典与集合 参考文档 基础语法 数据类型 数值型 &#xff0c;整数 浮点型 布尔型&#xff0c; 真假&#xff0c; 假范围 字符型 类型转换python的字符串 了解转义字符一些基本的运算 \ 比如一行…...

stm32 uart dma方式接收不定长度字符

一般处理&#xff1a; stm32 uart使用dma接收时&#xff0c;会有自己的数据流中断&#xff0c;数据流中断会调用HAL_UART_RxCpltCallback。但是数据流中断只会在HAL_UART_Receive_DMA函数指定的buffer满时才会触发。 接收不定长度字符&#xff0c;需要和uart的UART_IT_IDLE结…...

SciencePub学术 | Elsevier出版社SCIEEI征稿中

SciencePub学术刊源推荐:Elsevier出版社SCIE&EI征稿中&#xff01;信息如下&#xff0c;录满为止&#xff1a; 一、期刊概况&#xff1a; 计算机科学类SCI-01 【期刊简介】6.5-7.0&#xff0c;JCR1区&#xff0c;中科院2区&#xff1b; 【检索情况】正刊&#xff0c;SC…...

PHP小白搭建Kafka环境以及初步使用rdkafka

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、安装java&#xff08;Kafka必须安装java&#xff0c;因为kafka依赖java核心&#xff09;二、安装以及配置Kafka、zookeeper1.下载Kafka&#xff08;无需下载…...

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?

一、核心优势&#xff1a;专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发&#xff0c;是一款收费低廉但功能全面的Windows NAS工具&#xff0c;主打“无学习成本部署” 。与其他NAS软件相比&#xff0c;其优势在于&#xff1a; 无需硬件改造&#xff1a;将任意W…...

进程地址空间(比特课总结)

一、进程地址空间 1. 环境变量 1 &#xff09;⽤户级环境变量与系统级环境变量 全局属性&#xff1a;环境变量具有全局属性&#xff0c;会被⼦进程继承。例如当bash启动⼦进程时&#xff0c;环 境变量会⾃动传递给⼦进程。 本地变量限制&#xff1a;本地变量只在当前进程(ba…...

云原生玩法三问:构建自定义开发环境

云原生玩法三问&#xff1a;构建自定义开发环境 引言 临时运维一个古董项目&#xff0c;无文档&#xff0c;无环境&#xff0c;无交接人&#xff0c;俗称三无。 运行设备的环境老&#xff0c;本地环境版本高&#xff0c;ssh不过去。正好最近对 腾讯出品的云原生 cnb 感兴趣&…...

基于TurtleBot3在Gazebo地图实现机器人远程控制

1. TurtleBot3环境配置 # 下载TurtleBot3核心包 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src git clone -b noetic-devel https://github.com/ROBOTIS-GIT/turtlebot3.git git clone -b noetic https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git git clone -b noetic-dev…...

SQL慢可能是触发了ring buffer

简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...

Redis上篇--知识点总结

Redis上篇–解析 本文大部分知识整理自网上&#xff0c;在正文结束后都会附上参考地址。如果想要深入或者详细学习可以通过文末链接跳转学习。 1. 基本介绍 Redis 是一个开源的、高性能的 内存键值数据库&#xff0c;Redis 的键值对中的 key 就是字符串对象&#xff0c;而 val…...

Python第七周作业

Python第七周作业 文章目录 Python第七周作业 1.使用open以只读模式打开文件data.txt&#xff0c;并逐行打印内容 2.使用pathlib模块获取当前脚本的绝对路径&#xff0c;并创建logs目录&#xff08;若不存在&#xff09; 3.递归遍历目录data&#xff0c;输出所有.csv文件的路径…...

算法刷题-回溯

今天给大家分享的还是一道关于dfs回溯的问题&#xff0c;对于这类问题大家还是要多刷和总结&#xff0c;总体难度还是偏大。 对于回溯问题有几个关键点&#xff1a; 1.首先对于这类回溯可以节点可以随机选择的问题&#xff0c;要做mian函数中循环调用dfs&#xff08;i&#x…...

Linux【5】-----编译和烧写Linux系统镜像(RK3568)

参考&#xff1a;讯为 1、文件系统 不同的文件系统组成了&#xff1a;debian、ubuntu、buildroot、qt等系统 每个文件系统的uboot和kernel是一样的 2、源码目录介绍 目录 3、正式编译 编译脚本build.sh 帮助内容如下&#xff1a; Available options: uboot …...