Ubuntu 增加服务 比如openfire
在Ubuntu上,可以使用systemd来管理和配置服务。下面是将命令添加为服务的一般步骤:
创建一个.service文件,该文件描述了您要添加的服务。打开终端,并使用以下命令创建一个新的服务文件:
sudo nano /etc/systemd/system/my-service.service
在打开的文件中,输入以下内容(请根据您的需求进行适当修改):
[Unit]
Description=My Service
After=network.target
[Service]
ExecStart=/path/to/your/command
WorkingDirectory=/path/to/working/directory
Restart=always
[Install]
WantedBy=multi-user.target
Description:服务的简短描述。
After:指定服务应在哪个目标之后启动(例如network.target表示在网络连接之后启动)。
ExecStart:要执行的命令或脚本的路径。
WorkingDirectory:命令执行的工作目录。
Restart:定义服务在发生错误或停止后是否应自动重启。
WantedBy:指定服务所属的目标。
保存并关闭文件。使用Ctrl + X,然后按Y确认保存,最后按Enter键退出编辑器。
让系统重新加载systemd服务配置:
sudo systemctl daemon-reload
启动服务并设置其在系统启动时自动启动:
sudo systemctl start my-service
sudo systemctl enable my-service
start:启动服务。
enable:设置服务在系统启动时自动启动。
现在,您的命令已经以服务的形式添加到Ubuntu中,并且可以通过systemctl命令启动、停止和管理该服务。例如:
sudo systemctl start my-service # 启动服务
sudo systemctl stop my-service # 停止服务
sudo systemctl restart my-service # 重启服务
sudo systemctl status my-service # 查看服务状态
--------------------------------------------------------------------
针对openfire,下载的tar.gz解压缩文件目录如下:
root@QHTProxy:/opt/openfire/bin# ls
extra openfire openfire.sh openfirectl
在/etc/systemd/system下面新建文件 openfired.service
root@QHTProxy:/opt/openfire/bin# cat /etc/systemd/system/openfired.service
[Unit]
Description=OpenFire
After=network.target[Service]
ExecStart=/opt/openfire/bin/openfire.sh
WorkingDirectory=/opt/openfire/bin
Restart=always[Install]
WantedBy=multi-user.target
增加可执行权限
root@QHTProxy:/opt/openfire/bin# chmod a+x /etc/systemd/system/openfired.service
重新加载systemd服务配置
root@QHTProxy:/opt/openfire/bin# systemctl daemon-reload
开启服务:
root@QHTProxy:/opt/openfire/bin# systemctl start openfired root@QHTProxy:/opt/openfire/bin# systemctl status openfired
● openfired.service - OpenFireLoaded: loaded (/etc/systemd/system/openfired.service; enabled; vendor preset: enabled)Active: active (running) since Fri 2023-11-03 11:00:20 CST; 8s agoMain PID: 2702 (java)Tasks: 59Memory: 289.8MCPU: 13.435sCGroup: /system.slice/openfired.service└─2702 /usr/lib/jvm/java-8-openjdk-amd64/bin/java -Dlog4j.configurationFile=/opt/openfire/lib/log4j2.xml -Dlog4j2.formatMsgNoLookups=true -Djdk.tls.ephemeralDHKeySize=matched -Djsse.SNov 03 11:00:20 QHTProxy systemd[1]: Started OpenFire.
Nov 03 11:00:20 QHTProxy openfire.sh[2702]: /opt/openfire/bin/openfire.sh: 21: /opt/openfire/bin/openfire.sh: shopt: not found
Nov 03 11:00:23 QHTProxy openfire.sh[2702]: Openfire 4.7.5 [2023-11-3 11:00:23]
Nov 03 11:00:24 QHTProxy openfire.sh[2702]: 管理平台开始监听:
Nov 03 11:00:24 QHTProxy openfire.sh[2702]: http://qhtproxy:9090
Nov 03 11:00:24 QHTProxy openfire.sh[2702]: https://qhtproxy:9091
Nov 03 11:00:24 QHTProxy openfire.sh[2702]: Successfully loaded plugin 'admin'.
Nov 03 11:00:24 QHTProxy openfire.sh[2702]: Successfully loaded plugin 'search-1.7.3'.
Nov 03 11:00:24 QHTProxy openfire.sh[2702]: Successfully loaded plugin 'userimport
相关文章:
Ubuntu 增加服务 比如openfire
在Ubuntu上,可以使用systemd来管理和配置服务。下面是将命令添加为服务的一般步骤: 创建一个.service文件,该文件描述了您要添加的服务。打开终端,并使用以下命令创建一个新的服务文件: sudo nano /etc/systemd/syst…...
海康Visionmaster-全局变量:全局变量关联流程中具体 模块结果的方法
将视觉流程中模板匹配算法模块运行的结果数据:特征匹配点 X 关联全局变量 MatchResultX。 在流程运行的主界面中,按照下面 1,2,3,4 步骤操作,第一步选中算法模块,第二步择模块结果 Tab 页&#…...
Eureka介绍和使用
Eureka介绍和使用 一、基本介绍1. Eureka是什么?2. Eureka的作用3. 常用使用场景4. Eureka的工作原理5. Eureka的优点6. 使用Eureka的注意事项 二、eureka配置项解释1. eureka.instance.hostname2. eureka.instance.appname3. eureka.instance.instance-id4. eureka.client.se…...
Incremental Object Detection via Meta-Learning【论文解析】
Incremental Object Detection via Meta-Learning 摘要1 介绍2 相关工作3 方法3.1 问题描述3.2元学习梯度预处理3.3增量式目标检测器摘要 摘要:在真实世界的情境中,目标检测器可能会不断遇到来自新类别的物体实例。当现有的目标检测器应用于这种情景时,它们对旧类别的性能会…...
AI大模型时代网络安全攻防对抗升级,瑞数信息变革“下一代应用与数据安全”
AI与大模型技术加速普及,安全领域也在以创新视角聚焦下一代应用安全WAAP变革,拓展新一代数据安全领域。近日瑞数信息重磅发布了瑞数全新API扫描器、API安全审计、数据安全检测与应急响应系统及分布式数据库备份系统四大新品。此次发布在延续瑞数信息Bot自…...
后端接口接收对象和文件集合,formdata传递数组对象
0 问题 后端接口需要接收前端传递过来的对象和文件集合;对象中存在数组对象 1 前端和后端 前端只能使用formdata来传递参数,后端不使用RequestBody注解 2 formdata传递数组对象 2.1 多个参数对象数组 addForm: {contactInfo: [{contactPerson: ,…...
python json包
当前大语言模型比较火热,很多数据是以json格式进行数据传递的。python包中的json包就是一个处理Json格式数专业包。 本文主要介绍这个包中的四个函数,dump,dumps,load,loads 序列化为Json dump:将Python对象序列化为Json文件 案例 我们有如…...
基于 NGram 分词,优化 Es 搜索逻辑,并深入理解了 matchPhraseQuery 与 termQuery
基于 NGram 分词,优化 Es 搜索逻辑,并深入理解了 matchPhraseQuery 与 termQuery 前言问题描述排查索引库分词(发现问题)如何去解决这个问题?IK 分词器NGram 分词器使用替换 NGram 分词器后进行测试matchPhraseQuery 查…...
PivotNet:Vectorized Pivot Learning for End-to-end HD Map Construction
参考代码:BeMapNet。PS:代码暂未放出,关注该仓库动态 动机和主要贡献 在MapTR系列的算法中将单个车道线建模为固定数量的有序点集(对应下图Evenly-based),这样的方式对于普通道路场景具备一定适应性。但是…...
阿里云安全恶意程序检测
阿里云安全恶意程序检测 赛题理解赛题介绍赛题说明数据说明评测指标 赛题分析数据特征解题思路 数据探索数据特征类型数据分布箱型图 变量取值分布缺失值异常值分析训练集的tid特征标签分布测试集数据探索同上 数据集联合分析file_id分析API分析 特征工程与基线模型构造特征与特…...
Xcode中如何操作Git
👨🏻💻 热爱摄影的程序员 👨🏻🎨 喜欢编码的设计师 🧕🏻 擅长设计的剪辑师 🧑🏻🏫 一位高冷无情的编码爱好者 大家好,我是全栈工…...
浅述边缘计算场景下的云边端协同融合架构的应用场景示例
云计算正在向一种更加全局化的分布式节点组合形态进阶,而边缘计算是云计算能力向边缘侧分布式拓展的新触角。随着城市建设进程加快,海量设备产生的数据,若上传到云端进行处理,会对云端造成巨大压力。如果利用边缘计算来让云端的能…...
C++中禁止在栈中实例化的类
C中禁止在栈中实例化的类 栈空间通常有限。如果您要编写一个数据库类,其内部结构包含数 TB 数据,可能应该禁止在栈上实例化它,而只允许在自由存储区中创建其实例。为此,关键在于将析构函数声明为私有的: class Monst…...
MsgPack和Protobuf
MsgPack可以在C下序列化类,Protobuf只能在C#下序列化类 Cocos Creator安装msgpack-lite 项目文件夹执行 rpm -i msgpack-lite...
自定义类型联合体
目录 联合体联合体类型的声明联合体的特点相同成员的结构体和联合体对比联合体大小的计算联合体的应用联合的一个练习 感谢各位大佬对我的支持,如果我的文章对你有用,欢迎点击以下链接 🐒🐒🐒 个人主页 🥸🥸…...
【Shell 系列教程】Shell printf 命令( 六)
文章目录 往期回顾Shell printf 命令printf 的转义序列 往期回顾 【Shell 系列教程】shell介绍(一)【Shell 系列教程】shell变量(二)【Shell 系列教程】shell数组(三)【Shell 系列教程】shell基本运算符&a…...
2022年电工杯数学建模B题5G网络环境下应急物资配送问题求解全过程论文及程序
2022年电工杯数学建模 B题 5G网络环境下应急物资配送问题 原题再现: 一些重特大突发事件往往会造成道路阻断、损坏、封闭等意想不到的情况,对人们的日常生活会造成一定的影响。为了保证人们的正常生活,将应急物资及时准确地配送到位尤为重要…...
git reflog 恢复git reset --hard 回退的内容
首先使用 git reflog 查看处理的历史,历史是由新到旧排列的,找到回退前的commit的id,找的过程可以只关注HEAD的部分,HEAD括号中的值越大越旧,越小越新。 找到后执行以下命令 git reset --hard 你的commit_id 然后…...
kali Linux中更换为阿里镜像源
准备: kali Linux 阿里源链接 deb kali安装包下载_开源镜像站-阿里云 kali-rolling main non-free contrib deb-src kali安装包下载_开源镜像站-阿里云 kali-rolling main non-free contrib 配置: 打开kali 终端输入:sudo nano /etc/apt…...
【每日一题】移除链表元素(C语言)
移除链表元素,链接奉上 目录 思路:代码实现:链表题目小技巧: 思路: 在正常情况: 下我们移除链表元素时,需要该位置的前结点与后节点, 在特别情况时: 例如 我们发现&…...
【网络】每天掌握一个Linux命令 - iftop
在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...
多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...
css3笔记 (1) 自用
outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size:0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格ÿ…...
python报错No module named ‘tensorflow.keras‘
是由于不同版本的tensorflow下的keras所在的路径不同,结合所安装的tensorflow的目录结构修改from语句即可。 原语句: from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后: from tensorflow.python.keras.lay…...
LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...
解读《网络安全法》最新修订,把握网络安全新趋势
《网络安全法》自2017年施行以来,在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂,网络攻击、数据泄露等事件频发,现行法律已难以完全适应新的风险挑战。 2025年3月28日,国家网信办会同相关部门起草了《网络安全…...
【Linux系统】Linux环境变量:系统配置的隐形指挥官
。# Linux系列 文章目录 前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变量的生命周期 四、环境变量的组织方式五、C语言对环境变量的操作5.1 设置环境变量:setenv5.2 删除环境变量:unsetenv5.3 遍历所有环境…...
深入理解Optional:处理空指针异常
1. 使用Optional处理可能为空的集合 在Java开发中,集合判空是一个常见但容易出错的场景。传统方式虽然可行,但存在一些潜在问题: // 传统判空方式 if (!CollectionUtils.isEmpty(userInfoList)) {for (UserInfo userInfo : userInfoList) {…...
