linux_把可执行程序做成一个服务

【Windows】如何将程序设置为服务并开机自启 在Windows系统中,我们经常需要让某些应用程序在开机时自动启动,特别是对于服务器程序或需要长期运行的后台程序。本文将介绍几种将EXE程序设置为服务并实现开机自启的方法。以上几种方法各有优缺点,sc命令适合简单服务,NSSM功能更强大,注册表和任务计划适合非服务程序。根据实际需求选择合适的方法即可。 阅读详情
把可执行程序做成一个服务

    在linux系统启动的时候,我们可以看到很多服务性程序一个接一个的被启动(就是那些后面有一个兰色[OK]的行),这些在后台运行的程序为我们使用计算机起了很重要的作用,以这种方式运行的程序有以下特点:
 开机启动,关机停止(废话!关机了还运行啊???)
 后台运行
 通过service 命令控制或查看对应的程序的运行状态

    恩,不错,那怎么把我们自己编制的程序做成这样的一个服务呢?

    废话少说,主要分以下3步:

    1、把可执行程序放到一个linux系统可以找到的地方。
 在linux命令提示符下输入 env ,回车后可看到环境变量,里面有一项PATH的,对,这项里所指定的目录都是系统可找到的地方,把我们的可执行程序放入其中的一个目录下即可,我们一般放在/usr/sbin/目录下(放什么有放什么的地方,最好不要乱放)。

    2、在目录 /etc/init.d/ 下,新建一个以服务名为文件名的文件。
  如果我们打开目录 /etc/init.d/,看到的文件其实都是服务程序文件,每个文件的内容都大同小异,我们会看到,这里的文件在文件结构上几乎是一样的。几乎每个文件 都有 start、stop、restart和status这样的标志,对,我们新建的这个文件也具有相同的结构,只是在这些标志内部把相应的可执行程序换成我 们自己的可执行程序即可,知道怎么做了吗?那就是:复制——修改——保存。

    3、在目录 /etc/rc3.d/ 下,新建一个指向在第2步中建立的服务文件的符号连接文件。
 打开目录 /etc/rc3.d/ ,我们将看到这里都是符号连接文件(linux系统中的符号连接相当于windows中的快捷方式)。采用以下命令格式:
 ln -sf 目标文件名 连接文件名
    连接文件名益采用“SXX目标文件名”的格式,其中XX一般是一个从1到100的整数,它表示启动优先级,数字越大,优先级越低,比如:服务A的运行要依 赖服务B,那A的XX数字就应该大于B的。后跟“目标文件名”是为了一目了然,一看就知道是哪个文件的符号连接。
    目录 /etc/rc3.d/ 是系统启动时自动搜索的目录,该目录下的符号连接文件的目标文件,都将被运行,这就是在这个目录建立符号连接的原因——为了开机就运行。

    好了,完成以上3个步骤,你就把自己的一个可执行程序做成系统的一个服务了,它具有我们一开始说的几个特定。我们可以用service命令控制这个程序了:
 启动:service hdz_service start
 停止:service hdz_service stop
 重启:service hdz_service restart
    上面的 hdz_service 为服务名,也就是在第2步中建立的文件名。

    不过,好象感觉比较麻烦,能否把这几个步骤自动化一下?这样在一台新机子上部署就方便了,也更象回事 -_^!办法当然有了,还记得我们那个记录代码文件之间依赖关系的makefile文件吗?呵呵,我们在这里要用到它了。
    在makefile文件中添加一个标志,并在该标志下添加和下面类似的代码:

install:
 cp ./hdz_pro /usr/sbin/
 cp ./hdz_service /etc/init.d/
 cd /etc/init.d/
 chmod +x hdz_service
 cd /etc/rc3.d/
 ln -sf ../init.d/hdz_service ./S99hdz_service

    在标志install下的没一句话,前面一定要留空白,这不仅是有利于阅读,更是一个要求,makefile文件要求每一句可执行语句前都要有空白(空格或tab)。
    上面代码中的 hdz_pro 和 hdz_service 分别是可执行文件名和服务名,这两个名称换成你自己的就行了,操作时用以下命令:
 make install
    运行完就一切OK了,简单吧?

    大家在看我写的东东时,时不时会碰到“hdz”这样的东西,这是我名字的缩写,说明这正是要替换的。



Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=461193

GNSS差分码偏差(DCB)从原理到实战:如何避免数据处理中的常见错误 本文深入解析GNSS差分码偏差(DCB)的原理及其对高精度定位的关键影响。针对数据处理中因忽略DCB校正导致的常见错误,如单系统PPP高程偏差、多系统融合精度下降及电离层研究失真等,提供了实战解决方案与主流DCB产品获取、集成方法,帮助用户有效规避陷阱,提升数据处理精度。 阅读详情

相关推荐

利用CANoe和CAPL实现高效CAN网关设计与仿真

本文详细介绍了如何利用CANoe和CAPL进行高效CAN网关的设计与仿真。通过搭建仿真工程、导入DBC数据库、编写CAPL脚本等步骤,手把手指导读者构建一个连接不同CAN网络的网关模型,实现报文的监听、转发与信号处理,从而在硬件开发前验证逻辑,提升汽车电子开发效率与可靠性。

weixin_29164091的博客 294

windows 把exe 设置成服务运行

windows 把exe 设置成服务运行

小小IT人的专栏 8002

Calibre PEX提参实战:如何用hcell和xcell文件精准屏蔽模块(附避坑指南)

本文深入解析Calibre PEX工具中hcell与xcell文件的协同工作机制,提供模块级寄生参数提取方案。通过实战案例和避坑指南,帮助工程师精准屏蔽已验证IP模块,提升仿真效率和数据一致性,适用于65nm以下工艺节点的复杂SoC设计。

weixin_29275257的博客 629

Windows将(.exe)程序变为Windows服务

binpath:你的应用程序所在的路径。displayname:服务显示的名称sc config 服务名 start= demand //手动sc condig 服务名 start= auto //自动sc config 服务名 start= disabled //禁用当你使用sc create命令创建一个服务时,如果没有指定type参数,它通常会默认为Own Process类型。这是最安全的配置,因为它隔离了服务,减少了潜在的风险,如果一个服务崩溃,不会影响到其他服务。

qq_74271133的博客 1765

从零开始:PLUMED与GROMACS整合安装全攻略

本文详细介绍了如何从零开始整合安装PLUMED与GROMACS,包括系统环境检查、MPI配置、PLUMED编译安装、GROMACS补丁应用及常见问题解决方案。通过本教程,研究人员可以快速完成分子动力学模拟工具的整合安装,实现增强采样和自由能计算功能。

weixin_42520796的博客 292

智能车图像处理11-进阶篇3--中线累积差值的统计

中线累积差值的统计在后面判断小S,以及长直道的时候都有用到,关键点在于中线的跳变 第12 - 13 行:comulants1 和comlants2代表的是两种不同的累差,取的行数不同 第14-17 行:comulants2取6到25行,其实就是My_Abs(LCenter[i], LCenter[i - 1])的累加 第18-21 行:comulants1去第1到40行 第27- 行: 计算了一下右线的开始于最终结束行,这里判断R_black是否为0,是和中线的提取中g

taiyuezyh的博客 3828

Windows中实现将bat或exe文件作为服务_且实现命令行安装、配置、启动、删除服务

在Windows环境下进行日常的项目开发过程中,有时候需要将bat文件或exe文件程序注册为Windows的服务实现开机自己运行(没有用户登陆,服务在开机后也可以照常运行)、且对于那些没有用户交互界面的exe程序来说只要在后台运行即可,无需在桌面显示该exe程序窗口内容、无需用户手动打开,还可以防止用户不小心关闭该程序。

提供C#相关开发 、云计算、运维测试、网络安全相关技术分享与服务,有意向可联系。 1万+

ABAP 百科全书的阅读目录(2024版)

909 篇 ABAP 技术文章的目录

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 4249

把linux可执行程序做成一个服务

在linux系统启动的时候,我们可以看到很多服务性程序一个接一个的被启动(就是那些后面有一个兰色[OK]的行),这些在后台运行的程序为我们使用计算机起了很重要的作用,以这种方式运行的程序有以下特点:     开机启动、关机停止、后台运行     通过service 命令控制或查看对应的程序的运行状态     恩,不错,那怎么把我们自己编制的程序做成这样的一个服务呢?       废话少说

wanglei9876开发人生 2571

YOLO11实战优化:长尾分布解决 | 引入Seesaw Loss配合YOLO11分类头,完美应对类别极其不平衡的现实业务场景

摘要: YOLO11在工业缺陷检测等长尾分布场景中面临尾部类别检测失效的问题,根源在于头部类别样本的负样本梯度压制了尾部类别的学习。传统方法如重采样、Focal Loss等效果有限。Seesaw Loss通过动态调整缓解因子和补偿因子,平衡类别间的梯度分布,结合YOLO11的解耦分类头、Anchor-Free设计和C2PSA/C3K2模块,显著提升尾部类别识别能力。文章详细解析了Seesaw Loss的数学原理,并提供了可直接集成到YOLO11的PyTorch实现代码,为长尾分布下的目标检测提供了实用解决方

2601_95807009的博客 255

把 SAP 输出稳稳落到 PDF:从 SPAD 前端打印到 ABAP 程序级转换的一套方法

摘要:本文介绍了三种在SAP系统中将报表输出转为PDF文件的方法。路线A通过SPAD配置前端输出设备,结合Windows打印机设置实现用户交互式PDF保存;路线B在SP01事务码中将已有Spool请求另存为PDF,适用于补救导出;路线C通过ABAP程序自动转换Spool为PDF,适合批量处理。文章详细说明了配置步骤,并针对常见问题(如乱码、文件格式错误等)提供了排查思路。三种方案分别适用于不同场景,用户可根据实际需求选择最合适的PDF导出方式。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 222

把linux可执行程序做成一个服务[转]

转自:http://www.2cto.com/os/201202/121249.html 在linux系统启动的时候,我们可以看到很多服务性程序一个接一个的被启动(就是那些后面有一个兰色[OK]的行),这些在后台运行的程序为我们使用计算机起了很重要的作用,以这种方式运行的程序有以下特点: 开机启动,关机停止(废话!关机了还运行啊???) 后台运行 通过service 命令控制或查看对应的程...

weixin_33856370的博客 1046

17、高通8155座舱平台--QNX开发基础

我个人习惯,拿到一个新板子,第一件事就是打开IDE,建一个空的QNX项目,然后跑一遍Hello World。比如,当触摸屏被按下时,驱动发一个脉冲给UI进程,告诉它“嘿,有人摸屏幕了”。我在8155上调试时,就遇到过因为脉冲优先级太低,导致触摸响应延迟的问题。IDE自带的编译器是qcc,它其实是gcc的封装。QNX的IPC机制,可以说是它最牛的地方。嗯,这套流程走下来,你对QNX开发的基本功就差不多了。QNX默认的消息缓冲区大小是64KB,如果你要传大块数据,比如音频流,那就得用共享内存了。

woailuojp的博客 54

linux可执行程序做成服务管理

linux可执行程序做成服务管理

yangxiluo的博客 998

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

linux,把可执行程序做成一个服务

在linux系统启动的时候,我们可以看到很多服务性程序一个接一个的被启动(就是那些后面有一个兰色[OK]的行),这些在后台运行的程序为我们使用计算机起了很重要的作用,以这种方式运行的程序有以下特点:开机启动,关机停止(废话!关机了还运行啊?)后台运行通过service 命令控制或查看对应的程序的运行状态恩,不错,那怎么把我们自己编制的程序做成这样的一个服务呢?主要分以下3步:1、把可执行程序放到一

323

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

linux中将可执行程序做成一个服务

在linux系统启动的时候,我们可以看到很多服务性程序一个接一个的被启动(就是那些后面有一个兰色[OK]的行),这些在后台运行的程序为我们使用计算机起了很重要的作用,以这种方式运行的程序有以下特点:开机启动后台运行通过service 命令控制或查看对应的程序的运行状态 废话少说,主要分以下3步: 1、把可执行程序放到一个linux系统可以找到的地方。在linu...

weixin_34284188的博客 266

把Linux可执行程序做成一个服务(转)

转自:http://www.2cto.com/os/201202/121249.html 在linux系统启动的时候,我们可以看到很多服务性程序一个接一个的被启动(就是那些后面有一个兰色[OK]的行),这些在后台运行的程序为我们使用计算机起了很重要的作用,以这种方式运行的程序有以下特点: 开机启动,关机停止(废话!关机了还运行啊???) 后台运行 通过service 命令控制或查看对应的程序的...

weistar103的专栏 473
上一篇: Solaris上对比测试BIND和Nominum两个DNS软件性能
下一篇: iptables入门
max415
博客等级 码龄22年 16粉丝 38原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值